java.lang.Object
io.helidon.messaging.ConnectorConfigBuilder
io.helidon.messaging.connectors.aq.AqConfigBuilder
All Implemented Interfaces:
Builder<ConnectorConfigBuilder,Config>, Supplier<Config>

public class AqConfigBuilder extends ConnectorConfigBuilder
Build AQ specific config.
  • Method Details

    • property

      public AqConfigBuilder property(String key, String value)
      Add custom property.
      Overrides:
      property in class ConnectorConfigBuilder
      Parameters:
      key - property key
      value - property value
      Returns:
      this builder
    • dataSource

      public AqConfigBuilder dataSource(String dataSourceName)
      Mapping to DataSource supplied with AqConnectorBuilder.dataSource().
      • Type: string
      Parameters:
      dataSourceName - data source identifier
      Returns:
      this builder
    • acknowledgeMode

      public AqConfigBuilder acknowledgeMode(AcknowledgeMode acknowledgeMode)
      JMS acknowledgement mode.
      • AUTO_ACKNOWLEDGE Acknowledges automatically after message reception over JMS api.
      • CLIENT_ACKNOWLEDGE Message is acknowledged when Message.ack() is invoked either manually or by Acknowledgment policy.
      • DUPS_OK_ACKNOWLEDGE Messages are acknowledged lazily which can result in duplicate messages being delivered.
      Parameters:
      acknowledgeMode - AUTO_ACKNOWLEDGE, CLIENT_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE
      Returns:
      this builder
    • namedFactory

      public AqConfigBuilder namedFactory(String factoryName)
      Select ConnectionFactory in case factory is injected as a named bean or configured with name.
      Parameters:
      factoryName - connection factory name
      Returns:
      this builder
    • transacted

      public AqConfigBuilder transacted(boolean transacted)
      Indicates whether the session will use a local transaction.
      Parameters:
      transacted - true if so
      Returns:
      this builder
    • username

      public AqConfigBuilder username(String username)
      User name used for creating JMS connection.
      Parameters:
      username - JMS connection user name
      Returns:
      this builder
    • password

      public AqConfigBuilder password(String password)
      Password used for creating JMS connection.
      Parameters:
      password - JMS connection password
      Returns:
      this builder
    • type

      public AqConfigBuilder type(Type type)
      Specify if connection is queue or topic.
      Parameters:
      type - queue or topic
      Returns:
      this builder
    • destination

      public AqConfigBuilder destination(String destination)
      Queue or topic name.
      Parameters:
      destination - queue or topic name
      Returns:
      this builder
    • queue

      public AqConfigBuilder queue(String destination)
      Use supplied destination name and QUEUE as type.
      Parameters:
      destination - queue name
      Returns:
      this builder
    • topic

      public AqConfigBuilder topic(String destination)
      Use supplied destination name and TOPIC as type.
      Parameters:
      destination - topic name
      Returns:
      this builder
    • messageSelector

      public AqConfigBuilder messageSelector(String messageSelector)
      JMS API message selector expression based on a subset of the SQL92. Expression can only access headers and properties, not the payload.
      • Example: NewsType = ’Sports’ OR NewsType = ’Opinion’
      Parameters:
      messageSelector - message selector expression
      Returns:
      this builder
    • pollTimeout

      public AqConfigBuilder pollTimeout(long pollTimeout)
      Timeout for polling for next message in every poll cycle in millis.
      Parameters:
      pollTimeout - timeout of polling for next message
      Returns:
      this builder
    • periodExecutions

      public AqConfigBuilder periodExecutions(long periodExecutions)
      Period for executing poll cycles in millis.
      Parameters:
      periodExecutions - period for executing poll cycles in millis
      Returns:
      this builder
    • sessionGroupId

      public AqConfigBuilder sessionGroupId(String sessionGroupId)
      When multiple channels share same session-group-id, they share same JMS session.
      Parameters:
      sessionGroupId - identifier for channels sharing same JMS session
      Returns:
      this builder
    • clientId

      public AqConfigBuilder clientId(String clientId)
      Client identifier for JMS connection.
      Parameters:
      clientId - client identifier for JMS connection
      Returns:
      this builder
    • durable

      public AqConfigBuilder durable(boolean durable)
      Indicates whether the consumer should be created as durable (only relevant for topic destinations).
      Parameters:
      durable - true to create a durable consumer
      Returns:
      this builder
    • subscriberName

      public AqConfigBuilder subscriberName(String subscriberName)
      Subscriber name used to identify a durable subscription.
      Parameters:
      subscriberName - name of the subscriber
      Returns:
      this builder
    • nonLocal

      public AqConfigBuilder nonLocal(boolean nonLocal)
      When set to true, messages published by this connection, or any connection with the same client identifier, will not be delivered to this durable subscription.
      Parameters:
      nonLocal - true to disable delivery of local messages
      Returns:
      this builder