openam-agent-cache-couchdb
Cache using CouchDB for the OpenAM Policy Agent for NodeJS
Installation: npm install openam-agent-cache-couchdb
API Docs
CouchDBCache ⇐ Cache
Kind: global class
Extends: Cache
-
CouchDBCache ⇐
Cache
- new CouchDBCache([options])
-
.get(key) ⇒
Promise
-
.put(key, value) ⇒
Promise
-
.remove(key) ⇒
Promise
-
.quit() ⇒
Promise
new CouchDBCache([options])
Cache implementation for CouchDB
Param | Type | Default | Description |
---|---|---|---|
[options] | object |
Options | |
[options.protocol] | string |
"http" |
CouchDB protocol (http |
[options.host] | string |
"http://localhost" |
CouchDB host |
[options.port] | string |
5984 |
CouchDB port |
[options.db] | string |
"openamagent" |
CouchDB database name |
[options.auth] | object |
CouchDB auth credentials | |
[options.auth.username] | string |
CouchDB user name | |
[options.auth.password] | string |
CouchDB password | |
[options.expireAfterSeconds] | number |
60 |
Expiration time in seconds |
Example
var couchDBCache = new CouchDBCache({
host: 'db.example.com',
port: 5984,
auth: {
username: 'admin',
password: 'secret123'
},
expireAfterSeconds: 600
});
couchDBCache.get(key) ⇒ Promise
Get a single cached item If the entry is not found, reject
Kind: instance method of CouchDBCache
Param | Type |
---|---|
key | string |
Example
couchDBCache.get('foo').then(function (cached) {
console.log(cached);
}).catch(function (err) {
console.error(err);
});
couchDBCache.put(key, value) ⇒ Promise
Store a single cached item (overwrites existing)
Kind: instance method of CouchDBCache
Param | Type |
---|---|
key | string |
value | * |
Example
couchDBCache.put('foo', {bar: 'baz'}).then(function () {
console.log('foo saved to cache');
}).catch(function (err) {
console.error(err);
});
couchDBCache.remove(key) ⇒ Promise
Remove a single cached item
Kind: instance method of CouchDBCache
Param | Type |
---|---|
key | string |
Example
couchDBCache.remove('foo').then(function () {
console.log('foo removed from cache');
}).catch(function (err) {
console.error(err);
});
couchDBCache.quit() ⇒ Promise
This should close the database connection but it doesn't do anything because connection.close() is broken...
Kind: instance method of CouchDBCache