org.dspace.app.xmlui.cocoon
Class DSpaceI18NTransformer

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.apache.cocoon.transformation.I18nTransformer
                      extended by org.dspace.app.xmlui.cocoon.DSpaceI18NTransformer
All Implemented Interfaces:
org.apache.avalon.excalibur.pool.Poolable, org.apache.avalon.excalibur.pool.Recyclable, org.apache.avalon.framework.activity.Disposable, org.apache.avalon.framework.configuration.Configurable, org.apache.avalon.framework.service.Serviceable, 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, ContentHandler, LexicalHandler

public class DSpaceI18NTransformer
extends org.apache.cocoon.transformation.I18nTransformer

This is a simple extension to the stardand Cocoon I18N transformer that specializes the configuration based upon currently installed aspects. This transformer modified the base configuration by adding two parameters for each aspect into the default catalogue. The first location parameter is contained within the catalogue's base location + the aspect path. The second location parameter is located inside the aspect's path + "/i18n/" This allows aspect developers to place their default messages files inside the aspect, and place translations into various languages inside the base i18n/ directory. EXAMPLE: For instance let's say there the i18n transformer's configuration were as follows: context://i18n And there were two aspects installed: The effective configuration would be: context://i18n/ context://i18n/aspects/ArtifactBrowser resource://aspects/ArtifactBrowser/i18n/ context://i18n/aspects/Administrative resource://aspects/Administrative/i18n/

Author:
Scott Phillips

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.cocoon.transformation.I18nTransformer
org.apache.cocoon.transformation.I18nTransformer.CatalogueInfo
 
Field Summary
static String DEFAULT_BASE_LOCATION
           
 
Fields inherited from class org.apache.cocoon.transformation.I18nTransformer
CURRENCY_LOCALE_ATTRIBUTE, factory, I18N_ATTR_ATTRIBUTE, I18N_CATALOGUE_ATTRIBUTE, I18N_CHOOSE_ELEMENT, I18N_CURRENCY_ELEMENT, I18N_CURRENCY_NO_UNIT_ELEMENT, I18N_DATE_ELEMENT, I18N_DATE_TIME_ELEMENT, I18N_DEFAULT_CATALOGUE_ID, I18N_EXPR_ATTRIBUTE, I18N_FRACTION_DIGITS_ATTRIBUTE, I18N_IF_ELEMENT, I18N_INT_CURRENCY_ELEMENT, I18N_INT_CURRENCY_NO_UNIT_ELEMENT, I18N_KEY_ATTRIBUTE, I18N_LOCALE, I18N_LOCALE_ATTRIBUTE, I18N_NAMESPACE_URI, I18N_NUMBER_ELEMENT, I18N_OLD_NAMESPACE_URI, I18N_OTHERWISE_ELEMENT, I18N_PARAM_ELEMENT, I18N_PARAM_NAME_ATTRIBUTE, I18N_PATTERN_ATTRIBUTE, I18N_PERCENT_ELEMENT, I18N_PRELOAD, I18N_SRC_LOCALE_ATTRIBUTE, I18N_SRC_PATTERN_ATTRIBUTE, I18N_TEXT_ELEMENT, I18N_TIME_ELEMENT, I18N_TRANSLATE_ELEMENT, I18N_TYPE_ATTRIBUTE, I18N_UNTRANSLATED, I18N_VALUE_ATTRIBUTE, I18N_WHEN_ELEMENT, locale, manager, objectModel
 
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
DSpaceI18NTransformer()
           
 
Method Summary
 void configure(org.apache.avalon.framework.configuration.Configuration originalConf)
          Intercept the configuration parameters comming from the cocoon sitemap before they are read by the cocoon i18n transformer.
 
Methods inherited from class org.apache.cocoon.transformation.I18nTransformer
characters, dispose, endElement, getKey, getLocale, getMessage, getValidity, recycle, service, setup, startElement
 
Methods inherited from class org.apache.cocoon.xml.AbstractXMLPipe
comment, endCDATA, endDocument, endDTD, endEntity, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startCDATA, startDocument, startDTD, startEntity, startPrefixMapping
 
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
endDocument, endPrefixMapping, ignorableWhitespace, processingInstruction, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping
 
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

DEFAULT_BASE_LOCATION

public static final String DEFAULT_BASE_LOCATION
See Also:
Constant Field Values
Constructor Detail

DSpaceI18NTransformer

public DSpaceI18NTransformer()
Method Detail

configure

public void configure(org.apache.avalon.framework.configuration.Configuration originalConf)
               throws org.apache.avalon.framework.configuration.ConfigurationException
Intercept the configuration parameters comming from the cocoon sitemap before they are read by the cocoon i18n transformer. We want to add in parameters for each

Specified by:
configure in interface org.apache.avalon.framework.configuration.Configurable
Overrides:
configure in class org.apache.cocoon.transformation.I18nTransformer
Throws:
org.apache.avalon.framework.configuration.ConfigurationException


Copyright © 2011 DuraSpace. All Rights Reserved.