org.apache.cocoon.portal.transformation
Class HTMLEventLinkTransformer
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.apache.cocoon.xml.AbstractXMLProducer
org.apache.cocoon.xml.AbstractXMLPipe
org.apache.cocoon.transformation.AbstractTransformer
org.apache.cocoon.transformation.AbstractSAXTransformer
org.apache.cocoon.portal.transformation.AbstractCopletTransformer
org.apache.cocoon.portal.transformation.HTMLEventLinkTransformer
- All Implemented Interfaces:
- Poolable, Recyclable, Disposable, Component, Configurable, LogEnabled, Serviceable, SitemapModelComponent, Transformer, XMLPipe, XMLProducer, XMLConsumer, ContentHandler, LexicalHandler
public class HTMLEventLinkTransformer
- extends AbstractCopletTransformer
This transformer transforms html actions into events.
The transformer listens for the element a and form. Links
that only contain an anchor are ignored.
In addition if a link has the attribute "external" with the value
"true", the link is also ignored.
TODO: Support target attribute
- Version:
- CVS $Id: HTMLEventLinkTransformer.html 1304258 2012-03-23 10:09:27Z ilgrosso $
- Author:
- Carsten Ziegeler
Fields inherited from class org.apache.cocoon.transformation.AbstractSAXTransformer |
context, defaultNamespaceURI, EMPTY_ATTRIBUTES, emptyAttributes, ignoreEmptyCharacters, ignoreEventsCount, ignoreHooksCount, ignoreWhitespaces, manager, namespaceURI, objectModel, parameters, recorderStack, request, resolver, response, source, stack |
Fields inherited from interface org.apache.cocoon.transformation.Transformer |
ROLE |
Method Summary |
protected void |
createAnchorEvent(Attributes attributes)
|
protected void |
createFormEvent(Attributes attributes)
|
void |
endElement(String uri,
String name,
String raw)
Process the SAX event. |
protected String |
getLink(String base,
String link)
|
protected boolean |
isRemoteAnchor(Attributes attributes)
Determine if the element is an url and if the url points to some
remote source. |
void |
setup(SourceResolver resolver,
Map objectModel,
String src,
Parameters par)
Set the SourceResolver , objectModel Map ,
the source and sitemap Parameters used to process the request. |
void |
startElement(String uri,
String name,
String raw,
Attributes attr)
Process the SAX event. |
Methods inherited from class org.apache.cocoon.transformation.AbstractSAXTransformer |
addRecorder, characters, comment, configure, endCDATA, endDocument, endDTD, endEntity, endParametersRecording, endParametersRecording, endPrefixMapping, endRecording, endSAXRecording, endSerializedXMLRecording, endTextRecording, endTransformingElement, findPrefixMapping, getMutableAttributes, ignorableWhitespace, processingInstruction, recycle, removeRecorder, sendEndElementEvent, sendEndElementEventNS, sendEndPrefixMapping, sendEvents, sendParametersEvents, sendStartElementEvent, sendStartElementEvent, sendStartElementEventNS, sendStartElementEventNS, sendStartPrefixMapping, sendTextEvent, setDocumentLocator, setupTransforming, skippedEntity, startCDATA, startDocument, startDTD, startEntity, startParametersRecording, startPrefixMapping, startRecording, startSAXRecording, startSerializedXMLRecording, startTextRecording, startTransformingElement |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
attributeName
protected String attributeName
- The temporary attribute used to store the uri
jxPath
protected String jxPath
- The jxpath for the attribute
HTMLEventLinkTransformer
public HTMLEventLinkTransformer()
setup
public void setup(SourceResolver resolver,
Map objectModel,
String src,
Parameters par)
throws ProcessingException,
SAXException,
IOException
- Description copied from interface:
SitemapModelComponent
- Set the
SourceResolver
, objectModel Map
,
the source and sitemap Parameters
used to process the request.
- Specified by:
setup
in interface SitemapModelComponent
- Overrides:
setup
in class AbstractSAXTransformer
- Throws:
ProcessingException
SAXException
IOException
- See Also:
SitemapModelComponent.setup(org.apache.cocoon.environment.SourceResolver, java.util.Map, java.lang.String, org.apache.avalon.framework.parameters.Parameters)
startElement
public void startElement(String uri,
String name,
String raw,
Attributes attr)
throws SAXException
- Description copied from class:
AbstractSAXTransformer
- Process the SAX event. The namespace of the event is checked.
If it is the defined namespace for this transformer,
the
AbstractSAXTransformer.startTransformingElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
hook is called.
- Specified by:
startElement
in interface ContentHandler
- Overrides:
startElement
in class AbstractSAXTransformer
- Parameters:
uri
- The Namespace URI, or the empty string if the element has no
Namespace URI or if Namespace
processing is not being performed.name
- The local name (without prefix), or the empty string if
Namespace processing is not being performed.raw
- The raw XML 1.0 name (with prefix), or the empty string if
raw names are not available.attr
- The attributes attached to the element. If there are no
attributes, it shall be an empty Attributes object.
- Throws:
SAXException
- See Also:
ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
endElement
public void endElement(String uri,
String name,
String raw)
throws SAXException
- Description copied from class:
AbstractSAXTransformer
- Process the SAX event. The namespace of the event is checked.
If it is the defined namespace for this transformer,
the
AbstractSAXTransformer.endTransformingElement(java.lang.String, java.lang.String, java.lang.String)
hook is called.
- Specified by:
endElement
in interface ContentHandler
- Overrides:
endElement
in class AbstractSAXTransformer
- Parameters:
uri
- The Namespace URI, or the empty string if the element has no
Namespace URI or if Namespace
processing is not being performed.name
- The local name (without prefix), or the empty string if
Namespace processing is not being performed.raw
- The raw XML 1.0 name (with prefix), or the empty string if
raw names are not available.
- Throws:
SAXException
- See Also:
ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
createAnchorEvent
protected void createAnchorEvent(Attributes attributes)
throws SAXException
- Throws:
SAXException
createFormEvent
protected void createFormEvent(Attributes attributes)
throws SAXException
- Throws:
SAXException
getLink
protected String getLink(String base,
String link)
isRemoteAnchor
protected boolean isRemoteAnchor(Attributes attributes)
- Determine if the element is an url and if the url points to some
remote source.
- Parameters:
attributes
- the attributes of the element
- Returns:
- true if the href url is an anchor pointing to a remote source
Copyright © 1999-2010 The Apache Software Foundation. All Rights Reserved.