Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The package is avaliable in both zip and tar/gzip fomrats formats. The source code for this product is also available from the Fedora Commons SVN at https://fedora-commons.svn.sourceforge.net/svnroot/fedora-commons/incubator/kepler/trunk/jython/fcrepo

...

Product components

FCRepoRestAPI class

Usage :

Code Block
usage: from fcrepo.http.restapi import FCRepoRestAPI

rest = FCRepoRestAPI(repository_url='http://localhost:8080/fedora', username='fedoraAdmin',
                     password='fedora', realm='any', namespace='fedora')

This pure Python class contains a one-to-one implementation of each method documented in Version 3.2.1 of the Fedora Repository REST API. It is the only class you need import into your application.

  • All methods are named as documented on the Fedora REST API wiki page.
  • Required arguments are expected in the order listed in the documentation.
  • Optional arguments are acquired using Python's builtin argument dictionary syntax where each optional argument is passed as a name=value pair.
    • EXCEPTION : for the ingest() method, pid is defaulted to 'new' in the Python implementation.
  • Methods documented as "Not implemented" exist in the code but return a Python NotImplementedError exception.
  • All REST API methods return an instance of the FCRepoResponse class descibed below.

FCRepoRequestFactory class

Usage:

Code Block
usage: from fcrepo.http.RequestFactory import FCRepoRequestFactory

factory = FCRepoRequestFactory(repository_url='http://localhost:8080/fedora', username='fedoraAdmin',
                               password='fedora', realm='any')

This is a support class that supplies HTTP connections and services to instances of FCRepoRestAPI. It implements GET, PUT, POST and DELETE methods in a very simple Jython wrapper around the same org.apache.commons.httpclient Java libraries used in the standard Fedora installation. The GET, PUT, POST and DELETE methods (and, thus, the FCRepoRestAPI class methods that use them) each return an instance of the FCRepoResponse class.

FCRepoResponse class

...

This is a support class that provides a Pythonic interface to elements of a response to an HTTP org.apache.commons.httpclient request. It is returned by the HTTP methods of a FCRepoRequestFactory and implements the following methods:

...