nanoresource-collection

    1.0.0 • Public • Published

    nanoresource-collection

    Open and close multiple nanoresources as one.

    npm status node Travis build status JavaScript Style Guide

    Usage

    const Collection = require('nanoresource-collection')
    const collection = new Collection([resource1, resource2])
     
    collection.open(function (err) {
      // All resources have been opened
    })
     
    collection.close(function (err) {
      // All resources have been closed
    })

    API

    new Collection([options, ][resources])

    Both arguments are optional. The resources argument can be an array and should contain nanoresource instances. Alternatively use collection.push(...resources).

    Resources in the collection are opened sequentially. If one of the resources fails to open, other resources that did open successfully will be closed again. Resources are closed in reverse order: the last to be opened is the first to be closed.

    Options:

    • opened (boolean): default false. If true, assume the resources are already open and adjust collection state accordingly. Useful for partially compliant resources (like servers) that only have a .close() method.

    Because nanoresource-collection is itself a nanoresource, the API is the same and collections are composable. In addition nanoresource-collection ships a variant that (also) supports promises:

    const Collection = require('nanoresource-collection').promises
    const collection = new Collection()
     
    await collection.open()
    await collection.close()

    Install

    With npm do:

    npm install nanoresource-collection
    

    License

    MIT © 2020-present Vincent Weevers

    Install

    npm i nanoresource-collection

    DownloadsWeekly Downloads

    710

    Version

    1.0.0

    License

    MIT

    Unpacked Size

    7.07 kB

    Total Files

    4

    Last publish

    Collaborators

    • vweevers