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