Merge 'oracle8' into 'DBIx-Class-current'
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI / Oracle.pm
index 2b28247..ea956ba 100644 (file)
@@ -1,25 +1,33 @@
 package DBIx::Class::Storage::DBI::Oracle;
+
 use strict;
 use warnings;
 
 use base qw/DBIx::Class::Storage::DBI/;
 
+print STDERR "Oracle.pm got called.\n";
+
 sub _rebless {
     my ($self) = @_;
 
+    print STDERR "Rebless got called.\n";
+
     my $version = eval { $self->_dbh->get_info(18); };
-    unless ( $@ ) {
-        my ($major,$minor,$patchlevel) = split(/\./,$version);
+
+    if ( !$@ ) {
+        my ($major, $minor, $patchlevel) = split(/\./, $version);
 
         # Default driver
-        my $class = "DBIx::Class::Storage::DBI::Oracle::Generic";
+        my $class = $major >= 8
+          ? 'DBIx::Class::Storage::DBI::Oracle::WhereJoins'
+          : 'DBIx::Class::Storage::DBI::Oracle::Generic';
 
-        # Version specific drivers
-        $class = "DBIx::Class::Storage::DBI::Oracle::8"
-            if $major == 8;
+        print STDERR "Class: $class\n";
 
         # Load and rebless
         eval "require $class";
+
+        print STDERR "\$@: $@\n";
         bless $self, $class unless $@;
     }
 }