X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FResultSource.pm;h=f4984900967c08f1e2b2178743bbafd4ad2b0cce;hb=67a0df4fb01cb1c5c0e960ff9b289e9326c38a70;hp=659948f789d8894dde4a1485834050c4eb7354b4;hpb=04786a4c19fe3964002b69e8a3dbb291524e0610;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/ResultSource.pm b/lib/DBIx/Class/ResultSource.pm index 659948f..f498490 100644 --- a/lib/DBIx/Class/ResultSource.pm +++ b/lib/DBIx/Class/ResultSource.pm @@ -12,7 +12,7 @@ __PACKAGE__->load_components(qw/AccessorGroup/); __PACKAGE__->mk_group_accessors('simple' => qw/_ordered_columns _columns _primaries _unique_constraints name resultset_attributes - schema from _relationships source_name/); + schema from _relationships column_info_from_storage source_name/); __PACKAGE__->mk_group_accessors('component_class' => qw/resultset_class result_class/); @@ -184,6 +184,7 @@ sub column_info { unless exists $self->_columns->{$column}; #warn $self->{_columns_info_loaded}, "\n"; if ( ! $self->_columns->{$column}{data_type} + and $self->column_info_from_storage and ! $self->{_columns_info_loaded} and $self->schema and $self->storage ) { @@ -204,6 +205,15 @@ sub column_info { return $self->_columns->{$column}; } +=head2 load_column_info_from_storage + +Enables the on-demand automatic loading of the above column +metadata from storage as neccesary. + +=cut + +sub load_column_info_from_storage { shift->column_info_from_storage(1) } + =head2 columns my @column_names = $obj->columns;