// NewCouchDBHistMgr constructs a new `CouchDB HistMgr` func NewCouchDBHistMgr(couchDBConnectURL string, dbName string, id string, pw string) *CouchDBHistMgr { //TODO locking has not been implemented but may need some sort of locking to insure queries are valid data. couchDB, err := couchdb.CreateCouchDBConnectionAndDB(couchDBConnectURL, dbName, id, pw) if err != nil { logger.Errorf("===HISTORYDB=== Error during NewCouchDBHistMgr(): %s\n", err.Error()) return nil } return &CouchDBHistMgr{couchDB: couchDB} }
// NewCouchDBTxMgr constructs a `CouchDBTxMgr` func NewCouchDBTxMgr(conf *Conf, couchDBConnectURL string, dbName string, id string, pw string) *CouchDBTxMgr { // TODO cleanup this RocksDB handle db := db.CreateDB(&db.Conf{DBPath: conf.DBPath}) db.Open() couchDB, err := couchdb.CreateCouchDBConnectionAndDB(couchDBConnectURL, dbName, id, pw) if err != nil { logger.Errorf("Error during NewCouchDBTxMgr(): %s\n", err.Error()) return nil } // db and stateIndexCF will not be used for CouchDB. TODO to cleanup return &CouchDBTxMgr{db: db, couchDB: couchDB} }