source: FCSSimpleEndpoint/trunk/src/main/java/eu/clarin/sru/server/fcs/ResourceInfoInventory.java @ 2751

Last change on this file since 2751 was 2751, checked in by oschonef, 11 years ago
  • initial import of sources
  • Property svn:eol-style set to native
File size: 1.5 KB
Line 
1package eu.clarin.sru.server.fcs;
2
3import java.util.List;
4
5import eu.clarin.sru.server.SRUException;
6
7
8/**
9 * An interface for abstracting resource info inventories. This class allows you
10 * to provide a version of a resource info inventory tailored to your
11 * environment, e.g. retrieving the information from a database, etc.
12 * <p>
13 * The implementation of this interface <em>must</em> be thread-safe.
14 * </p>
15 */
16public interface ResourceInfoInventory {
17    /**
18     * Constant for a (synthetic) persistent identifier identifying the top-most
19     * (= root) resource in the resource info inventory.
20     */
21    public static final String PID_ROOT = "root";
22
23
24    /**
25     * Destroy the resource info inventory. Use this method for any cleanup the
26     * resource info inventory needs to perform upon termination, i.e. closing
27     * of persistent database connections, etc.
28     */
29    public void destroy();
30
31
32    /**
33     * Get a list of all resources sub-ordinate to a resource identified by a
34     * given persistent identifier.
35     * <p>
36     * The implementation of this method <em>must</em> be thread-safe.
37     * </p>
38     *
39     * @param pid
40     *            the persistent identifier of the superior resource
41     * @return a list of all sub-ordinate ResourceInfo or <code>null</code> if
42     *         not applicable
43     * @throws SRUException
44     *             if an error occurred
45     */
46    public List<ResourceInfo> getResourceInfoList(String pid)
47            throws SRUException;
48
49} // interface ResourceInfoInventory
Note: See TracBrowser for help on using the repository browser.