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
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: undefinedSee documentation of underlaying redis lib package for detailed configuration options.
See
Extends
StateStoreBaseClass<RedisStoreConfig<M,F,S>>
Type Parameters
M
M extends RedisModules = RedisModules
F
F extends RedisFunctions = RedisFunctions
S
S extends RedisScripts = RedisScripts
Constructors
Constructor
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?
A logger instance
logLevel?
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:18
cacheTtl?
optionalcacheTtl:number
Cache time to live in ms
config?
optionalconfig:RedisClientOptions<M,F,S>
enableCache?
optionalenableCache:boolean
Enable cache
enableGet?
optionalenableGet:boolean
Enable generally get method
enableRemove?
optionalenableRemove:boolean
Enable generally remove method
enableSet?
optionalenableSet:boolean
Enable generally set method
logger?
optionallogger:Logger
A logger instance
logLevel?
optionallogLevel:LogLevelName
A log level for new logger if logger is not set
Inherited from
logger
logger:
Logger
Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:17
Inherited from
name
name:
string
Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:19
Inherited from
Methods
destroy()
destroy():
Promise<void>
Defined in: redis-state-store/src/RedisStateStore.impl.ts:107
Returns
Promise<void>
Overrides
getClient()
protectedgetClient():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:22
Type Parameters
StateNames
StateNames extends string[]
Parameters
stateNames
...StateNames
Returns
Promise<ObjectWithKeysFromStringArray<StateNames>>
Inherited from
getStateImpl()
protectedgetStateImpl<StateNames>(...stateNames):Promise<ObjectWithKeysFromStringArray<StateNames>>
Defined in: redis-state-store/src/RedisStateStore.impl.ts:61
Type Parameters
StateNames
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:24
Parameters
stateName
string
Returns
Promise<void>
Inherited from
StateStoreBaseClass.removeState
removeStateImpl()
protectedremoveStateImpl(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:26
Parameters
stateName
string
stateValue
unknown
Returns
Promise<void>
Inherited from
setStateImpl()
protectedsetStateImpl(stateName,stateValue):Promise<void>
Defined in: redis-state-store/src/RedisStateStore.impl.ts:92
Parameters
stateName
string
stateValue
unknown
Returns
Promise<void>
