Generalized the loading of subclasses for specfic ODBC backends.
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Storage / DBI.pm
index 196fdc9..aad0353 100644 (file)
@@ -421,14 +421,11 @@ sub _populate_dbh {
   my ($self) = @_;
   my @info = @{$self->_connect_info || []};
   $self->_dbh($self->_connect(@info));
-  my $dbh = $self->_dbh;
-  my $driver = $dbh->{Driver}->{Name};
-  if ( $driver eq 'ODBC' and $dbh->get_info(17) =~ m{^DB2/400} ) {
-    $driver = 'ODBC400';
-  }
+  my $driver = $self->_dbh->{Driver}->{Name};
   eval "require DBIx::Class::Storage::DBI::${driver}";
   unless ($@) {
     bless $self, "DBIx::Class::Storage::DBI::${driver}";
+    $self->_rebless() if $self->can('_rebless');
   }
   # if on-connect sql statements are given execute them
   foreach my $sql_statement (@{$self->on_connect_do || []}) {