txn_Wrap for upgrades
[dbsrgits/DBIx-Class-DeploymentHandler.git] / lib / DBIx / Class / DeploymentHandler / WithSqltDeployMethod.pm
index 4555d1e..20f92f7 100644 (file)
@@ -1,42 +1,23 @@
 package DBIx::Class::DeploymentHandler::WithSqltDeployMethod;
 use Moose::Role;
 
-use DBIx::Class::DeploymentHandler::SqltDeployMethod;
-
-use Carp 'carp';
+use DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator;
 
 has deploy_method => (
-
-# < mst> isa => 'DBIx::Class::DeploymentHandler::SqltDeployMethod',
-# < mst> should be
-# < mst> does => <some role>
-# < mst> and that role should supply those methods
-# < mst> then you can pass handles => <some role> as well
-
-  isa => 'DBIx::Class::DeploymentHandler::SqltDeployMethod',
+  does => 'DBIx::Class::DeploymentHandler::HandlesDeploy',
   is  => 'ro',
   lazy_build => 1,
-  handles => [qw{
-    deployment_statements
-    deploy
-   prepare_install
-   prepare_update
-   upgrade_single_step
-  }],
+  handles =>  'DBIx::Class::DeploymentHandler::HandlesDeploy',
 );
 
 sub _build_deploy_method {
   my $self = shift;
-  my $args = {
+  DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator->new({
     schema            => $self->schema,
     databases         => $self->databases,
     upgrade_directory => $self->upgrade_directory,
     sqltargs          => $self->sqltargs,
-    do_backup         => $self->do_backup,
-  };
-  $args->{backup_directory} = $self->backup_directory
-    if $self->has_backup_directory;
-  DBIx::Class::DeploymentHandler::SqltDeployMethod->new($args);
+  });
 }
 
 1;