Ditch Carp::Clan for our own thing
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / SQLMaker / OracleJoins.pm
index b62c483..a9a9267 100644 (file)
@@ -2,7 +2,6 @@ package # Hide from PAUSE
   DBIx::Class::SQLMaker::OracleJoins;
 
 use base qw( DBIx::Class::SQLMaker::Oracle );
-use Carp::Clan qw/^DBIx::Class|^SQL::Abstract/;
 
 sub select {
   my ($self, $table, $fields, $where, $rs_attrs, @rest) = @_;
@@ -17,16 +16,16 @@ sub select {
 sub _recurse_from {
   my ($self, $from, @join) = @_;
 
-  my @sqlf = $self->_make_as($from);
+  my @sqlf = $self->_from_chunk_to_sql($from);
 
-  foreach my $j (@join) {
-    my ($to, $on) = @{ $j };
+  for (@join) {
+    my ($to, $on) = @$_;
 
     if (ref $to eq 'ARRAY') {
       push (@sqlf, $self->_recurse_from(@{ $to }));
     }
     else {
-      push (@sqlf, $self->_make_as($to));
+      push (@sqlf, $self->_from_chunk_to_sql($to));
     }
   }
 
@@ -68,7 +67,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.
-      croak "Can't handle full outer joins in Oracle 8 yet!\n"
+      $self->throw_exception("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