org.apache.openjpa.jdbc.meta.strats
Class AbstractValueHandler

java.lang.Object
  extended by org.apache.openjpa.jdbc.meta.strats.AbstractValueHandler
All Implemented Interfaces:
Serializable, ValueHandler
Direct Known Subclasses:
BlobValueHandler, ByteArrayValueHandler, CharArrayStreamValueHandler, CharArrayValueHandler, ClobValueHandler, EmbedValueHandler, EnumValueHandler, ImmutableValueHandler, UntypedPCValueHandler

public abstract class AbstractValueHandler
extends Object
implements ValueHandler

No-op implementations of ValueHandler interface methods.

See Also:
Serialized Form

Constructor Summary
AbstractValueHandler()
           
 
Method Summary
 Object getResultArgument(ValueMapping vm)
          Return the argument to pass to the result set when loading data via Result.getObject(java.lang.Object, int, java.lang.Object), or null if none.
 boolean isVersionable(ValueMapping vm)
          Return whether the values managed by this handler can be used in state image versioning.
 boolean objectValueRequiresLoad(ValueMapping vm)
          Return whether this handler potentially must load extra data to extract the object value from its datastore representation.
 Object toDataStoreValue(ValueMapping vm, Object val, JDBCStore store)
          Translate the given value to its datastore equivalent.
 Object toObjectValue(ValueMapping vm, Object val)
          Translate the given datastore value into its Java equivalent.
 Object toObjectValue(ValueMapping vm, Object val, OpenJPAStateManager sm, JDBCStore store, JDBCFetchConfiguration fetch)
          Translate the given datastore value into its Java equivalent.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.openjpa.jdbc.meta.ValueHandler
map
 

Constructor Detail

AbstractValueHandler

public AbstractValueHandler()
Method Detail

isVersionable

public boolean isVersionable(ValueMapping vm)
Description copied from interface: ValueHandler
Return whether the values managed by this handler can be used in state image versioning.

Specified by:
isVersionable in interface ValueHandler

objectValueRequiresLoad

public boolean objectValueRequiresLoad(ValueMapping vm)
Description copied from interface: ValueHandler
Return whether this handler potentially must load extra data to extract the object value from its datastore representation.

Specified by:
objectValueRequiresLoad in interface ValueHandler

getResultArgument

public Object getResultArgument(ValueMapping vm)
Description copied from interface: ValueHandler
Return the argument to pass to the result set when loading data via Result.getObject(java.lang.Object, int, java.lang.Object), or null if none. If this value occupies multiple columns, return an array with one element per column. You may return null if all array elements would be null.

Specified by:
getResultArgument in interface ValueHandler

toDataStoreValue

public Object toDataStoreValue(ValueMapping vm,
                               Object val,
                               JDBCStore store)
Description copied from interface: ValueHandler
Translate the given value to its datastore equivalent. If this value occupies multiple columns, return an object array with one element per column. For relation id columns, return the state manager the column depends on.

Specified by:
toDataStoreValue in interface ValueHandler

toObjectValue

public Object toObjectValue(ValueMapping vm,
                            Object val)
Description copied from interface: ValueHandler
Translate the given datastore value into its Java equivalent. If the value occupies multiple columns, the given object will be an object array with one entry per column. This method is only called if ValueHandler.objectValueRequiresLoad(org.apache.openjpa.jdbc.meta.ValueMapping) returns false.

Specified by:
toObjectValue in interface ValueHandler

toObjectValue

public Object toObjectValue(ValueMapping vm,
                            Object val,
                            OpenJPAStateManager sm,
                            JDBCStore store,
                            JDBCFetchConfiguration fetch)
                     throws SQLException
Description copied from interface: ValueHandler
Translate the given datastore value into its Java equivalent. If the value occupies multiple columns, the given object will be an object array with one entry per column. This method is only called if ValueHandler.objectValueRequiresLoad(org.apache.openjpa.jdbc.meta.ValueMapping) returns true.

Specified by:
toObjectValue in interface ValueHandler
sm - the state manager that owns the value; may be null if loading a projection
Throws:
SQLException


Copyright © 2006-2007 Apache Software Foundation. All Rights Reserved.