NatsConnectionResolver

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

Implements: IReferenceable, IConfigurable

Description

The NatsConnectionResolver class is used to resolve NATS connections and credential parameters, validate them and generate connection options.

Configuration parameters

  • connection(s):
    • discovery_key: (optional) key to retrieve the connection from IDiscovery
    • 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) key to retrieve the credentials from ICredentialStore
    • username: username
    • password: user’s password

References

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

Fields

_connectionResolver

Connection resolver.

protected _connectionResolver: ConnectionResolver

_credentialResolver

Credential resolver.

protected _credentialResolver: CredentialResolver

Instance methods

compose

Composes NATS connection options from connection and credential parameters.

public compose(correlationId: string, connections: ConnectionParams[], credential: CredentialParams): Promise<any>

  • correlationId: string - (optional) transaction id used to trace execution through the call chain.
  • connections: ConnectionParams[] - connection parameters
  • credential: CredentialParams - credential parameters
  • returns: Promise<any> - resolved NATS connection options.

configure

Configures the component by passing its configuration parameters.

public configure(config: ConfigParams): void

  • config: ConfigParams - configuration parameters to be set.

resolve

Resolves NATS connection options from connection and credential parameters.

public resolve(correlationId: string): Promise<any>

  • correlationId: string - (optional) transaction id used to trace execution through the call chain.
  • returns: Promise<any> - resolved NATS connection options.

setReferences

Sets references to dependent components.

public setReferences(references: IReferences): void

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