Skip to main content

ClientFactory

Upgather SDK


Upgather SDK / ClientFactory

Class: ClientFactory

Defined in: lib/factories/ClientFactory.ts:38

Builds and configures an ApiClient.

Remarks

This class uses a builder pattern to allow fluent configuration of the ApiClient.

Constructors

new ClientFactory()

new ClientFactory(adapter): ClientFactory

Defined in: lib/factories/ClientFactory.ts:61

Creates an instance of ClientFactory.

Parameters

adapter

BackendAdapter

The backend adapter to use.

Returns

ClientFactory

Methods

build()

build(): ApiClient

Defined in: lib/factories/ClientFactory.ts:177

Builds and returns a configured ApiClient.

Returns

ApiClient

The configured ApiClient.


createSdk()

createSdk(): ApiClient

Defined in: lib/factories/ClientFactory.ts:223

Convenience method to create the SDK (ApiClient).

Returns

ApiClient

The configured ApiClient.


enableCircuitBreaker()

enableCircuitBreaker(config): ClientFactory

Defined in: lib/factories/ClientFactory.ts:128

Enables circuit breaker pattern.

Parameters

config

CircuitBreakerOptions

Circuit breaker configuration

Returns

ClientFactory

The ClientFactory instance


enableRateLimit()

enableRateLimit(config): ClientFactory

Defined in: lib/factories/ClientFactory.ts:142

Enables rate limiting.

Parameters

config

RateLimitOptions

Rate limit configuration

Returns

ClientFactory

The ClientFactory instance


setAuthStrategy()

setAuthStrategy(auth): ClientFactory

Defined in: lib/factories/ClientFactory.ts:84

Sets the authentication strategy.

Parameters

auth

AuthStrategy

The authentication strategy.

Returns

ClientFactory

The ClientFactory instance.


setBaseUrl()

setBaseUrl(url): ClientFactory

Defined in: lib/factories/ClientFactory.ts:73

Sets the base URL for the API.

Parameters

url

string

The base URL.

Returns

ClientFactory

The ClientFactory instance.


setErrorStrategy()

setErrorStrategy(strategy): ClientFactory

Defined in: lib/factories/ClientFactory.ts:95

Sets the error handling strategy.

Parameters

strategy

ErrorHandlingStrategy

The error handling strategy.

Returns

ClientFactory

The ClientFactory instance.


setLogger()

setLogger(logger): ClientFactory

Defined in: lib/factories/ClientFactory.ts:156

Sets a custom logger instance.

Parameters

logger

LoggerInterface

The logger instance to use

Returns

ClientFactory

The ClientFactory instance


setLoggerConfig()

setLoggerConfig(config): ClientFactory

Defined in: lib/factories/ClientFactory.ts:167

Sets logger configuration. Only used if custom logger is not provided.

Parameters

config

LoggerConfig

Logger configuration

Returns

ClientFactory

The ClientFactory instance


setRetryStrategy()

setRetryStrategy(maxRetries, initialDelay?, backoffFactor?): ClientFactory

Defined in: lib/factories/ClientFactory.ts:108

Sets the retry error handling strategy.

Parameters

maxRetries

number

Maximum number of retries

initialDelay?

number

Initial delay between retries in ms (default: 300)

backoffFactor?

number

Exponential backoff factor (default: 2)

Returns

ClientFactory

The ClientFactory instance.