org.apache.cocoon.components.modules.output
Interface OutputModule


public interface OutputModule

Communicate results to other components. This could be done via request attributes, session attribute etc. Implementors should obey the transactional nature and e.g. queue values as request attributes and do the real communication e.g. to a bean only when the transaction completes successfully.

Version:
$Id: OutputModule.html 1304280 2012-03-23 11:18:01Z ilgrosso $

Field Summary
static String ROLE
           
 
Method Summary
 void commit(Configuration modeConf, Map objectModel)
          Signal that the database transaction completed successfully.
 void rollback(Configuration modeConf, Map objectModel, Exception e)
          If a database transaction needs to rollback, this is called to inform the further processing logic about this fact.
 void setAttribute(Configuration modeConf, Map objectModel, String name, Object value)
          communicate an attribute value to further processing logic.
 

Field Detail

ROLE

public static final String ROLE
Method Detail

setAttribute

public void setAttribute(Configuration modeConf,
                         Map objectModel,
                         String name,
                         Object value)
communicate an attribute value to further processing logic. OutputModules work in implicit transaction mode, thus setting an attribute starts an transaction and sttributes are only visible after the transaction is successfully completed with a call to commit

Parameters:
modeConf - column's mode configuration from resource description. This argument is optional.
objectModel - The objectModel
name - The attribute's label, consisting of "table.column" or "table.column[index]" in case of multiple attributes of the same spec.
value - The attriute's value.

rollback

public void rollback(Configuration modeConf,
                     Map objectModel,
                     Exception e)
If a database transaction needs to rollback, this is called to inform the further processing logic about this fact. All already set attribute values are invalidated. This is difficult because only the request object can be used to synchronize this and build some kind of transaction object. Beaware that sending your data straight to some beans or other entities could result in data corruption!


commit

public void commit(Configuration modeConf,
                   Map objectModel)
Signal that the database transaction completed successfully. See notes on rollback(Configuration, Map, Exception).



Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.