deegree 2.3 (2010/04/09 10:10 build-4-official)

org.deegree.ogcwebservices.csw.iso_profile.ebrim
Class InsertTransactionHandler

java.lang.Object
  extended by org.deegree.ogcwebservices.csw.iso_profile.ebrim.InsertTransactionHandler

public class InsertTransactionHandler
extends Object

The InsertTransactionHandler class will cut an csw/wrs ebrim insert transaction into four differend transactions, some of which are handled as wfs transactions. For each record in an Insert Transaction the basic workflow is following:

  1. find out if the to id of the to inserted record is allready in the wfs database
  2. if so, set it's app:status value to "invalid"
  3. insert / update the records
  4. create an audittrail, that is an app:AuditableEvent of the insertion

Version:
$Revision: 1.7 $, $Date: 2007-06-21 13:54:33 $
Author:
Rutger Bezema, last edited by: $Author: bezema $

Constructor Summary
InsertTransactionHandler(Transaction originalTransaction, Insert insert, URI appURI, String userName)
          Creates an TransactionHandler which will be able to handle csw/ebrim inserts as defined in the wrs spec.
 
Method Summary
 List<Element> handleInsertTransaction(Manager transactionManager, int[] resultValues)
          This method will handle the insert (given from
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InsertTransactionHandler

public InsertTransactionHandler(Transaction originalTransaction,
                                Insert insert,
                                URI appURI,
                                String userName)
Creates an TransactionHandler which will be able to handle csw/ebrim inserts as defined in the wrs spec.

Parameters:
originalTransaction - parsed from the incoming HttpServletRequest.
insert - InsertOperation to be handled (as part of the original Transaction) may not be null;
appURI - defining a namespace in which the wfs RegistryObjects Recide.
userName - of the users which wants to insert registryObjects, if not set it will be set to anonymous.
Method Detail

handleInsertTransaction

public List<Element> handleInsertTransaction(Manager transactionManager,
                                             int[] resultValues)
                                      throws OGCWebServiceException
This method will handle the insert (given from

Parameters:
transactionManager - which can handle the csw transactions and allows the access to a localwfs, if null an InvalidParameterException will be thrown.
resultValues - an array[3] in which the number of insertions (resultValues[0]) and/or updates (resultValues[2]) will be saved. If resultValues.length != 3 an InvalidParameterException will be thrown.
Returns:
the brief representation of the inserted (not updated) elements.
Throws:
OGCWebServiceException

deegree 2.3 (2010/04/09 10:10 build-4-official)

an open source project founded by lat/lon, Bonn, Germany.
For more information visit: http://www.deegree.org