|
|||||||||
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.PktSubheaderFMC
public final class PktSubheaderFMC
The FMC (Fabric Multicast) packet subheader.
This class is the subheader used to transport fabric multicast related information in the packet header e.g. topics.
This packet subheader header is a versioned entity. The subheader version defines the format of the subheader i.e. what fields comprise the subheader and their relative locations when serialized. A crucial aspect of subheader versioning is that a version N subheader will always be a subset of a version M subheader where N < M i.e. all fields in version N of a subheader will be present and in the same position as fields in version M of the subheader. i.e. a subheader never shrinks or moves fields around. With time, the subheader can only grow. See the setter/getter method documentation for information on which subheader version the fields that they affect belong to.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class com.neeve.pkt.PktSerializable |
---|
PktSerializable.DeserializeContext, PktSerializable.SerializeContext |
Field Summary |
---|
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 | |
---|---|
static PktBody |
create()
Creates a default FMC subheader. |
static PktBody |
create(Properties props)
Creates an FMC subheader. |
int |
doGetSerializedLength()
Invoked to fetch the serialized length of the body |
boolean |
equals(Object obj)
Indicates whether some other object is equal to this one. |
static short |
getLatestSubheaderVersion()
Get the latest subheader version. |
int |
getSerializedLength(ByteBuffer buffer,
int offset)
Get the serialized length from the serialized form |
short |
getSubheaderVersion()
Get the header format version (V1 Subheader Field). |
String |
getTopic()
Get the publication topic (V1 Subheader Field). |
int |
hashCode()
Returns the hashcode for this object |
void |
initialize()
Invoked by constructor post initialization This method is invoked by the constructor post initialization of the base class. |
void |
initializeBuffer()
Implementation of IOElasticBuffer.Initializer.initializeBuffer()
The default implementation of this method is no-op. |
void |
postDeserialize(int len)
Invoked by PktBody.deserialize(com.neeve.pkt.PktSerializable.DeserializeContext, int, com.neeve.trace.Tracer) after completing deserialization. |
void |
setTopic(String topic)
Set the publication topic (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 |
---|
getClass, notify, notifyAll, wait, wait, wait |
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 final void initialize()
PktBody
This method is invoked by the constructor post initialization of the base class. Its purpose is to notify the body implementation (subclass) to perform any initialization activities that depend on an initialized base class.
The default implementation is a no-op i.e. it does nothing.
public final int doGetSerializedLength()
PktBody
public final int getSerializedLength(ByteBuffer buffer, int offset)
PktSubheader
getSerializedLength
in class PktSubheader
public final void postDeserialize(int len)
PktBody
PktBody.deserialize(com.neeve.pkt.PktSerializable.DeserializeContext, int, com.neeve.trace.Tracer)
after completing deserialization.
len
- The number of bytes deserialized
This method is invoked after body initialization from a byte array. Its purpose isto allow the body implementation (subclass) to perform any post initialization activities e.g. caching element values. This method is called only if the deserialization process successful.
The default implementation is a no-op i.e. it does nothing.
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 short getSubheaderVersion()
public final void setTopic(String topic)
public final String getTopic()
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
public final boolean equals(Object obj)
equals
in class Object
public final int hashCode()
hashCode
in class Object
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |