public abstract class AbstractTypeIntrospector<T> extends Object implements ITypeIntrospector<T>
Modifier and Type | Field and Description |
---|---|
protected static DocumentObjectConverterInternal |
_documentObjectConverter |
protected ITypeDesc |
_typeDesc |
Modifier | Constructor and Description |
---|---|
protected |
AbstractTypeIntrospector()
Default constructor for Externalizable.
|
protected |
AbstractTypeIntrospector(ITypeDesc typeDesc) |
Modifier and Type | Method and Description |
---|---|
protected Object[] |
fromDocumentIfNeeded(Object[] values,
boolean cloneOnChange) |
protected abstract Object |
getDynamicProperty(T target,
String name) |
static Object |
getNestedValue(Object value,
int position,
String[] tokens,
SpacePropertyInfo[] propertyInfoCache,
String originalPath)
Gets the next nested property value according to the provided next token index.
|
Class<?> |
getPathType(String path) |
Object |
getPathValue(IEntryPacket entryPacket,
String path) |
static Object |
getPathValue(Object object,
String[] tokens,
String path) |
Object |
getRouting(T target) |
Object[] |
getSerializedValues(T target) |
ITypeDesc |
getTypeDesc() |
String |
getUID(T target) |
Object |
getValue(T target,
String name) |
boolean |
hasConstructorProperties() |
void |
initialize(ITypeDesc typeDesc) |
protected T |
instantiateObject(Object[] values,
Map<String,Object> dynamicProperties,
String uid,
int version,
long timeToLive,
boolean isTransient) |
protected abstract T |
newInstance() |
protected abstract Object[] |
processDocumentObjectInterop(Object[] values,
EntryType entryType,
boolean cloneOnChange) |
boolean |
propertyHasNullValue(int position) |
void |
readExternal(ObjectInput in) |
void |
readExternal(ObjectInput in,
PlatformLogicalVersion version) |
void |
setValue(T target,
String name,
Object value) |
boolean |
supportsNestedOperations() |
protected Object[] |
toDocumentIfNeeded(Object[] values,
boolean cloneOnChange) |
T |
toObject(IEntryPacket packet) |
T |
toObject(IEntryPacket packet,
StorageTypeDeserialization storageTypeDeserialization) |
T |
toObject(IGSEntry entry,
ITypeDesc typeDesc) |
void |
writeExternal(ObjectOutput out) |
void |
writeExternal(ObjectOutput out,
PlatformLogicalVersion version)
NOTE: if you change this method, you need to make this class ISwapExternalizable
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getDynamicProperties, getExternalizableCode, getTimeToLive, getType, getUID, getValue, getValues, getVersion, hasDynamicProperties, hasTimeToLiveProperty, hasTransientProperty, hasUID, hasVersionProperty, isTransient, setDynamicProperties, setDynamicProperty, setEntryInfo, setTimeToLive, setTransient, setUID, setValue, setValues, setVersion, unsetDynamicProperty
protected static DocumentObjectConverterInternal _documentObjectConverter
protected transient ITypeDesc _typeDesc
protected AbstractTypeIntrospector()
protected AbstractTypeIntrospector(ITypeDesc typeDesc)
public void initialize(ITypeDesc typeDesc)
initialize
in interface ITypeIntrospector<T>
public ITypeDesc getTypeDesc()
getTypeDesc
in interface ITypeIntrospector<T>
public String getUID(T target)
getUID
in interface ITypeIntrospector<T>
public Object getRouting(T target)
getRouting
in interface ITypeIntrospector<T>
public T toObject(IEntryPacket packet)
toObject
in interface ITypeIntrospector<T>
public T toObject(IEntryPacket packet, StorageTypeDeserialization storageTypeDeserialization)
toObject
in interface ITypeIntrospector<T>
protected T instantiateObject(Object[] values, Map<String,Object> dynamicProperties, String uid, int version, long timeToLive, boolean isTransient) throws InstantiationException, IllegalAccessException, InvocationTargetException
protected abstract Object[] processDocumentObjectInterop(Object[] values, EntryType entryType, boolean cloneOnChange)
protected Object[] fromDocumentIfNeeded(Object[] values, boolean cloneOnChange)
public T toObject(IGSEntry entry, ITypeDesc typeDesc)
toObject
in interface ITypeIntrospector<T>
public Object[] getSerializedValues(T target)
getSerializedValues
in interface ITypeIntrospector<T>
protected abstract T newInstance() throws InstantiationException, IllegalAccessException, InvocationTargetException
public Object getValue(T target, String name)
getValue
in interface ITypeIntrospector<T>
public void setValue(T target, String name, Object value)
setValue
in interface ITypeIntrospector<T>
public boolean supportsNestedOperations()
supportsNestedOperations
in interface ITypeIntrospector<T>
public Class<?> getPathType(String path)
getPathType
in interface ITypeIntrospector<T>
public Object getPathValue(IEntryPacket entryPacket, String path)
getPathValue
in interface ITypeIntrospector<T>
public static Object getNestedValue(Object value, int position, String[] tokens, SpacePropertyInfo[] propertyInfoCache, String originalPath)
public boolean propertyHasNullValue(int position)
propertyHasNullValue
in interface ITypeIntrospector<T>
public boolean hasConstructorProperties()
hasConstructorProperties
in interface ITypeIntrospector<T>
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
readExternal
in interface Externalizable
IOException
ClassNotFoundException
public void readExternal(ObjectInput in, PlatformLogicalVersion version) throws IOException, ClassNotFoundException
readExternal
in interface ITypeIntrospector<T>
IOException
ClassNotFoundException
public void writeExternal(ObjectOutput out) throws IOException
writeExternal
in interface Externalizable
IOException
public void writeExternal(ObjectOutput out, PlatformLogicalVersion version) throws IOException
writeExternal
in interface ITypeIntrospector<T>
IOException
Copyright © GigaSpaces.