2.0.1 • Published 7 years ago

@forgerock/openam-agent-cache-couchdb v2.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
7 years ago

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

new CouchDBCache(options)

Cache implementation for CouchDB

ParamTypeDefaultDescription
optionsobjectOptions
options.protocolstring"http"CouchDB protocol (httphttps)
options.hoststring"http://localhost"CouchDB host
options.portstring5984CouchDB port
options.dbstring"openamagent"CouchDB database name
options.authobjectCouchDB auth credentials
options.auth.usernamestringCouchDB user name
options.auth.passwordstringCouchDB password
options.expireAfterSecondsnumber60Expiration 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

ParamType
keystring

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

ParamType
keystring
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

ParamType
keystring

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

DISCLAIMER

The sample code described herein is provided on an "as is" basis, without warranty of any kind, to the fullest extent permitted by law. ForgeRock does not warrant or guarantee the individual success developers may have in implementing the sample code on their development platforms or in production configurations.

ForgeRock does not warrant, guarantee or make any representations regarding the use, results of use, accuracy, timeliness or completeness of any data or information relating to the sample code. ForgeRock disclaims all warranties, expressed or implied, and in particular, disclaims all warranties of merchantability, and warranties related to the code, or any service or software related thereto.

ForgeRock shall not be liable for any direct, indirect or consequential damages or costs of any type arising out of any action taken by you or others related to the sample code.