PostgresConnectionResolver

Helper class that resolves PostgreSQL connection and credential parameters, validates them and generates a connection URI.

Implements: IReferenceable, IConfigurable

Description

The PostgresConnectionResolver class allows you to create a PostgresSQL connection and credential parameters resolver that validates these parameters and generates a connection URI.

Important points

  • It is able to process multiple connections to PostgreSQL cluster nodes.

Configuration parameters

connection(s):

  • discovery_key: (optional) key to retrieve the connection from IDiscovery
  • host: host name or IP address
  • port: port number (default: 27017)
  • database: database name
  • 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 (ICredentialStore)

Constructors

NewPostgresConnectionResolver

NewPostgresConnectionResolver creates new connection resolver

NewPostgresConnectionResolver() *PostgresConnectionResolver

Fields

ConnectionResolver

The connection resolver

ConnectionResolver: ConnectionResolver

_credentialResolver

The credential resolver

ConnectionResolver: CredentialResolver

Methods

Configure

Configures component by passing configuration parameters.

(c *PostgresConnectionResolver) Configure(ctx context.Context, config *cconf.ConfigParams)

  • ctx: context.Context - operation context.
  • config: *cconf.ConfigParams - configuration parameters to be set.

Resolve

Resolves PostgreSQL config from connection and credential parameters.

(c *PostgresConnectionResolver) Resolve(ctx context.Context, correlationId string) (uri string, err error)

  • ctx: context.Context - operation context.
  • correlationId: string - (optional) transaction id used to trace execution through the call chain.
  • returns: (uri string, err error) - resolved connection config or raised error.

SetReferences

Sets references to dependent components.

(c *PostgresConnectionResolver) SetReferences(ctx context.Context, references crefer.IReferences)

  • ctx: context.Context - operation context.
  • references: crefer.IReferences - references to locate the component dependencies.