Table of Contents

Interface IRemoteServerBuilder

Namespace
PushTechnology.ClientInterface.Client.Features.Control.Clients
Assembly
Diffusion.Client.dll

Interface for a remote server builder. Since 6.7.

A builder of this type may be created using NewRemoteServerBuilder() and used to create instances of IRemoteServer that can be supplied to CreateRemoteServerAsync(IRemoteServer).

[Obsolete("Deprecated since 6.9. This builder is retained for backwards compatibility only. It can only be used to create a secondary initiator. ISecondaryInitiatorBuilder should be used in preference. This builder will be removed in a future release.")]
public interface IRemoteServerBuilder

Methods

ConnectionOption(RemoteServerConnectionOption, string)

Specifies a single connection option.

IRemoteServerBuilder ConnectionOption(RemoteServerConnectionOption connectionOption, string value)

Parameters

connectionOption RemoteServerConnectionOption

The connection option.

value string

The connection option value or null to remove the option

Returns

IRemoteServerBuilder

This builder.

Remarks

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

ConnectionOptions(Dictionary<RemoteServerConnectionOption, string>)

Specifies a dictionary of RemoteServerConnectionOption settings.

IRemoteServerBuilder ConnectionOptions(Dictionary<RemoteServerConnectionOption, string> connectionOptions)

Parameters

connectionOptions Dictionary<RemoteServerConnectionOption, string>

Dictionary of options.

Returns

IRemoteServerBuilder

This builder.

Remarks

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(RemoteServerConnectionOption, string) then all options will take their default value.

Create(string, string)

Creates a remote server object using the current values known to this builder.

IRemoteServer Create(string name, string url)

Parameters

name string

The name of the remote server.

url string

The URL to use to connect to the primary server.

Returns

IRemoteServer

A new remote server instance.

Remarks

This will always return an instance of ISecondaryInitiator.

Credentials(ICredentials)

Specifies the credentials to use when connecting to the primary server.

IRemoteServerBuilder Credentials(ICredentials credentials)

Parameters

credentials ICredentials

The credentials to use.

Returns

IRemoteServerBuilder

This builder.

Remarks

The default, if not specified, is PushTechnology.DiffusionCore.Client.Types.Credentials.NO_CREDENTIALS.

MissingTopicNotificationFilter(string)

Specifies a topic selector expression which will filter missing topic notifications propagated from secondary to primary server.

IRemoteServerBuilder MissingTopicNotificationFilter(string filter)

Parameters

filter string

A topic selector expression specifying the filter to apply or null to remove any existing filter.

Returns

IRemoteServerBuilder

This builder.

Remarks

IMissingTopicNotifications 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_PREFIX 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.

Principal(string)

Specifies the name of a principal used by the remote server to connect to the primary server.

IRemoteServerBuilder Principal(string principal)

Parameters

principal string

Principal name or a zero length string to indicate an anonymous connection.

Returns

IRemoteServerBuilder

This builder.

Remarks

The default, if not specified, is the anonymous principal.

Reset()

Resets the builder.

IRemoteServerBuilder Reset()

Returns

IRemoteServerBuilder

This builder.