merge changes
[dbsrgits/DBIx-Class-DeploymentHandler.git] / lib / DBIx / Class / DeploymentHandler / VersionStorage / Standard.pm
CommitLineData
0905dc0e 1package DBIx::Class::DeploymentHandler::VersionStorage::Standard;
2use Moose;
9deabd1f 3
4# ABSTRACT: Version storage that does the normal stuff
5
0905dc0e 6use Method::Signatures::Simple;
53de57ed 7use DBIx::Class::DeploymentHandler::VersionStorage::Standard::VersionResult;
0905dc0e 8
9has schema => (
10 isa => 'DBIx::Class::Schema',
11 is => 'ro',
12 required => 1,
13);
14
15has version_rs => (
16 isa => 'DBIx::Class::ResultSet',
17 is => 'ro',
53de57ed 18 builder => '_build_version_rs',
0905dc0e 19 handles => [qw( database_version version_storage_is_installed )],
20);
21
22with 'DBIx::Class::DeploymentHandler::HandlesVersionStorage';
23
24sub _build_version_rs {
6bbb6ce7 25 $_[0]->schema->register_class(
26 __VERSION =>
27 'DBIx::Class::DeploymentHandler::VersionStorage::Standard::VersionResult'
28 );
29 $_[0]->schema->resultset('__VERSION')
0905dc0e 30}
31
32sub add_database_version { $_[0]->version_rs->create($_[1]) }
33
f344dd91 34sub delete_database_version {
35 $_[0]->version_rs->search({ version => $_[1]->{version}})->delete
36}
37
c9149a81 38__PACKAGE__->meta->make_immutable;
39
0905dc0e 401;
41
e52174e3 42# vim: ts=2 sw=2 expandtab
43
0905dc0e 44__END__
45