X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSQLAHacks%2FOracleJoins.pm;h=4254ababb4b1dd5d9e57609c18bbb61984ea3d9b;hb=7fca91be5671c61be5c766bd93df741bc00d9c15;hp=cd5feaaa05f5bcfedcfab50f7da390c67c9d28a7;hpb=855c6fd0a7864a9453e07f103cfdfdd5054afebf;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class/SQLAHacks/OracleJoins.pm b/lib/DBIx/Class/SQLAHacks/OracleJoins.pm index cd5feaa..4254aba 100644 --- a/lib/DBIx/Class/SQLAHacks/OracleJoins.pm +++ b/lib/DBIx/Class/SQLAHacks/OracleJoins.pm @@ -2,15 +2,16 @@ package # Hide from PAUSE DBIx::Class::SQLAHacks::OracleJoins; use base qw( DBIx::Class::SQLAHacks ); +use Carp::Clan qw/^DBIx::Class|^SQL::Abstract/; sub select { - my ($self, $table, $fields, $where, $order, @rest) = @_; + my ($self, $table, $fields, $where, $rs_attrs, @rest) = @_; if (ref($table) eq 'ARRAY') { $where = $self->_oracle_joins($where, @{ $table }); } - return $self->SUPER::select($table, $fields, $where, $order, @rest); + return $self->SUPER::select($table, $fields, $where, $rs_attrs, @rest); } sub _recurse_from { @@ -67,7 +68,7 @@ sub _recurse_oracle_joins { #TODO: Support full outer joins -- this would happen much earlier in #the sequence since oracle 8's full outer join syntax is best #described as INSANE. - die "Can't handle full outer joins in Oracle 8 yet!\n" + croak "Can't handle full outer joins in Oracle 8 yet!\n" if $to_jt->{-join_type} =~ /full/i; $left_join = q{(+)} if $to_jt->{-join_type} =~ /left/i @@ -95,8 +96,7 @@ DBIx::Class::SQLAHacks::OracleJoins - Pre-ANSI Joins-via-Where-Clause Syntax This module was originally written to support Oracle < 9i where ANSI joins weren't supported at all, but became the module for Oracle >= 8 because -Oracle's optimising of ANSI joins is horrible. (See: -http://scsys.co.uk:8001/7495) +Oracle's optimising of ANSI joins is horrible. =head1 SYNOPSIS