org.datanucleus.store.rdbms.fieldmanager
Class DynamicSchemaFieldManager

java.lang.Object
  extended by org.datanucleus.store.fieldmanager.AbstractFieldManager
      extended by org.datanucleus.store.rdbms.fieldmanager.DynamicSchemaFieldManager
All Implemented Interfaces:
org.datanucleus.store.fieldmanager.FieldConsumer, org.datanucleus.store.fieldmanager.FieldManager, org.datanucleus.store.fieldmanager.FieldSupplier

public class DynamicSchemaFieldManager
extends org.datanucleus.store.fieldmanager.AbstractFieldManager

Field manager that is used to check the values in fields in order to detect "new" classes that impact on the datastore schema, hence allowing dynamic schema updates.


Field Summary
protected static org.datanucleus.util.Localiser LOCALISER
          Localiser for internationalisation.
 
Constructor Summary
DynamicSchemaFieldManager(RDBMSManager rdbmsMgr, org.datanucleus.StateManager sm)
          Constructor.
 
Method Summary
 boolean hasPerformedSchemaUpdates()
          Accessor for whether this field manager has made updates to the schema.
protected  void processInterfaceMappingForValue(org.datanucleus.store.mapped.mapping.InterfaceMapping intfMapping, java.lang.Object value, org.datanucleus.metadata.AbstractMemberMetaData mmd, org.datanucleus.ObjectManager om)
           
 void storeBooleanField(int fieldNumber, boolean value)
           
 void storeByteField(int fieldNumber, byte value)
           
 void storeCharField(int fieldNumber, char value)
           
 void storeDoubleField(int fieldNumber, double value)
           
 void storeFloatField(int fieldNumber, float value)
           
 void storeIntField(int fieldNumber, int value)
           
 void storeLongField(int fieldNumber, long value)
           
 void storeObjectField(int fieldNumber, java.lang.Object value)
          Method to store an object field into the attached instance.
 void storeShortField(int fieldNumber, short value)
           
 void storeStringField(int fieldNumber, java.lang.String value)
           
 
Methods inherited from class org.datanucleus.store.fieldmanager.AbstractFieldManager
fetchBooleanField, fetchByteField, fetchCharField, fetchDoubleField, fetchFloatField, fetchIntField, fetchLongField, fetchObjectField, fetchShortField, fetchStringField
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOCALISER

protected static final org.datanucleus.util.Localiser LOCALISER
Localiser for internationalisation.

Constructor Detail

DynamicSchemaFieldManager

public DynamicSchemaFieldManager(RDBMSManager rdbmsMgr,
                                 org.datanucleus.StateManager sm)
Constructor.

Parameters:
rdbmsMgr - RDBMSManager
sm - StateManager for the object being processed
Method Detail

hasPerformedSchemaUpdates

public boolean hasPerformedSchemaUpdates()
Accessor for whether this field manager has made updates to the schema.

Returns:
Whether updates have been made.

storeObjectField

public void storeObjectField(int fieldNumber,
                             java.lang.Object value)
Method to store an object field into the attached instance.

Specified by:
storeObjectField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeObjectField in class org.datanucleus.store.fieldmanager.AbstractFieldManager
Parameters:
fieldNumber - Number of the field to store
value - the value in the detached instance

storeBooleanField

public void storeBooleanField(int fieldNumber,
                              boolean value)
Specified by:
storeBooleanField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeBooleanField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeByteField

public void storeByteField(int fieldNumber,
                           byte value)
Specified by:
storeByteField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeByteField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeCharField

public void storeCharField(int fieldNumber,
                           char value)
Specified by:
storeCharField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeCharField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeDoubleField

public void storeDoubleField(int fieldNumber,
                             double value)
Specified by:
storeDoubleField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeDoubleField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeFloatField

public void storeFloatField(int fieldNumber,
                            float value)
Specified by:
storeFloatField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeFloatField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeIntField

public void storeIntField(int fieldNumber,
                          int value)
Specified by:
storeIntField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeIntField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeLongField

public void storeLongField(int fieldNumber,
                           long value)
Specified by:
storeLongField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeLongField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeShortField

public void storeShortField(int fieldNumber,
                            short value)
Specified by:
storeShortField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeShortField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

storeStringField

public void storeStringField(int fieldNumber,
                             java.lang.String value)
Specified by:
storeStringField in interface org.datanucleus.store.fieldmanager.FieldConsumer
Overrides:
storeStringField in class org.datanucleus.store.fieldmanager.AbstractFieldManager

processInterfaceMappingForValue

protected void processInterfaceMappingForValue(org.datanucleus.store.mapped.mapping.InterfaceMapping intfMapping,
                                               java.lang.Object value,
                                               org.datanucleus.metadata.AbstractMemberMetaData mmd,
                                               org.datanucleus.ObjectManager om)


Copyright © 2009. All Rights Reserved.