2 # Transaction: Superclass of all the transactional status objects
5 package OpenILS::SIP::Transaction;
8 use strict; use warnings;
9 use Sys::Syslog qw(syslog);
12 use OpenILS::SIP::Msg qw/:const/;
21 transaction_id => undef,
22 sip_fee_type => '01', # Other/Unknown
24 sip_currency => 'CAD',
35 my( $class, %args ) = @_;
37 my $self = { _permitted => \%fields, %fields };
40 $self->authtoken($args{authtoken});
42 syslog('LOG_DEBUG', "OILS: Created new transaction with authtoken %s", $self->authtoken);
44 my $e = OpenILS::SIP->editor();
45 $e->{authtoken} = $self->authtoken;
56 my $class = ref($self) or croak "$self is not an object";
61 unless (exists $self->{_permitted}->{$name}) {
62 croak "Can't access '$name' field of class '$class'";
66 return $self->{$name} = shift;
68 return $self->{$name};