Interface IRemoteServerBuilder
- 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
connectionOptionRemoteServerConnectionOptionThe connection option.
valuestringThe 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
connectionOptionsDictionary<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
namestringThe name of the remote server.
urlstringThe 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
credentialsICredentialsThe 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
filterstringA 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
principalstringPrincipal 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.