1 package DBIx::Class::DeploymentHandler::VersionStorage::Standard;
4 use DBIx::Class::DeploymentHandler::LogImporter ':log';
6 # ABSTRACT: Version storage that does the normal stuff
8 use DBIx::Class::DeploymentHandler::VersionStorage::Standard::VersionResult;
16 isa => 'DBIx::Class::ResultSet',
18 builder => '_build_version_rs',
19 handles => [qw( database_version version_storage_is_installed )],
22 with 'DBIx::Class::DeploymentHandler::HandlesVersionStorage';
24 sub _build_version_rs {
25 $_[0]->schema->register_class(
27 'DBIx::Class::DeploymentHandler::VersionStorage::Standard::VersionResult'
29 $_[0]->schema->resultset('__VERSION')
32 sub add_database_version {
33 my $version = $_[1]->{version};
34 log_debug { "Adding database version $version" };
35 $_[0]->version_rs->create($_[1])
38 sub delete_database_version {
39 my $version = $_[1]->{version};
40 log_debug { "Deleting database version $version" };
41 $_[0]->version_rs->search({ version => $version})->delete
44 __PACKAGE__->meta->make_immutable;
48 # vim: ts=2 sw=2 expandtab
54 This class is an implementation of
55 L<DBIx::Class::DeploymentHandler::HandlesVersionStorage>. Pretty much all the
56 documentation is there.