--- nfo/perl/libs/Data/Transfer/Sync/StorageInterface.pm 2003/02/09 05:05:58 1.2 +++ nfo/perl/libs/Data/Transfer/Sync/StorageInterface.pm 2003/02/14 14:14:38 1.4 @@ -1,4 +1,4 @@ -## $Id: StorageInterface.pm,v 1.2 2003/02/09 05:05:58 joko Exp $ +## $Id: StorageInterface.pm,v 1.4 2003/02/14 14:14:38 joko Exp $ ## ## Copyright (c) 2002 Andreas Motl ## @@ -6,6 +6,13 @@ ## ## ---------------------------------------------------------------------------------------- ## $Log: StorageInterface.pm,v $ +## Revision 1.4 2003/02/14 14:14:38 joko +## + new code refactored here +## +## Revision 1.3 2003/02/11 07:54:55 joko +## + modified module usage +## + debugging trials +## ## Revision 1.2 2003/02/09 05:05:58 joko ## + major structure changes ## - refactored code to sister modules @@ -32,8 +39,8 @@ use Data::Dumper; use Hash::Merge qw( merge ); -use libdb qw( quotesql hash2Sql ); -use Data::Transform::Deep qw( hash2object refexpr2perlref ); +use libdb qw( hash2Sql ); +use Data::Transform::Deep qw( hash2object ); # get logger instance @@ -57,8 +64,11 @@ my $self = shift; my $descent = shift; - #print Dumper($self->{node}->{$descent}); - #print Dumper($self); + # trace + #print Dumper($self->{node}->{$descent}); + #print Dumper($self); + #exit; + $logger->debug( __PACKAGE__ . "->_resolveNodeIdent( descent=$descent, accessorName=$self->{meta}->{$descent}->{accessorName} )" ); # get to the payload @@ -70,6 +80,10 @@ #my $ident = $self->{$descent}->id($item); #my $ident = $self->{meta}->{$descent}->{storage}->id($item); + # trace + #print Dumper($self->{meta}->{$descent}); + #exit; + my $ident; my $provider_method = $self->{meta}->{$descent}->{IdentProvider}->{method}; my $provider_arg = $self->{meta}->{$descent}->{IdentProvider}->{arg}; @@ -116,7 +130,7 @@ my $ident = shift; my $force = shift; - $logger->debug( __PACKAGE__ . "->_statloadNode( descent=$descent ident=$ident )" ); + #$logger->debug( __PACKAGE__ . "->_statloadNode( descent=$descent ident=$ident )" ); # fetch entry to retrieve checksum from # was: @@ -488,14 +502,18 @@ #print Dumper($map_callbacks); foreach my $node (keys %{$map_callbacks->{write}}) { #print Dumper($node); - my $perl_callback = $self->{meta}->{$descent}->{node} . '::' . $node . '_write'; + + # ------------ half-redundant: make $self->callCallback($object, $value, $opts) + my $perl_callback = $self->{meta}->{$descent}->{nodeType} . '::' . $node . '_write'; my $evalstring = $perl_callback . '( { object => $object, value => $map_callbacks->{write}->{$node}, storage => $self->{meta}->{$descent}->{storage} } );'; #print $evalstring, "\n"; exit; eval($evalstring); if ($@) { $error = 1; - print $@, "\n"; + $logger->error( __PACKAGE__ . "->_modifyNode: $@" ); + next; } + # ------------ half-redundant: make $self->callCallback($object, $value, $opts) #print "after eval", "\n"; @@ -530,5 +548,16 @@ } +sub _erase_all { + my $self = shift; + my $descent = shift; + #my $node = shift; + #print Dumper($self->{meta}->{$descent}); + #my $node = $self->{meta}->{$descent}->{nodeName}; + my $node = $self->{meta}->{$descent}->{accessorName}; + $logger->debug( __PACKAGE__ . "->_erase_all( node $node )" ); + $self->{meta}->{$descent}->{storage}->eraseAll($node); +} 1; +__END__