CompositeConnectionResolver

Helper class that resolves connection and credential parameters, validates them and generates connection options.

Implements: IConfigurable, IReferenceable

Description

The CompositeConnectionResolver class allows you to resolve connection and credential parameters, validate them and generate connection options.

Configuration parameters

connection(s):

  • discovery_key: (optional) a key to retrieve the connection from IDiscovery
  • protocol: communication protocol
  • host: host name or IP address
  • port: port number
  • uri: resource URI or connection string with all parameters in it

credential(s):

  • store_key: (optional) a key to retrieve the credentials from ICredentialStore
  • username: user name
  • password: user password

References

  • *:discovery:*:*:1.0 - (optional) IDiscovery services to resolve connections
  • *:credential-store:*:*:1.0 - (optional) Credential stores to resolve credentials ICredentialStore

Fields

_options

The connection options

protected _options: ConfigParams

_connectionResolver

The connections resolver.

protected _connectionResolver: ConnectionResolver

_credentialResolver

The credentials resolver.

protected _credentialResolver: CredentialResolver

_clusterSupported

The cluster support (multiple connections)

protected _clusterSupported: boolean

_defaultProtocol

The default protocol

protected _defaultProtocol: string

_defaultPort

The default port

protected _defaultPort: number

_supported_protocols

The list of supported protocols

protected _supportedProtocols: string[]

Instance methods

compose

Composes Composite connection options from connection and credential parameters.

public ConfigParams compose(IContext context, List<ConnectionParams> connections, CredentialParams credential, ConfigParams parameters) throws ConfigException

composeOptions

A composite of several merger options

protected ConfigParams composeOptions(List<ConnectionParams> connections, CredentialParams credential, ConfigParams parameters)

configure

Configures component by passing configuration parameters.

public void configure(ConfigParams configParams) throws ConfigException

  • config: ConfigParams - configuration parameters to be set.

finalizeOptions

Finalize merged options. This method can be overriden in child classes.

protected ConfigParams finalizeOptions(ConfigParams options)

mergeConnection

Merges connection options with connection parameters. This method can be overriden in child classes.

protected ConfigParams mergeConnection(ConfigParams options, ConnectionParams connection)

mergeCredential

Merges connection options with credential parameters. This method can be overriden in child classes.

protected ConfigParams mergeCredential(ConfigParams options, CredentialParams credential)

mergeOptional

Merges connection options with optional parameters. This method can be overriden in child classes.

protected ConfigParams mergeOptional(ConfigParams options, ConfigParams parameters)

resolve

Resolves connection options from connection and credential parameters.

public ConfigParams resolve(IContext context) throws ApplicationException

  • context: IContext - (optional) a context to trace execution through call chain.
  • returns: ConfigParams - resolved options or error

setReferences

Sets references to dependent components.

public void setReferences(IReferences references) throws ReferenceException, ConfigException

  • references: IReferences - references to locate the component dependencies.

validateConnection

Validates connection parameters. Throws error if validation failed. This method can be overriden in child classes.

protected void validateConnection(IContext context, ConnectionParams connection) throws ConfigException

  • context: IContext - (optional) a context to trace execution through call chain.
  • connection: ConnectionParams - connection parameters to be validated

validateCredential

Validates credential parameters. This method can be overriden in child classes.

protected void validateCredential(IContext context, CredentialParams credential)

  • context: IContext - (optional) a context to trace execution through call chain.
  • credential: CredentialParams - credential parameters to be validated