@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
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
Extends
StateStoreBaseClass
<RedisStoreConfig
<M
,F
,S
>>
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?
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: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
logger
logger:
Logger
Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:15
Inherited from
name
name:
string
Defined in: core/dist/commonjs/core/StateStore/StateStoreBaseClass.impl.d.ts:17
Inherited from
Methods
destroy()
destroy():
Promise
<void
>
Defined in: redis-state-store/src/RedisStateStore.impl.ts:107
Returns
Promise
<void
>
Overrides
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
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
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
>