Package com.orientechnologies.spatial
Class OLuceneMockSpatialSerializer
java.lang.Object
com.orientechnologies.spatial.OLuceneMockSpatialSerializer
- All Implemented Interfaces:
OBinarySerializer<ODocument>
Created by Enrico Risa on 04/09/15.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondeserialize(byte[] stream, int startPosition) Reads object from the stream starting from the startPositiondeserializeFromByteBufferObject(int offset, ByteBuffer buffer) Converts binary presentation of object to object instance.Converts binary presentation of object to object instance.deserializeFromByteBufferObject(ByteBuffer buffer, OWALChanges walChanges, int offset) Converts binary presentation of object to object instance taking in account changes which are done inside of atomic operationOAtomicOperation.deserializeNativeObject(byte[] stream, int startPosition) Reads object from the stream starting from the startPosition, in case there were serialized usingOBinarySerializer.serializeNativeObject(T, byte[], int, Object...)method.intbytegetId()intgetObjectSize(byte[] stream, int startPosition) Return size serialized presentation of given object.intgetObjectSize(ODocument object, Object... hints) Obtain size of the serialized object Size is the amount of bites that required for storing object (for example: for storing integer we need 4 bytes)intgetObjectSizeInByteBuffer(int offset, ByteBuffer buffer) Returns amount of bytes which is consumed by object which is already serialized in buffer.intgetObjectSizeInByteBuffer(ByteBuffer buffer) Returns amount of bytes which is consumed by object which is already serialized in buffer.intgetObjectSizeInByteBuffer(ByteBuffer buffer, OWALChanges walChanges, int offset) Returns amount of bytes which is consumed by object which is already serialized in buffer taking in account changes which are done inside of atomic operationOAtomicOperation.intgetObjectSizeNative(byte[] stream, int startPosition) Return size serialized presentation of given object, if it was serialized usingOBinarySerializer.serializeNativeObject(T, byte[], int, Object...)method.booleanpreprocess(ODocument value, Object... hints) voidWrites object to the stream starting from the startPositionvoidserializeInByteBufferObject(ODocument object, ByteBuffer buffer, Object... hints) Serializes binary presentation of object toByteBuffer.voidserializeNativeObject(ODocument object, byte[] stream, int startPosition, Object... hints) Writes object to the stream starting from the startPosition using native acceleration.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.orientechnologies.common.serialization.types.OBinarySerializer
serializeNativeAsWhole
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
OLuceneMockSpatialSerializer
protected OLuceneMockSpatialSerializer()
-
-
Method Details
-
getObjectSize
Description copied from interface:OBinarySerializerObtain size of the serialized object Size is the amount of bites that required for storing object (for example: for storing integer we need 4 bytes)- Specified by:
getObjectSizein interfaceOBinarySerializer<ODocument>- Parameters:
object- is the object to measure its sizehints- List of parameters which may be used to choose appropriate serialization approach.- Returns:
- size of the serialized object
-
getObjectSize
public int getObjectSize(byte[] stream, int startPosition) Description copied from interface:OBinarySerializerReturn size serialized presentation of given object.- Specified by:
getObjectSizein interfaceOBinarySerializer<ODocument>- Parameters:
stream- Serialized content.startPosition- Position from which serialized presentation of given object is stored.- Returns:
- Size serialized presentation of given object in bytes.
-
serialize
Description copied from interface:OBinarySerializerWrites object to the stream starting from the startPosition- Specified by:
serializein interfaceOBinarySerializer<ODocument>- Parameters:
object- is the object to serializestream- is the stream where object will be writtenhints- List of parameters which may be used to choose appropriate serialization approach.
-
deserialize
Description copied from interface:OBinarySerializerReads object from the stream starting from the startPosition- Specified by:
deserializein interfaceOBinarySerializer<ODocument>- Parameters:
stream- is the stream from object will be readstartPosition- is the position to start reading from- Returns:
- instance of the deserialized object
-
getId
public byte getId()- Specified by:
getIdin interfaceOBinarySerializer<ODocument>- Returns:
- Identifier of given serializer.
-
isFixedLength
public boolean isFixedLength()- Specified by:
isFixedLengthin interfaceOBinarySerializer<ODocument>- Returns:
trueif binary presentation of object always has the same length.
-
getFixedLength
public int getFixedLength()- Specified by:
getFixedLengthin interfaceOBinarySerializer<ODocument>- Returns:
- Length of serialized data if
OBinarySerializer.isFixedLength()method returnstrue. IfOBinarySerializer.isFixedLength()method returnfalsereturned value is undefined.
-
serializeNativeObject
public void serializeNativeObject(ODocument object, byte[] stream, int startPosition, Object... hints) Description copied from interface:OBinarySerializerWrites object to the stream starting from the startPosition using native acceleration. Serialized object presentation is platform dependant.- Specified by:
serializeNativeObjectin interfaceOBinarySerializer<ODocument>- Parameters:
object- is the object to serializestream- is the stream where object will be writtenhints- List of parameters which may be used to choose appropriate serialization approach.
-
deserializeNativeObject
Description copied from interface:OBinarySerializerReads object from the stream starting from the startPosition, in case there were serialized usingOBinarySerializer.serializeNativeObject(T, byte[], int, Object...)method.- Specified by:
deserializeNativeObjectin interfaceOBinarySerializer<ODocument>- Parameters:
stream- is the stream from object will be readstartPosition- is the position to start reading from- Returns:
- instance of the deserialized object
-
getObjectSizeNative
public int getObjectSizeNative(byte[] stream, int startPosition) Description copied from interface:OBinarySerializerReturn size serialized presentation of given object, if it was serialized usingOBinarySerializer.serializeNativeObject(T, byte[], int, Object...)method.- Specified by:
getObjectSizeNativein interfaceOBinarySerializer<ODocument>- Parameters:
stream- Serialized content.startPosition- Position from which serialized presentation of given object is stored.- Returns:
- Size serialized presentation of given object in bytes.
-
preprocess
- Specified by:
preprocessin interfaceOBinarySerializer<ODocument>
-
serializeInByteBufferObject
Description copied from interface:OBinarySerializerSerializes binary presentation of object toByteBuffer. Position of buffer should be set before calling of given method. Serialization result is compatible with result of call ofOBinarySerializer.serializeNativeObject(Object, byte[], int, Object...)method. So if we call:buffer.position(10); binarySerializer.serializeInByteBufferObject(object, buffer);and thenbyte[] stream = new byte[serializedSize + 10]; buffer.position(10); buffer.get(stream);following assert should passassert object.equals(binarySerializer.deserializeNativeObject(stream, 10))Final position ofByteBufferwill be changed and will be equal to sum of buffer start position and value returned by methodOBinarySerializer.getObjectSize(Object, Object...)- Specified by:
serializeInByteBufferObjectin interfaceOBinarySerializer<ODocument>- Parameters:
object- Object to serialize.buffer- Buffer which will contain serialized presentation of buffer.hints- Type (types in case of composite object) of object.
-
deserializeFromByteBufferObject
Description copied from interface:OBinarySerializerConverts binary presentation of object to object instance. Position of buffer should be set before call of this method. Binary format of method is expected to be the same as binary format ofOBinarySerializer.serializeNativeObject(Object, byte[], int, Object...)So if we callbyte[] stream = new byte[serializedSize]; binarySerializer.serializeNativeObject(object, stream, 0);following assert should passbyteBuffer.position(10); byteBuffer.put(stream); byteBuffer.position(10); assert object.equals(binarySerializer.deserializeFromByteBufferObject(buffer))Final position ofByteBufferwill be changed and will be equal to sum of buffer start position and value returned by methodOBinarySerializer.getObjectSize(Object, Object...)- Specified by:
deserializeFromByteBufferObjectin interfaceOBinarySerializer<ODocument>- Parameters:
buffer- Buffer which contains serialized presentation of object- Returns:
- Instance of object serialized in buffer.
-
deserializeFromByteBufferObject
Description copied from interface:OBinarySerializerConverts binary presentation of object to object instance. Binary format of method is expected to be the same as binary format ofOBinarySerializer.serializeNativeObject(Object, byte[], int, Object...). So if we callbyte[] stream = new byte[serializedSize]; binarySerializer.serializeNativeObject(object, stream, 0);following assert should passbyteBuffer.position(10); byteBuffer.put(stream); byteBuffer.position(10); assert object.equals(binarySerializer.deserializeFromByteBufferObject(buffer, 10))Final position ofByteBufferwill NOT be changed during the call.- Specified by:
deserializeFromByteBufferObjectin interfaceOBinarySerializer<ODocument>- Parameters:
offset- offset inside theByteBufferfrom which deserialization should be started.buffer- Buffer which contains serialized presentation of object- Returns:
- Instance of object serialized in buffer.
-
getObjectSizeInByteBuffer
Description copied from interface:OBinarySerializerReturns amount of bytes which is consumed by object which is already serialized in buffer. Position of buffer should be set before call of this method. Result of call should be the same as result of call ofOBinarySerializer.getObjectSize(Object, Object...)on deserialized object.- Specified by:
getObjectSizeInByteBufferin interfaceOBinarySerializer<ODocument>- Parameters:
buffer- Buffer which contains serialized version of object- Returns:
- Size of serialized object.
-
getObjectSizeInByteBuffer
Description copied from interface:OBinarySerializerReturns amount of bytes which is consumed by object which is already serialized in buffer. Result of call should be the same as result of call ofOBinarySerializer.getObjectSize(Object, Object...)on deserialized object.Position of
ByteBufferis not changed after result of the call.- Specified by:
getObjectSizeInByteBufferin interfaceOBinarySerializer<ODocument>- Parameters:
offset- offset inside the buffer since which object is serialized.buffer- Buffer which contains serialized version of object- Returns:
- Size of serialized object.
-
deserializeFromByteBufferObject
public ODocument deserializeFromByteBufferObject(ByteBuffer buffer, OWALChanges walChanges, int offset) Description copied from interface:OBinarySerializerConverts binary presentation of object to object instance taking in account changes which are done inside of atomic operationOAtomicOperation. Binary format of method is expected to be the same as binary format of methodOBinarySerializer.serializeNativeObject(Object, byte[], int, Object...). So if we call:byte[] stream = new byte[serializedSize]; binarySerializer.serializeNativeObject(object, stream, 0); walChanges.setBinaryValue(buffer, stream, 10);Then following assert should passassert object.equals(binarySerializer.deserializeFromByteBufferObject(buffer, walChanges, 10));ByteBufferposition should NOT be changed during call of this method.- Specified by:
deserializeFromByteBufferObjectin interfaceOBinarySerializer<ODocument>- Parameters:
buffer- Buffer which will contain serialized changes.walChanges- Changes are done during atomic operation.offset- Offset of binary presentation of object inside of byte buffer/atomic operations changes.- Returns:
- Instance of object serialized in buffer.
-
getObjectSizeInByteBuffer
Description copied from interface:OBinarySerializerReturns amount of bytes which is consumed by object which is already serialized in buffer taking in account changes which are done inside of atomic operationOAtomicOperation. Result of call should be the same as result of call ofOBinarySerializer.getObjectSize(Object, Object...)on deserialized object.ByteBufferposition should NOT be changed during call of this method.- Specified by:
getObjectSizeInByteBufferin interfaceOBinarySerializer<ODocument>- Parameters:
buffer- Buffer which will contain serialized changes.walChanges- Changes are done during atomic operation.offset- Offset of binary presentation of object inside of byte buffer/atomic operations changes.- Returns:
- Size of serialized object.
-