Nascent Prototype Metaverse


    2.0.1 • Public • Published


    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

    Param Type Default Description
    [options] object Options
    [options.protocol] string "http" CouchDB protocol (http
    [] 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


    var couchDBCache = new CouchDBCache({
      host: '',
      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


    couchDBCache.get('foo').then(function (cached) {
    }).catch(function (err) {

    couchDBCache.put(key, value) ⇒ Promise

    Store a single cached item (overwrites existing)

    Kind: instance method of CouchDBCache

    Param Type
    key string
    value *


    couchDBCache.put('foo', {bar: 'baz'}).then(function () {
      console.log('foo saved to cache');
    }).catch(function (err) {

    couchDBCache.remove(key) ⇒ Promise

    Remove a single cached item

    Kind: instance method of CouchDBCache

    Param Type
    key string


    couchDBCache.remove('foo').then(function () {
      console.log('foo removed from cache');
    }).catch(function (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


    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.




    npm i @forgerock/openam-agent-cache-couchdb

    DownloadsWeekly Downloads






    Last publish


    • david.higgins
    • chris.clifton
    • crispin.veall
    • josh.cross
    • avivbeerifr
    • tarcsayzoltan