public abstract class MappingRecordOperation extends EisOperation
Concrete subclasses must implement the abstract
 createInputRecord(RecordFactory, Object) and
 extractOutputData(Record) methods, to create an input
 Record from an object and to convert an output Record into an object,
 respectively.
createInputRecord(javax.resource.cci.RecordFactory, Object), 
extractOutputData(javax.resource.cci.Record)| Modifier and Type | Class and Description | 
|---|---|
| protected class  | MappingRecordOperation.RecordCreatorImplImplementation of RecordCreator that calls the enclosing
 class's  createInputRecordmethod. | 
| protected class  | MappingRecordOperation.RecordExtractorImplImplementation of RecordExtractor that calls the enclosing
 class's  extractOutputDatamethod. | 
| Constructor and Description | 
|---|
| MappingRecordOperation()Constructor that allows use as a JavaBean. | 
| MappingRecordOperation(ConnectionFactory connectionFactory,
                      InteractionSpec interactionSpec)Convenient constructor with ConnectionFactory and specifications
 (connection and interaction). | 
| Modifier and Type | Method and Description | 
|---|---|
| protected abstract Record | createInputRecord(RecordFactory recordFactory,
                 Object inputObject)Subclasses must implement this method to generate an input Record
 from an input object passed into the  executemethod. | 
| Object | execute(Object inputObject)Execute the interaction encapsulated by this operation object. | 
| protected abstract Object | extractOutputData(Record outputRecord)Subclasses must implement this method to convert the Record returned
 by CCI execution into a result object for the  executemethod. | 
| void | setOutputRecordCreator(RecordCreator creator)Set a RecordCreator that should be used for creating default output Records. | 
afterPropertiesSet, getCciTemplate, getInteractionSpec, setCciTemplate, setConnectionFactory, setInteractionSpecpublic MappingRecordOperation()
public MappingRecordOperation(ConnectionFactory connectionFactory, InteractionSpec interactionSpec)
connectionFactory - the ConnectionFactory to use to obtain connectionspublic void setOutputRecordCreator(RecordCreator creator)
Default is none: CCI's Interaction.execute variant
 that returns an output Record will be called.
 
Specify a RecordCreator here if you always need to call CCI's
 Interaction.execute variant with a passed-in output Record.
 This RecordCreator will then be invoked to create a default output Record instance.
@Nullable public Object execute(Object inputObject) throws DataAccessException
inputObject - the input data, to be converted to a Record
 by the createInputRecord methodextractOutputData methodDataAccessException - if there is any problemcreateInputRecord(javax.resource.cci.RecordFactory, java.lang.Object), 
extractOutputData(javax.resource.cci.Record)protected abstract Record createInputRecord(RecordFactory recordFactory, Object inputObject) throws ResourceException, DataAccessException
execute method.inputObject - the passed-in input objectResourceException - if thrown by a CCI method, to be auto-converted
 to a DataAccessExceptionDataAccessExceptionexecute(Object)protected abstract Object extractOutputData(Record outputRecord) throws ResourceException, SQLException, DataAccessException
execute method.outputRecord - the Record returned by CCI executionResourceException - if thrown by a CCI method, to be auto-converted
 to a DataAccessExceptionSQLExceptionDataAccessExceptionexecute(Object)