mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-06 15:57:13 +00:00
Merge pull request #10282 from danihodovic/add-redis-retry-strategy
Added Redis retry_strategy
This commit is contained in:
@@ -27,6 +27,28 @@ redis.print(err, value);
|
||||
|
||||
client = redis.createClient(num, str, options);
|
||||
|
||||
// Test the `retry_strategy` property
|
||||
// ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
|
||||
function retryStrategyNumber(options: redis.RetryStrategyOptions): number {
|
||||
// Ensure that the properties of RetryStrategyOptions are resilient to breaking change.
|
||||
// If the properties of the interface changes, the variables below will also need to be adapted.
|
||||
var error: Error = options.error;
|
||||
var total_retry_time: number = options.total_retry_time;
|
||||
var times_connected: number = options.times_connected;
|
||||
var attempt: number = options.attempt;
|
||||
return 5000;
|
||||
}
|
||||
function retryStrategyError(options: redis.RetryStrategyOptions): Error {
|
||||
return new Error('Foo');
|
||||
}
|
||||
client = redis.createClient({
|
||||
retry_strategy: retryStrategyNumber
|
||||
});
|
||||
client = redis.createClient({
|
||||
retry_strategy: retryStrategyError
|
||||
});
|
||||
// ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ----
|
||||
|
||||
bool = client.connected;
|
||||
num = client.retry_delay;
|
||||
num = client.retry_backoff;
|
||||
|
||||
Vendored
+12
@@ -34,6 +34,17 @@ declare module "redis" {
|
||||
versions: number[];
|
||||
}
|
||||
|
||||
export interface RetryStrategyOptions {
|
||||
error: Error;
|
||||
total_retry_time: number;
|
||||
times_connected: number;
|
||||
attempt: number;
|
||||
}
|
||||
|
||||
export interface RetryStrategy {
|
||||
(options: RetryStrategyOptions): number | Error;
|
||||
}
|
||||
|
||||
export interface ClientOpts {
|
||||
parser?: string;
|
||||
return_buffers?: boolean;
|
||||
@@ -50,6 +61,7 @@ declare module "redis" {
|
||||
family?: string;
|
||||
command_queue_high_water?: number;
|
||||
command_queue_low_water?: number;
|
||||
retry_strategy?: RetryStrategy;
|
||||
}
|
||||
|
||||
export interface RedisClient extends NodeJS.EventEmitter {
|
||||
|
||||
Reference in New Issue
Block a user