X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FDBI%2FOracle.pm;h=722c62474031b473d9dc3f3bef052633a64954e9;hb=a6646e1b0a25acfd21cc3e32b8c479dd0f3526ef;hp=399eb70d8f72798956b48e881a008a6118767d2b;hpb=d88ecca6486a2b1c4b6e2f0440165b186aab39bc;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Storage/DBI/Oracle.pm b/lib/DBIx/Class/Storage/DBI/Oracle.pm index 399eb70..722c624 100644 --- a/lib/DBIx/Class/Storage/DBI/Oracle.pm +++ b/lib/DBIx/Class/Storage/DBI/Oracle.pm @@ -5,23 +5,19 @@ use warnings; use base qw/DBIx::Class::Storage::DBI/; use mro 'c3'; +use Try::Tiny; +use namespace::clean; sub _rebless { - my ($self) = @_; + my ($self) = @_; - my $version = eval { $self->_get_dbh->get_info(18); }; + # Default driver + my $class = $self->_server_info->{normalized_dbms_version} <= 8 + ? 'DBIx::Class::Storage::DBI::Oracle::WhereJoins' + : 'DBIx::Class::Storage::DBI::Oracle::Generic'; - if ( !$@ ) { - my ($major, $minor, $patchlevel) = split(/\./, $version); - - # Default driver - my $class = $major <= 8 - ? 'DBIx::Class::Storage::DBI::Oracle::WhereJoins' - : 'DBIx::Class::Storage::DBI::Oracle::Generic'; - - $self->ensure_class_loaded ($class); - bless $self, $class; - } + $self->ensure_class_loaded ($class); + bless $self, $class; } 1;