From 4cbc2deba747d8d5bef2d3eb482ad7d78273798f Mon Sep 17 00:00:00 2001 From: Richard Templet Date: Fri, 28 Mar 2014 19:56:21 -0500 Subject: [PATCH] DBIx::Class::Schema: add output_files to return names of files made by created_ddl_dir --- lib/DBIx/Class/Schema.pm | 21 +++++++++++++++++++++ lib/DBIx/Class/Storage/DBI.pm | 1 + 2 files changed, 22 insertions(+) diff --git a/lib/DBIx/Class/Schema.pm b/lib/DBIx/Class/Schema.pm index 4c3cce50e..8d2fe0561 100644 --- a/lib/DBIx/Class/Schema.pm +++ b/lib/DBIx/Class/Schema.pm @@ -1159,6 +1159,27 @@ sub create_ddl_dir { $self->storage->create_ddl_dir($self, @_); } +=head2 output_files + +=over 4 + +=item Arguments: $file + +=item Return Value: $file1, $file2, ... + +=back + +Returns names of files that were written to by the L method. + +=cut + +sub output_files { + my $self = shift; + my $of = $self->{output_files} ||= []; + push @$of, @_ if defined $file; + return @$of; +} + =head2 ddl_filename =over 4 diff --git a/lib/DBIx/Class/Storage/DBI.pm b/lib/DBIx/Class/Storage/DBI.pm index 9b5e3b03d..fe2e4488c 100644 --- a/lib/DBIx/Class/Storage/DBI.pm +++ b/lib/DBIx/Class/Storage/DBI.pm @@ -2888,6 +2888,7 @@ sub create_ddl_dir { my $file; my $filename = $schema->ddl_filename($db, $version, $dir); + $schema->output_files($filename); if (-e $filename && ($version eq $schema_version )) { # if we are dumping the current version, overwrite the DDL carp "Overwriting existing DDL file - $filename";