=head1 METHODS THAT ARE REQUIRED IN SUBCLASSES
+=head2 deploy
+
+See L<DBIx::Class::DeploymentHandler::HandlesDeploy/deploy>.
+
=head2 version_storage_is_installed
- warn q(I can't version this database!)
- unless $dh->version_storage_is_installed
+See L<DBIx::Class::DeploymentHandler::HandlesVersionStorage/version_storage_is_installed>.
-return true iff the version storage is installed.
+=head2 add_database_version
-=head2 deploy
+See L<DBIx::Class::DeploymentHandler::HandlesVersionStorage/add_database_version>.
- $dh->deploy
+=head2 delete_database_version
-Deploy the schema to the database.
+See L<DBIx::Class::DeploymentHandler::HandlesVersionStorage/delete_database_version>.
-=head2 add_database_version
+=head2 next_version_set
- $dh->add_database_version({
- version => '1.02',
- ddl => $ddl # can be undef,
- upgrade_sql => $sql # can be undef,
- });
+See L<DBIx::Class::DeploymentHandler::HandlesVersioning/next_version_set>.
-Store a new version into the version storage
+=head2 previous_version_set
-=head2 delete_database_version
+See L<DBIx::Class::DeploymentHandler::HandlesVersioning/previous_version_set>.
- $dh->delete_database_version({ version => '1.02' })
+=head2 upgrade_single_step
-simply deletes given database version from the version storage
+See L<DBIx::Class::DeploymentHandler::HandlesDeploy/upgrade_single_step>.
-=head2 next_version_set
+=head2 downgrade_single_step
- print 'versions to install: ';
- while (my $vs = $dh->next_version_set) {
- print join q(, ), @{$vs}
- }
- print qq(\n);
+See L<DBIx::Class::DeploymentHandler::HandlesDeploy/downgrade_single_step>.
-return an arrayref describing each version that needs to be
-installed to upgrade to C<< $dh->to_version >>.
+=head1 ORTHODOX METHODS
-=head2 previous_version_set
+These methods are not actually B<required> as things will probably still work
+if you don't implement them, but if you want your subclass to get along with
+other subclasses (or more likely, tools made to use another subclass), you
+should probably implement these too, even if they are no-ops.
- print 'versions to uninstall: ';
- while (my $vs = $dh->previous_version_set) {
- print join q(, ), @{$vs}
- }
- print qq(\n);
+The methods are:
-return an arrayref describing each version that needs to be
-"installed" to downgrade to C<< $dh->to_version >>.
+=head2 database_version
-=head2 upgrade_single_step
+see L<DBIx::Class::DeploymentHandler::HandlesVersionStorage/database_version>
- my ($ddl, $sql) = @{$dh->upgrade_single_step($version_set)||[]}
+=head2 prepare_install
-call a single upgrade migration. Takes an arrayref describing the version to
-upgrade to. Optionally return an arrayref containing C<$ddl> describing
-version installed and C<$sql> used to get to that version.
+see L<DBIx::Class::DeploymentHandler::HandlesDeploy/prepare_install>
-=head2 downgrade_single_step
+=head2 prepare_resultsource_install
+
+see L<DBIx::Class::DeploymentHandler::HandlesDeploy/prepare_resultsouce_install>
+
+=head2 install_resultsource
+
+see L<DBIx::Class::DeploymentHandler::HandlesDeploy/install_resultsource>
+
+=head2 prepare_upgrade
+
+see L<DBIx::Class::DeploymentHandler::HandlesDeploy/prepare_upgrade>
+
+=head2 prepare_downgrade
+
+see L<DBIx::Class::DeploymentHandler::HandlesDeploy/prepare_downgrade>
- $dh->upgrade_single_step($version_set);
+=back
-call a single downgrade migration. Takes an arrayref describing the version to
-downgrade to.
__END__
=method deploy
- $deploy_method->deploy;
+ $dh->deploy
+
+Deploy the schema to the database.
=method prepare_resultsource_install
=method upgrade_single_step
- $deploy_method->upgrade_single_step([1, 2]);
+ my ($ddl, $sql) = @{$dh->upgrade_single_step($version_set)||[]}
+
+call a single upgrade migration. Takes an arrayref describing the version to
+upgrade to. Optionally return an arrayref containing C<$ddl> describing
+version installed and C<$sql> used to get to that version.
=method downgrade_single_step
- $deploy_method->upgrade_single_step([1, 2]);
+ $dh->downgrade_single_step($version_set);
+
+call a single downgrade migration. Takes an arrayref describing the version to
+downgrade to.
vim: ts=2 sw=2 expandtab
=method add_database_version
- $version_storage->add_database_version({
- version => '1.2002',
- ddl => $ddl, # optional
- upgrade_sql => undef, # optional
- })
+ $dh->add_database_version({
+ version => '1.02',
+ ddl => $ddl # can be undef,
+ upgrade_sql => $sql # can be undef,
+ });
+
+Store a new version into the version storage
=method delete_database_version
- $version_storage->delete_database_version({ version => '1.2002' })
+ $dh->delete_database_version({ version => '1.02' })
+
+simply deletes given database version from the version storage
=method version_storage_is_installed
- if ($verson_storage->version_storage_is_installed) {
- say q(you're golden!)
- }
+ warn q(I can't version this database!)
+ unless $dh->version_storage_is_installed
+
+return true iff the version storage is installed.
+
vim: ts=2 sw=2 expandtab
=method next_version_set
- while (my $version_set = $versions->next_version_set) {
- ...
+ print 'versions to install: ';
+ while (my $vs = $dh->next_version_set) {
+ print join q(, ), @{$vs}
}
+ print qq(\n);
+
+return an arrayref describing each version that needs to be
+installed to upgrade to C<< $dh->to_version >>.
=method previous_version_set
- while (my $version_set = $versions->previous_version_set) {
- ...
+ print 'versions to uninstall: ';
+ while (my $vs = $dh->previous_version_set) {
+ print join q(, ), @{$vs}
}
+ print qq(\n);
+
+return an arrayref describing each version that needs to be
+"installed" to downgrade to C<< $dh->to_version >>.
# normally a VersionHandler will take
# a to_version and yeild an iterator of