Class AQEnqueueOptions


  • public class AQEnqueueOptions
    extends java.lang.Object
    Specifies the options available for the enqueue operation.
    • Constructor Detail

      • AQEnqueueOptions

        public AQEnqueueOptions()
        Construct the default enqueue options.
    • Method Detail

      • setRelativeMessageId

        public void setRelativeMessageId​(byte[] relativeMessageId)
                                  throws java.sql.SQLException
        Deprecated.
        Specifies the message identifier of the message which is referenced in the sequence deviation operation. This value is valid if and only if SequenceDeviationOption.BEFORE is specified in setSequenceDeviation and is ignored if the sequence deviation is not specified.

        This feature is deprecated and may be removed in a future release.

        Parameters:
        relativeMessageId - relative message id
        Throws:
        java.sql.SQLException
      • setSequenceDeviation

        public void setSequenceDeviation​(AQEnqueueOptions.SequenceDeviationOption sequenceDeviation)
                                  throws java.sql.SQLException
        Deprecated.
        Specifies whether the message being enqueued should be dequeued before other message(s) already in the queue. This feature is deprecated for new applications, but it is retained for compatibility.

        Parameters:
        sequenceDeviation - the possible values are:
        • SequenceDeviationOption.BOTTOM
        • SequenceDeviationOption.BEFORE
        • SequenceDeviationOption.TOP
        Throws:
        java.sql.SQLException
      • setVisibility

        public void setVisibility​(AQEnqueueOptions.VisibilityOption visibility)
                           throws java.sql.SQLException
        Specifies the transactional behavior of the enqueue request.
        Parameters:
        visibility - The possible options are:
        • ENQUEUE_ON_COMMIT
        • ENQUEUE_IMMEDIATE
        Throws:
        java.sql.SQLException
      • setDeliveryMode

        public void setDeliveryMode​(AQEnqueueOptions.DeliveryMode delivery)
                             throws java.sql.SQLException
        Specifies the delivery mode: persistent or buffered. Note that buffered message are more performant but persistent ones are safer.

        Possible values are:

        • ENQUEUE_BUFFERED - to enqueue a buffered message
        • ENQUEUE_PERSISTENT - to enqueue a persistent message. This is the default.
        Parameters:
        delivery - the delivery mode
        Throws:
        java.sql.SQLException
      • setRetrieveMessageId

        public void setRetrieveMessageId​(boolean retrieveIt)
        Set this to true to retrieve the message id back from the server when the message has been enqueued.

        By default the message id won't be retrieved.

        Parameters:
        retrieveIt - the enqueued message id option
      • getRetrieveMessageId

        public boolean getRetrieveMessageId()
        Returns the value of the enqueued message id option.
        See Also:
        setRetrieveMessageId(boolean)
      • setTransformation

        public void setTransformation​(java.lang.String _transformation)
        Specifies a transformation that will be applied before enqueuing the message. The return type of the transformation function must match the type of the queue.

        Transformations must be created in PLSQL using DBMS_TRANSFORM.CREATE_TRANSFORMATION(...).

        For example if the transformation 'OBJ2XML' has been created under the schema 'SCOTT' then it can be specified in the dequeue option with enqueueOption.setTransformation("SCOTT.OBJ2XML").

        Parameters:
        _transformation - the transformation
      • getTransformation

        public java.lang.String getTransformation()
        Returns the value of transformation option.
        See Also:
        setTransformation(String)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object