Skip to content

@purista/redis-state-store v2.0.5


PURISTA API / @purista/redis-state-store / RedisStateStore

Class: RedisStateStore<M, F, S>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:41

A state store for using redis as storage. State values are stored as stringified JSON.

Per default, setting/changing and removal of values are enabled.

Example

typescript
const config = {
 enableGet: true, // optional, default is true
 enableRemove: true, // optional, default is true
 enableSet: true, // optional, default is true
 url: 'redis://alice:foobared@awesome.redis.server:6379'
}

const store = new RedisStateStore({ config })

await store.setState('stateKey',{ myState: 'value' })

let value = await store.getState('stateKey')
console.log(value) // outputs: { stateKey: { myState: 'value' } }

await store.removeState('stateKey')

value = await store.getState('stateKey')
console.log(value) // outputs: undefined

See documentation of underlaying redis lib package for detailed configuration options.

See

NODE-REDIS

Extends

Type Parameters

M extends RedisModules = RedisModules

F extends RedisFunctions = RedisFunctions

S extends RedisScripts = RedisScripts

Constructors

new RedisStateStore()

new RedisStateStore<M, F, S>(config?): RedisStateStore<M, F, S>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:48

Parameters

config?
cacheTtl?

number

Cache time to live in ms

config?

RedisClientOptions<M, F, S>

enableCache?

boolean

Enable cache

enableGet?

boolean

Enable generally get method

enableRemove?

boolean

Enable generally remove method

enableSet?

boolean

Enable generally set method

logger?

Logger

A logger instance

logLevel?

LogLevelName

A log level for new logger if logger is not set

Returns

RedisStateStore<M, F, S>

Overrides

StateStoreBaseClass.constructor

Properties

client

client: RedisClientType<M, F, S>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:46


config

config: object

Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:16

cacheTtl?

optional cacheTtl: number

Cache time to live in ms

config?

optional config: RedisClientOptions<M, F, S>

enableCache?

optional enableCache: boolean

Enable cache

enableGet?

optional enableGet: boolean

Enable generally get method

enableRemove?

optional enableRemove: boolean

Enable generally remove method

enableSet?

optional enableSet: boolean

Enable generally set method

logger?

optional logger: Logger

A logger instance

logLevel?

optional logLevel: LogLevelName

A log level for new logger if logger is not set

Inherited from

StateStoreBaseClass.config


logger

logger: Logger

Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:15

Inherited from

StateStoreBaseClass.logger


name

name: string

Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:17

Inherited from

StateStoreBaseClass.name

Methods

destroy()

destroy(): Promise<void>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:107

Returns

Promise<void>

Overrides

StateStoreBaseClass.destroy


getClient()

protected getClient(): Promise<RedisClientType<M, F, S>>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:54

Returns

Promise<RedisClientType<M, F, S>>


getState()

getState<StateNames>(...stateNames): Promise<ObjectWithKeysFromStringArray<StateNames>>

Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:20

Type Parameters

StateNames extends string[]

Parameters

stateNames

...StateNames

Returns

Promise<ObjectWithKeysFromStringArray<StateNames>>

Inherited from

StateStoreBaseClass.getState


getStateImpl()

protected getStateImpl<StateNames>(...stateNames): Promise<ObjectWithKeysFromStringArray<StateNames>>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:61

Type Parameters

StateNames extends string[]

Parameters

stateNames

...StateNames

Returns

Promise<ObjectWithKeysFromStringArray<StateNames>>

Overrides

StateStoreBaseClass.getStateImpl


removeState()

removeState(stateName): Promise<void>

Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:22

Parameters

stateName

string

Returns

Promise<void>

Inherited from

StateStoreBaseClass.removeState


removeStateImpl()

protected removeStateImpl(stateName): Promise<void>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:80

Parameters

stateName

string

Returns

Promise<void>

Overrides

StateStoreBaseClass.removeStateImpl


setState()

setState(stateName, stateValue): Promise<void>

Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:24

Parameters

stateName

string

stateValue

unknown

Returns

Promise<void>

Inherited from

StateStoreBaseClass.setState


setStateImpl()

protected setStateImpl(stateName, stateValue): Promise<void>

Defined in: redis-state-store/src/RedisStateStore.impl.ts:92

Parameters

stateName

string

stateValue

unknown

Returns

Promise<void>

Overrides

StateStoreBaseClass.setStateImpl