kinda unbroke things
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / Schema.pm
index a38572c..c7214ca 100644 (file)
@@ -390,6 +390,8 @@ sub compose_namespace {
         $target_class => $source->result_class, ($base ? $base : ())
       );
       $source->result_class($target_class);
+      $target_class->result_source_instance($source)
+        if $target_class->can('result_source_instance');
     }
   }
   Class::C3->reinitialize();
@@ -555,8 +557,8 @@ context and it will behave as expected.
 sub txn_do {
   my ($self, $coderef, @args) = @_;
 
-  ref $self or $self->throw_exception
-    ('Cannot execute txn_do as a class method');
+  $self->storage or $self->throw_exception
+    ('txn_do called on $schema without storage');
   ref $coderef eq 'CODE' or $self->throw_exception
     ('$coderef must be a CODE reference');
 
@@ -731,6 +733,15 @@ sub create_ddl_dir
   $self->storage->create_ddl_dir($self, @_);
 }
 
+=head2 ddl_filename (EXPERIMENTAL)
+
+  my $filename = $table->ddl_filename($type, $dir, $version)
+
+Creates a filename for a SQL file based on the table class name.  Not
+intended for direct end user use.
+
+=cut
+
 sub ddl_filename
 {
     my ($self, $type, $dir, $version) = @_;