Port to Moo
[dbsrgits/DBIx-Class-DeploymentHandler.git] / lib / DBIx / Class / DeploymentHandler / WithReasonableDefaults.pm
index 2f1c913..000a104 100644 (file)
@@ -1,5 +1,5 @@
 package DBIx::Class::DeploymentHandler::WithReasonableDefaults;
-use Moose::Role;
+use Moo::Role;
 
 # ABSTRACT: Make default arguments to a few methods sensible
 
@@ -8,12 +8,13 @@ requires qw( prepare_upgrade prepare_downgrade database_version schema_version )
 around prepare_upgrade => sub {
   my $orig = shift;
   my $self = shift;
+  my $args = shift || {};
 
-  my $from_version = shift || $self->database_version;
-  my $to_version   = shift || $self->schema_version;
-  my $version_set  = shift || [$from_version, $to_version];
+  $args->{from_version} ||= $self->database_version;
+  $args->{to_version}   ||= $self->schema_version;
+  $args->{version_set}  ||= [$args->{from_version}, $args->{to_version}];
 
-  $self->$orig($from_version, $to_version, $version_set);
+  $self->$orig($args);
 };
 
 
@@ -21,11 +22,13 @@ around prepare_downgrade => sub {
   my $orig = shift;
   my $self = shift;
 
-  my $from_version = shift || $self->database_version;
-  my $to_version   = shift || $self->schema_version;
-  my $version_set  = shift || [$to_version, $from_version];
+  my $args = shift || {};
 
-  $self->$orig($from_version, $to_version, $version_set);
+  $args->{to_version}   ||= $self->database_version;
+  $args->{from_version} ||= $self->schema_version;
+  $args->{version_set}  ||= [$args->{from_version}, $args->{to_version}];
+
+  $self->$orig($args);
 };
 
 around install_resultsource => sub {
@@ -62,8 +65,8 @@ Defaulted args:
 
 Defaulted args:
 
-  my $from_version = $self->database_version;
-  my $to_version   = $self->schema_version;
+  my $from_version = $self->schema_version;
+  my $to_version   = $self->data_version;
   my $version_set  = [$from_version, $to_version];
 
 =head2 install_resultsource