Nuked _select_columns, the last vestige of class-based evil
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / ResultSourceInstance.pm
CommitLineData
b98e75f6 1package DBIx::Class::ResultSourceInstance;
2
3use strict;
4use warnings;
5
6use base qw/DBIx::Class/;
7
8sub iterator_class { shift->result_source_instance->resultset_class(@_) }
9sub resultset_class { shift->result_source_instance->resultset_class(@_) }
10
11sub add_columns {
12 my ($class, @cols) = @_;
1f23a877 13 my $source = $class->result_source_instance;
14 $source->add_columns(@cols);
15 foreach my $c (grep { !ref } @cols) {
16 $class->register_column($c => $source->column_info($c));
17 }
b98e75f6 18}
19
b98e75f6 20sub has_column {
21 my ($self, $column) = @_;
22 return $self->result_source_instance->has_column($column);
23}
24
25sub column_info {
26 my ($self, $column) = @_;
27 return $self->result_source_instance->column_info($column);
28}
29
30
31sub columns {
32 return shift->result_source_instance->columns(@_);
33}
34
35sub set_primary_key { shift->result_source_instance->set_primary_key(@_); }
36sub primary_columns { shift->result_source_instance->primary_columns(@_); }
37
8c49f629 38sub add_relationship {
71e65b39 39 my ($class, $rel, @rest) = @_;
40 my $source = $class->result_source_instance;
41 $source->add_relationship($rel => @rest);
42 $class->register_relationship($rel => $source->relationship_info($rel));
8c49f629 43}
44
45sub relationships {
46 shift->result_source_instance->relationships(@_);
47}
48
49sub relationship_info {
50 shift->result_source_instance->relationship_info(@_);
51}
52
b98e75f6 531;