pulse - the web application framework Get pulse at SourceForge.net. Fast, secure and Free Open Source software downloads Ohloh project report for pulse-java

org.torweg.pulse.service.event
Class XSLTOutputEvent

java.lang.Object
  extended by org.torweg.pulse.service.event.XSLTOutputEvent
All Implemented Interfaces:
Event, ResultAwareEvent

public class XSLTOutputEvent
extends java.lang.Object
implements ResultAwareEvent

is a stop and output Event sending a XSLT response.

This Event is useful for AJAX communication.

Version:
$Revision: 1956 $
Author:
Thomas Weber, Daniel Dietz

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.torweg.pulse.service.event.Event
Event.Disposition
 
Constructor Summary
XSLTOutputEvent(XSLHandle xslTemplate)
          builds a new XSLTOutputEvent with the given XSLHandle.
XSLTOutputEvent(XSLHandle xslTemplate, CacheMode cacheMode)
          builds a new XSLTOutputEvent with the given XSLHandle and CacheMode.
 
Method Summary
 CacheMode getCacheMode()
          returns the CacheMode.
 boolean isOutputEvent()
          Indicates if this Event will write to the OutputStream and so render the OutputStream unwritable for future results.
 boolean isSingularEvent()
          Indicates that the Event will only be added once to the EventManager and block all other Events.
 boolean isStopEvent()
          Indicates if the Invoker should proceed executing other bundles or if it should terminate after executing this Event .
 void run(ServiceRequest req)
          sends the XSLT response.
 void setCacheMode(CacheMode c)
          sets the CacheMode.
 void setResultSet(ResultSet rs)
          set the ResultSet that shall be used as a base for the XSL transformation.
 XSLTOutputEvent setStopEvent(boolean flag)
          sets the stop event flag.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XSLTOutputEvent

public XSLTOutputEvent(XSLHandle xslTemplate)
builds a new XSLTOutputEvent with the given XSLHandle.

Parameters:
xslTemplate - the XSL document to be used

XSLTOutputEvent

public XSLTOutputEvent(XSLHandle xslTemplate, CacheMode cacheMode)
builds a new XSLTOutputEvent with the given XSLHandle and CacheMode.

Parameters:
xslTemplate - the XSL document to be used
cacheMode - the cache mode to be used
Method Detail

run

public final void run(ServiceRequest req)
sends the XSLT response.

Specified by:
run in interface Event
Parameters:
req - the current ServiceRequest
See Also:
Event.run(org.torweg.pulse.service.request.ServiceRequest)

setStopEvent

public final XSLTOutputEvent setStopEvent(boolean flag)
sets the stop event flag.

If set to true, the OutputEvent is a StopEvent.

Parameters:
flag - the flag to be set
Returns:
the event itself for method chaining

setResultSet

public final void setResultSet(ResultSet rs)
set the ResultSet that shall be used as a base for the XSL transformation.

Specified by:
setResultSet in interface ResultAwareEvent
Parameters:
rs - the ResultSet to be used

isStopEvent

public final boolean isStopEvent()
Description copied from interface: Event
Indicates if the Invoker should proceed executing other bundles or if it should terminate after executing this Event .

Specified by:
isStopEvent in interface Event
Returns:
true
See Also:
Event.isStopEvent()

isOutputEvent

public final boolean isOutputEvent()
Description copied from interface: Event
Indicates if this Event will write to the OutputStream and so render the OutputStream unwritable for future results.

Please note: After writing to the OutputStream it should be flushed and closed.

Specified by:
isOutputEvent in interface Event
Returns:
true
See Also:
Event.isOutputEvent()

isSingularEvent

public final boolean isSingularEvent()
Description copied from interface: Event
Indicates that the Event will only be added once to the EventManager and block all other Events.

If an Event of the same type has already been added to the EventManager, subsequent calls to EventManager.addEvent(Event) will return without adding the given Event.

Specified by:
isSingularEvent in interface Event
Returns:
true
See Also:
Event.isSingularEvent()

getCacheMode

public final CacheMode getCacheMode()
returns the CacheMode.

Specified by:
getCacheMode in interface Event
Returns:
the cache mode
See Also:
Event.getCacheMode()

setCacheMode

public final void setCacheMode(CacheMode c)
sets the CacheMode.

Specified by:
setCacheMode in interface Event
Parameters:
c - the cache mode to set
See Also:
Event.setCacheMode(org.torweg.pulse.service.request.CacheMode)