X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=perl%2Flib%2FIDZebra.pm;h=b4a5009fce7cda700296b62e30f3bfaed3c32111;hb=b9eea3a2ebd3feae59bc8c01a70dbe8b9e0b807a;hp=dd9365b56135766d9465f58b79c0581e35fae5b2;hpb=ac5747296ef5b85e2125da04fa1f7d33852ad971;p=idzebra-moved-to-github.git diff --git a/perl/lib/IDZebra.pm b/perl/lib/IDZebra.pm index dd9365b..b4a5009 100644 --- a/perl/lib/IDZebra.pm +++ b/perl/lib/IDZebra.pm @@ -37,6 +37,8 @@ package IDZebra; *logLevel = *IDZebrac::logLevel; *logFile = *IDZebrac::logFile; *logMsg = *IDZebrac::logMsg; +*logPrefix = *IDZebrac::logPrefix; +*logPrefix2 = *IDZebrac::logPrefix2; *odr_createmem = *IDZebrac::odr_createmem; *odr_reset = *IDZebrac::odr_reset; *odr_destroy = *IDZebrac::odr_destroy; @@ -56,8 +58,6 @@ package IDZebra; *begin_trans = *IDZebrac::begin_trans; *end_trans = *IDZebrac::end_trans; *trans_no = *IDZebrac::trans_no; -*begin_read = *IDZebrac::begin_read; -*end_read = *IDZebrac::end_read; *commit = *IDZebrac::commit; *get_shadow_enable = *IDZebrac::get_shadow_enable; *set_shadow_enable = *IDZebrac::set_shadow_enable; @@ -66,6 +66,7 @@ package IDZebra; *repository_update = *IDZebrac::repository_update; *repository_delete = *IDZebrac::repository_delete; *repository_show = *IDZebrac::repository_show; +*insert_record = *IDZebrac::insert_record; *update_record = *IDZebrac::update_record; *delete_record = *IDZebrac::delete_record; *search_PQF = *IDZebrac::search_PQF; @@ -334,84 +335,12 @@ sub STORE { } -############# Class : IDZebra::RetrievalRecordBuf ############## - -package IDZebra::RetrievalRecordBuf; -@ISA = qw( IDZebra ); -%OWNER = (); -%BLESSEDMEMBERS = ( -); - -%ITERATORS = (); -*swig_buf_get = *IDZebrac::RetrievalRecordBuf_buf_get; -*swig_buf_set = *IDZebrac::RetrievalRecordBuf_buf_set; -*swig_len_get = *IDZebrac::RetrievalRecordBuf_len_get; -*swig_len_set = *IDZebrac::RetrievalRecordBuf_len_set; -sub new { - my $pkg = shift; - my @args = @_; - my $self = IDZebrac::new_RetrievalRecordBuf(@args); - return undef if (!defined($self)); - $OWNER{$self} = 1; - my %retval; - tie %retval, "IDZebra::RetrievalRecordBuf", $self; - return bless \%retval, $pkg; -} - -sub DESTROY { - return unless $_[0]->isa('HASH'); - my $self = tied(%{$_[0]}); - return unless defined $self; - delete $ITERATORS{$self}; - if (exists $OWNER{$self}) { - IDZebrac::delete_RetrievalRecordBuf($self); - delete $OWNER{$self}; - } -} - -sub DISOWN { - my $self = shift; - my $ptr = tied(%$self); - delete $OWNER{$ptr}; - }; - -sub ACQUIRE { - my $self = shift; - my $ptr = tied(%$self); - $OWNER{$ptr} = 1; - }; - -sub FETCH { - my ($self,$field) = @_; - my $member_func = "swig_${field}_get"; - my $val = $self->$member_func(); - if (exists $BLESSEDMEMBERS{$field}) { - return undef if (!defined($val)); - my %retval; - tie %retval,$BLESSEDMEMBERS{$field},$val; - return bless \%retval, $BLESSEDMEMBERS{$field}; - } - return $val; -} - -sub STORE { - my ($self,$field,$newval) = @_; - my $member_func = "swig_${field}_set"; - if (exists $BLESSEDMEMBERS{$field}) { - $self->$member_func(tied(%{$newval})); - } else { - $self->$member_func($newval); - } -} - - ############# Class : IDZebra::RetrievalRecord ############## package IDZebra::RetrievalRecord; @ISA = qw( IDZebra ); %OWNER = (); %BLESSEDMEMBERS = ( - buf => 'IDZebra::RetrievalRecordBuf', ); %ITERATORS = ();