NAME
PICA::SOAPServer - Provide a SOAP interface to a PICA::Store
VERSION
version 0.585
SYNOPSIS
use PICA::SOAPServer;
use PICA::SQLiteStore;
use SOAP::Transport::HTTP;
my $dbfile = "path/to/picawiki.db";
my $store = eval { PICA::SQLiteStore->new( $dbfile ); } || $@;
my $server = PICA::SOAPServer->new( $store );
SOAP::Transport::HTTP::CGI
-> serializer( SOAP::Serializer->new->envprefix('soap') )
-> dispatch_with( { 'http://www.gbv.de/schema/webcat-1.0' => $server } )
-> handle;
DESCRIPTION
THIS CLASS WILL BE REMOVED IN A FUTURE RELEASE!
This class wraps the CRUD-methods (create, get, update, delete) of a given PICA::Store and makes them accessible via SOAP. This way you can provide a so called PICA Webcat interface for a database of PICA+ records. See PICA::SOAPClient for a webcat client interface.
Each SOAP method returns five named values of type string:
- ppn
-
The id (PPN) of the record
- record
-
The record as string
- version
-
The version of the record
- dbsid
-
The database id the record was accessed in (may be the empty string)
- format
-
The record format which is always 'pp' for PICA+.
METHODS
new ( $store )
Create a new SOAPServer with underlying PICA::Store. This method is not meant to be called via SOAP but to initialize a server. The server can then be run this way:
$server = PICA::SOAPServer->new ( $store );
SOAP::Transport::HTTP::CGI
-> dispatch_with( { 'http://www.gbv.de/schema/webcat-1.0' => $server } )
-> handle;
get
Retrieve a PICA+ record by its id (ppn). Mandatory SOAP parameters are ppn, userkey, password, and dbsid. Optional parameters are language and format.
create
Create a new PICA+ record. Mandatory SOAP parameters are record, userkey, password, and dbsid. Optional parameters are language, format, and rectype.
update
Modify an existing PICA+ record. Mandatory SOAP parameters are ppn, record, version, userkey, password, and dbsid. Optional parameters are language and format.
delete
Delete a PICA+ record. Mandatory SOAP parameters are ppn, userkey, password, and dbsid. The only optional parameter is language.
SEE ALSO
See PICA::Store, PICA::SOAPClient and SOAP::Lite.
AUTHOR
Jakob Voß <voss@gbv.de>
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Verbundzentrale Goettingen (VZG) and Jakob Voss.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.