With the addition of Class::C3 0.07 and a few tweaks, C3 branch works!
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / CDBICompat / ImaDBI.pm
index f659983..4d6e3d5 100644 (file)
@@ -4,8 +4,7 @@ use strict;
 use warnings;
 use DBIx::ContextualFetch;
 
-use NEXT;
-use base qw/Class::Data::Inheritable/;
+use base qw/DBIx::Class/;
 
 __PACKAGE__->mk_classdata('_transform_sql_handler_order'
                             => [ qw/TABLE ESSENTIAL JOIN/ ] );
@@ -47,7 +46,8 @@ __PACKAGE__->mk_classdata('_transform_sql_handlers' =>
           _aliases => { self => $from, foreign => $to },
           _action => 'join',
         };
-        my $join = $from_class->_cond_resolve($rel_obj->{cond}, $attrs);
+        my $join = $from_class->storage->sql_maker->_join_condition(
+          $from_class->resolve_condition($rel_obj->{cond}, $attrs) );
         return $join;
       }
         
@@ -61,7 +61,7 @@ sub connection {
   my ($class, @info) = @_;
   $info[3] = { %{ $info[3] || {}} };
   $info[3]->{RootClass} = 'DBIx::ContextualFetch';
-  return $class->NEXT::connection(@info);
+  return $class->next::method(@info);
 }
 
 sub __driver {
@@ -109,6 +109,7 @@ sub transform_sql {
     my $h = $class->_transform_sql_handlers->{$key};
     $sql =~ s/__$key(?:\(([^\)]+)\))?__/$h->($attrs, $class, $1)/eg;
   }
+  #warn $sql;
   return sprintf($sql, @args);
 }