Class SenderOptions

    • Constructor Detail

      • SenderOptions

        public SenderOptions()
        Create a new SenderOptions instance configured with default configuration settings.
      • SenderOptions

        public SenderOptions​(SenderOptions options)
        Create a new SenderOptions instance that copies the configuration from the specified source options.
        Parameters:
        options - The SenderOptions instance whose settings are to be copied into this one.
    • Method Detail

      • sendTimeout

        public long sendTimeout()
        Returns:
        the timeout used when awaiting a response from the remote when a resource is message send.
      • sendTimeout

        public SenderOptions sendTimeout​(long sendTimeout)
        Configures the timeout used when awaiting a send operation to complete. A send will block if the remote has not granted the Sender or the Session credit to do so, if the send blocks for longer than this timeout the send call will fail with an ClientSendTimedOutException exception to indicate that the send did not complete.
        Parameters:
        sendTimeout - Timeout value in milliseconds to wait for a remote response.
        Returns:
        this SenderOptions instance.
      • sendTimeout

        public SenderOptions sendTimeout​(long timeout,
                                         TimeUnit units)
        Configures the timeout used when awaiting a send operation to complete. A send will block if the remote has not granted the Sender or the Session credit to do so, if the send blocks for longer than this timeout the send call will fail with an ClientSendTimedOutException exception to indicate that the send did not complete.
        Parameters:
        timeout - Timeout value to wait for a remote response.
        units - The TimeUnit that defines the timeout span.
        Returns:
        this SenderOptions instance.
      • deliveryTagGeneratorSupplier

        public SenderOptions deliveryTagGeneratorSupplier​(Supplier<DeliveryTagGenerator> supplier)
        Configures a Supplier which provides unique instances of DeliveryTagGenerator objects for any Sender created using these options.

        The client sender will use a default DeliveryTagGenerator under normal circumstances and the user is not required to configure a Supplier. In some cases where the user is communicating with a system that requires a specific format of delivery tag this option allows use of a custom generator. The caller is responsible for providing a supplier that will create a unique instance of a tag generator as they are not meant to be shared amongst senders. Once a sender has been created the tag generator it uses cannot be changed so future calls to this method will not affect previously created Sender instances.

        Parameters:
        supplier - The Supplier of DeliveryTagGenerator instances.
        Returns:
        the SenderOptions instance that was given.