... | ... |
@@ -1,6 +1,6 @@ |
1 | 1 |
0.1638 |
2 | 2 |
added experimental base_table attribute and removed experimental table_class attribute |
3 |
- renamed helper to method. helper is available, but deprecated. |
|
3 |
+ renamed helper to method. |
|
4 | 4 |
added experimental DBIx::Custom::Result::stash() |
5 | 5 |
renamed experimental DBIx::Custom::Table helper to method |
6 | 6 |
0.1637 |
... | ... |
@@ -69,16 +69,15 @@ our $AUTOLOAD; |
69 | 69 |
sub AUTOLOAD { |
70 | 70 |
my $self = shift; |
71 | 71 |
|
72 |
- # Method |
|
73 |
- my ($package, $method) = $AUTOLOAD =~ /^([\w\:]+)\:\:(\w+)$/; |
|
74 |
- |
|
75 |
- # Helper |
|
76 |
- $self->{_helpers} ||= {}; |
|
77 |
- croak qq/Can't locate object method "$method" via "$package"/ |
|
78 |
- unless my $helper = $self->{_helpers}->{$method}; |
|
72 |
+ # Method name |
|
73 |
+ my ($package, $mname) = $AUTOLOAD =~ /^([\w\:]+)\:\:(\w+)$/; |
|
79 | 74 |
|
80 |
- # Run |
|
81 |
- return $self->$helper(@_); |
|
75 |
+ # Method |
|
76 |
+ $self->{_methods} ||= {}; |
|
77 |
+ croak qq/Can't locate object method "$mname" via "$package"/ |
|
78 |
+ unless my $method = $self->{_methods}->{$mname}; |
|
79 |
+ |
|
80 |
+ return $self->$method(@_); |
|
82 | 81 |
} |
83 | 82 |
|
84 | 83 |
sub apply_filter { |
... | ... |
@@ -145,12 +144,12 @@ sub apply_filter { |
145 | 144 |
return $self; |
146 | 145 |
} |
147 | 146 |
|
148 |
-sub helper { |
|
147 |
+sub method { |
|
149 | 148 |
my $self = shift; |
150 | 149 |
|
151 | 150 |
# Merge |
152 |
- my $helpers = ref $_[0] eq 'HASH' ? $_[0] : {@_}; |
|
153 |
- $self->{_helpers} = {%{$self->{_helpers} || {}}, %$helpers}; |
|
151 |
+ my $methods = ref $_[0] eq 'HASH' ? $_[0] : {@_}; |
|
152 |
+ $self->{_methods} = {%{$self->{_methods} || {}}, %$methods}; |
|
154 | 153 |
|
155 | 154 |
return $self; |
156 | 155 |
} |
... | ... |
@@ -1074,9 +1073,9 @@ Arguments is same as C<delete> method, |
1074 | 1073 |
except that C<delete_all> don't have C<where> argument. |
1075 | 1074 |
Return value of C<delete_all()> is the count of affected rows. |
1076 | 1075 |
|
1077 |
-=head2 C<(experimental) helper> |
|
1076 |
+=head2 C<(experimental) method> |
|
1078 | 1077 |
|
1079 |
- $dbi->helper( |
|
1078 |
+ $dbi->method( |
|
1080 | 1079 |
update_or_insert => sub { |
1081 | 1080 |
my $self = shift; |
1082 | 1081 |
# do something |
... | ... |
@@ -1087,7 +1086,7 @@ Return value of C<delete_all()> is the count of affected rows. |
1087 | 1086 |
} |
1088 | 1087 |
); |
1089 | 1088 |
|
1090 |
-Register helper methods. These method is called from L<DBIx::Custom> object directory. |
|
1089 |
+Register method. These method is called from L<DBIx::Custom> object directory. |
|
1091 | 1090 |
|
1092 | 1091 |
$dbi->update_or_insert; |
1093 | 1092 |
$dbi->find_or_create; |
... | ... |
@@ -525,15 +525,15 @@ ok($@, "exception"); |
525 | 525 |
$dbi->dbh->{AutoCommit} = 1; |
526 | 526 |
|
527 | 527 |
|
528 |
-test 'helper'; |
|
528 |
+test 'method'; |
|
529 | 529 |
$dbi = DBIx::Custom->connect($NEW_ARGS->{0}); |
530 |
-$dbi->helper( |
|
530 |
+$dbi->method( |
|
531 | 531 |
one => sub { 1 } |
532 | 532 |
); |
533 |
-$dbi->helper( |
|
533 |
+$dbi->method( |
|
534 | 534 |
two => sub { 2 } |
535 | 535 |
); |
536 |
-$dbi->helper({ |
|
536 |
+$dbi->method({ |
|
537 | 537 |
twice => sub { |
538 | 538 |
my $self = shift; |
539 | 539 |
return $_[0] * 2; |
... | ... |
@@ -1003,7 +1003,7 @@ eval {$dbi->apply_filter('table1', 'key2', {out => 'no'})}; |
1003 | 1003 |
like($@, qr/not registered/); |
1004 | 1004 |
eval {$dbi->apply_filter('table1', 'key2', {in => 'no'})}; |
1005 | 1005 |
like($@, qr/not registered/); |
1006 |
-$dbi->helper({one => sub { 1 }}); |
|
1006 |
+$dbi->method({one => sub { 1 }}); |
|
1007 | 1007 |
is($dbi->one, 1); |
1008 | 1008 |
|
1009 | 1009 |
eval{DBIx::Custom->connect()}; |