Interface RemoteServers.SecondaryServer.SecondaryBuilder<B>

Type Parameters:
B - the builder type
All Superinterfaces:
RemoteServers.RemoteServer.RemoteServerBuilder<B>
All Known Subinterfaces:
RemoteServers.SecondaryAcceptor.SecondaryAcceptorBuilder, RemoteServers.SecondaryInitiator.SecondaryInitiatorBuilder
Enclosing interface:
RemoteServers.SecondaryServer

public static interface RemoteServers.SecondaryServer.SecondaryBuilder<B> extends RemoteServers.RemoteServer.RemoteServerBuilder<B>
Base builder interface for RemoteServers.SecondaryServer.

A builder of this type cannot be instantiated.

  • Method Details

    • principal

      B principal(String principal)
      Specifies the name of a principal to use to use for the connection.

      This specifies the principal for the connection to the primary server and is authenticated at the primary.

      The default, if not specified is the anonymous principal.

      Parameters:
      principal - principal name or a zero length string to indicate an anonymous connection
      Returns:
      this builder
    • credentials

      B credentials(Credentials credentials)
      Specifies the credentials to use to authenticate the connection.

      The default, if not specified, is NONE.

      This is used along with the specified principal.

      Parameters:
      credentials - the credentials to use
      Returns:
      this builder
      See Also:
    • connectionOptions

      B connectionOptions(Map<RemoteServers.RemoteServer.ConnectionOption,String> connectionOptions)
      Specifies a map of RemoteServers.RemoteServer.ConnectionOption settings.

      This will replace any options currently set for the builder.

      Any options not supplied will take their default values.

      If no connection options are specified, either using this method or connectionOption(com.pushtechnology.diffusion.client.features.control.RemoteServers.RemoteServer.ConnectionOption, java.lang.String) then all options will take their default value.

      Not all remote server types support all options. See RemoteServers.RemoteServer.ConnectionOption for details.

      Parameters:
      connectionOptions - map of options
      Returns:
      this builder
      See Also:
    • connectionOption

      B connectionOption(RemoteServers.RemoteServer.ConnectionOption connectionOption, String value)
      Specifies a single connection option.

      This will add to the options currently specified to the builder, or replace a value if it has already been specified.

      Not all remote server types support all options. See RemoteServers.RemoteServer.ConnectionOption for details.

      Parameters:
      connectionOption - the connection option
      value - the connection option value or null to remove the option
      Returns:
      this builder
    • missingTopicNotificationFilter

      B missingTopicNotificationFilter(String filter)
      Specifies a topic selector expression which will filter missing topic notifications propagated from secondary to primary server.

      TopicControl.MissingTopicNotifications are notified when a client subscribes using a topic selector that matches no existing topics. By specifying a missing topic notification filter all notifications that match the filter on the secondary server will be propagated to the primary server.

      A match occurs if the path prefix of the subscription selector matches the path prefix of the specified selector. If the selector is a selector set then the notification will be propagated if it matches any selector in the set.

      If no filter is specified then no missing topic notifications will be propagated.

      The special selector expression "*.*" may be used to indicate that all missing topic notifications should be propagated.

      Only the path prefix of the specified selector(s) is considered when matching therefore any use of regular expressions would be ignored.

      Parameters:
      filter - a topic selector expression specifying the filter to apply or null to remove any existing filter
      Returns:
      this builder