edu.ucsb.adl.middleware
Interface IdentifiersDriverGatekeeper

All Known Implementing Classes:
BasicPasswordGatekeeper, CombinationGatekeeper, ConstantGatekeeper, IPAddressGatekeeper

public interface IdentifiersDriverGatekeeper

The interface between the ADL identifiers service and gatekeepers that control access to the drivers that implement the service on behalf of collections. The ADL identifiers service creates the gatekeeper for a driver by dynamically loading the gatekeeper class and calling the following class method:

public static IdentifiersDriverGatekeeper createGatekeeper (
    ExtendedProperties propertyList, String argument)
Gatekeeper startup parameters can be obtained from propertyList. argument is an additional, gatekeeper- and/or collection-specific startup parameter.

Version:
$Header: /export/home/gjanee/middleware/edu/ucsb/adl/middleware/RCS/IdentifiersDriverGatekeeper.java,v 1.1 2006/06/22 18:36:11 gjanee Exp $

$Log: IdentifiersDriverGatekeeper.java,v $ Revision 1.1 2006/06/22 18:36:11 gjanee Initial revision

Author:
Greg Janée
Alexandria Digital Library

Method Summary
 void destroy()
          Frees any resources held by the gatekeeper.
 boolean identifiersDriverAllowed(javax.servlet.ServletRequest request, java.lang.String collection)
          Returns true if the request is authorized, that is, if the client is allowed to obtain the identifiers of all items in the collection.
 

Method Detail

identifiersDriverAllowed

public boolean identifiersDriverAllowed(javax.servlet.ServletRequest request,
                                        java.lang.String collection)
                                 throws MiddlewareException
Returns true if the request is authorized, that is, if the client is allowed to obtain the identifiers of all items in the collection. The gatekeeper can assume that collection names the collection for which the gatekeeper was created. This method must be multithread-safe.

Parameters:
request - The full request.
collection - The collection name, e.g., "adl_catalog".
Returns:
true if the request is authorized.
Throws:
BadRequestException - If request is not valid.
InternalErrorException - If the authorization cannot otherwise be determined.
MiddlewareException
See Also:
IdentifiersService

destroy

public void destroy()
Frees any resources held by the gatekeeper.