org.dspace.app.xmlui.aspect.discovery
Class SearchFacetFilter

java.lang.Object
  extended by org.apache.cocoon.util.AbstractLogEnabled
      extended by org.apache.cocoon.xml.AbstractXMLProducer
          extended by org.apache.cocoon.xml.AbstractXMLPipe
              extended by org.apache.cocoon.transformation.AbstractTransformer
                  extended by org.dspace.app.xmlui.wing.AbstractWingTransformer
                      extended by org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer
                          extended by org.dspace.app.xmlui.aspect.discovery.SearchFacetFilter
All Implemented Interfaces:
org.apache.avalon.excalibur.pool.Poolable, org.apache.avalon.excalibur.pool.Recyclable, org.apache.cocoon.caching.CacheableProcessingComponent, org.apache.cocoon.sitemap.SitemapModelComponent, org.apache.cocoon.transformation.Transformer, org.apache.cocoon.xml.XMLPipe, org.apache.cocoon.xml.XMLProducer, org.apache.excalibur.xml.sax.XMLConsumer, DSpaceTransformer, WingTransformer, ContentHandler, LexicalHandler

public class SearchFacetFilter
extends AbstractDSpaceTransformer
implements org.apache.cocoon.caching.CacheableProcessingComponent

Filter which displays facets on which a user can filter his discovery search

Author:
Kevin Van de Velde (kevin at atmire dot com), Mark Diggory (markd at atmire dot com), Ben Bosman (ben at atmire dot com)

Field Summary
protected  DiscoverQuery queryArgs
          Cached query arguments
protected  DiscoverResult queryResults
          The cache of recently submitted items
protected  org.apache.excalibur.source.SourceValidity validity
          Cached validity object
 
Fields inherited from class org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer
context, contextPath, eperson, knot, objectModel, parameters, servletPath, sitemapURI, url
 
Fields inherited from class org.apache.cocoon.xml.AbstractXMLProducer
contentHandler, EMPTY_CONTENT_HANDLER, lexicalHandler, xmlConsumer
 
Fields inherited from interface org.apache.cocoon.transformation.Transformer
ROLE
 
Constructor Summary
SearchFacetFilter()
           
 
Method Summary
 void addBody(Body body)
          What to add at the end of the body
 String addFilterQueriesToUrl(String url)
           
 void addPageMeta(PageMeta pageMeta)
          Add a page title and trail links.
 Serializable getKey()
          Generate the unique caching key.
protected  DiscoverResult getQueryResponse(DSpaceObject scope)
          Get the recently submitted items for the given community or collection.
 org.apache.excalibur.source.SourceValidity getValidity()
          Generate the cache validity object.
 void recycle()
          Recycle
 void setup(org.apache.cocoon.environment.SourceResolver resolver, Map objectModel, String src, org.apache.avalon.framework.parameters.Parameters parameters)
           
 
Methods inherited from class org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer
addOptions, addUserMeta, decodeFromURL, dispose, encodeForURL, generateURL, getComponentName, getObjectManager, handleException
 
Methods inherited from class org.dspace.app.xmlui.wing.AbstractWingTransformer
createWingDocument, endDocument, endElement, endPrefixMapping, getDefaultMessageCatalogue, message, message, setupWing, startDocument, startElement, startPrefixMapping
 
Methods inherited from class org.apache.cocoon.xml.AbstractXMLPipe
characters, comment, endCDATA, endDTD, endEntity, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startCDATA, startDTD, startEntity
 
Methods inherited from class org.apache.cocoon.xml.AbstractXMLProducer
setConsumer, setContentHandler, setLexicalHandler
 
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
 
Methods inherited from interface org.xml.sax.ContentHandler
characters, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity
 
Methods inherited from interface org.xml.sax.ext.LexicalHandler
comment, endCDATA, endDTD, endEntity, startCDATA, startDTD, startEntity
 
Methods inherited from interface org.apache.cocoon.xml.XMLProducer
setConsumer
 

Field Detail

queryResults

protected DiscoverResult queryResults
The cache of recently submitted items


validity

protected org.apache.excalibur.source.SourceValidity validity
Cached validity object


queryArgs

protected DiscoverQuery queryArgs
Cached query arguments

Constructor Detail

SearchFacetFilter

public SearchFacetFilter()
Method Detail

setup

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

getKey

public Serializable getKey()
Generate the unique caching key. This key must be unique inside the space of this component.

Specified by:
getKey in interface org.apache.cocoon.caching.CacheableProcessingComponent

getValidity

public org.apache.excalibur.source.SourceValidity getValidity()
Generate the cache validity object.

The validity object will include the collection being viewed and all recently submitted items. This does not include the community / collection hierarch, when this changes they will not be reflected in the cache.

Specified by:
getValidity in interface org.apache.cocoon.caching.CacheableProcessingComponent

getQueryResponse

protected DiscoverResult getQueryResponse(DSpaceObject scope)
Get the recently submitted items for the given community or collection.

Parameters:
scope - The collection.

addPageMeta

public void addPageMeta(PageMeta pageMeta)
                 throws SAXException,
                        WingException,
                        SQLException,
                        IOException,
                        AuthorizeException
Add a page title and trail links.

Specified by:
addPageMeta in interface DSpaceTransformer
Specified by:
addPageMeta in interface WingTransformer
Overrides:
addPageMeta in class AbstractDSpaceTransformer
Throws:
SAXException
WingException
SQLException
IOException
AuthorizeException

addBody

public void addBody(Body body)
             throws SAXException,
                    WingException,
                    UIException,
                    SQLException,
                    IOException,
                    AuthorizeException
Description copied from class: AbstractDSpaceTransformer
What to add at the end of the body

Specified by:
addBody in interface DSpaceTransformer
Specified by:
addBody in interface WingTransformer
Overrides:
addBody in class AbstractDSpaceTransformer
Throws:
SAXException
WingException
UIException
SQLException
IOException
AuthorizeException

recycle

public void recycle()
Recycle

Specified by:
recycle in interface org.apache.avalon.excalibur.pool.Recyclable
Overrides:
recycle in class AbstractDSpaceTransformer

addFilterQueriesToUrl

public String addFilterQueriesToUrl(String url)
                             throws UIException
Throws:
UIException


Copyright © 2012 DuraSpace. All Rights Reserved.