org.dspace.app.xmlui.cocoon
Class OpenURLReader

java.lang.Object
  extended by org.apache.cocoon.util.AbstractLogEnabled
      extended by org.apache.cocoon.reading.AbstractReader
          extended by org.dspace.app.xmlui.cocoon.OpenURLReader
All Implemented Interfaces:
org.apache.avalon.excalibur.pool.Poolable, org.apache.avalon.excalibur.pool.Recyclable, org.apache.cocoon.reading.Reader, org.apache.cocoon.sitemap.SitemapModelComponent, org.apache.cocoon.sitemap.SitemapOutputComponent

public class OpenURLReader
extends org.apache.cocoon.reading.AbstractReader
implements org.apache.avalon.excalibur.pool.Recyclable

Simple servlet for open URL support. Presently, simply extracts terms from open URL and redirects to search.

Version:
$Revision$
Author:
Robert Tansley, Mark Diggory (mdiggory at mire.be)

Field Summary
protected  Context context
           
protected  javax.servlet.http.HttpServletResponse httpResponse
          The Servlet Response
protected  org.apache.cocoon.environment.Request request
          The Cocoon request
protected  org.apache.cocoon.environment.Response response
          The Cocoon response
 
Fields inherited from class org.apache.cocoon.reading.AbstractReader
objectModel, out, parameters, resolver, source
 
Fields inherited from interface org.apache.cocoon.reading.Reader
ROLE
 
Constructor Summary
OpenURLReader()
           
 
Method Summary
 void generate()
           
 void handleLegacy()
           
 void handleZ39882004()
          Validate supported formats We can deal with various formats if they exist such as journals and books, but we currently do not have specific needs represent different formats, thus it may be more appropriate to use dublin core here directly.
 void recycle()
           
 void setup(org.apache.cocoon.environment.SourceResolver resolver, Map objectModel, String src, org.apache.avalon.framework.parameters.Parameters par)
           
 
Methods inherited from class org.apache.cocoon.reading.AbstractReader
getLastModified, getMimeType, setOutputStream, shouldSetContentLength
 
Methods inherited from class org.apache.cocoon.util.AbstractLogEnabled
getLogger, setLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

response

protected org.apache.cocoon.environment.Response response
The Cocoon response


request

protected org.apache.cocoon.environment.Request request
The Cocoon request


httpResponse

protected javax.servlet.http.HttpServletResponse httpResponse
The Servlet Response


context

protected Context context
Constructor Detail

OpenURLReader

public OpenURLReader()
Method Detail

generate

public void generate()
              throws IOException,
                     SAXException,
                     org.apache.cocoon.ProcessingException
Specified by:
generate in interface org.apache.cocoon.reading.Reader
Throws:
IOException
SAXException
org.apache.cocoon.ProcessingException

setup

public void setup(org.apache.cocoon.environment.SourceResolver resolver,
                  Map objectModel,
                  String src,
                  org.apache.avalon.framework.parameters.Parameters par)
           throws org.apache.cocoon.ProcessingException,
                  SAXException,
                  IOException
Specified by:
setup in interface org.apache.cocoon.sitemap.SitemapModelComponent
Overrides:
setup in class org.apache.cocoon.reading.AbstractReader
Throws:
org.apache.cocoon.ProcessingException
SAXException
IOException

recycle

public void recycle()
Specified by:
recycle in interface org.apache.avalon.excalibur.pool.Recyclable
Overrides:
recycle in class org.apache.cocoon.reading.AbstractReader

handleLegacy

public void handleLegacy()
                  throws IOException
Throws:
IOException

handleZ39882004

public void handleZ39882004()
                     throws IOException,
                            org.apache.cocoon.ProcessingException,
                            SQLException
Validate supported formats We can deal with various formats if they exist such as journals and books, but we currently do not have specific needs represent different formats, thus it may be more appropriate to use dublin core here directly. rft_val_fmt=info:ofi/fmt:kev:mtx:dc See Dublin Core OpenURL Profile Citation Guidelines: http://dublincore.org/documents/dc-citation-guidelines/ http://alcme.oclc .org/openurl/servlet/OAIHandler/extension?verb=GetMetadata &metadataPrefix=mtx&identifier=info:ofi/fmt:kev:mtx:dc What happens when we use Context Objects of different versions? Do they exist? ctx_ver=Z39.88-2004 COinS will be implemented as: Find at Example Library If an ctx_id is present use it to resolve the item directly. Otherwise, use the search mechanism. Our ctx_id are going to be local handle identifiers like the following ctx_id=10255/dryad.111 Global identifiers will be any other valid dc.identifier present within that field. Thus: dc.identifier.uri http://dx.doi.org/10.1080/106351598260806 dc.identifier.uri http://hdl.handle.net/10255/dryad.111 will lead to rft.identifier=http%3A%2F%2Fdx.doi.org%2F10.1080%2F106351598260806 rft.identifier=http%3A%2F%2Fhdl.handle.net%2F10255%2Fdryad.111 And Thus be resolvable as well

Throws:
SQLException
IOException
org.apache.cocoon.ProcessingException


Copyright © 2013 DuraSpace. All Rights Reserved.