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