| ... | ... |
@@ -240,7 +240,7 @@ sub dbh {
|
| 240 | 240 |
} |
| 241 | 241 |
} |
| 242 | 242 |
|
| 243 |
-our %VALID_DELETE_ARGS |
|
| 243 |
+our %DELETE_ARGS |
|
| 244 | 244 |
= map { $_ => 1 } @COMMON_ARGS, qw/where append allow_delete_all/;
|
| 245 | 245 |
|
| 246 | 246 |
sub delete {
|
| ... | ... |
@@ -249,16 +249,15 @@ sub delete {
|
| 249 | 249 |
# Check argument names |
| 250 | 250 |
foreach my $name (keys %args) {
|
| 251 | 251 |
croak qq{Argument "$name" is invalid name}
|
| 252 |
- unless $VALID_DELETE_ARGS{$name};
|
|
| 252 |
+ unless $DELETE_ARGS{$name};
|
|
| 253 | 253 |
} |
| 254 | 254 |
|
| 255 | 255 |
# Arguments |
| 256 |
- my $table = $args{table} || '';
|
|
| 256 |
+ my $table = $args{table} || '';
|
|
| 257 | 257 |
croak qq{"table" option must be specified} unless $table;
|
| 258 |
- my $where = $args{where} || {};
|
|
| 259 |
- my $append = $args{append};
|
|
| 260 |
- my $filter = $args{filter};
|
|
| 261 |
- my $allow_delete_all = $args{allow_delete_all};
|
|
| 258 |
+ my $where = delete $args{where} || {};
|
|
| 259 |
+ my $append = delete $args{append};
|
|
| 260 |
+ my $allow_delete_all = delete $args{allow_delete_all};
|
|
| 262 | 261 |
|
| 263 | 262 |
# Where |
| 264 | 263 |
my $w; |
| ... | ... |
@@ -297,16 +296,18 @@ sub delete {
|
| 297 | 296 |
|
| 298 | 297 |
# Execute query |
| 299 | 298 |
my $ret_val = $self->execute( |
| 300 |
- $query, param => $where, filter => $filter, |
|
| 301 |
- table => $table); |
|
| 299 |
+ $query, |
|
| 300 |
+ param => $where, |
|
| 301 |
+ table => $table, |
|
| 302 |
+ %args |
|
| 303 |
+ ); |
|
| 302 | 304 |
|
| 303 | 305 |
return $ret_val; |
| 304 | 306 |
} |
| 305 | 307 |
|
| 306 | 308 |
sub delete_all { shift->delete(allow_delete_all => 1, @_) }
|
| 307 | 309 |
|
| 308 |
-our %VALID_DELETE_AT_ARGS |
|
| 309 |
- = (%VALID_DELETE_ARGS, where => 1, primary_key => 1); |
|
| 310 |
+our %DELETE_AT_ARGS = (%DELETE_ARGS, where => 1, primary_key => 1); |
|
| 310 | 311 |
|
| 311 | 312 |
sub delete_at {
|
| 312 | 313 |
my ($self, %args) = @_; |
| ... | ... |
@@ -314,7 +315,7 @@ sub delete_at {
|
| 314 | 315 |
# Check argument names |
| 315 | 316 |
foreach my $name (keys %args) {
|
| 316 | 317 |
croak qq{Argument "$name" is invalid name}
|
| 317 |
- unless $VALID_DELETE_AT_ARGS{$name};
|
|
| 318 |
+ unless $DELETE_AT_ARGS{$name};
|
|
| 318 | 319 |
} |
| 319 | 320 |
|
| 320 | 321 |
# Primary key |
| ... | ... |
@@ -348,7 +349,7 @@ sub delete_at {
|
| 348 | 349 |
|
| 349 | 350 |
sub DESTROY { }
|
| 350 | 351 |
|
| 351 |
-our %VALID_EXECUTE_ARGS = map { $_ => 1 } qw/param filter table/;
|
|
| 352 |
+our %EXECUTE_ARGS = map { $_ => 1 } @COMMON_ARGS, 'param';
|
|
| 352 | 353 |
|
| 353 | 354 |
sub execute{
|
| 354 | 355 |
my ($self, $query, %args) = @_; |
| ... | ... |
@@ -356,7 +357,7 @@ sub execute{
|
| 356 | 357 |
# Check argument names |
| 357 | 358 |
foreach my $name (keys %args) {
|
| 358 | 359 |
croak qq{Argument "$name" is invalid name}
|
| 359 |
- unless $VALID_EXECUTE_ARGS{$name};
|
|
| 360 |
+ unless $EXECUTE_ARGS{$name};
|
|
| 360 | 361 |
} |
| 361 | 362 |
|
| 362 | 363 |
my $params = $args{param} || {};
|
| ... | ... |
@@ -474,8 +475,7 @@ sub execute{
|
| 474 | 475 |
return $affected; |
| 475 | 476 |
} |
| 476 | 477 |
|
| 477 |
-our %VALID_INSERT_ARGS |
|
| 478 |
- = map { $_ => 1 } @COMMON_ARGS, qw/param append/;
|
|
| 478 |
+our %INSERT_ARGS = map { $_ => 1 } @COMMON_ARGS, qw/param append/;
|
|
| 479 | 479 |
|
| 480 | 480 |
sub insert {
|
| 481 | 481 |
my ($self, %args) = @_; |
| ... | ... |
@@ -483,15 +483,14 @@ sub insert {
|
| 483 | 483 |
# Check argument names |
| 484 | 484 |
foreach my $name (keys %args) {
|
| 485 | 485 |
croak qq{Argument "$name" is invalid name}
|
| 486 |
- unless $VALID_INSERT_ARGS{$name};
|
|
| 486 |
+ unless $INSERT_ARGS{$name};
|
|
| 487 | 487 |
} |
| 488 | 488 |
|
| 489 | 489 |
# Arguments |
| 490 |
- my $table = $args{table};
|
|
| 490 |
+ my $table = delete $args{table};
|
|
| 491 | 491 |
croak qq{"table" option must be specified} unless $table;
|
| 492 |
- my $param = $args{param} || {};
|
|
| 493 |
- my $append = $args{append} || '';
|
|
| 494 |
- my $filter = $args{filter};
|
|
| 492 |
+ my $param = delete $args{param} || {};
|
|
| 493 |
+ my $append = delete $args{append} || '';
|
|
| 495 | 494 |
|
| 496 | 495 |
# Columns |
| 497 | 496 |
my @columns; |
| ... | ... |
@@ -520,15 +519,14 @@ sub insert {
|
| 520 | 519 |
my $ret_val = $self->execute( |
| 521 | 520 |
$query, |
| 522 | 521 |
param => $param, |
| 523 |
- filter => $filter, |
|
| 524 |
- table => $table |
|
| 522 |
+ table => $table, |
|
| 523 |
+ %args |
|
| 525 | 524 |
); |
| 526 | 525 |
|
| 527 | 526 |
return $ret_val; |
| 528 | 527 |
} |
| 529 | 528 |
|
| 530 |
-our %VALID_INSERT_AT_ARGS |
|
| 531 |
- = (%VALID_INSERT_ARGS, where => 1, primary_key => 1); |
|
| 529 |
+our %INSERT_AT_ARGS = (%INSERT_ARGS, where => 1, primary_key => 1); |
|
| 532 | 530 |
|
| 533 | 531 |
sub insert_at {
|
| 534 | 532 |
my ($self, %args) = @_; |
| ... | ... |
@@ -536,7 +534,7 @@ sub insert_at {
|
| 536 | 534 |
# Check argument names |
| 537 | 535 |
foreach my $name (keys %args) {
|
| 538 | 536 |
croak qq{Argument "$name" is invalid name}
|
| 539 |
- unless $VALID_INSERT_AT_ARGS{$name};
|
|
| 537 |
+ unless $INSERT_AT_ARGS{$name};
|
|
| 540 | 538 |
} |
| 541 | 539 |
|
| 542 | 540 |
# Primary key |
| ... | ... |
@@ -761,7 +759,7 @@ sub register_filter {
|
| 761 | 759 |
|
| 762 | 760 |
sub register_tag { shift->query_builder->register_tag(@_) }
|
| 763 | 761 |
|
| 764 |
-our %VALID_SELECT_ARGS |
|
| 762 |
+our %SELECT_ARGS |
|
| 765 | 763 |
= map { $_ => 1 } @COMMON_ARGS, qw/column where append relation
|
| 766 | 764 |
selection join/; |
| 767 | 765 |
|
| ... | ... |
@@ -771,25 +769,25 @@ sub select {
|
| 771 | 769 |
# Check argument names |
| 772 | 770 |
foreach my $name (keys %args) {
|
| 773 | 771 |
croak qq{Argument "$name" is invalid name}
|
| 774 |
- unless $VALID_SELECT_ARGS{$name};
|
|
| 772 |
+ unless $SELECT_ARGS{$name};
|
|
| 775 | 773 |
} |
| 776 | 774 |
|
| 777 | 775 |
# Arguments |
| 778 |
- my $table = $args{table};
|
|
| 776 |
+ my $table = delete $args{table};
|
|
| 779 | 777 |
my $tables = ref $table eq 'ARRAY' ? $table |
| 780 | 778 |
: defined $table ? [$table] |
| 781 | 779 |
: []; |
| 782 |
- my $columns = $args{column};
|
|
| 783 |
- my $selection = $args{selection} || '';
|
|
| 784 |
- my $where = $args{where} || {};
|
|
| 785 |
- my $append = $args{append};
|
|
| 786 |
- my $filter = $args{filter};
|
|
| 787 |
- my $join = $args{join} || [];
|
|
| 780 |
+ my $columns = delete $args{column};
|
|
| 781 |
+ my $selection = delete $args{selection} || '';
|
|
| 782 |
+ my $where = delete $args{where} || {};
|
|
| 783 |
+ my $append = delete $args{append};
|
|
| 784 |
+ my $join = delete $args{join} || [];
|
|
| 788 | 785 |
croak qq{"join" must be array reference}
|
| 789 | 786 |
unless ref $join eq 'ARRAY'; |
| 787 |
+ my $relation = delete $args{relation};
|
|
| 790 | 788 |
|
| 791 | 789 |
# Add relation tables(DEPRECATED!); |
| 792 |
- $self->_add_relation_table($tables, $args{relation});
|
|
| 790 |
+ $self->_add_relation_table($tables, $relation); |
|
| 793 | 791 |
|
| 794 | 792 |
# SQL stack |
| 795 | 793 |
my @sql; |
| ... | ... |
@@ -865,7 +863,7 @@ sub select {
|
| 865 | 863 |
# Table |
| 866 | 864 |
unless ($selection) {
|
| 867 | 865 |
push @sql, 'from'; |
| 868 |
- if ($args{relation}) {
|
|
| 866 |
+ if ($relation) {
|
|
| 869 | 867 |
my $found = {};
|
| 870 | 868 |
foreach my $table (@$tables) {
|
| 871 | 869 |
push @sql, ($table, ',') unless $found->{$table};
|
| ... | ... |
@@ -910,7 +908,7 @@ sub select {
|
| 910 | 908 |
push @sql, $swhere; |
| 911 | 909 |
|
| 912 | 910 |
# Relation(DEPRECATED!); |
| 913 |
- $self->_push_relation(\@sql, $tables, $args{relation}, $swhere eq '' ? 1 : 0);
|
|
| 911 |
+ $self->_push_relation(\@sql, $tables, $relation, $swhere eq '' ? 1 : 0); |
|
| 914 | 912 |
|
| 915 | 913 |
# Append statement |
| 916 | 914 |
push @sql, $append if $append; |
| ... | ... |
@@ -924,14 +922,16 @@ sub select {
|
| 924 | 922 |
|
| 925 | 923 |
# Execute query |
| 926 | 924 |
my $result = $self->execute( |
| 927 |
- $query, param => $where, filter => $filter, |
|
| 928 |
- table => $tables); |
|
| 925 |
+ $query, |
|
| 926 |
+ param => $where, |
|
| 927 |
+ table => $tables, |
|
| 928 |
+ %args |
|
| 929 |
+ ); |
|
| 929 | 930 |
|
| 930 | 931 |
return $result; |
| 931 | 932 |
} |
| 932 | 933 |
|
| 933 |
-our %VALID_SELECT_AT_ARGS |
|
| 934 |
- = (%VALID_SELECT_ARGS, where => 1, primary_key => 1); |
|
| 934 |
+our %SELECT_AT_ARGS = (%SELECT_ARGS, where => 1, primary_key => 1); |
|
| 935 | 935 |
|
| 936 | 936 |
sub select_at {
|
| 937 | 937 |
my ($self, %args) = @_; |
| ... | ... |
@@ -939,7 +939,7 @@ sub select_at {
|
| 939 | 939 |
# Check argument names |
| 940 | 940 |
foreach my $name (keys %args) {
|
| 941 | 941 |
croak qq{Argument "$name" is invalid name}
|
| 942 |
- unless $VALID_SELECT_AT_ARGS{$name};
|
|
| 942 |
+ unless $SELECT_AT_ARGS{$name};
|
|
| 943 | 943 |
} |
| 944 | 944 |
|
| 945 | 945 |
# Primary key |
| ... | ... |
@@ -990,9 +990,8 @@ sub setup_model {
|
| 990 | 990 |
return $self; |
| 991 | 991 |
} |
| 992 | 992 |
|
| 993 |
-our %VALID_UPDATE_ARGS |
|
| 994 |
- = map { $_ => 1 } @COMMON_ARGS, qw/param where append
|
|
| 995 |
- allow_update_all/; |
|
| 993 |
+our %UPDATE_ARGS |
|
| 994 |
+ = map { $_ => 1 } @COMMON_ARGS, qw/param where append allow_update_all/;
|
|
| 996 | 995 |
|
| 997 | 996 |
sub update {
|
| 998 | 997 |
my ($self, %args) = @_; |
| ... | ... |
@@ -1000,17 +999,16 @@ sub update {
|
| 1000 | 999 |
# Check argument names |
| 1001 | 1000 |
foreach my $name (keys %args) {
|
| 1002 | 1001 |
croak qq{Argument "$name" is invalid name}
|
| 1003 |
- unless $VALID_UPDATE_ARGS{$name};
|
|
| 1002 |
+ unless $UPDATE_ARGS{$name};
|
|
| 1004 | 1003 |
} |
| 1005 | 1004 |
|
| 1006 | 1005 |
# Arguments |
| 1007 |
- my $table = $args{table} || '';
|
|
| 1006 |
+ my $table = delete $args{table} || '';
|
|
| 1008 | 1007 |
croak qq{"table" option must be specified} unless $table;
|
| 1009 |
- my $param = $args{param} || {};
|
|
| 1010 |
- my $where = $args{where} || {};
|
|
| 1011 |
- my $append = $args{append} || '';
|
|
| 1012 |
- my $filter = $args{filter};
|
|
| 1013 |
- my $allow_update_all = $args{allow_update_all};
|
|
| 1008 |
+ my $param = delete $args{param} || {};
|
|
| 1009 |
+ my $where = delete $args{where} || {};
|
|
| 1010 |
+ my $append = delete $args{append} || '';
|
|
| 1011 |
+ my $allow_update_all = delete $args{allow_update_all};
|
|
| 1014 | 1012 |
|
| 1015 | 1013 |
# Update keys |
| 1016 | 1014 |
my @clumns = keys %$param; |
| ... | ... |
@@ -1079,17 +1077,19 @@ sub update {
|
| 1079 | 1077 |
return $query if $args{query};
|
| 1080 | 1078 |
|
| 1081 | 1079 |
# Execute query |
| 1082 |
- my $ret_val = $self->execute($query, param => $param, |
|
| 1083 |
- filter => $filter, |
|
| 1084 |
- table => $table); |
|
| 1080 |
+ my $ret_val = $self->execute( |
|
| 1081 |
+ $query, |
|
| 1082 |
+ param => $param, |
|
| 1083 |
+ table => $table, |
|
| 1084 |
+ %args |
|
| 1085 |
+ ); |
|
| 1085 | 1086 |
|
| 1086 | 1087 |
return $ret_val; |
| 1087 | 1088 |
} |
| 1088 | 1089 |
|
| 1089 | 1090 |
sub update_all { shift->update(allow_update_all => 1, @_) };
|
| 1090 | 1091 |
|
| 1091 |
-our %VALID_UPDATE_AT_ARGS |
|
| 1092 |
- = (%VALID_UPDATE_ARGS, where => 1, primary_key => 1); |
|
| 1092 |
+our %UPDATE_AT_ARGS = (%UPDATE_ARGS, where => 1, primary_key => 1); |
|
| 1093 | 1093 |
|
| 1094 | 1094 |
sub update_at {
|
| 1095 | 1095 |
my ($self, %args) = @_; |
| ... | ... |
@@ -1097,7 +1097,7 @@ sub update_at {
|
| 1097 | 1097 |
# Check argument names |
| 1098 | 1098 |
foreach my $name (keys %args) {
|
| 1099 | 1099 |
croak qq{Argument "$name" is invalid name}
|
| 1100 |
- unless $VALID_UPDATE_AT_ARGS{$name};
|
|
| 1100 |
+ unless $UPDATE_AT_ARGS{$name};
|
|
| 1101 | 1101 |
} |
| 1102 | 1102 |
|
| 1103 | 1103 |
# Primary key |