Package com.db4o.internal
Class VirtualFieldMetadata
- java.lang.Object
-
- com.db4o.internal.ClassAspect
-
- com.db4o.internal.FieldMetadata
-
- com.db4o.internal.VirtualFieldMetadata
-
- All Implemented Interfaces:
StoredField
- Direct Known Subclasses:
CommitTimestampFieldMetadata
,UUIDFieldMetadata
,VersionFieldMetadata
public abstract class VirtualFieldMetadata extends FieldMetadata
TODO: refactor for symmetric inheritance - don't inherit from YapField and override, instead extract an abstract superclass from YapField and let both YapField and this class implement
-
-
Field Summary
-
Fields inherited from class com.db4o.internal.FieldMetadata
_fieldType, _fieldTypeID, _isArray
-
Fields inherited from class com.db4o.internal.ClassAspect
_handle
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
activate(UnmarshallingContext context)
abstract void
addFieldIndex(ObjectIdContextImpl context)
boolean
alive()
boolean
canBeDisabled()
boolean
canUseNullBitmap()
ReflectClass
classReflector(Reflector reflector)
void
deactivate(ActivationContext context)
abstract void
delete(DeleteContextImpl context, boolean isUpdate)
TypeHandler4
getHandler()
java.lang.Object
getOrCreate(Transaction a_trans, java.lang.Object a_OnObject)
dirty hack for com.db4o.types some of them (BlobImpl) need to be set automatically TODO: Derive from FieldMetadata for Db4oTypesprotected java.lang.Object
indexEntryFor(java.lang.Object indexEntry)
protected Indexable4
indexHandler(ObjectContainerBase stream)
boolean
isVirtual()
void
loadFieldTypeById()
void
marshall(MarshallingContext context, java.lang.Object obj)
boolean
needsArrayAndPrimitiveInfo()
void
readVirtualAttribute(ObjectReferenceContext context)
-
Methods inherited from class com.db4o.internal.FieldMetadata
addIndexEntry, addIndexEntry, aspectType, attemptUpdate, canLoadByIndex, canUpdateFast, cascadeActivation, cascadingTarget, coerce, collectIDs, container, containingClass, createFieldIndexKey, createIndex, defragAspect, dropIndex, dropIndex, equals, fieldType, fieldTypeID, get, get, getIndex, getName, getOn, getStoredType, hasConfig, hashCode, hasIndex, init, init, initIndex, isArray, isPrimitive, linkLength, newBTree, prepareComparison, qField, read, readIndexEntry, rebuildIndexForClass, rebuildIndexForObject, rebuildIndexForWriter, reflector, removeIndexEntry, rename, search, set, setAvailable, toString, translatorStoredClass, traverseValues, traverseValues, typeHandlerForClass, updating, wrapHandlerToArrays
-
Methods inherited from class com.db4o.internal.ClassAspect
checkEnabled, disableFromAspectCountVersion, incrementOffset, isEnabledOn, setHandle
-
-
-
-
Method Detail
-
getHandler
public TypeHandler4 getHandler()
- Overrides:
getHandler
in classFieldMetadata
-
addFieldIndex
public abstract void addFieldIndex(ObjectIdContextImpl context) throws FieldIndexException
- Overrides:
addFieldIndex
in classFieldMetadata
- Throws:
FieldIndexException
-
alive
public boolean alive()
- Overrides:
alive
in classFieldMetadata
-
canBeDisabled
public boolean canBeDisabled()
- Overrides:
canBeDisabled
in classFieldMetadata
-
canUseNullBitmap
public boolean canUseNullBitmap()
- Overrides:
canUseNullBitmap
in classFieldMetadata
-
classReflector
public ReflectClass classReflector(Reflector reflector)
-
deactivate
public void deactivate(ActivationContext context)
- Overrides:
deactivate
in classFieldMetadata
-
delete
public abstract void delete(DeleteContextImpl context, boolean isUpdate)
- Overrides:
delete
in classFieldMetadata
-
getOrCreate
public java.lang.Object getOrCreate(Transaction a_trans, java.lang.Object a_OnObject)
Description copied from class:FieldMetadata
dirty hack for com.db4o.types some of them (BlobImpl) need to be set automatically TODO: Derive from FieldMetadata for Db4oTypes- Overrides:
getOrCreate
in classFieldMetadata
-
needsArrayAndPrimitiveInfo
public boolean needsArrayAndPrimitiveInfo()
- Overrides:
needsArrayAndPrimitiveInfo
in classFieldMetadata
-
activate
public void activate(UnmarshallingContext context)
- Overrides:
activate
in classFieldMetadata
-
loadFieldTypeById
public void loadFieldTypeById()
- Overrides:
loadFieldTypeById
in classFieldMetadata
-
marshall
public void marshall(MarshallingContext context, java.lang.Object obj)
- Overrides:
marshall
in classFieldMetadata
-
readVirtualAttribute
public void readVirtualAttribute(ObjectReferenceContext context)
-
isVirtual
public boolean isVirtual()
- Overrides:
isVirtual
in classClassAspect
-
indexEntryFor
protected java.lang.Object indexEntryFor(java.lang.Object indexEntry)
- Overrides:
indexEntryFor
in classFieldMetadata
-
indexHandler
protected Indexable4 indexHandler(ObjectContainerBase stream)
- Overrides:
indexHandler
in classFieldMetadata
-
-