X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FAdmin.pm;h=300c48540bcabc788631b8ecc98d154418b4aeca;hb=367eaf50970dd3fd223ce5e1f0337703f2a6c70e;hp=ffc236e0bfd7187b744fb03004202cda98f693ef;hpb=c96bf2bceade3ac0654ec8ae4379fc72ff82bed8;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Admin.pm b/lib/DBIx/Class/Admin.pm index ffc236e..300c485 100644 --- a/lib/DBIx/Class/Admin.pm +++ b/lib/DBIx/Class/Admin.pm @@ -18,7 +18,6 @@ use DBIx::Class::Admin::Types qw/DBICConnectInfo DBICHashRef/; use MooseX::Types::JSON qw(JSON); use MooseX::Types::Path::Class qw(Dir File); use MooseX::Types::LoadableClass qw(LoadableClass); -use Try::Tiny; use namespace::clean; =head1 NAME @@ -93,7 +92,7 @@ sub _build_schema { my ($self) = @_; $self->connect_info->[3]{ignore_version} = 1; - return $self->schema_class->connect(@{$self->connect_info}); + return $self->schema_class->clone->connection(@{$self->connect_info}); } =head2 resultset @@ -210,9 +209,6 @@ has config => ( sub _build_config { my ($self) = @_; - try { require Config::Any } - catch { die ("Config::Any is required to parse the config file.\n") }; - my $cfg = Config::Any->load_files ( {files => [$self->config_file], use_ext =>1, flatten_to_hash=>1}); # just grab the config from the config file @@ -343,10 +339,14 @@ sub create { $sqlt_type ||= $self->sql_type(); my $schema = $self->schema(); - # create the dir if does not exist - $self->sql_dir->mkpath() if ( ! -d $self->sql_dir); - $schema->create_ddl_dir( $sqlt_type, (defined $schema->schema_version ? $schema->schema_version : ""), $self->sql_dir->stringify, $preversion, $sqlt_args ); + $schema->create_ddl_dir( + $sqlt_type, + (defined $schema->schema_version ? $schema->schema_version : ""), + $self->sql_dir, + $preversion, + $sqlt_args, + ); } @@ -480,7 +480,8 @@ sub update { $where ||= $self->where(); $set ||= $self->set(); my $resultset = $self->schema->resultset($rs); - $resultset = $resultset->search( ($where||{}) ); + $resultset = $resultset->search_rs( $where ) + if $where; my $count = $resultset->count(); print "This action will modify $count ".ref($resultset)." records.\n" if (!$self->quiet); @@ -511,7 +512,8 @@ sub delete { $where ||= $self->where(); $attrs ||= $self->attrs(); my $resultset = $self->schema->resultset($rs); - $resultset = $resultset->search( ($where||{}), ($attrs||()) ); + $resultset = $resultset->search_rs( ($where||{}), ($attrs||()) ) + if $where or $attrs; my $count = $resultset->count(); print "This action will delete $count ".ref($resultset)." records.\n" if (!$self->quiet); @@ -542,7 +544,8 @@ sub select { $where ||= $self->where(); $attrs ||= $self->attrs(); my $resultset = $self->schema->resultset($rs); - $resultset = $resultset->search( ($where||{}), ($attrs||()) ); + $resultset = $resultset->search_rs( ($where||{}), ($attrs||()) ) + if $where or $attrs; my @data; my @columns = $resultset->result_source->columns();