org.jboss.ejb.plugins.cmp.jdbc.bridge
Class JDBCCMP2xFieldBridge

java.lang.Object
  extended byorg.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge (src) 
      extended byorg.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCCMP2xFieldBridge
All Implemented Interfaces:
CMPFieldBridge (src) , FieldBridge (src) , JDBCCMPFieldBridge (src) , JDBCFieldBridge (src)
Direct Known Subclasses:
JDBCCMP2xAutoUpdatedFieldBridge (src)

public class JDBCCMP2xFieldBridge
extends JDBCAbstractCMPFieldBridge (src)

JDBCCMP2xFieldBridge is a concrete implementation of JDBCCMPFieldBridge for CMP version 2.x. Instance data is stored in the entity persistence context. Whenever a field is changed it is compared to the current value and sets a dirty flag if the value has changed. Life-cycle: Tied to the EntityBridge. Multiplicity: One for each entity bean cmp field.


Field Summary
 
Fields inherited from class org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge (src)
checkDirtyAfterGet, defaultFlags, fieldName, jdbcContextIndex, log, manager, primaryKeyMember, readOnly, readTimeOut, stateFactory, tableIndex
 
Constructor Summary
JDBCCMP2xFieldBridge(JDBCCMP2xFieldBridge (src)  cmpField, CMPFieldStateFactory (src)  stateFactory, boolean checkDirtyAfterGet)
           
JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager, JDBCCMPFieldMetaData (src)  metadata)
           
JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager, JDBCCMPFieldMetaData (src)  metadata, CMPFieldStateFactory (src)  stateFactory, boolean checkDirtyAfterGet)
           
JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager, JDBCCMPFieldMetaData (src)  metadata, JDBCType (src)  jdbcType)
          This constructor creates a foreign key field.
JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager, java.lang.String fieldName, java.lang.Class fieldType, JDBCType (src)  jdbcType, boolean readOnly, long readTimeOut, java.lang.Class primaryKeyClass, java.lang.reflect.Field primaryKeyField, JDBCCMP2xFieldBridge (src)  cmpFieldIAmMappedTo, JDBCCMRFieldBridge (src)  myCMRField, java.lang.String columnName)
          This constructor is used to create a foreign key field instance that is a part of primary key field.
 
Method Summary
 JDBCCMP2xFieldBridge (src) getCmpFieldIAmMappedTo()
           
 org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCCMP2xFieldBridge.ChainLink getCmrChainLink()
           
 java.lang.String getColumnName()
           
 java.lang.Object getInstanceValue(EntityEnterpriseContext (src)  ctx)
          Gets the internal value of this field without user level checks.
 java.lang.Object getLockedValue(EntityEnterpriseContext (src)  ctx)
           
 boolean isDirty(EntityEnterpriseContext (src)  ctx)
          Has the value of this field changes since the last time clean was called.
 boolean isFKFieldMappedToCMPField()
           
 boolean isLoaded(EntityEnterpriseContext (src)  ctx)
          Has the data been loaded?
 boolean isReadTimedOut(EntityEnterpriseContext (src)  ctx)
          Has current data read timed out?
 void lockInstanceValue(EntityEnterpriseContext (src)  ctx)
          Optimistically locks field value.
 void resetPersistenceContext(EntityEnterpriseContext (src)  ctx)
          Resets any persistence data maintained in the context.
 void setClean(EntityEnterpriseContext (src)  ctx)
          Mark this field as clean.
protected  void setDirtyAfterGet(EntityEnterpriseContext (src)  ctx)
           
 void setInstanceValue(EntityEnterpriseContext (src)  ctx, java.lang.Object value)
          Sets the internal value of this field without user level checks.
 void updateState(EntityEnterpriseContext (src)  ctx, java.lang.Object value)
           
 
Methods inherited from class org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge (src)
addDefaultFlag, getDefaultFlags, getFieldIndex, getFieldName, getFieldType, getJDBCType, getManager, getPrimaryKeyClass, getPrimaryKeyField, getPrimaryKeyValue, getReadTimeOut, getTableIndex, getValue, initInstance, isCMPField, isPrimaryKeyMember, isReadOnly, isRelationTableField, loadArgumentResults, loadInstanceResults, loadPrimaryKeyResults, setArgumentParameters, setInstanceParameters, setLockingStrategy, setPrimaryKeyParameters, setPrimaryKeyValue, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JDBCCMP2xFieldBridge

public JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager,
                            JDBCCMPFieldMetaData (src)  metadata)
                     throws DeploymentException (src) 

JDBCCMP2xFieldBridge

public JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager,
                            JDBCCMPFieldMetaData (src)  metadata,
                            CMPFieldStateFactory (src)  stateFactory,
                            boolean checkDirtyAfterGet)
                     throws DeploymentException (src) 

JDBCCMP2xFieldBridge

public JDBCCMP2xFieldBridge(JDBCCMP2xFieldBridge (src)  cmpField,
                            CMPFieldStateFactory (src)  stateFactory,
                            boolean checkDirtyAfterGet)
                     throws DeploymentException (src) 

JDBCCMP2xFieldBridge

public JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager,
                            JDBCCMPFieldMetaData (src)  metadata,
                            JDBCType (src)  jdbcType)
                     throws DeploymentException (src) 
This constructor creates a foreign key field.


JDBCCMP2xFieldBridge

public JDBCCMP2xFieldBridge(JDBCStoreManager (src)  manager,
                            java.lang.String fieldName,
                            java.lang.Class fieldType,
                            JDBCType (src)  jdbcType,
                            boolean readOnly,
                            long readTimeOut,
                            java.lang.Class primaryKeyClass,
                            java.lang.reflect.Field primaryKeyField,
                            JDBCCMP2xFieldBridge (src)  cmpFieldIAmMappedTo,
                            JDBCCMRFieldBridge (src)  myCMRField,
                            java.lang.String columnName)
                     throws DeploymentException (src) 
This constructor is used to create a foreign key field instance that is a part of primary key field. See JDBCCMRFieldBridge.

Method Detail

getCmpFieldIAmMappedTo

public JDBCCMP2xFieldBridge (src)  getCmpFieldIAmMappedTo()

getCmrChainLink

public org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCCMP2xFieldBridge.ChainLink getCmrChainLink()

isFKFieldMappedToCMPField

public boolean isFKFieldMappedToCMPField()

getColumnName

public java.lang.String getColumnName()

getInstanceValue

public java.lang.Object getInstanceValue(EntityEnterpriseContext (src)  ctx)
Description copied from interface: JDBCFieldBridge (src)
Gets the internal value of this field without user level checks.

Parameters:
ctx - the context for which this field's value should be fetched
Returns:
the value of this field

setInstanceValue

public void setInstanceValue(EntityEnterpriseContext (src)  ctx,
                             java.lang.Object value)
Description copied from interface: JDBCFieldBridge (src)
Sets the internal value of this field without user level checks.

Parameters:
ctx - the context for which this field's value should be set
value - the new value of this field

lockInstanceValue

public void lockInstanceValue(EntityEnterpriseContext (src)  ctx)
Description copied from interface: JDBCCMPFieldBridge (src)
Optimistically locks field value.


isLoaded

public boolean isLoaded(EntityEnterpriseContext (src)  ctx)
Description copied from interface: JDBCFieldBridge (src)
Has the data been loaded?


isDirty

public boolean isDirty(EntityEnterpriseContext (src)  ctx)
Has the value of this field changes since the last time clean was called.


setClean

public void setClean(EntityEnterpriseContext (src)  ctx)
Mark this field as clean. Saves the current state in context, so it can be compared when isDirty is called.


resetPersistenceContext

public void resetPersistenceContext(EntityEnterpriseContext (src)  ctx)
Description copied from interface: JDBCFieldBridge (src)
Resets any persistence data maintained in the context.

Specified by:
resetPersistenceContext in interface JDBCFieldBridge (src)
Specified by:
resetPersistenceContext in class JDBCAbstractCMPFieldBridge (src)

isReadTimedOut

public boolean isReadTimedOut(EntityEnterpriseContext (src)  ctx)
Description copied from interface: JDBCFieldBridge (src)
Has current data read timed out?


getLockedValue

public java.lang.Object getLockedValue(EntityEnterpriseContext (src)  ctx)
Parameters:
ctx - instance's context
Returns:
field value that was locked.

updateState

public void updateState(EntityEnterpriseContext (src)  ctx,
                        java.lang.Object value)

setDirtyAfterGet

protected void setDirtyAfterGet(EntityEnterpriseContext (src)  ctx)
Specified by:
setDirtyAfterGet in class JDBCAbstractCMPFieldBridge (src)