org.fcrepo.server.access.dissemination
Class DatastreamResolverServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.fcrepo.server.SpringServlet
org.fcrepo.server.access.dissemination.DatastreamResolverServlet
- All Implemented Interfaces:
- Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig
public class DatastreamResolverServlet
- extends SpringServlet
This servlet acts as a proxy to resolve the physical location of datastreams.
It requires a single parameter named id that denotes the
temporary id of the requested datastresm. This id is in the form of a
DateTime stamp. The servlet will perform an in-memory hashtable lookup
using the temporary id to obtain the actual physical location of the
datastream and then return the contents of the datastream as a MIME-typed
stream. This servlet is invoked primarily by external mechanisms needing to
retrieve the contents of a datastream.
The servlet also requires that an external mechanism request a datastream
within a finite time interval of the tempID's creation. This is to lessen the
risk of unauthorized access. The time interval within which a mechanism must
respond is set by the Fedora configuration parameter named
datastreamMediationLimit and is specified in milliseconds. If this
parameter is not supplied it defaults to 5000 milliseconds.
- Author:
- Ross Wayland
- See Also:
- Serialized Form
|
Method Summary |
void |
destroy()
|
void |
doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
Processes the servlet request and resolves the physical location of the
specified datastream. |
void |
init(javax.servlet.ServletConfig config)
Initialize servlet. |
| Methods inherited from class javax.servlet.http.HttpServlet |
doDelete, doHead, doOptions, doPost, 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 |
ACTION_LABEL
public static final String ACTION_LABEL
- See Also:
- Constant Field Values
DatastreamResolverServlet
public DatastreamResolverServlet()
init
public void init(javax.servlet.ServletConfig config)
throws javax.servlet.ServletException
- Initialize servlet.
- Specified by:
init in interface javax.servlet.Servlet- Overrides:
init in class SpringServlet
- Throws:
javax.servlet.ServletException - If the servlet cannot be initialized.
doGet
public void doGet(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException,
IOException
- Processes the servlet request and resolves the physical location of the
specified datastream.
- 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.
destroy
public void destroy()
- Specified by:
destroy in interface javax.servlet.Servlet- Overrides:
destroy in class SpringServlet
Copyright © 2012 DuraSpace. All Rights Reserved.