|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.neeve.util.UtlListElement
com.neeve.pkt.PktSerializable
com.neeve.pkt.PktBody
com.neeve.pkt.PktSubheader
com.neeve.pkt.PktSubheaderVariable
com.neeve.pkt.PktSubheaderODS
public final class PktSubheaderODS
The ODS packet subheader.
This class is the subheader used by ODS store binding to hold serialized control information for store objects.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class com.neeve.pkt.PktSerializable |
---|
PktSerializable.DeserializeContext, PktSerializable.SerializeContext |
Field Summary | |
---|---|
static short |
ENTRY_TYPE_MESSAGE
Specifies that the entry is for a message |
static short |
ENTRY_TYPE_PUT
Specifies that the entry is for a put |
static short |
ENTRY_TYPE_REMOVE
Specifies that the entry is for a remove |
static short |
ENTRY_TYPE_SEND
Specifies that the entry is for a send |
static short |
ENTRY_TYPE_UPDATE
Specifies that the entry is for an update |
static int |
FLAG_COMMIT_ACK_REQUIRED
Specifies that a commit ack needs to be sent back |
static int |
FLAG_COMMIT_END
Specifies the end of a commit batch |
static int |
FLAG_COMMIT_ENTRY_IN_INIT
Specifies that the commit entry is part of an init |
static int |
FLAG_COMMIT_ENTRY_IS_PUT
Specifies that the commit entry is for a put |
static int |
FLAG_COMMIT_ENTRY_IS_REMOVE
Specifies that the commit entry is for a remove |
static int |
FLAG_COMMIT_ENTRY_IS_SEND
Specifies that the commit entry is for a send |
static int |
FLAG_COMMIT_ENTRY_IS_UPDATE
Specifies that the commit entry is for an update |
static int |
FLAG_COMMIT_START
Specifies the beginning of a commit batch |
static byte |
V1
|
static byte |
V2
|
static byte |
VERSION
|
Fields inherited from class com.neeve.pkt.PktSubheader |
---|
PREAMBLE_LENGTH, PREAMBLE_LENGTH_V1 |
Fields inherited from class com.neeve.util.UtlListElement |
---|
count, head, next, prev |
Method Summary | |
---|---|
void |
copyObjectMetadataFrom(com.neeve.io.IOElasticBuffer metadata)
Copy the object metadata (V1 Subheader Field) from a packet buffer. |
void |
copyObjectMetadataTo(PktBuffer buffer,
int offset)
Copy the object metadata (V1 Subheader Field) to a packet buffer. |
void |
copyPersisterMetadataFrom(com.neeve.io.IOElasticBuffer metadata)
Copy the persister metadata (V2 Subheader Field) from a packet buffer. |
void |
copyPersisterMetadataTo(PktBuffer buffer,
int offset)
Copy the persister metadata (V2 Subheader Field) to a packet buffer. |
static PktBody |
create()
Create a default ODS subheader with the latest version |
static PktBody |
create(Properties props)
Create a latest version ODS subheader qualified by a property set |
static PktBody |
create(short version)
Creates a ODS subheader of a specific version |
int |
doGetInitialBufferLength()
Invoked to fetch the initial buffer length of the body for non forked packet bodies The default implementation of this method invokes PktBody.doGetSerializedLength() . |
int |
doGetSerializedLength()
Invoked to fetch the serialized length of the body |
long |
getCheckpointVersion()
Get the checkpoint version (V1 Subheader Field). |
short |
getCommitEntryType()
Get the commit entry type (V1 Subheader Field). |
short |
getContentEncodingType()
Get the contentEncodingType type(V1 Subheader Field). |
boolean |
getFlagCommitAckRequired()
Get the 'commit ack required' flag (V1 Subheader Field). |
boolean |
getFlagCommitEnd()
Get the 'commit end' flag (V1 Subheader Field). |
boolean |
getFlagCommitEntryInInit()
Get the 'commit entry in INIT' flag (V1 Subheader Field). |
boolean |
getFlagCommitEntryIsPut()
Get the 'commit entry is PUT' flag (V1 Subheader Field). |
boolean |
getFlagCommitEntryIsRemove()
Get the 'commit entry is REMOVE' flag (V1 Subheader Field). |
boolean |
getFlagCommitEntryIsSend()
Get the 'commit entry is SEND' flag (V1 Subheader Field). |
boolean |
getFlagCommitEntryIsUpdate()
Get the 'commit entry is UPDATE' flag (V1 Subheader Field). |
boolean |
getFlagCommitStart()
Get the 'commit start' flag (V1 Subheader Field). |
int |
getFlags()
Get the flags (V1 Subheader Field). |
static short |
getLatestSubheaderVersion()
Get the latest subheader version. |
short |
getObjectFactoryId()
Get the object factory id (V1 Subheader Field). |
com.eaio.uuid.UUID |
getObjectId()
Get the object id (V1 Subheader Field). |
PktBuffer |
getObjectMetadata()
Get the object metadata (V1 Subheader Field). |
short |
getObjectType()
Get the object type (V1 Subheader Field). |
PktBuffer |
getPersisterMetadata()
Get the persister metadata (V2 Subheader Field). |
int |
getSerializedLength(ByteBuffer buffer,
int offset)
Get the serialized length from the serialized form |
long |
getStableTransactionId()
Get the stable transactionId (V1 Subheader Field). |
short |
getSubheaderVersion()
Get the header format version (V1 Subheader Field). |
long |
getTimestamp()
Get the persist timestamp (V1 Subheader Field). |
long |
getTransactionId()
Get the transactionId (V1 Subheader Field). |
void |
initializeBuffer()
Implementation of IOElasticBuffer.Initializer.initializeBuffer()
The default implementation of this method is no-op. |
static void |
prepare(PktPacket packet,
com.eaio.uuid.UUID objectId,
short ofid,
short otype,
short contentEncodingType,
long transactionId,
long stableTransactionId,
long checkpointVersion,
long timestamp,
byte flags)
Prepare a packet with an ODS subheader with latest version. |
int |
prepareForObjectMetadataCopy(int length)
Prepare the object metadata for a copy |
void |
setCheckpointVersion(long checkpointVersion)
Set the checkpoint version (V1 Subheader Field). |
void |
setCommitEntryType(short entryType)
Set the commit entry type (V1 Subheader Field). |
void |
setContentEncodingType(short contentEncodingType)
Set the contentEncodingType type (V1 Subheader Field). |
void |
setFlagCommitAckRequired(boolean val)
Set the 'commit ack required' flag |
void |
setFlagCommitEnd(boolean val)
Set the 'commit end' flag (V1 Subheader Field). |
void |
setFlagCommitEntryInInit(boolean val)
Set the 'commit entry in INIT' flag |
void |
setFlagCommitEntryIsPut(boolean val)
Set the 'commit entry is PUT' flag |
void |
setFlagCommitEntryIsRemove(boolean val)
Set the 'commit entry is REMOVE' flag |
void |
setFlagCommitEntryIsSend(boolean val)
Set the 'commit entry is SEND' flag |
void |
setFlagCommitEntryIsUpdate(boolean val)
Set the 'commit entry is UPDATE' flag |
void |
setFlagCommitStart(boolean val)
Set the 'commit start' flag |
void |
setFlags(byte flags)
Set the flags (V1 Subheader Field). |
void |
setObjectFactoryId(short ofid)
Set the object factory id (V1 Subheader Field). |
void |
setObjectId(com.eaio.uuid.UUID objectId)
Set the object id (V1 Subheader Field). |
void |
setObjectType(short otype)
Set the object type (V1 Subheader Field). |
void |
setStableTransactionId(long stableTransactionId)
Set the stable transaction id (V1 Subheader Field). |
void |
setTimestamp(long timestamp)
Set the persist timestamp (V1 Subheader Field). |
void |
setTransactionId(long transactionId)
Set the transaction id (V1 Subheader Field). |
String |
toString()
Returns a string representation of the object |
Methods inherited from class com.neeve.pkt.PktSubheader |
---|
getType |
Methods inherited from class com.neeve.pkt.PktBody |
---|
deserialize, deserialize, deserialize, deserialize, deserialize, deserialize, deserialize, dump, getBuffer, getInitialBufferLength, getSerializedLength, getType, isNative, reset, serialize, serialize, serialize, serialize, serialize, serialize, serialize |
Methods inherited from class com.neeve.pkt.PktSerializable |
---|
deserialize, getDeserializationPolicy, getSerializationPolicy, isValidDeserializationPolicy, isValidSerializationPolicy, serialize, setDeserializationPolicy, setSerializationPolicy |
Methods inherited from class com.neeve.util.UtlListElement |
---|
count, insertAfter, insertBefore, isLinked, next, previous, unlink, wipe |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final byte V1
public static final byte V2
public static final byte VERSION
public static final int FLAG_COMMIT_START
public static final int FLAG_COMMIT_END
public static final int FLAG_COMMIT_ACK_REQUIRED
public static final int FLAG_COMMIT_ENTRY_IS_PUT
public static final int FLAG_COMMIT_ENTRY_IS_UPDATE
public static final int FLAG_COMMIT_ENTRY_IS_REMOVE
public static final int FLAG_COMMIT_ENTRY_IS_SEND
public static final int FLAG_COMMIT_ENTRY_IN_INIT
public static final short ENTRY_TYPE_PUT
public static final short ENTRY_TYPE_UPDATE
public static final short ENTRY_TYPE_REMOVE
public static final short ENTRY_TYPE_SEND
public static final short ENTRY_TYPE_MESSAGE
Method Detail |
---|
public static PktBody create(Properties props)
props
- The property set to use to qualify creation of the body.public static PktBody create()
public static PktBody create(short version)
public static void prepare(PktPacket packet, com.eaio.uuid.UUID objectId, short ofid, short otype, short contentEncodingType, long transactionId, long stableTransactionId, long checkpointVersion, long timestamp, byte flags)
packet
- The packet to prepare.objectId
- The object id to set.ofid
- The object's factory id.otype
- The object's type.contentEncodingType
- The encoding type to set.transactionId
- The current transaction id.stableTransactionId
- The stable transaction id.checkpointVersion
- The checkpoint version.flags
- The flags to set.public static final short getLatestSubheaderVersion()
This method returns the latest subheader version i.e. the version used when subheaders are created explicitly i.e. not through deserialization
public final int doGetSerializedLength()
PktBody
public final int getSerializedLength(ByteBuffer buffer, int offset)
PktSubheader
getSerializedLength
in class PktSubheader
public final int doGetInitialBufferLength()
PktBody
The default implementation of this method invokes PktBody.doGetSerializedLength()
. The
concrete body implementation should override this method in case it has a better
estimate for the initial length of the backing buffer or if the doGetSerializedLength
implementation uses the backing buffer to calculate serialized length (which is
illegal per the PktBuffer contract).
public final short getSubheaderVersion()
public final void setObjectId(com.eaio.uuid.UUID objectId)
objectId
- The object id to set.public final com.eaio.uuid.UUID getObjectId()
NOTE:
If the packet that this header belongs to is pooled, the validity of the
returned UUID
is only valid while the packet remains, undisposed.
Once the object is returned to its pool the UUID may be wiped and reused.
Consequently, callers that plan to use the returned id beyond this objects
lifespan should either make a copy of it, or aquire this object to prevent
it from be returned to its pool.
public final void setObjectFactoryId(short ofid)
ofid
- The object factory id to set.public final short getObjectFactoryId()
public final void setObjectType(short otype)
otype
- The object type to set.public final short getObjectType()
public final void setContentEncodingType(short contentEncodingType)
contentEncodingType
- The encoding type to set.public final short getContentEncodingType()
public final void setTimestamp(long timestamp)
timestamp
- The timestamp to set.public final long getTimestamp()
public final void setCommitEntryType(short entryType)
entryType
- The commit entry type to set.public final short getCommitEntryType()
public final void setTransactionId(long transactionId)
transactionId
- The transaction id to set.public final long getTransactionId()
public final void setStableTransactionId(long stableTransactionId)
stableTransactionId
- The stable transaction id to set.public final long getStableTransactionId()
public final void setCheckpointVersion(long checkpointVersion)
checkpointVersion
- The checkpointVersion to set.public final long getCheckpointVersion()
public final void setFlags(byte flags)
flags
- The flags to set.public final int getFlags()
public final void setFlagCommitStart(boolean val)
public final boolean getFlagCommitStart()
public final void setFlagCommitEnd(boolean val)
public final boolean getFlagCommitEnd()
public final void setFlagCommitAckRequired(boolean val)
public final boolean getFlagCommitAckRequired()
public final void setFlagCommitEntryIsPut(boolean val)
public final boolean getFlagCommitEntryIsPut()
public final void setFlagCommitEntryIsUpdate(boolean val)
public final boolean getFlagCommitEntryIsUpdate()
public final void setFlagCommitEntryIsRemove(boolean val)
public final boolean getFlagCommitEntryIsRemove()
public final void setFlagCommitEntryIsSend(boolean val)
public final boolean getFlagCommitEntryIsSend()
public final void setFlagCommitEntryInInit(boolean val)
public final boolean getFlagCommitEntryInInit()
public final void copyObjectMetadataFrom(com.neeve.io.IOElasticBuffer metadata)
public final int prepareForObjectMetadataCopy(int length)
length
- The expected length of the serialized metadata. This method
will size the subheader accordingly to acccomodate metadata of the specified
length. After return from this method, make sure the metadata copied is
exactly the specified length. If more, it will corrupt fields succeeding
the metadata in the subheader. If less, then the metadata will contain
a portion of undefined data.
getObjectMetadata()
that marks the beginning of the metadata. The caller should serialize the
metadata to the buffer returned by getObjectMetadata()
starting at
the offset returned by this method.
This method is intended for the use case where a user would like to
directly serialize the metadata into the subheader. This method prepares
the subheader for the copy operation. After making this call, the user
should call getObjectMetadata()
and serialize the metadata into
the buffer returned by that method.
public final PktBuffer getObjectMetadata()
The metadata returned by this method can be null.
public final void copyObjectMetadataTo(PktBuffer buffer, int offset)
public final void copyPersisterMetadataFrom(com.neeve.io.IOElasticBuffer metadata)
public final PktBuffer getPersisterMetadata()
The metadata returned by this method can be null.
public final void copyPersisterMetadataTo(PktBuffer buffer, int offset)
public final void initializeBuffer()
PktBody
IOElasticBuffer.Initializer.initializeBuffer()
The default implementation of this method is no-op. The concrete body implementation should override and implement this method if it needs to do buffer initialization.
initializeBuffer
in interface com.neeve.io.IOElasticBuffer.Initializer
initializeBuffer
in class PktBody
public final String toString()
toString
in class Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |