|
|||||||||
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.PktSubheaderSMA
public final class PktSubheaderSMA
The SMA packet subheader.
This class is the subheader used by an SMA bus binding to tunnel control information.
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 SMA subheader |
static PktBody |
create(Properties props)
Creates an SMA subheader |
int |
doGetSerializedLength()
Invoked to fetch the serialized length of the body |
short |
getChannelId()
Get the channel id (V1 Subheader Field). |
String |
getChannelName()
Get the channel name (V1 Subheader Field). |
XString |
getChannelNameAsRaw()
Get the channel name (V1 Subheader Field). |
static short |
getLatestSubheaderVersion()
Get the latest subheader version. |
byte |
getMessageEncodingType()
Get the message encoding type (V1 Subheader Field). |
short |
getMessageViewFactoryId()
Get the message view factory id (V1 Subheader Field). |
short |
getMessageViewType()
Get the message view type (V1 Subheader Field). |
int |
getSender()
Get the message sender (V1 header Field). |
int |
getSerializedLength(ByteBuffer buffer,
int offset)
Get the serialized length from the serialized form |
long |
getSno()
Get the message sequence number (V1 Subheader Field). |
short |
getSubheaderVersion()
Get the header format version (V1 Subheader Field). |
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. |
static void |
prepare(PktPacket packet,
byte encodingType,
short vfid,
short vtype,
int sender,
long sno,
short chid,
XString chname)
Prepare a packet with an SMA subheader with latest version. |
void |
setChannelId(short chid)
Set the channel id (V1 Subheader Field). |
void |
setChannelName(String chname)
Set the channel name (V1 Subheader Field). |
void |
setChannelName(XString chname)
Set the channel name (V1 Subheader Field). |
void |
setMessageEncodingType(byte type)
Set the message encoding type (V1 Subheader Field). |
void |
setMessageViewFactoryId(short vfid)
Set the message view factory id (V1 Subheader Field). |
void |
setMessageViewType(short type)
Set the message view type (V1 Subheader Field). |
void |
setSender(int sender)
Set the message sender (V1 header Field). |
void |
setSno(long sno)
Set the message sequence number (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 |
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 void prepare(PktPacket packet, byte encodingType, short vfid, short vtype, int sender, long sno, short chid, XString chname)
packet
- The packet to prepare.encodingType
- The message encoding type.vfid
- The message view factory id to set.vtype
- The message view type to set.sender
- The message sender.sno
- The message sequence number.chid
- The channel id to setchname
- The channel name to set (can be null)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 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 setMessageEncodingType(byte type)
type
- The message encoding type to setpublic final byte getMessageEncodingType()
public final void setMessageViewFactoryId(short vfid)
vfid
- The id to set.public final short getMessageViewFactoryId()
public final void setMessageViewType(short type)
type
- The type to set.public final short getMessageViewType()
public final void setSender(int sender)
sender
- The sender to set.public final int getSender()
public final void setSno(long sno)
sno
- The sequence number to set.public final long getSno()
public final void setChannelId(short chid)
chid
- The id to set.public final short getChannelId()
public final void setChannelName(String chname)
public final void setChannelName(XString chname)
public final String getChannelName()
The channel name returned by this method can be null.
public final XString getChannelNameAsRaw()
The channel name returned by this method will not be null, but
if the channel name is not set the value of XString.isInitialized()
will be false
and XString.getValue()
will return
null
The caller must not modify the value of the XString
that is returned,
and it may not retain the XString
beyond the pooling scope
of this PktSubheaderSMA
.
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 |