mirror of
https://github.com/HeyPuter/puter.git
synced 2026-05-04 00:20:45 +00:00
7a47047c0d
* wip: redis move * fix: redis in extensions * fix: bad isEMpty assignment * fix: bad redis client config * wip * fix: redis keys cache * fix: redis batch delete * fix: change bulk cache times to allow for more instaces * fix: broken tests
33 lines
896 B
JavaScript
33 lines
896 B
JavaScript
//@extension priority -10000
|
|
|
|
const { redisClient } = extension.import('core');
|
|
const svc_database = extension.import('service:database');
|
|
const svc_kvstore = extension.import('service:puter-kvstore');
|
|
|
|
// Methods on the object from `.as()` come from TraitsFeature.js,
|
|
// and they are already bound to their respective instance.
|
|
const simplified_kv = { ...svc_kvstore.as('puter-kvstore') };
|
|
|
|
const original_get = simplified_kv.get;
|
|
const original_set = simplified_kv.set;
|
|
|
|
simplified_kv.get = (...a) => {
|
|
if ( typeof a[0] === 'string' ) {
|
|
return original_get({ key: a[0] });
|
|
}
|
|
return original_get(...a);
|
|
};
|
|
|
|
simplified_kv.set = (...a) => {
|
|
if ( typeof a[0] === 'string' ) {
|
|
return original_set({ key: a[0], value: a[1] });
|
|
}
|
|
return original_set(...a);
|
|
};
|
|
|
|
extension.exports = {
|
|
db: svc_database.get(),
|
|
kv: simplified_kv,
|
|
cache: redisClient,
|
|
};
|