deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official

org.deegree.record.persistence.genericrecordstore
Class ISORecordStore

java.lang.Object
  extended by org.deegree.record.persistence.genericrecordstore.ISORecordStore
All Implemented Interfaces:
RecordStore

public class ISORecordStore
extends Object
implements RecordStore

RecordStore implementation of Dublin Core and ISO Profile.

Version:
$Revision: $, $Date: $
Author:
Steffen Thomas, last edited by: $Author: thomas $

Constructor Summary
ISORecordStore(String connectionId)
          Creates a new ISORecordStore instance with a registered connectionId.
 
Method Summary
 void describeRecord(XMLStreamWriter writer, QName typeName)
          Exports the XML schema for the associated metadata format.
 void destroy()
          Called by the container to indicate that this RecordStore instance is being taken out of service.
 void getRecordById(XMLStreamWriter writer, List<String> idList, URI outputSchema, CSWConstants.SetOfReturnableElements elementSetName)
          Exports the records by the requested identifier.
 void getRecords(XMLStreamWriter writer, QName typeName, URI outputSchema, RecordStoreOptions recordStoreOptions)
          Exports the XML for the requested records.
 void getRecordsForTransactionInsertStatement(XMLStreamWriter writer, List<Integer> transactionIds)
          Gets the records in dublin core representation for the insert action of the transaction operation.
 Map<QName,Integer> getTypeNames()
          Returns the typeNames that are known in the backend.
 void init()
          Called by the container to indicate that this RecordStore instance is being placed into service.
 List<Integer> transaction(XMLStreamWriter writer, TransactionOperation operations, TransactionOptions options)
          Exports the XML fragment to the recordstore-backend.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ISORecordStore

public ISORecordStore(String connectionId)
Creates a new ISORecordStore instance with a registered connectionId.

Parameters:
connectionId -
Method Detail

describeRecord

public void describeRecord(XMLStreamWriter writer,
                           QName typeName)
Description copied from interface: RecordStore
Exports the XML schema for the associated metadata format.

Specified by:
describeRecord in interface RecordStore
Parameters:
writer - writer to export to, must not be null
typeName - specifies which record profile should be returned in the response.

destroy

public void destroy()
Description copied from interface: RecordStore
Called by the container to indicate that this RecordStore instance is being taken out of service.

Specified by:
destroy in interface RecordStore

init

public void init()
          throws RecordStoreException
Description copied from interface: RecordStore
Called by the container to indicate that this RecordStore instance is being placed into service.

Specified by:
init in interface RecordStore
Throws:
RecordStoreException - if the initialization fails

getTypeNames

public Map<QName,Integer> getTypeNames()
Description copied from interface: RecordStore
Returns the typeNames that are known in the backend.
i.e. the ISORecordStore holds two profiles, the DUBLIN CORE and the ISO profile.

Specified by:
getTypeNames in interface RecordStore
Returns:
a map from a QName to an int value

getRecords

public void getRecords(XMLStreamWriter writer,
                       QName typeName,
                       URI outputSchema,
                       RecordStoreOptions recordStoreOptions)
                throws SQLException,
                       XMLStreamException,
                       IOException
Description copied from interface: RecordStore
Exports the XML for the requested records.

Specified by:
getRecords in interface RecordStore
Parameters:
writer - writer to export to, must not be null
typeName - of a specific requested record profile
outputSchema - that should present in the response. If there is a DC recordStore requested and the outputSchema is a ISO schema then there should be presented the ISO representation of the record.
recordStoreOptions - RecordStoreOptions
Throws:
SQLException
XMLStreamException
IOException

transaction

public List<Integer> transaction(XMLStreamWriter writer,
                                 TransactionOperation operations,
                                 TransactionOptions options)
                          throws SQLException,
                                 XMLStreamException
Description copied from interface: RecordStore
Exports the XML fragment to the recordstore-backend.

INSERT-action: inserts one or more records to the backend.
UPDATE-action: updates one or more complete records OR individual properties.
DELETE-action: deletes one or more records by one filter expression.

Specified by:
transaction in interface RecordStore
Parameters:
writer - writer to export to, must not be null
operations - that are hold by this container
options - TransactionOptions
Returns:
the number of successful transactions
Throws:
SQLException
XMLStreamException

getRecordById

public void getRecordById(XMLStreamWriter writer,
                          List<String> idList,
                          URI outputSchema,
                          CSWConstants.SetOfReturnableElements elementSetName)
                   throws SQLException
Description copied from interface: RecordStore
Exports the records by the requested identifier.

Specified by:
getRecordById in interface RecordStore
Parameters:
writer - writer to export to, must not be null
idList - list of the requested identifiers
outputSchema - that should be presented in the response
elementSetName - CSWConstants.SetOfReturnableElements
Throws:
SQLException

getRecordsForTransactionInsertStatement

public void getRecordsForTransactionInsertStatement(XMLStreamWriter writer,
                                                    List<Integer> transactionIds)
                                             throws SQLException,
                                                    IOException
Description copied from interface: RecordStore
Gets the records in dublin core representation for the insert action of the transaction operation. If there is an INSERT statement in the transaction operation there has to be a brief representation (because of the validity) of this inserted record presented in the response.

Specified by:
getRecordsForTransactionInsertStatement in interface RecordStore
Parameters:
writer - to be updated with a brief representation of the inserted records
transactionIds - that are affected by the transaction
Throws:
SQLException
IOException

deegree-core-3.0-pre-nightly (2010/03/05 00:01) - official

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

]]>