org.apache.activemq.artemis.jms.client

## Class ActiveMQObjectMessage

- java.lang.Object
- - org.apache.activemq.artemis.jms.client.ActiveMQMessage
  - - org.apache.activemq.artemis.jms.client.ActiveMQObjectMessage

- All Implemented Interfaces:
    javax.jms.Message, javax.jms.ObjectMessage

      public class ActiveMQObjectMessage
      extends ActiveMQMessage
      implements javax.jms.ObjectMessage

  ActiveMQ Artemis implementation of a JMS ObjectMessage.
  Don't used ObjectMessage if you want good performance!

  Serialization is slooooow!

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static byte` | `TYPE`

    - ### Fields inherited from class org.apache.activemq.artemis.jms.client.ActiveMQMessage

      `message, propertiesReadOnly, readOnly`

    - ### Fields inherited from interface javax.jms.Message

      `DEFAULT_DELIVERY_DELAY, DEFAULT_DELIVERY_MODE, DEFAULT_PRIORITY, DEFAULT_TIME_TO_LIVE`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `ActiveMQObjectMessage(ClientMessage message, ClientSession session, ConnectionFactoryOptions options)`
    `protected` | `ActiveMQObjectMessage(ClientSession session, ConnectionFactoryOptions options)`
    `` | `ActiveMQObjectMessage(javax.jms.ObjectMessage foreign, ClientSession session, ConnectionFactoryOptions options)` A copy constructor for foreign JMS ObjectMessages.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clearBody()`
    `void` | `doBeforeReceive()`
    `void` | `doBeforeSend()`
    `protected <T> T` | `getBodyInternal(Class<T> c)`
    `Serializable` | `getObject()`
    `byte` | `getType()`
    `boolean` | `isBodyAssignableTo(Class c)`
    `void` | `setObject(Serializable object)`

    - ### Methods inherited from class org.apache.activemq.artemis.jms.client.ActiveMQMessage

      `acknowledge, checkBuffer, checkRead, checkWrite, clearProperties, coreCompositeTypeToJMSCompositeType, coreMaptoJMSMap, createMessage, createMessage, getBody, getBooleanProperty, getByteProperty, getCoreMessage, getDoubleProperty, getFloatProperty, getIntProperty, getJMSCorrelationID, getJMSCorrelationIDAsBytes, getJMSDeliveryMode, getJMSDeliveryTime, getJMSDestination, getJMSExpiration, getJMSMessageID, getJMSPriority, getJMSRedelivered, getJMSReplyTo, getJMSTimestamp, getJMSType, getLongProperty, getObjectProperty, getPropertyNames, getShortProperty, getStringProperty, hasNoBody, propertyExists, resetMessageID, saveToOutputStream, setBooleanProperty, setByteProperty, setDoubleProperty, setFloatProperty, setIndividualAcknowledge, setInputStream, setIntProperty, setJMSCorrelationID, setJMSCorrelationIDAsBytes, setJMSDeliveryMode, setJMSDeliveryTime, setJMSDestination, setJMSExpiration, setJMSMessageID, setJMSPriority, setJMSRedelivered, setJMSReplyTo, setJMSTimestamp, setJMSType, setLongProperty, setObjectProperty, setOutputStream, setShortProperty, setStringProperty, toString, waitCompletionOnStream`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface javax.jms.Message

      `acknowledge, clearProperties, getBody, getBooleanProperty, getByteProperty, getDoubleProperty, getFloatProperty, getIntProperty, getJMSCorrelationID, getJMSCorrelationIDAsBytes, getJMSDeliveryMode, getJMSDeliveryTime, getJMSDestination, getJMSExpiration, getJMSMessageID, getJMSPriority, getJMSRedelivered, getJMSReplyTo, getJMSTimestamp, getJMSType, getLongProperty, getObjectProperty, getPropertyNames, getShortProperty, getStringProperty, propertyExists, setBooleanProperty, setByteProperty, setDoubleProperty, setFloatProperty, setIntProperty, setJMSCorrelationID, setJMSCorrelationIDAsBytes, setJMSDeliveryMode, setJMSDeliveryTime, setJMSDestination, setJMSExpiration, setJMSMessageID, setJMSPriority, setJMSRedelivered, setJMSReplyTo, setJMSTimestamp, setJMSType, setLongProperty, setObjectProperty, setShortProperty, setStringProperty`

- - ### Field Detail

    - #### TYPE

          public static final byte TYPE

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ActiveMQObjectMessage

          protected ActiveMQObjectMessage(ClientSession session,
                                          ConnectionFactoryOptions options)

    - #### ActiveMQObjectMessage

          protected ActiveMQObjectMessage(ClientMessage message,
                                          ClientSession session,
                                          ConnectionFactoryOptions options)

    - #### ActiveMQObjectMessage

          public ActiveMQObjectMessage(javax.jms.ObjectMessage foreign,
                                       ClientSession session,
                                       ConnectionFactoryOptions options)
                                throws javax.jms.JMSException

      A copy constructor for foreign JMS ObjectMessages.
      Throws:
        `javax.jms.JMSException`

  - ### Method Detail

    - #### getType

          public byte getType()

      Overrides:
        `getType` in class `ActiveMQMessage`

    - #### doBeforeSend

          public void doBeforeSend()
                            throws Exception

      Overrides:
        `doBeforeSend` in class `ActiveMQMessage`
      Throws:
        `Exception`

    - #### doBeforeReceive

          public void doBeforeReceive()
                               throws ActiveMQException

      Overrides:
        `doBeforeReceive` in class `ActiveMQMessage`
      Throws:
        `ActiveMQException`

    - #### setObject

          public void setObject(Serializable object)
                         throws javax.jms.JMSException

      Specified by:
        `setObject` in interface `javax.jms.ObjectMessage`
      Throws:
        `javax.jms.JMSException`

    - #### getObject

          public Serializable getObject()
                                 throws javax.jms.JMSException

      Specified by:
        `getObject` in interface `javax.jms.ObjectMessage`
      Throws:
        `javax.jms.JMSException`

    - #### clearBody

          public void clearBody()
                         throws javax.jms.JMSException

      Specified by:
        `clearBody` in interface `javax.jms.Message`
      Overrides:
        `clearBody` in class `ActiveMQMessage`
      Throws:
        `javax.jms.JMSException`

    - #### getBodyInternal

          protected <T> T getBodyInternal(Class<T> c)
                                   throws javax.jms.MessageFormatException

      Overrides:
        `getBodyInternal` in class `ActiveMQMessage`
      Throws:
        `javax.jms.MessageFormatException`

    - #### isBodyAssignableTo

          public boolean isBodyAssignableTo(Class c)

      Specified by:
        `isBodyAssignableTo` in interface `javax.jms.Message`
      Overrides:
        `isBodyAssignableTo` in class `ActiveMQMessage`

Copyright © 2017 The Apache Software Foundation. All rights reserved.