org.apache.cocoon.acting
Class DatabaseAddAction

java.lang.Object
  extended byorg.apache.cocoon.util.AbstractLogEnabled
      extended byorg.apache.cocoon.acting.AbstractAction
          extended byorg.apache.cocoon.acting.AbstractConfigurableAction
              extended byorg.apache.cocoon.acting.ConfigurableServiceableAction
                  extended byorg.apache.cocoon.acting.AbstractComplementaryConfigurableAction
                      extended byorg.apache.cocoon.acting.AbstractDatabaseAction
                          extended byorg.apache.cocoon.acting.DatabaseAddAction
All Implemented Interfaces:
org.apache.cocoon.acting.Action, Configurable, Disposable, Serviceable, ThreadSafe
Direct Known Subclasses:
OraAddAction

public class DatabaseAddAction
extends AbstractDatabaseAction
implements ThreadSafe

Adds record in a database. The action can update one or more tables, and can add more than one row to a table at a time. The form descriptor semantics for this are still in a bit of a state of flux. Note that if a secondary table relies on the value of a new primary key in a primary table, the primary key must be created using manual mode.

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

Field Summary
protected static Map addStatements
           
 
Fields inherited from class org.apache.cocoon.acting.AbstractDatabaseAction
dbselector, files, typeConstants
 
Fields inherited from class org.apache.cocoon.acting.AbstractComplementaryConfigurableAction
DESCRIPTOR_RELOADABLE_DEFAULT
 
Fields inherited from class org.apache.cocoon.acting.ConfigurableServiceableAction
manager
 
Fields inherited from class org.apache.cocoon.acting.AbstractConfigurableAction
settings
 
Fields inherited from class org.apache.cocoon.acting.AbstractAction
EMPTY_MAP
 
Fields inherited from interface org.apache.cocoon.acting.Action
ROLE
 
Constructor Summary
DatabaseAddAction()
           
 
Method Summary
 Map act(org.apache.cocoon.environment.Redirector redirector, org.apache.cocoon.environment.SourceResolver resolver, Map objectModel, String source, Parameters param)
          Add a record to the database.
protected  String getAddQuery(Configuration table)
          Get the String representation of the PreparedStatement.
protected  String getSelectQuery(Configuration entry)
           
protected  void setSelectQuery(String tableName, Configuration entry)
          Set the String representation of the MaxID lookup statement.
 
Methods inherited from class org.apache.cocoon.acting.AbstractDatabaseAction
buildList, buildList, dispose, getColumn, getDataSource, getRequestAttribute, isLargeObject, service, setColumn, setColumn, setColumn, setColumn, setRequestAttribute
 
Methods inherited from class org.apache.cocoon.acting.AbstractComplementaryConfigurableAction
getConfiguration, getConfiguration
 
Methods inherited from class org.apache.cocoon.acting.AbstractConfigurableAction
configure
 
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
 

Field Detail

addStatements

protected static final Map addStatements
Constructor Detail

DatabaseAddAction

public DatabaseAddAction()
Method Detail

act

public Map act(org.apache.cocoon.environment.Redirector redirector,
               org.apache.cocoon.environment.SourceResolver resolver,
               Map objectModel,
               String source,
               Parameters param)
        throws Exception
Add a record to the database. This action assumes that the file referenced by the "descriptor" parameter conforms to the AbstractDatabaseAction specifications.

Specified by:
act in interface org.apache.cocoon.acting.Action
Throws:
Exception

getAddQuery

protected String getAddQuery(Configuration table)
                      throws ConfigurationException
Get the String representation of the PreparedStatement. This is mapped to the Configuration object itself, so if it doesn't exist, it will be created.

Parameters:
table - the table's configuration object
Returns:
the insert query as a string
Throws:
ConfigurationException

setSelectQuery

protected final void setSelectQuery(String tableName,
                                    Configuration entry)
                             throws ConfigurationException
Set the String representation of the MaxID lookup statement. This is mapped to the Configuration object itself, so if it doesn't exist, it will be created.

Throws:
ConfigurationException

getSelectQuery

protected final String getSelectQuery(Configuration entry)
                               throws ConfigurationException
Throws:
ConfigurationException


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