org.fcrepo.server.access
Class DescribeRepositoryServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by org.fcrepo.server.access.DescribeRepositoryServlet
All Implemented Interfaces:
Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, Constants

public class DescribeRepositoryServlet
extends javax.servlet.http.HttpServlet
implements Constants

Implements the "describeRepository" functionality of the Fedora Access LITE (API-A-LITE) interface using a java servlet front end. The syntax defined by API-A-LITE has for getting a description of the repository has the following binding:

  1. describeRepository URL syntax: protocol://hostname:port/fedora/describe[?xml=BOOLEAN] This syntax requests information about the repository. The xml parameter determines the type of output returned. If the parameter is omitted or has a value of "false", a MIME-typed stream consisting of an html table is returned providing a browser-savvy means of viewing the object profile. If the value specified is "true", then a MIME-typed stream consisting of XML is returned.
  2. Author:
    Ross Wayland
    See Also:
    Serialized Form

    Nested Class Summary
     class DescribeRepositoryServlet.ReposInfoSerializerThread
               A Thread to serialize an ObjectProfile object into XML.
     
    Nested classes/interfaces inherited from interface org.fcrepo.common.Constants
    Constants.FedoraHome
     
    Field Summary
     
    Fields inherited from interface org.fcrepo.common.Constants
    ACCESS, ACTION, API, ATOM_APIM1_0, ATOM_ZIP1_1, ATOM1_1, AUDIT, AUDIT1_0, BATCH_MODIFY, BATCH_MODIFY1_1, BE_SECURITY, BE_SECURITY1_0, BINDING_SPEC, DATASTREAM, DC, DISSEMINATOR, DS_COMPOSITE_MODEL, DS_COMPOSITE_MODEL1_0, DS_INPUT_SPEC1_0, DS_INPUT_SPEC1_1, ENVIRONMENT, FCFG, FEDORA, FEDORA_APP_CONTEXT_NAME, FEDORA_DEFAULT_APP_CONTEXT, FEDORA_HOME, FOXML, FOXML1_0, FOXML1_0_LEGACY, FOXML1_1, HTTP_REQUEST, MANAGEMENT, METHOD_MAP, METS, METS_EXT, METS_EXT1_0, METS_EXT1_0_LEGACY, METS_EXT1_1, MODEL, MULGARA, OAI_DC, OAI_DC2_0, OAI_FRIENDS, OAI_FRIENDS2_0, OAI_IDENTIFIER, OAI_IDENTIFIER2_0, OAI_PMH, OAI_PMH2_0, OAI_PROV, OAI_PROV2_0, OBJ_DATASTREAMS1_0, OBJ_HISTORY1_0, OBJ_ITEMS1_0, OBJ_METHODS1_0, OBJ_PROFILE1_0, OBJ_VALIDATION1_0, OBJECT, OLD_XLINK, PID_LIST1_0, RDF, RDF_XSD, RECOVERY, RELS_EXT, RELS_EXT1_0, RELS_INT1_0, REPO_DESC1_0, RESOURCE, SDEF, SDEF_METHOD_MAP1_0, SDEP, SDEP_METHOD_MAP1_0, SDEP_METHOD_MAP1_1, SERVICE_PROFILE, SOAP, SOAP_ENC, SUBJECT, TYPES, VIEW, WSDL, WSDL_HTTP, WSDL_MIME, XACML_POLICY, XACML_POLICY1_0, XLINK, XML_XSD, XMLNS, XSI
     
    Constructor Summary
    DescribeRepositoryServlet()
               
     
    Method Summary
     void describeRepository(Context context, boolean xml, javax.servlet.http.HttpServletResponse response)
               
     void destroy()
               Cleans up servlet resources.
     void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
               Process Fedora Access Request.
     void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
               For now, treat a HTTP POST request just like a GET request.
     void init()
               Initialize servlet.
     
    Methods inherited from class javax.servlet.http.HttpServlet
    doDelete, doHead, doOptions, doPut, doTrace, getLastModified, service, service
     
    Methods inherited from class javax.servlet.GenericServlet
    getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
     
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
     

    Constructor Detail

    DescribeRepositoryServlet

    public DescribeRepositoryServlet()
    Method Detail

    doGet

    public void doGet(javax.servlet.http.HttpServletRequest request,
                      javax.servlet.http.HttpServletResponse response)
               throws javax.servlet.ServletException,
                      IOException

    Process Fedora Access Request. Parse and validate the servlet input parameters and then execute the specified request.

    Overrides:
    doGet in class javax.servlet.http.HttpServlet
    Parameters:
    request - The servlet request.
    response - servlet The servlet response.
    Throws:
    javax.servlet.ServletException - If an error occurs that effects the servlet's basic operation.
    IOException - If an error occurrs with an input or output operation.

    describeRepository

    public void describeRepository(Context context,
                                   boolean xml,
                                   javax.servlet.http.HttpServletResponse response)
                            throws ServerException
    Throws:
    ServerException

    doPost

    public void doPost(javax.servlet.http.HttpServletRequest request,
                       javax.servlet.http.HttpServletResponse response)
                throws javax.servlet.ServletException,
                       IOException

    For now, treat a HTTP POST request just like a GET request.

    Overrides:
    doPost in class javax.servlet.http.HttpServlet
    Parameters:
    request - The servet request.
    response - The servlet response.
    Throws:
    javax.servlet.ServletException - If thrown by doGet.
    IOException - If thrown by doGet.

    init

    public void init()
              throws javax.servlet.ServletException

    Initialize servlet.

    Overrides:
    init in class javax.servlet.GenericServlet
    Throws:
    javax.servlet.ServletException - If the servet cannot be initialized.

    destroy

    public void destroy()

    Cleans up servlet resources.

    Specified by:
    destroy in interface javax.servlet.Servlet
    Overrides:
    destroy in class javax.servlet.GenericServlet


    Copyright © 2011 DuraSpace. All Rights Reserved.