Added remove_column(s) from ResultSource/ResultSourceProxy
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / ResultSourceProxy.pm
CommitLineData
75d07914 1package # hide from PAUSE
c0e7b4e5 2 DBIx::Class::ResultSourceProxy;
b98e75f6 3
4use strict;
5use warnings;
6
7use base qw/DBIx::Class/;
8
5ac6a044 9sub iterator_class { shift->result_source_instance->resultset_class(@_) }
b98e75f6 10sub resultset_class { shift->result_source_instance->resultset_class(@_) }
11
5ac6a044 12sub resultset_attributes {
13 shift->result_source_instance->resultset_attributes(@_);
14}
15
b98e75f6 16sub add_columns {
17 my ($class, @cols) = @_;
1f23a877 18 my $source = $class->result_source_instance;
19 $source->add_columns(@cols);
20 foreach my $c (grep { !ref } @cols) {
21 $class->register_column($c => $source->column_info($c));
22 }
b98e75f6 23}
24
002a359a 25*add_column = \&add_columns;
26
75d07914 27sub has_column {
28 my ($self, $column) = @_;
29 return $self->result_source_instance->has_column($column);
b98e75f6 30}
31
75d07914 32sub column_info {
33 my ($self, $column) = @_;
34 return $self->result_source_instance->column_info($column);
b98e75f6 35}
36
002a359a 37
75d07914 38sub columns {
39 return shift->result_source_instance->columns(@_);
40}
002a359a 41
42sub remove_columns {
43 return shift->result_source_instance->remove_columns(@_);
44}
45
46*remove_column = \&remove_columns;
47
bc0c9800 48sub set_primary_key {
49 shift->result_source_instance->set_primary_key(@_);
50}
51
52sub primary_columns {
53 shift->result_source_instance->primary_columns(@_);
54}
b98e75f6 55
bc0c9800 56sub add_unique_constraint {
57 shift->result_source_instance->add_unique_constraint(@_);
58}
59
60sub unique_constraints {
61 shift->result_source_instance->unique_constraints(@_);
62}
87f0da6a 63
8c49f629 64sub add_relationship {
71e65b39 65 my ($class, $rel, @rest) = @_;
66 my $source = $class->result_source_instance;
67 $source->add_relationship($rel => @rest);
68 $class->register_relationship($rel => $source->relationship_info($rel));
8c49f629 69}
70
71sub relationships {
72 shift->result_source_instance->relationships(@_);
73}
74
75sub relationship_info {
76 shift->result_source_instance->relationship_info(@_);
77}
78
b98e75f6 791;