package DBIx::Class::DeploymentHandler::WithSqltDeployMethod;
use Moose::Role;
-use DBIx::Class::DeploymentHandler::SqltDeployMethod;
+# ABSTRACT: Delegate/Role for DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator
-use Carp 'carp';
+use DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator;
has deploy_method => (
- isa => 'DBIx::Class::DeploymentHandler::SqltDeployMethod',
+ does => 'DBIx::Class::DeploymentHandler::HandlesDeploy',
is => 'ro',
lazy_build => 1,
- handles => [qw{
- deployment_statements
- create_install_ddl
- create_update_ddl
- create_ddl_dir
- upgrade_single_step
- }],
+ handles => 'DBIx::Class::DeploymentHandler::HandlesDeploy',
+);
+
+has upgrade_directory => (
+ isa => 'Str',
+ is => 'ro',
+ required => 1,
+ default => 'sql',
+);
+
+has databases => (
+ coerce => 1,
+ isa => 'DBIx::Class::DeploymentHandler::Databases',
+ is => 'ro',
+ default => sub { [qw( MySQL SQLite PostgreSQL )] },
+);
+
+has sqltargs => (
+ isa => 'HashRef',
+ is => 'ro',
+ default => sub { {} },
);
sub _build_deploy_method {
- my $self = shift;
- my $args = {
- 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);
+ my $self = shift;
+ my $args = {
+ schema => $self->schema,
+ databases => $self->databases,
+ upgrade_directory => $self->upgrade_directory,
+ sqltargs => $self->sqltargs,
+ };
+
+ $args->{schema_version} = $self->schema_version if $self->has_schema_version;
+ DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator->new($args);
}
1;
+# vim: ts=2 sw=2 expandtab
+
__END__
-vim: ts=2,sw=2,expandtab
+TODO: pod