ClientFactory
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
The backend adapter to use.
Returns
Methods
build()
build():
ApiClient
Defined in: lib/factories/ClientFactory.ts:177
Builds and returns a configured ApiClient.
Returns
The configured ApiClient.
createSdk()
createSdk():
ApiClient
Defined in: lib/factories/ClientFactory.ts:223
Convenience method to create the SDK (ApiClient).
Returns
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
The ClientFactory instance
enableRateLimit()
enableRateLimit(
config):ClientFactory
Defined in: lib/factories/ClientFactory.ts:142
Enables rate limiting.
Parameters
config
RateLimitOptions
Rate limit configuration
Returns
The ClientFactory instance
setAuthStrategy()
setAuthStrategy(
auth):ClientFactory
Defined in: lib/factories/ClientFactory.ts:84
Sets the authentication strategy.
Parameters
auth
The authentication strategy.
Returns
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
The ClientFactory instance.
setErrorStrategy()
setErrorStrategy(
strategy):ClientFactory
Defined in: lib/factories/ClientFactory.ts:95
Sets the error handling strategy.
Parameters
strategy
The error handling strategy.
Returns
The ClientFactory instance.
setLogger()
setLogger(
logger):ClientFactory
Defined in: lib/factories/ClientFactory.ts:156
Sets a custom logger instance.
Parameters
logger
The logger instance to use
Returns
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
Logger configuration
Returns
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
The ClientFactory instance.