extends 'DBIx::Class::DeploymentHandler::Dad';
# a single with would be better, but we can't do that
# see: http://rt.cpan.org/Public/Bug/Display.html?id=46347
-with 'DBIx::Class::DeploymentHandler::WithSqltDeployMethod',
- 'DBIx::Class::DeploymentHandler::WithMonotonicVersions',
- 'DBIx::Class::DeploymentHandler::WithStandardVersionStorage';
+with 'DBIx::Class::DeploymentHandler::WithApplicatorDumple' => {
+ interface_role => 'DBIx::Class::DeploymentHandler::HandlesDeploy',
+ class_name => 'DBIx::Class::DeploymentHandler::DeployMethod::SQL::Translator',
+ delegate_name => 'deploy_method',
+ attributes_to_assume => ['schema'],
+ attributes_to_copy => [qw( databases upgrade_directory sql_translator_args )],
+ },
+ 'DBIx::Class::DeploymentHandler::WithApplicatorDumple' => {
+ interface_role => 'DBIx::Class::DeploymentHandler::HandlesVersioning',
+ class_name => 'DBIx::Class::DeploymentHandler::VersionHandler::Monotonic',
+ delegate_name => 'version_handler',
+ attributes_to_assume => [qw( database_version schema_version to_version )],
+ },
+ 'DBIx::Class::DeploymentHandler::WithApplicatorDumple' => {
+ interface_role => 'DBIx::Class::DeploymentHandler::HandlesVersionStorage',
+ class_name => 'DBIx::Class::DeploymentHandler::VersionStorage::Standard',
+ delegate_name => 'version_storage',
+ attributes_to_assume => ['schema'],
+ };
with 'DBIx::Class::DeploymentHandler::WithReasonableDefaults';
sub prepare_version_storage_install {
}
sub prepare_install {
- $_[0]->prepare_deploy;
- $_[0]->prepare_version_storage_install;
+ $_[0]->prepare_deploy;
+ $_[0]->prepare_version_storage_install;
}
__PACKAGE__->meta->make_immutable;
my $s = My::Schema->connect(...);
my $dh = DH->new({
- schema => $s,
- databases => 'SQLite',
- sqltargs => { add_drop_table => 0 },
+ schema => $s,
+ databases => 'SQLite',
+ sql_translator_args => { add_drop_table => 0 },
});
$dh->prepare_install;
my $s = My::Schema->connect(...);
my $dh = DH->new({
- schema => $s,
- databases => 'SQLite',
- sqltargs => { add_drop_table => 0 },
+ schema => $s,
+ databases => 'SQLite',
+ sql_translator_args => { add_drop_table => 0 },
});
$dh->prepare_upgrade(1, 2);