Merge 'trunk' into 'DBIx-Class-current'
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Schema.pm
index 4478d6f..2913a2f 100644 (file)
@@ -97,17 +97,13 @@ sub register_source {
 
   %$source = %{ $source->new( { %$source, source_name => $moniker }) };
 
-  my %reg = %{$self->source_registrations};
-  $reg{$moniker} = $source;
-  $self->source_registrations(\%reg);
+  $self->source_registrations->{$moniker} = $source;
 
   $source->schema($self);
 
   weaken($source->{schema}) if ref($self);
   if ($source->result_class) {
-    my %map = %{$self->class_mappings};
-    $map{$source->result_class} = $moniker;
-    $self->class_mappings(\%map);
+    $self->class_mappings->{$source->result_class} = $moniker;
   }
 }
 
@@ -578,9 +574,6 @@ will produce the output
 
 sub compose_namespace {
   my ($self, $target, $base) = @_;
-  my %reg = %{ $self->source_registrations };
-  my %target;
-  my %map;
   my $schema = $self->clone;
   {
     no warnings qw/redefine/;
@@ -1007,7 +1000,7 @@ sub ddl_filename {
     my ($self, $type, $dir, $version, $pversion) = @_;
 
     my $filename = ref($self);
-    $filename =~ s/::/-/;
+    $filename =~ s/::/-/g;
     $filename = File::Spec->catfile($dir, "$filename-$version-$type.sql");
     $filename =~ s/$version/$pversion-$version/ if($pversion);