|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jasig.portal.channels.CGenericXSLT
public class CGenericXSLT
A channel which transforms XML for rendering in the portal.
Static channel parameters to be supplied:
xslUri
is supplied, sslUri
and xslTitle
will be ignored.
The xmlUri and xslTitle static parameters above can be overridden by including
parameters of the same name (xmlUri
and/or xslTitle
)
in the HttpRequest string. Prior to uPortal 2.5.1 sslUri and xslUri could also
be overridden -- these features have been removed to improve the security of
CGenericXSLT instances.
Additionally, as of uPortal 2.5.1, the xmlUri must match an allowed URI prefix. By default http:// and https:// URIs are allowed. If you are using the empty document or another XML file from the classpath or from the filesystem, you will need to allow a prefix to or the full path of that resource.
This channel can be used for all XML formats including RSS.
Any other parameters passed to this channel via HttpRequest will get
passed in turn to the XSLT stylesheet as stylesheet parameters. They can be
read in the stylesheet as follows:
<xsl:param name="yourParamName">aDefaultValue</xsl:param>
CGenericXSLT is also useful for channels that have no dynamic data. In these types of channels, all the markup comes from the XSLT stylesheets. An empty XML document can be used and is included with CGenericXSLT. Just set the xml parameter to this empty document and allow the path to the empty document.
Nested Class Summary | |
---|---|
private class |
CGenericXSLT.CState
|
Field Summary | |
---|---|
private static org.apache.commons.logging.Log |
log
|
(package private) java.util.Map |
stateTable
|
(package private) static java.lang.String |
systemCacheId
|
Constructor Summary | |
---|---|
CGenericXSLT()
|
Method Summary | |
---|---|
ChannelCacheKey |
generateKey(java.lang.String uid)
Requests the channel to generate a key uniqly describing it's current state, and a description of key usage. |
private java.lang.String |
getKey(CGenericXSLT.CState state)
|
ChannelRuntimeProperties |
getRuntimeProperties(java.lang.String uid)
|
boolean |
isCacheValid(java.lang.Object validity,
java.lang.String uid)
Requests the channel to verify validity of the retreived cache based on the validator object. |
void |
receiveEvent(PortalEvent ev,
java.lang.String uid)
|
void |
renderXML(org.xml.sax.ContentHandler out,
java.lang.String uid)
|
void |
setRuntimeData(ChannelRuntimeData rd,
java.lang.String uid)
|
void |
setStaticData(ChannelStaticData sd,
java.lang.String uid)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final org.apache.commons.logging.Log log
java.util.Map stateTable
static final java.lang.String systemCacheId
Constructor Detail |
---|
public CGenericXSLT()
Method Detail |
---|
public void setStaticData(ChannelStaticData sd, java.lang.String uid) throws ResourceMissingException
setStaticData
in interface IMultithreadedChannel
uid
- a string uniqly identifying a channel "instance" in the system.
For example, a combination of session id and channel instance id would fit the bill.
ResourceMissingException
public void setRuntimeData(ChannelRuntimeData rd, java.lang.String uid)
setRuntimeData
in interface IMultithreadedChannel
public void receiveEvent(PortalEvent ev, java.lang.String uid)
receiveEvent
in interface IMultithreadedChannel
public ChannelRuntimeProperties getRuntimeProperties(java.lang.String uid)
getRuntimeProperties
in interface IMultithreadedChannel
public void renderXML(org.xml.sax.ContentHandler out, java.lang.String uid) throws PortalException
renderXML
in interface IMultithreadedChannel
PortalException
public ChannelCacheKey generateKey(java.lang.String uid)
IMultithreadedCacheable
generateKey
in interface IMultithreadedCacheable
public boolean isCacheValid(java.lang.Object validity, java.lang.String uid)
IMultithreadedCacheable
isCacheValid
in interface IMultithreadedCacheable
private java.lang.String getKey(CGenericXSLT.CState state)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |