NAME
Catmandu::FedoraCommons::Response - Perl model for generic Fedora Commons REST API responses
SYNOPSIS
use Catmandu::FedoraCommons;my $fedora = Catmandu::FedoraCommons->new('http://localhost:8080/fedora','fedoraAdmin','fedoraAdmin');my $result = $fedora->findObjects(terms=>'*');die $resut->error unless $result->is_ok;my $obj = $result->parse_content;$result->is_ok;$result->error;$result->raw;$result->content_type;$result->length;$result->date;$result->parse_content();$result->parse_content($my_model);
DESCRIPTION
A Catmandu::FedoraCommons::Response gets returned for every Catmandu::FedoraCommons method. This response contains the raw HTTP content of a Fedora Commons request and can also be used to parse XML responses into Perl objects using the parse_content function. For more information on the Perl objects see the information in the Catmandu::FedoraCommons::Model packages.
METHODS
is_ok()
Returns true when the result Fedora Commons response contains no errors.
error()
Returns the error message of the Fedora Commons response if available.
parse_content($model)
Returns a Perl representation of the Fedora Commons response. Optionally a model object can be provided that implements a $obj->parse($bytes) method and returns a Perl object. If no model is provided then default models from the Catmandu::FedoraCommons::Model namespace are used.
Example:package MyParser;sub new {my $class = shift;return bless {} , $class;}sub parse {my ($self,$bytes) = @_;...return $perl}package main;my $fedora = Catmandu::FedoraCommons->new('http://localhost:8080/fedora','fedoraAdmin','fedoraAdmin');my $result = $fedora->findObjects(terms=>'*');my $perl = $result->parse_content(MyParser->new);
raw()
Returns the raw Fedora Commons response as a string.
content_type()
Returns the Content-Type of the Fedora Commons response.
length()
Returns the byte length of the Fedora Commons response.
date()
Returns the date of the Fedora Commons response.
AUTHORS
- •
-
Patrick Hochstenbach,
"<patrick.hochstenbach at ugent.be>"
SEE ALSO
Catmandu::Model::findObjects, Catmandu::Model::getObjectHistory, Catmandu::Model::getObjectPrifule, Catmandu::Model::listDatastreams, Catmandu::Model::listMethods