fixed minor bug with using Fieldmapper to find class::dbi classes
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 15 Jul 2005 15:38:10 +0000 (15:38 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Fri, 15 Jul 2005 15:38:10 +0000 (15:38 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@1206 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/perlmods/OpenILS/Application/Storage/CDBI.pm
Open-ILS/src/perlmods/OpenILS/Utils/Fieldmapper.pm

index de9b419..0aa6be5 100644 (file)
@@ -68,11 +68,11 @@ sub fast_flesh_sth {
 
        unless (defined $value) {
                $value = $field;
-               $field = $class->primary_column;
+               ($field) = $class->columns('Primary');
        }
 
        unless (defined $field) {
-               $field = $class->primary_column;
+               ($field) = $class->columns('Primary');
        }
 
        unless ($order->{order_by}) {
@@ -134,7 +134,7 @@ sub retrieve {
        my $self = shift;
        my $arg = shift;
        if (ref($arg) and UNIVERSAL::isa($arg => 'Fieldmapper')) {
-               my $col = $arg->primary_column;
+               my ($col) = $self->columns('Primary');
                $arg = $arg->$col;
        }
        $log->debug("Retrieving $self with $arg", INTERNAL);
@@ -185,7 +185,7 @@ sub create_from_fieldmapper {
        $log->debug("Creating node of type ".ref($fm), DEBUG);
 
        my $class = ref($obj) || $obj;
-       my $primary = $class->primary_column;
+       my ($primary) = $class->columns('Primary');
 
        if (ref $fm) {
                my %hash = map { defined $fm->$_ ?
index 051af15..1d2b287 100644 (file)
@@ -323,6 +323,11 @@ sub api_level {
        return $fieldmap->{$self->class_name}->{api_level};
 }
 
+sub cdbi {
+       my $self = shift;
+       return $fieldmap->{$self->class_name}->{cdbi};
+}
+
 
 sub is_virtual {
        my $self = shift;