use XML::LibXML;
use Try::Tiny;
-use Object::Tiny qw{xmldoc config};
+use Object::Tiny qw{xmldoc config namespace};
our $VERSION = '0.01';
our $nsURI = 'http://www.niso.org/2008/ncip';
my $config_dir = shift;
my $self = {};
my $config = NCIP::Configuration->new($config_dir);
- $self->{config} = $config;
+ $self->{config} = $config;
+ $self->{namespace} = $nsURI;
return bless $self, $class;
}
#bail out for now
}
- my $handler = NCIP::Handler->new($request_type);
+ my $handler = NCIP::Handler->new( $self->namespace(), $request_type );
return $handler->handle( $self->xmldoc );
}
#===============================================================================
use Modern::Perl;
-use Object::Tiny qw{ type };
+use Object::Tiny qw{ type namespace };
use NCIP::Handler::LookupItem;
sub new {
- my $class = shift;
- my $type = shift;
- my $xmldoc = shift;
- my $subclass = __PACKAGE__ . "::" . $type;
- my $self = bless { type => $type }, $subclass;
+ my $class = shift;
+ my $namespace = shift;
+ my $type = shift;
+ my $subclass = __PACKAGE__ . "::" . $type;
+ my $self = bless { type => $type, namspace => $namespace }, $subclass;
return $self;
}
use Modern::Perl;
use NCIP::Handler;
+use NCIP::Item;
+
our @ISA = qw(NCIP::Handler);
sub handle {
my $self = shift;
my $xmldoc = shift;
if ($xmldoc) {
- # my ($item_id) = $dom->getElementsByTagNameNS( $nsURI, 'ItemId' );
+ my ($item_id) =
+ $xmldoc->getElementsByTagNameNS( $self->namespace(), 'ItemId' );
+ my $item = NCIP::Item->new( { itemid => $item_id } );
}
return $self->type;
}