use proxied schema_version so that people can override it
[dbsrgits/DBIx-Class-DeploymentHandler.git] / lib / DBIx / Class / DeploymentHandler / Dad.pm
index 064c093..974884e 100644 (file)
@@ -11,7 +11,6 @@ has schema => (
   isa      => 'DBIx::Class::Schema',
   is       => 'ro',
   required => 1,
-  handles => ['schema_version'],
 );
 
 has backup_directory => (
@@ -25,7 +24,14 @@ has to_version => (
   lazy_build => 1,
 );
 
-sub _build_to_version { $_[0]->schema->schema_version }
+sub _build_to_version { $_[0]->schema_version }
+
+has schema_version => (
+  is         => 'ro',
+  lazy_build => 1,
+);
+
+sub _build_schema_version { $_[0]->schema->schema_version }
 
 method install {
   croak 'Install not possible as versions table already exists in database'
@@ -79,6 +85,11 @@ __END__
 The L<DBIx::Class::Schema> (B<required>) that is used to talk to the database
 and generate the DDL.
 
+=attr schema_version
+
+The version that the schema is currently at.  Defaults to
+C<< $self->schema->schema_version >>.
+
 =attr backup_directory
 
 The directory where backups are stored
@@ -94,7 +105,7 @@ The version (defaults to schema's version) to migrate the database to
 Deploys the current schema into the database.  Populates C<version_storage> with
 C<version> and C<ddl>.
 
-B<Note>: you typically need to call C<< $dh->prepare_install >> before you call
+B<Note>: you typically need to call C<< $dh->prepare_deploy >> before you call
 this method.
 
 B<Note>: you cannot install on top of an already installed database
@@ -169,9 +180,9 @@ should probably implement these too, even if they are no-ops.
 
 see L<DBIx::Class::DeploymentHandler::HandlesVersionStorage/database_version>
 
-=head2 prepare_install
+=head2 prepare_deploy
 
-see L<DBIx::Class::DeploymentHandler::HandlesDeploy/prepare_install>
+see L<DBIx::Class::DeploymentHandler::HandlesDeploy/prepare_deploy>
 
 =head2 prepare_resultsource_install