Commit | Line | Data |
01342998 |
1 | package DBIx::Class::DeploymentHandler::VersionStorage::Deprecated::Component; |
2 | |
0fa93773 |
3 | # ABSTRACT: (DEPRECATED) Attach this component to your schema to ensure you stay up to date |
4 | |
01342998 |
5 | use strict; |
6 | use warnings; |
7 | |
8 | use Carp 'carp'; |
9 | use DBIx::Class::DeploymentHandler::VersionStorage::Deprecated::VersionResult; |
10 | |
11 | sub attach_version_storage { |
12 | $_[0]->register_class( |
13 | dbix_class_schema_versions => 'DBIx::Class::DeploymentHandler::VersionStorage::Deprecated::VersionResult' |
14 | ); |
15 | } |
16 | |
17 | sub connection { |
18 | my $self = shift; |
19 | $self->next::method(@_); |
20 | |
21 | $self->attach_version_storage; |
22 | |
23 | my $args = $_[3] || {}; |
24 | |
25 | unless ( $args->{ignore_version} || $ENV{DBIC_NO_VERSION_CHECK}) { |
26 | my $versions = $self->resultset('dbix_class_schema_versions'); |
27 | |
28 | if (!$versions->version_storage_is_installed) { |
29 | carp "Your DB is currently unversioned. Please call upgrade on your schema to sync the DB.\n"; |
30 | } elsif ($versions->database_version ne $self->schema_version) { |
31 | carp 'Versions out of sync. This is ' . $self->schema_version . |
32 | ', your database contains version ' . $versions->database_version . ", please call upgrade on your Schema.\n"; |
33 | } |
34 | } |
35 | |
36 | return $self; |
37 | } |
38 | |
39 | 1; |
e52174e3 |
40 | |
41 | # vim: ts=2 sw=2 expandtab |
42 | |
43 | __END__ |
44 | |
e068a12a |
45 | =head1 DEPRECATED |
46 | |
47 | This component has been suplanted by |
48 | L<DBIx::Class::DeploymentHandler::VersionStorage::Standard::Component>. |
49 | In the next major version (1) we will begin issuing a warning on it's use. |
50 | In the major version after that (2) we will remove it entirely. |
51 | |