X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FResultSource.pm;h=659948f789d8894dde4a1485834050c4eb7354b4;hb=96a3c685e86416445cbd59dc2309e102f52b9c87;hp=689de7df23c8aa0487bbdc066bface89daaedee5;hpb=416e92f76193b3215745593cd066ff9a8e3ab1b8;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class/ResultSource.pm b/lib/DBIx/Class/ResultSource.pm index 689de7d..659948f 100644 --- a/lib/DBIx/Class/ResultSource.pm +++ b/lib/DBIx/Class/ResultSource.pm @@ -12,10 +12,10 @@ __PACKAGE__->load_components(qw/AccessorGroup/); __PACKAGE__->mk_group_accessors('simple' => qw/_ordered_columns _columns _primaries _unique_constraints name resultset_attributes - schema from _relationships/); + schema from _relationships source_name/); __PACKAGE__->mk_group_accessors('component_class' => qw/resultset_class - result_class source_name/); + result_class/); =head1 NAME @@ -30,12 +30,25 @@ retrieved, most usually a table (see L) =head1 METHODS +=pod + +=head2 new + + $class->new(); + + $class->new({attribute_name => value}); + +Creates a new ResultSource object. Not normally called directly by end users. + =cut sub new { my ($class, $attrs) = @_; $class = ref $class if ref $class; - my $new = bless({ %{$attrs || {}}, _resultset => undef }, $class); + + my $new = { %{$attrs || {}}, _resultset => undef }; + bless $new, $class; + $new->{resultset_class} ||= 'DBIx::Class::ResultSet'; $new->{resultset_attributes} = { %{$new->{resultset_attributes} || {}} }; $new->{_ordered_columns} = [ @{$new->{_ordered_columns}||[]}]; @@ -178,7 +191,7 @@ sub column_info { my $info; my $lc_info; # eval for the case of storage without table - eval { $info = $self->storage->columns_info_for( $self->from, keys %{$self->_columns} ) }; + eval { $info = $self->storage->columns_info_for( $self->from ) }; unless ($@) { for my $realcol ( keys %{$info} ) { $lc_info->{lc $realcol} = $info->{$realcol};