corestore-metadata-db

0.1.0 • Public • Published

Corestore Metadata Db

Provides an interface to a simple Sqlite3 database which keeps track of hypercores stored in a corestore. It can be used to persist information between corestore sessions, since a corestore does not know which hypercores it contains on disk.

Note that this module is not concerned with whether the corestores and cores it stores actually exist. This is the responsibility of the program which uses this module.

Install

npm add corestore-metadata-db

Usage

const DbInterface = require('corestore-metadata-db')

const dbInterface = DbInterface.initFromConnectionStr(':memory:')
const key = 'a'.repeat(64)
const key2 = 'b'.repeat(64)
const corestorePath = './my-corestore'

dbInterface.addCore({ name: 'myCore', key, corestorePath })
dbInterface.addCore({ name: 'myCore2', key: key2, corestorePath })

const coreInfo = dbInterface.getCoreByKey(key)
console.log(coreInfo)
/*
  DbCore {
    id: 1,
    name: 'myCore',
    key: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
    corestorePath: './my-corestore'
  }
*/

const coreInfos = dbInterface.getCoresOfCorestore(corestorePath)
console.log(coreInfos)

/*
[
  DbCore {
    id: 1,
    name: 'myCore',
    key: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa',
    corestorePath: './my-corestore'
  },
  DbCore {
    id: 2,
    name: 'myCore2',
    key: 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',
    corestorePath: './my-corestore'
  }
]
*/


 

Readme

Keywords

none

Package Sidebar

Install

npm i corestore-metadata-db

Weekly Downloads

0

Version

0.1.0

License

MIT

Unpacked Size

8.19 kB

Total Files

7

Last publish

Collaborators

  • hdegroote