PID Manager

The PIDManager is a service to generate and register identifiers in a persistent identifier system. A request for a persistent identifier (PID) leads to a generation of an identifier and in the second step to a registration within the selected persistent identifier system. Which parameter are to register at the PID resolver could be configured via configuration file. The values which are to register are delivered by the client. The URL of resource is a mandatory value of a client request.

Current Status

The service is designed to support different persistent identifier systems but currently is only the Handle System implemented. Different methods to generate identifiers could be selected (serial, random or sematic). A connection to a NOID service is possible.

Documentation

SOAP Interface

This service offers no SOAP interface.

REST Interface

GET: /<service>/<prefix>/<suffix> - resolve
PUT: /<service>/<prefix>/<suffix> - registration at PID system
POST: /<service>/<prefix>/ - identifier generation and registration at PID system
DELETE: /<service>/<prefix>/<suffix> - delete

Installation

Install your persistent identifier system.

It is of course necessary to install and run an own local Handle resolution service (or other PID service if the connectior is implemented in PIDManager) to use this service.

Install PIDManager

The PIDManager can either run as stand-alone application or as Servlet.For a stand-alone installation prepare your properties file and start service from shell

~> java -DCONFIG=/path/to/PidManager.properties \ -jar PidManager.jar

To run as Servlet deploy the ear or war in your Tomcat or JBoss and alter the configuration files.

The PIDManager is to configure through standard java properties files in XML format. The main configuration file is PidManager.properties. PidManager.default.properties and handle.demo.properties are two example configuration files.

The configuration based on two steps. First set global parameter in the PidManager.properties. The resources are registered in this file, but configured in its own properties files.

Set in PidManager.properties the key Resources to the name of your resource and define the configuration file with Resource:your_resource_name.

Access restriction is defined and activated in the global configuration file.

Following values are at least to change in handle.properties:

configure _your_ global Handle prefix
<entry key="globalPrefix">12345</entry>

Set the location of the administration key for your local handle resolution service.
<entry key="admin.privateKeyFile">./admpriv.bin</entry>

Set your passphrase for your handle admin key
<entry key="admin.passphrase">*****</entry>

Address your authenticatio handle <entry key="admin.authHandle">0.NA/12345</entry>

The properties of the escidoc infrastructure has to be set to the location and access parameter of the PIDManager service. Set in escidoc-core.properties following parameter to use this service with escidoc and Handle System:

escidoc-core.PidGeneratorRESTService.host = http://localhost:8080/pidmanager/pid/handle/
escidoc-core.PidGeneratorRESTService.user = <configured username>
escidoc-core.PidGeneratorRESTService.password = <configured password>
escidoc-core.PidGenerator.globalPrefix = <your global Handle prefix>

Additional Files

Schema