public abstract class MessageImpl extends java.lang.Object implements javax.jms.Message, weblogic.messaging.Message, WLMessage, ExpressionMap, java.lang.Cloneable, java.io.Externalizable
Message
,
Serialized FormModifier and Type | Class and Description |
---|---|
static class |
MessageImpl.JMSObjectOutputWrapper |
Modifier and Type | Field and Description |
---|---|
private static int |
_CLIENTRESPONSIBLEFORACKNOWLEDGE |
protected static int |
_CONTROL_MESSAGE_MASK |
static int |
_CONTROL_SEQUENCE_RELEASE |
static int |
_CONTROL_SEQUENCE_RELEASE_FANOUT |
static int |
_CONTROL_SEQUENCE_RESERVE |
private static int |
_DDFORWARDED |
private static int |
_DESTINATIONMASK |
private static int |
_HASCLIENTID |
private static int |
_HASCORRID |
private static int |
_HASDELIVERYTIME |
private static int |
_HASDESTINATION |
private static int |
_HASEXPIRATION |
private static int |
_HASMESSAGEID |
private static int |
_HASPROPERTIES |
private static int |
_HASREDELIVERYLIMIT |
private static int |
_HASREPLYTO |
private static int |
_HASSAFSEQUENCE |
private static int |
_HASSAFSEQUENCENUMBER |
private static int |
_HASTYPE |
private static int |
_HASUSERDATALEN |
private static int |
_HASUSERID |
private static int |
_HASXID |
private static int |
_ISPERSISTENT |
private static int |
_ISREDELIVERED |
private static int |
_JMSCLIENTFORWARD |
private static int |
_OLDMESSAGE |
private static int |
_PRIORITYMASK
Externalizable Interface
|
private static int |
_PRIORITYSHIFT |
private static int |
_REPLYTODESTINATIONMASK |
private static int |
_REPLYTODESTINATIONSHIFT |
private static int |
_REQUESTUSERID |
private static int |
_RESERVEDEXTENSION1 |
private static int |
_RESERVEDEXTENSION2 |
private static int |
_SAFNEEDREORDER |
private static int |
_SERIALIZEDEST |
private static int |
_UNITOFORDER |
private static int |
_VERSIONMASK |
private static int |
_VERSIONSHIFT |
private static int |
_WORKCONTEXT |
private int |
adjustedDeliveryMode |
private java.lang.Object |
asyncSendLock |
private java.io.Externalizable |
bexaXid |
(package private) long |
bodySize |
private boolean |
bodyWritable |
(package private) static byte |
BYTESMESSAGEIMPL |
private boolean |
clean |
private java.lang.String |
clientId |
private boolean |
clientResponsibleForAcknowledge |
private boolean |
compressed |
(package private) static byte |
COMPRESSION |
private java.lang.String |
compressionFactory |
private java.lang.String |
compressionFactoryOverride |
private java.util.Properties |
compressionOption |
private java.util.Properties |
compressionOptionOverride |
protected byte |
compressionTag |
private JMSID |
connectionId |
private java.lang.String |
correlationId |
private static boolean |
cpDebug |
static java.lang.String |
DD_FORWARDED_PROPERTY_NAME |
private boolean |
ddforwarded |
(package private) static boolean |
debugWire |
(package private) static java.util.Properties |
defaultCompressionOption |
(package private) static byte |
defaultCompressionTag |
static java.lang.String |
DELIVERY_COUNT_PROPERTY_NAME |
static java.lang.String |
DELIVERY_TIME_PROPERTY_NAME |
private int |
deliveryCount |
private boolean |
deliveryCountIncluded |
private int |
deliveryMode |
private long |
deliveryTime |
private DestinationImpl |
destination |
private long |
expiration |
(package private) static byte |
EXTVERSION1 |
(package private) static byte |
EXTVERSION2 |
(package private) static byte |
EXTVERSION3 |
(package private) static byte |
EXTVERSION4 |
(package private) static byte |
EXTVERSION5 |
private static java.lang.reflect.Method |
getLengthMethodForWriteExternal |
private static boolean |
getLengthMethodForWriteExternalChecked |
static java.lang.String |
GZIP_COMPRESSION_FACTORY |
private boolean |
hasBeenCompressed |
(package private) static byte |
HDRMESSAGEIMPL |
private boolean |
inAsyncSend |
static java.lang.String |
INTERNAL_SEQUENCE_NUMBER_PROPERTY_NAME |
private boolean |
jmsClientForward |
private boolean |
keepSAFSequenceNameAndNumber |
static java.lang.String |
LZF_COMPRESSION_FACTORY |
(package private) static byte |
MAPMESSAGEIMPL |
private JMSMessageId |
messageId |
private java.lang.String |
messageIdString |
private MessageReference |
mRef |
(package private) static byte |
NULLMESSAGEIMPL |
(package private) static byte |
OBJECTMESSAGEIMPL |
protected int |
originalLength |
private boolean |
pagingMessageCompression |
private PayloadStream |
payloadCompressed |
protected boolean |
payloadCopyOnWrite |
private boolean |
pre90Message |
private byte |
priority |
private PrimitiveObjectMap |
properties |
private boolean |
propertiesWritable |
static java.lang.String |
REDELIVERY_LIMIT_PROPERTY_NAME |
private int |
redeliveryLimit |
private DestinationImpl |
replyTo |
private static boolean |
REPORT_COMPRESSION |
private static boolean |
REPORT_COMPRESSON_TIME |
static java.lang.String |
SAF_SEQUENCE_NAME |
static java.lang.String |
SAF_SEQUENCE_NUMBER |
private boolean |
safNeedReorder |
private java.lang.String |
safSequenceName |
private long |
safSequenceNumber |
private long |
sequenceNumber |
private boolean |
serializeDestination |
(package private) static long |
serialVersionUID |
private weblogic.jms.client.JMSSession |
session |
private JMSID |
sessionId |
static java.lang.String |
SIZE_PROPERTY_NAME |
static java.lang.String |
STATE_PROPERTY_NAME |
private boolean |
storeMessageCompression |
(package private) static byte |
STREAMMESSAGEIMPL |
protected static int |
SUBFLAG_OBJECT |
protected static int |
SUBFLAG_STRING |
protected static int |
SUBFLAG_TOKENIZE |
protected static int |
SUBFLAG_UTF8 |
(package private) static byte |
TEXTMESSAGEIMPL |
private int |
totalForwardsCount |
private java.lang.String |
type |
static java.lang.String |
UNIT_OF_ORDER_PROPERTY_NAME |
private java.lang.String |
unitOfOrderName |
static java.lang.String |
USER_ID_PROPERTY_NAME |
private int |
userdatalen |
private java.lang.String |
userId |
private boolean |
userIDRequested |
private java.lang.Object |
workContext |
static java.lang.String |
XID_PROPERTY_NAME |
(package private) static byte |
XMLMESSAGEIMPL |
Constructor and Description |
---|
MessageImpl() |
MessageImpl(javax.jms.Message message)
Used to suck in the state of a foreign message.
|
MessageImpl(javax.jms.Message message,
javax.jms.Destination destination,
javax.jms.Destination replyDestination)
Used for copying old release messages into new format
with non-null destination and non-null replyDestination.
|
Modifier and Type | Method and Description |
---|---|
static <T> T |
_getBody(javax.jms.Message message,
java.lang.Class<T> c) |
int |
_getJMSRedeliveryLimit() |
static boolean |
_isBodyAssignableTo(javax.jms.Message message,
java.lang.Class c) |
void |
_setJMSExpiration(long expiration)
same as setJMSExpiration but doesn't throw an exception
|
void |
_setJMSRedeliveryLimit(int redeliveryLimit) |
void |
acknowledge() |
protected void |
cleanupCompressedMessageBody() |
void |
clearBody() |
void |
clearProperties() |
MessageImpl |
cloneit()
Clone this message object.
|
static java.util.Properties |
convertCompressionOptionOverrideStringToProperty(java.lang.String value) |
static java.util.Properties |
convertCompressionOptionStringToProperty(java.lang.String value) |
abstract MessageImpl |
copy() |
(package private) void |
copy(MessageImpl message)
Deep copy message so collocated clients can not change stored messages
|
private void |
copyToMessageReference() |
static MessageImpl.JMSObjectOutputWrapper |
createJMSObjectOutputWrapper(java.io.ObjectOutput out,
int compressionThreshold,
boolean readStringAsObject) |
static MessageImpl |
createMessageImpl(byte type) |
protected Payload |
decompress() |
abstract void |
decompressMessageBody() |
weblogic.messaging.Message |
duplicate() |
protected void |
flushCompressedMessageBody(java.io.ObjectOutput out) |
java.lang.Object |
get(java.lang.String key)
ExpressionMap Interface
Used to by selector expression evaluator.
|
int |
getAdjustedDeliveryMode() |
java.io.Externalizable |
getBEXAXid()
internal use only
|
<T> T |
getBody(java.lang.Class<T> c) |
boolean |
getBooleanProperty(java.lang.String name) |
byte |
getByteProperty(java.lang.String name) |
java.lang.String |
getClientId()
Get the client id of this message's connection.
|
boolean |
getClientResponsibleForAcknowledge() |
int |
getCompressedMessageBodySize() |
private CompressionFactory |
getCompressionFactory(byte id) |
private CompressionFactory |
getCompressionFactory(java.io.ObjectOutput out) |
private java.util.Properties |
getCompressionOption(java.io.ObjectOutput out) |
private byte |
getCompressionTag(java.io.ObjectOutput out) |
byte |
getCompressionTagInternal() |
JMSID |
getConnectionId()
Get the unique id of this message's connection.
|
int |
getControlOpcode()
Message may be a control message rather than user data message.
|
boolean |
getDDForwarded()
Return true if the message is forwarded from one DD Member to another
or from SAFImported Destination to a DD Member
|
int |
getDeliveryCount() |
long |
getDeliveryTime() |
DestinationImpl |
getDestination() |
double |
getDoubleProperty(java.lang.String name) |
long |
getExpirationTime() |
float |
getFloatProperty(java.lang.String name) |
int |
getForwardsCount() |
java.lang.String |
getGroup() |
JMSMessageId |
getId()
Returns a globally unique message ID that can be used for
persistent messages.
|
private PrimitiveObjectMap |
getInteropProperties()
Return a properties map containing all the properties, including
those that are customized.
|
int |
getIntProperty(java.lang.String name) |
java.lang.String |
getJMSCorrelationID() |
byte[] |
getJMSCorrelationIDAsBytes() |
int |
getJMSDeliveryMode() |
long |
getJMSDeliveryTime()
Get the delivery time for the message; the delivery time is
an absolute time expressed in milliseconds.
|
javax.jms.Destination |
getJMSDestination() |
long |
getJMSExpiration() |
org.w3c.dom.Document |
getJMSMessageDocument()
Returns an XML DOM Document representation of the message.
|
java.lang.String |
getJMSMessageID()
Returns the JMS Message ID, which is computed from the long
id value (the db key for persistent message).
|
int |
getJMSPriority() |
boolean |
getJMSRedelivered() |
int |
getJMSRedeliveryLimit()
Get the redelivery limit for the message.
|
javax.jms.Destination |
getJMSReplyTo() |
long |
getJMSTimestamp() |
java.lang.String |
getJMSType() |
boolean |
getKeepSAFSequenceNameAndNumber() |
long |
getLongProperty(java.lang.String name) |
JMSMessageId |
getMessageId()
Implementation of WLAcknowledgeInfo
|
weblogic.messaging.MessageID |
getMessageID() |
java.lang.Object |
getObjectProperty(java.lang.String name) |
int |
getOriginalMessageBodySize() |
abstract long |
getPayloadSize() |
static int |
getPosition(java.io.ObjectOutput out) |
java.util.Collection |
getPropertyNameCollection()
Return a Collection of all the property names for this message,
including both custom and user-defined properties.
|
java.util.Enumeration |
getPropertyNames() |
int |
getRedeliveryLimit() |
long |
getSAFSeqNumber()
Get the Sequence Number on the message
|
java.lang.String |
getSAFSequenceName() |
long |
getSequenceNumber() |
JMSID |
getSessionId() |
short |
getShortProperty(java.lang.String name) |
java.lang.String |
getStringProperty(java.lang.String name) |
abstract byte |
getType() |
java.lang.String |
getUnitOfOrder()
Get Unit-of-Order name.
|
int |
getUserPropertySize() |
protected int |
getVersion(java.lang.Object oo) |
java.lang.Object |
getWorkContext() |
boolean |
hasBeenCompressed() |
(package private) boolean |
hasProperties() |
private java.lang.String |
illegalPropertyName(java.lang.String name) |
void |
incForwardsCount() |
boolean |
includeJMSXDeliveryCount(boolean incl)
Always include JMSXDeliveryCount when getPropertyNames is called.
|
void |
incrementDeliveryCount() |
void |
initializeFromMessage(javax.jms.Message message) |
void |
initializeFromMessage(javax.jms.Message message,
javax.jms.Destination destination,
javax.jms.Destination replyDestination) |
boolean |
isBodyAssignableTo(java.lang.Class c) |
boolean |
isCompressed() |
private boolean |
isDeliveryTimeSet() |
boolean |
isForwardable() |
boolean |
isForwarded() |
static boolean |
isHeaderField(java.lang.String name) |
boolean |
isInAsyncSend() |
boolean |
isJMSXUserIDRequested()
The front end uses this to request a JMSXUserID value
to be filled in on the backend.
|
boolean |
isOldMessage() |
private boolean |
isRedeliveryLimitSet() |
boolean |
isSAFNeedReorder() |
private boolean |
isSAFSequenceNameSet() |
private boolean |
isSAFSequenceNumberSet() |
private boolean |
isUnitOfOrderSet() |
private boolean |
isUserIDSet() |
protected boolean |
needToDecompressDueToInterop(java.lang.Object oo) |
abstract void |
nullBody()
WebLogic Specific API
|
java.lang.Object |
parse()
ExpressionMap Interface
Used by selector expression evaluator.
|
boolean |
propertyExists(java.lang.String name) |
void |
readExternal(java.io.ObjectInput in) |
protected void |
readExternalCompressedMessageBody(java.io.ObjectInput in) |
private void |
readExternalVersion1(java.io.ObjectInput in) |
private void |
readExternalVersion2(java.io.ObjectInput in,
int flags) |
private void |
readInteropProperties(java.io.ObjectInput in,
int messageVersion)
When reading a message from an older client or server, we deliberately
ignore the new "BEA" properties to maintain strict backward compatibility.
|
(package private) void |
readMode() |
void |
removeProperty(java.lang.String propertyName) |
void |
requestJMSXUserID(boolean requested)
This is called by the front end in order to request
a JMSXUserID on the message.
|
void |
reset() |
void |
resetForwardsCount() |
void |
resetUserPropertySize() |
void |
setAdjustedDeliveryMode(int adjustedDeliveryMode) |
void |
setBEXAXid(java.io.Externalizable o)
internal use only
|
void |
setBodyWritable() |
void |
setBodyWritable(boolean writable) |
void |
setBooleanProperty(java.lang.String name,
boolean value) |
void |
setByteProperty(java.lang.String name,
byte value) |
void |
setClientId(java.lang.String clientId)
Set the client id of this message's connection.
|
void |
setClientResponsibleForAcknowledge(boolean clientResponsibleForAcknowledge) |
void |
setCompressionOption(java.util.Properties option) |
void |
setCompressionOptionOverride(java.util.Properties optionOverride) |
void |
setConnectionId(JMSID jmsid)
Set the unique id of this message's connection.
|
void |
setControlOpcode(int opcode)
Message may be a control message rather than user data message.
|
void |
setDDForwarded(boolean ddforwarded) |
void |
setDeliveryCount(int paramDeliveryCount) |
void |
setDeliveryTime(long deliveryTime) |
void |
setDoubleProperty(java.lang.String name,
double value) |
void |
setFloatProperty(java.lang.String name,
float value) |
void |
setForward(boolean value) |
void |
setId(JMSMessageId messageId)
Sets a globally unique message ID that can be used for
persistent messages.
|
void |
setInAsyncSend(boolean b) |
void |
setIntProperty(java.lang.String name,
int value) |
void |
setJMSCorrelationID(java.lang.String correlationId) |
void |
setJMSCorrelationIDAsBytes(byte[] correlationID) |
void |
setJMSDeliveryMode(int deliveryMode) |
void |
setJMSDeliveryTime(long deliveryTime)
Set the delivery time for the message; this method
is for use by providers only, and is called automatically
when a message is sent.
|
void |
setJMSDestination(javax.jms.Destination destination) |
void |
setJMSDestinationImpl(DestinationImpl destinationImpl)
Internal use only
|
void |
setJMSExpiration(long expiration) |
void |
setJMSMessageID(java.lang.String messageIdString) |
void |
setJMSPriority(int priority) |
void |
setJMSRedelivered(boolean redeliveredArg) |
void |
setJMSRedeliveryLimit(int redeliveryLimit)
Set the redelivery limit for the message.
|
void |
setJMSReplyTo(javax.jms.Destination replyTo) |
void |
setJMSTimestamp(long timestamp) |
void |
setJMSType(java.lang.String type) |
void |
setJMSXUserID(java.lang.String userID) |
void |
setLongProperty(java.lang.String name,
long value) |
void |
setMessageReference(MessageReference mRef) |
void |
setObjectProperty(java.lang.String name,
java.lang.Object value) |
void |
setOldMessage(boolean value) |
void |
setPagingCompression(boolean value) |
void |
setPropertiesWritable(boolean writable) |
void |
setSAFNeedReorder(boolean value) |
void |
setSAFSeqNumber(long seqNumber)
set the sequence number for a Sequence.
|
void |
setSAFSequenceName(java.lang.String name) |
void |
setSequenceNumber(long sequenceNumber) |
void |
setSerializeDestination(boolean serializeDestination) |
void |
setSession(weblogic.jms.client.JMSSession session) |
void |
setSessionId(JMSID jmsid) |
void |
setShortProperty(java.lang.String name,
short value) |
void |
setStoreCompression(boolean value) |
void |
setStringProperty(java.lang.String name,
java.lang.String value) |
void |
setUnitOfOrderName(java.lang.String name) |
void |
setWorkContext(java.lang.Object workContext) |
protected boolean |
shouldCompress(java.io.ObjectOutput out,
int limit) |
private boolean |
shouldCompressionInternal(java.io.ObjectOutput out) |
long |
size() |
void |
writeExternal(java.io.ObjectOutput tOut) |
protected void |
writeExternalCompressPayload(java.io.ObjectOutput out,
Payload payload) |
private void |
writeExternalCompressPayload(java.io.ObjectOutput out,
Payload payload,
java.io.OutputStream outputFromCP) |
private void |
writeFlags(int flags,
java.io.ObjectOutput out) |
(package private) void |
writeMode() |
static final long serialVersionUID
static final java.util.Properties defaultCompressionOption
public static final java.lang.String GZIP_COMPRESSION_FACTORY
public static final java.lang.String LZF_COMPRESSION_FACTORY
private static volatile java.lang.reflect.Method getLengthMethodForWriteExternal
private static volatile boolean getLengthMethodForWriteExternalChecked
static final byte defaultCompressionTag
static final byte EXTVERSION1
static final byte EXTVERSION2
static final byte EXTVERSION3
static final byte EXTVERSION4
static final byte EXTVERSION5
public static final java.lang.String USER_ID_PROPERTY_NAME
public static final java.lang.String UNIT_OF_ORDER_PROPERTY_NAME
public static final java.lang.String SAF_SEQUENCE_NAME
public static final java.lang.String SAF_SEQUENCE_NUMBER
public static final java.lang.String DELIVERY_TIME_PROPERTY_NAME
public static final java.lang.String REDELIVERY_LIMIT_PROPERTY_NAME
public static final java.lang.String DELIVERY_COUNT_PROPERTY_NAME
public static final java.lang.String SIZE_PROPERTY_NAME
public static final java.lang.String STATE_PROPERTY_NAME
public static final java.lang.String XID_PROPERTY_NAME
public static final java.lang.String INTERNAL_SEQUENCE_NUMBER_PROPERTY_NAME
public static final java.lang.String DD_FORWARDED_PROPERTY_NAME
private static final boolean cpDebug
private static final boolean REPORT_COMPRESSON_TIME
private static final boolean REPORT_COMPRESSION
private int deliveryMode
private transient int adjustedDeliveryMode
private int deliveryCount
private long expiration
private long deliveryTime
private int redeliveryLimit
private byte priority
private int userdatalen
transient long bodySize
private boolean clientResponsibleForAcknowledge
private java.lang.String compressionFactory
private java.lang.String compressionFactoryOverride
private java.util.Properties compressionOption
private java.util.Properties compressionOptionOverride
private boolean storeMessageCompression
private boolean pagingMessageCompression
private transient long sequenceNumber
private transient boolean bodyWritable
private transient boolean propertiesWritable
private boolean serializeDestination
private boolean ddforwarded
private java.lang.String correlationId
private DestinationImpl destination
private DestinationImpl replyTo
private java.lang.String type
private PrimitiveObjectMap properties
static final byte NULLMESSAGEIMPL
static final byte BYTESMESSAGEIMPL
static final byte HDRMESSAGEIMPL
static final byte MAPMESSAGEIMPL
static final byte OBJECTMESSAGEIMPL
static final byte STREAMMESSAGEIMPL
static final byte TEXTMESSAGEIMPL
static final byte XMLMESSAGEIMPL
static final byte COMPRESSION
protected static final int SUBFLAG_TOKENIZE
protected static final int SUBFLAG_UTF8
protected static final int SUBFLAG_OBJECT
protected static final int SUBFLAG_STRING
private boolean hasBeenCompressed
private java.io.Externalizable bexaXid
private JMSMessageId messageId
private JMSID connectionId
private java.lang.String messageIdString
private java.lang.String userId
private java.lang.String clientId
protected byte compressionTag
private transient weblogic.jms.client.JMSSession session
private transient JMSID sessionId
private java.lang.String unitOfOrderName
private java.lang.String safSequenceName
private long safSequenceNumber
private transient boolean keepSAFSequenceNameAndNumber
private java.lang.Object workContext
private transient MessageReference mRef
private boolean userIDRequested
private transient boolean deliveryCountIncluded
private boolean pre90Message
private PayloadStream payloadCompressed
private boolean compressed
protected int originalLength
private boolean clean
protected transient boolean payloadCopyOnWrite
private boolean safNeedReorder
private boolean jmsClientForward
private int totalForwardsCount
private java.lang.Object asyncSendLock
private boolean inAsyncSend
private static final int _PRIORITYMASK
private static final int _PRIORITYSHIFT
private static final int _RESERVEDEXTENSION2
private static final int _DDFORWARDED
private static final int _HASREDELIVERYLIMIT
private static final int _ISPERSISTENT
private static final int _HASCORRID
private static final int _HASDESTINATION
private static final int _HASREPLYTO
private static final int _ISREDELIVERED
private static final int _HASTYPE
private static final int _HASEXPIRATION
private static final int _HASPROPERTIES
private static final int _HASXID
private static final int _HASMESSAGEID
private static final int _HASUSERDATALEN
private static final int _HASDELIVERYTIME
private static final int _SERIALIZEDEST
private static final int _CLIENTRESPONSIBLEFORACKNOWLEDGE
private static final int _RESERVEDEXTENSION1
private static final int _VERSIONMASK
private static final int _VERSIONSHIFT
private static final int _DESTINATIONMASK
private static final int _REPLYTODESTINATIONMASK
private static final int _REPLYTODESTINATIONSHIFT
private static final int _JMSCLIENTFORWARD
private static final int _WORKCONTEXT
private static final int _OLDMESSAGE
private static final int _REQUESTUSERID
private static final int _UNITOFORDER
private static final int _HASSAFSEQUENCE
private static final int _HASSAFSEQUENCENUMBER
private static final int _HASUSERID
private static final int _SAFNEEDREORDER
private static final int _HASCLIENTID
protected static final int _CONTROL_MESSAGE_MASK
public static final int _CONTROL_SEQUENCE_RELEASE_FANOUT
public static final int _CONTROL_SEQUENCE_RELEASE
public static final int _CONTROL_SEQUENCE_RESERVE
static boolean debugWire
public MessageImpl()
public MessageImpl(javax.jms.Message message) throws javax.jms.JMSException
javax.jms.JMSException
public MessageImpl(javax.jms.Message message, javax.jms.Destination destination, javax.jms.Destination replyDestination) throws javax.jms.JMSException
javax.jms.JMSException
public final boolean hasBeenCompressed()
public final void setOldMessage(boolean value)
public final boolean isOldMessage()
public final void incForwardsCount()
public final void resetForwardsCount()
public final void setForward(boolean value)
public final void setSAFNeedReorder(boolean value)
public final boolean isSAFNeedReorder()
public final boolean isForwarded()
public final boolean isForwardable()
public final int getForwardsCount()
public abstract byte getType()
public int getControlOpcode()
public void setControlOpcode(int opcode) throws java.io.IOException
opcode
- non-zero values inidcate this is a control message.
Legal values are: ((opcode & ~_CONTROL_MESSAGE_MASK)==0).
These values are not shifted right, to make them human readable use
Integer.toString(opcode, 16);java.io.IOException
- always throws IOException unless subclass overridespublic static MessageImpl createMessageImpl(byte type) throws java.io.IOException
java.io.IOException
public void initializeFromMessage(javax.jms.Message message) throws javax.jms.JMSException
javax.jms.JMSException
public void initializeFromMessage(javax.jms.Message message, javax.jms.Destination destination, javax.jms.Destination replyDestination) throws javax.jms.JMSException
javax.jms.JMSException
private void copyToMessageReference()
public final java.lang.String getJMSMessageID()
getJMSMessageID
in interface javax.jms.Message
Message
public final void setJMSMessageID(java.lang.String messageIdString)
setJMSMessageID
in interface javax.jms.Message
Message
public final long getJMSTimestamp()
getJMSTimestamp
in interface javax.jms.Message
Message
public final void setJMSTimestamp(long timestamp)
setJMSTimestamp
in interface javax.jms.Message
Message
public final byte[] getJMSCorrelationIDAsBytes() throws javax.jms.JMSException
getJMSCorrelationIDAsBytes
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setJMSCorrelationIDAsBytes(byte[] correlationID) throws javax.jms.JMSException
setJMSCorrelationIDAsBytes
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setJMSCorrelationID(java.lang.String correlationId)
setJMSCorrelationID
in interface javax.jms.Message
Message
public final java.lang.String getJMSCorrelationID()
getJMSCorrelationID
in interface javax.jms.Message
Message
public final javax.jms.Destination getJMSReplyTo()
getJMSReplyTo
in interface javax.jms.Message
Message
public final void setJMSReplyTo(javax.jms.Destination replyTo)
setJMSReplyTo
in interface javax.jms.Message
Message
public final javax.jms.Destination getJMSDestination()
getJMSDestination
in interface javax.jms.Message
Message
public final DestinationImpl getDestination()
public final void setJMSDestination(javax.jms.Destination destination) throws javax.jms.JMSException
setJMSDestination
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setJMSDestinationImpl(DestinationImpl destinationImpl)
public final int getJMSDeliveryMode()
getJMSDeliveryMode
in interface javax.jms.Message
Message
public final void setJMSDeliveryMode(int deliveryMode) throws javax.jms.JMSException
setJMSDeliveryMode
in interface javax.jms.Message
javax.jms.JMSException
Message
public final int getAdjustedDeliveryMode()
public final void setAdjustedDeliveryMode(int adjustedDeliveryMode)
public final boolean getJMSRedelivered()
getJMSRedelivered
in interface javax.jms.Message
Message
public void setDeliveryCount(int paramDeliveryCount)
public int getDeliveryCount()
public final void setJMSRedelivered(boolean redeliveredArg) throws javax.jms.JMSException
setJMSRedelivered
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void incrementDeliveryCount()
public final void setClientResponsibleForAcknowledge(boolean clientResponsibleForAcknowledge)
clientResponsibleForAcknowledge
- is true if the client code is
responsible to acknowledge and recover this messagepublic final boolean getClientResponsibleForAcknowledge()
getClientResponsibleForAcknowledge
in interface WLAcknowledgeInfo
WLSession.acknowledge()
public final java.lang.String getJMSType()
getJMSType
in interface javax.jms.Message
Message
public final void setJMSType(java.lang.String type) throws javax.jms.JMSException
setJMSType
in interface javax.jms.Message
javax.jms.JMSException
Message
public final long getJMSExpiration()
getJMSExpiration
in interface javax.jms.Message
Message
public final void setJMSExpiration(long expiration) throws javax.jms.JMSException
setJMSExpiration
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void _setJMSExpiration(long expiration)
public final void setJMSDeliveryTime(long deliveryTime) throws javax.jms.JMSException
WLMessage
setJMSDeliveryTime
in interface javax.jms.Message
setJMSDeliveryTime
in interface WLMessage
deliveryTime
- the time to deliver this message.javax.jms.JMSException
- if a JMS error occurs.weblogic.jms.extensions.WLMessage.setJMSDeliveryTime(long)
public final void setDeliveryTime(long deliveryTime)
public final long getJMSDeliveryTime() throws javax.jms.JMSException
WLMessage
getJMSDeliveryTime
in interface javax.jms.Message
getJMSDeliveryTime
in interface WLMessage
javax.jms.JMSException
- if a JMS error occurs.weblogic.jms.extensions.WLMessage.getJMSDeliveryTime()
public final long getDeliveryTime()
public final void setJMSRedeliveryLimit(int redeliveryLimit) throws javax.jms.JMSException
WLMessage
setJMSRedeliveryLimit
in interface WLMessage
redeliveryLimit
- the number of times to redeliver the messagejavax.jms.JMSException
- if a JMS error occurs.WLMessageProducer.getRedeliveryLimit()
,
WLMessageProducer.setRedeliveryLimit(int)
public final void _setJMSRedeliveryLimit(int redeliveryLimit)
public final int getJMSRedeliveryLimit() throws javax.jms.JMSException
WLMessage
getJMSRedeliveryLimit
in interface WLMessage
javax.jms.JMSException
- if a JMS error occurs.WLMessageProducer.getRedeliveryLimit()
,
WLMessageProducer.setRedeliveryLimit(int)
public final int _getJMSRedeliveryLimit()
public final int getJMSPriority()
getJMSPriority
in interface javax.jms.Message
Message
public final void setJMSPriority(int priority) throws javax.jms.JMSException
setJMSPriority
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setMessageReference(MessageReference mRef)
mRef
- The message reference that must be notified when the message
is modifiedpublic final void clearProperties()
clearProperties
in interface javax.jms.Message
Message
private boolean isUnitOfOrderSet()
private boolean isUserIDSet()
private boolean isSAFSequenceNameSet()
private boolean isSAFSequenceNumberSet()
private boolean isDeliveryTimeSet()
private boolean isRedeliveryLimitSet()
boolean hasProperties()
public final boolean propertyExists(java.lang.String name) throws javax.jms.JMSException
propertyExists
in interface javax.jms.Message
javax.jms.JMSException
Message
public final boolean getBooleanProperty(java.lang.String name) throws javax.jms.JMSException
getBooleanProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final byte getByteProperty(java.lang.String name) throws javax.jms.JMSException
getByteProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final short getShortProperty(java.lang.String name) throws javax.jms.JMSException
getShortProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final int getIntProperty(java.lang.String name) throws javax.jms.JMSException
getIntProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final long getLongProperty(java.lang.String name) throws javax.jms.JMSException
getLongProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final float getFloatProperty(java.lang.String name) throws javax.jms.JMSException
getFloatProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final double getDoubleProperty(java.lang.String name) throws javax.jms.JMSException
getDoubleProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final java.lang.String getStringProperty(java.lang.String name) throws javax.jms.JMSException
getStringProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final java.lang.Object getObjectProperty(java.lang.String name) throws javax.jms.JMSException
getObjectProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final java.util.Collection getPropertyNameCollection() throws javax.jms.JMSException
javax.jms.JMSException
private PrimitiveObjectMap getInteropProperties() throws java.io.IOException
java.io.IOException
public void removeProperty(java.lang.String propertyName)
private void readInteropProperties(java.io.ObjectInput in, int messageVersion) throws java.io.IOException
java.io.IOException
public final java.util.Enumeration getPropertyNames() throws javax.jms.JMSException
getPropertyNames
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setBooleanProperty(java.lang.String name, boolean value) throws javax.jms.JMSException
setBooleanProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setByteProperty(java.lang.String name, byte value) throws javax.jms.JMSException
setByteProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setShortProperty(java.lang.String name, short value) throws javax.jms.JMSException
setShortProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setIntProperty(java.lang.String name, int value) throws javax.jms.JMSException
setIntProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setLongProperty(java.lang.String name, long value) throws javax.jms.JMSException
setLongProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setFloatProperty(java.lang.String name, float value) throws javax.jms.JMSException
setFloatProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setDoubleProperty(java.lang.String name, double value) throws javax.jms.JMSException
setDoubleProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void setStringProperty(java.lang.String name, java.lang.String value) throws javax.jms.JMSException
setStringProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
private java.lang.String illegalPropertyName(java.lang.String name)
public final void setObjectProperty(java.lang.String name, java.lang.Object value) throws javax.jms.JMSException
setObjectProperty
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void acknowledge() throws javax.jms.JMSException
acknowledge
in interface javax.jms.Message
javax.jms.JMSException
Message
public final void clearBody() throws javax.jms.JMSException
clearBody
in interface javax.jms.Message
javax.jms.JMSException
Overriden by subclasses.
public abstract void nullBody()
public final void setId(JMSMessageId messageId)
public final JMSMessageId getId()
public final JMSMessageId getMessageId()
getMessageId
in interface WLAcknowledgeInfo
WLSession.acknowledge()
public final void setSession(weblogic.jms.client.JMSSession session)
public final void setConnectionId(JMSID jmsid)
public final JMSID getConnectionId()
public final void setSessionId(JMSID jmsid)
public final JMSID getSessionId()
public final void setClientId(java.lang.String clientId)
public final java.lang.String getClientId()
public final long getSequenceNumber()
getSequenceNumber
in interface WLAcknowledgeInfo
WLSession.acknowledge()
public final void setSequenceNumber(long sequenceNumber)
public final java.lang.Object get(java.lang.String key)
public java.lang.Object parse() throws java.lang.Exception
parse
in interface ExpressionMap
java.lang.Exception
public final MessageImpl cloneit()
public abstract MessageImpl copy() throws javax.jms.JMSException
javax.jms.JMSException
final void copy(MessageImpl message) throws javax.jms.JMSException
javax.jms.JMSException
protected boolean needToDecompressDueToInterop(java.lang.Object oo) throws java.io.IOException
java.io.IOException
protected int getVersion(java.lang.Object oo) throws java.io.IOException
java.io.IOException
public void writeExternal(java.io.ObjectOutput tOut) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
java.io.IOException
private void writeFlags(int flags, java.io.ObjectOutput out) throws java.io.IOException
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
java.io.IOException
java.lang.ClassNotFoundException
private void readExternalVersion2(java.io.ObjectInput in, int flags) throws java.io.IOException, java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
private void readExternalVersion1(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
public static boolean isHeaderField(java.lang.String name)
public void reset() throws javax.jms.JMSException
javax.jms.JMSException
public final void setBodyWritable()
public final void setBodyWritable(boolean writable)
public final void setPropertiesWritable(boolean writable)
final void readMode() throws javax.jms.JMSException
javax.jms.JMSException
public void setJMSXUserID(java.lang.String userID)
public boolean isJMSXUserIDRequested()
public void requestJMSXUserID(boolean requested)
requested
- - if true, the back-end *may* put a user
id on the messagepublic boolean includeJMSXDeliveryCount(boolean incl)
final void writeMode() throws javax.jms.JMSException
javax.jms.JMSException
public final java.io.Externalizable getBEXAXid()
public final void setBEXAXid(java.io.Externalizable o)
public abstract long getPayloadSize()
public final int getUserPropertySize()
public final void resetUserPropertySize()
public final void setSerializeDestination(boolean serializeDestination)
public final void setDDForwarded(boolean ddforwarded)
public final boolean getDDForwarded()
WLMessage
getDDForwarded
in interface WLMessage
public final void setUnitOfOrderName(java.lang.String name)
public final java.lang.String getUnitOfOrder()
WLMessage
getUnitOfOrder
in interface WLMessage
public final boolean getKeepSAFSequenceNameAndNumber()
public final void setSAFSequenceName(java.lang.String name)
setSAFSequenceName
in interface WLMessage
public final java.lang.String getSAFSequenceName()
getSAFSequenceName
in interface WLMessage
public void setSAFSeqNumber(long seqNumber)
setSAFSeqNumber
in interface WLMessage
seqNumber
- public long getSAFSeqNumber()
getSAFSeqNumber
in interface WLMessage
public final java.lang.String getGroup()
public final void setWorkContext(java.lang.Object workContext)
public final java.lang.Object getWorkContext()
public weblogic.messaging.MessageID getMessageID()
public long getExpirationTime()
public int getRedeliveryLimit()
public long size()
public weblogic.messaging.Message duplicate()
public org.w3c.dom.Document getJMSMessageDocument() throws javax.jms.JMSException
WLMessage
getJMSMessageDocument
in interface WLMessage
javax.jms.JMSException
public final boolean isCompressed()
protected final boolean shouldCompress(java.io.ObjectOutput out, int limit) throws java.io.IOException
java.io.IOException
private boolean shouldCompressionInternal(java.io.ObjectOutput out)
public byte getCompressionTagInternal()
private byte getCompressionTag(java.io.ObjectOutput out)
protected void cleanupCompressedMessageBody()
protected void readExternalCompressedMessageBody(java.io.ObjectInput in) throws java.io.IOException
java.io.IOException
public void setStoreCompression(boolean value)
public static java.util.Properties convertCompressionOptionOverrideStringToProperty(java.lang.String value)
public static java.util.Properties convertCompressionOptionStringToProperty(java.lang.String value)
public void setCompressionOption(java.util.Properties option)
public void setCompressionOptionOverride(java.util.Properties optionOverride)
public void setPagingCompression(boolean value)
public int getCompressedMessageBodySize()
public int getOriginalMessageBodySize()
protected void flushCompressedMessageBody(java.io.ObjectOutput out) throws java.io.IOException
java.io.IOException
public abstract void decompressMessageBody() throws javax.jms.JMSException
javax.jms.JMSException
protected Payload decompress() throws java.io.IOException
java.io.IOException
private CompressionFactory getCompressionFactory(byte id)
private CompressionFactory getCompressionFactory(java.io.ObjectOutput out)
private java.util.Properties getCompressionOption(java.io.ObjectOutput out)
private void writeExternalCompressPayload(java.io.ObjectOutput out, Payload payload, java.io.OutputStream outputFromCP) throws java.io.IOException
java.io.IOException
protected final void writeExternalCompressPayload(java.io.ObjectOutput out, Payload payload) throws java.io.IOException
java.io.IOException
public static final MessageImpl.JMSObjectOutputWrapper createJMSObjectOutputWrapper(java.io.ObjectOutput out, int compressionThreshold, boolean readStringAsObject)
public static int getPosition(java.io.ObjectOutput out)
public <T> T getBody(java.lang.Class<T> c) throws javax.jms.JMSException
getBody
in interface javax.jms.Message
javax.jms.JMSException
public static <T> T _getBody(javax.jms.Message message, java.lang.Class<T> c) throws javax.jms.JMSException
javax.jms.JMSException
public boolean isBodyAssignableTo(java.lang.Class c) throws javax.jms.JMSException
isBodyAssignableTo
in interface javax.jms.Message
javax.jms.JMSException
public static boolean _isBodyAssignableTo(javax.jms.Message message, java.lang.Class c) throws javax.jms.JMSException
javax.jms.JMSException
public boolean isInAsyncSend()
public void setInAsyncSend(boolean b)