X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FDeploymentHandler%2FVersionStorage%2FStandard.pm;h=bff0301fa1eb80686627fbd2c45ecf39e1e9fd9e;hb=ffe7229cba92b8e8ed4aa259bea29f825595dbb3;hp=88376d00e17a62d6763379760088e24ba3027183;hpb=6bbb6ce77c91be6cac19b0f9a888ba0bfcd7c3b4;p=dbsrgits%2FDBIx-Class-DeploymentHandler.git diff --git a/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm b/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm index 88376d0..bff0301 100644 --- a/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm +++ b/lib/DBIx/Class/DeploymentHandler/VersionStorage/Standard.pm @@ -1,6 +1,14 @@ package DBIx::Class::DeploymentHandler::VersionStorage::Standard; use Moose; -use Method::Signatures::Simple; +use DBIx::Class::DeploymentHandler::Logger; +use Log::Contextual ':log', -package_logger => + DBIx::Class::DeploymentHandler::Logger->new({ + env_prefix => 'DBICDH' + }); + +# ABSTRACT: Version storage that does the normal stuff + +use DBIx::Class::DeploymentHandler::VersionStorage::Standard::VersionResult; has schema => ( isa => 'DBIx::Class::Schema', @@ -11,8 +19,7 @@ has schema => ( has version_rs => ( isa => 'DBIx::Class::ResultSet', is => 'ro', - lazy_build => 1, # builder comes from another role... - # which is... probably not how we want it + builder => '_build_version_rs', handles => [qw( database_version version_storage_is_installed )], ); @@ -26,10 +33,23 @@ sub _build_version_rs { $_[0]->schema->resultset('__VERSION') } -sub add_database_version { $_[0]->version_rs->create($_[1]) } +sub add_database_version { + my $version = $_[1]->{version}; + log_debug { "Adding database version $version" }; + $_[0]->version_rs->create($_[1]) +} + +sub delete_database_version { + my $version = $_[1]->{version}; + log_debug { "Deleting database version $version" }; + $_[0]->version_rs->search({ version => $version})->delete +} + +__PACKAGE__->meta->make_immutable; 1; +# vim: ts=2 sw=2 expandtab + __END__ -vim: ts=2 sw=2 expandtab