T - Template class for the embedded object. It must be Serializable.D - Template class for the encoded objectpublic abstract class BusMessage<T extends Serializable,D> extends Object implements Serializable
| Constructor and Description |
|---|
BusMessage(Class clazz,
byte[] ser,
String compressionProtocol)
Build a BusMessage from a the serialized byte array of an object.
|
BusMessage(T obj)
Build a BusMessage from the provided Object.
|
| Modifier and Type | Method and Description |
|---|---|
protected abstract D |
encodeObject(T obj)
Subclasses must provide a specific implementation of the encoding process.
|
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getCCSTimeStamp()
Get the CCSTimeStamp of when this message was created.
|
String |
getClassName()
Get the class name of the embedded object.
|
Duration |
getDeserializationDuration() |
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getDoneDeSerializationTime() |
D |
getEncodedData()
Get the Encoded version of the embedded Object.
|
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getIncomingQueueInTimeStamp() |
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getIncomingQueueOutTimeStamp() |
T |
getObject()
Get the original version of the embedded Object.
|
AgentInfo |
getOriginAgentInfo()
The Origin of the BusMessage, the bus registration name of the Agent from which it
originated.
|
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getOutgoingQueueInTimeStamp() |
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getOutgoingQueueOutTimeStamp() |
Duration |
getSerializationDuration() |
org.lsst.ccs.utilities.taitime.CCSTimeStamp |
getSerializationTime() |
Duration |
getTransferDuration()
Get the Transfer Duration, this is the time it took from when the BusMessage
was serialized to when it was de-serialized.
|
void |
setIncomingQueueInTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp incomingQueueInTimeStamp) |
void |
setIncomingQueueOutTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp incomingQueueOutTimeStamp) |
void |
setOriginAgentInfo(AgentInfo agent)
Sets the origin for this BusMessage.
|
void |
setOutgoingQueueInTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp outgoingQueueInTimeStamp) |
void |
setOutgoingQueueOutTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp outgoingQueueOutTimeStamp) |
String |
toString() |
void |
updateTimingInformation(BusMessage msg) |
protected final transient T extends Serializable obj
public BusMessage(Class clazz, byte[] ser, String compressionProtocol)
clazz - The Class of the serialized object.ser - The serialized version of the object to be sent over the buses.compressionProtocol - specify the compression protocol used on the provided byte[].
"none" means that the byte[] was not compressed.
"gzip" means that it has been gzipped.public BusMessage(T obj)
obj - The Serializable object to be sent over the buses.protected abstract D encodeObject(T obj)
obj - The Serializable object embedded in the BusMessage.public String getClassName()
public D getEncodedData()
public T getObject()
EmbeddedObjectDeserializationException - if the embedded object cannot be de-serialized.public AgentInfo getOriginAgentInfo()
public final void setOriginAgentInfo(AgentInfo agent)
agent - The origin of the BusMessage.public org.lsst.ccs.utilities.taitime.CCSTimeStamp getCCSTimeStamp()
public Duration getTransferDuration()
public org.lsst.ccs.utilities.taitime.CCSTimeStamp getDoneDeSerializationTime()
public org.lsst.ccs.utilities.taitime.CCSTimeStamp getSerializationTime()
public Duration getSerializationDuration()
public Duration getDeserializationDuration()
public void updateTimingInformation(BusMessage msg)
public org.lsst.ccs.utilities.taitime.CCSTimeStamp getOutgoingQueueOutTimeStamp()
public void setOutgoingQueueOutTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp outgoingQueueOutTimeStamp)
public org.lsst.ccs.utilities.taitime.CCSTimeStamp getOutgoingQueueInTimeStamp()
public void setOutgoingQueueInTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp outgoingQueueInTimeStamp)
public org.lsst.ccs.utilities.taitime.CCSTimeStamp getIncomingQueueOutTimeStamp()
public void setIncomingQueueOutTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp incomingQueueOutTimeStamp)
public org.lsst.ccs.utilities.taitime.CCSTimeStamp getIncomingQueueInTimeStamp()
public void setIncomingQueueInTimeStamp(org.lsst.ccs.utilities.taitime.CCSTimeStamp incomingQueueInTimeStamp)
Copyright © 2021 LSST. All rights reserved.