|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.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.SitemapModelComponentresolver - source resolverobjectModel - sitemap objectsparameters - request parameters
org.apache.cocoon.ProcessingException
SAXException
IOException
public void configure(Configuration configuration)
throws ConfigurationException
configure in interface Configurableconfiguration - Description of Parameter
ConfigurationException - Description of Exceptionpublic void recycle()
recycle in interface Recyclablepublic Serializable getKey()
getKey in interface org.apache.cocoon.caching.CacheableProcessingComponentpublic SourceValidity getValidity()
getValidity in interface org.apache.cocoon.caching.CacheableProcessingComponentnull if the
component is currently not cacheable.
public void startElement(String uri,
String name,
String raw,
Attributes attributes)
throws SAXException
startElement in interface ContentHandleruri - 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 | ||||||||||