|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.cocoon.util.AbstractLogEnabled org.apache.cocoon.xml.AbstractXMLProducer org.apache.cocoon.xml.AbstractXMLPipe org.apache.cocoon.transformation.AbstractTransformer org.apache.cocoon.transformation.EncodeURLTransformer
The encodeURL transformer emits encoded URLs.
This transformer applies encodeURL method to URLs. You may want to use this transform to avoid doing the manually encodeURL() calls.
Usually this transformer is appended as last transformer before the serialization process. In this case it is possible to encode URLs introduced in the generator, and xslt transformer phase.
You can specify which attributes hold URL values in order to restrict URL rewriting to specific attributes only.
Usage in a sitemap:
<map:composition> ... <map:transformers> ... <map:transformer type="encodeURL" src="org.apache.cocoon.optional.transformation.EncodeURLTransformer"> <exclude-name>img/@src|a/@href=.&asterik;adserver</exclude-name> <include-name>.&asterik;/@href|.&asterik;/@src|.&asterik;/@action</include-name> </map:transformer> ... <map:pipelines> <map:pipeline> ... <map:transform type="encodeURL"/> ...
Nested Class Summary | |
static class |
EncodeURLTransformer.ElementAttributeMatching
A helper class for matching element names, and attribute names. |
Field Summary | |
static String |
EXCLUDE_NAME
Configuration name for specifying excluding patterns, ie exclude-name. |
static String |
EXCLUDE_NAME_DEFAULT
Configuration default exclude pattern, ie img/@src |
static String |
INCLUDE_NAME
Configuration name for specifying including patterns, ie include-name. |
static String |
INCLUDE_NAME_DEFAULT
Configuration default exclude pattern, ie .*\/@href|.*\/@action|frame/@src |
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 | |
EncodeURLTransformer()
|
Method Summary | |
protected void |
checkForEncoding(org.apache.cocoon.environment.Request request)
check if encoding of URLs is neccessary. |
void |
configure(Configuration configuration)
BEGIN SitemapComponent methods |
protected String |
encodeURL(String url)
Do the URL rewriting. |
Serializable |
getKey()
Generate the unique key. |
SourceValidity |
getValidity()
Generate the validity object. |
void |
recycle()
Recycle resources of this transformer |
void |
setup(org.apache.cocoon.environment.SourceResolver resolver,
Map objectModel,
String source,
Parameters parameters)
Setup the transformer. |
void |
startElement(String uri,
String name,
String raw,
Attributes attributes)
Start parsing an element |
Methods inherited from class org.apache.cocoon.xml.AbstractXMLPipe |
characters, comment, endCDATA, endDocument, endDTD, endElement, 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 |
characters, endDocument, endElement, 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 |
public static final String EXCLUDE_NAME
public static final String INCLUDE_NAME
public static final String EXCLUDE_NAME_DEFAULT
public static final String INCLUDE_NAME_DEFAULT
Constructor Detail |
public EncodeURLTransformer()
Method Detail |
protected void checkForEncoding(org.apache.cocoon.environment.Request request)
public void setup(org.apache.cocoon.environment.SourceResolver resolver, Map objectModel, String source, Parameters parameters) throws org.apache.cocoon.ProcessingException, SAXException, IOException
Setup include, and exclude patterns from the parameters
setup
in interface org.apache.cocoon.sitemap.SitemapModelComponent
resolver
- source resolverobjectModel
- sitemap objectsparameters
- request parameters
org.apache.cocoon.ProcessingException
SAXException
IOException
public void configure(Configuration configuration) throws ConfigurationException
configure
in interface Configurable
configuration
- Description of Parameter
ConfigurationException
- Description of Exceptionpublic void recycle()
recycle
in interface Recyclable
public Serializable getKey()
getKey
in interface org.apache.cocoon.caching.CacheableProcessingComponent
public SourceValidity getValidity()
getValidity
in interface org.apache.cocoon.caching.CacheableProcessingComponent
null
if the
component is currently not cacheable.public void startElement(String uri, String name, String raw, Attributes attributes) throws SAXException
startElement
in interface ContentHandler
uri
- of the elementname
- of the elementraw
- name of the elementattributes
- list
SAXException
- Description of Exceptionprotected String encodeURL(String url)
Check if url
contains already the sessionid, some servlet-engines
just appends the session-id without checking if the sessionid is already present.
url
- the URL probably without sessionid.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |