Nepoužíváte open
zpětné volání, takže pokud se pokoušíte provést findall
požadavek hned po vytvoření dao
pak to nebude připraveno.
Pokud je váš kód takový, nebude fungovat.
var dao = new DataAccessObject("my_dbase", "localhost", 27017);
dao.findAll("my_collection",function() {console.log(arguments);});
Testoval jsem to a nenachází záznamy a také nedává žádnou chybu. Myslím, že by to mělo hlásit chybu.
Ale pokud to změníte tak, že zavoláte konstruktoru, pak by to mělo fungovat.
var DataAccessObject = function(db_name, host, port, callback){
this.db = new Db(db_name, new Server(host, port, {auto_reconnect: true}, {}));
this.db.open(callback);
}
A vytvořte svůj kód takto.
var dao = new DataAccessObject("my_dbase", "localhost", 27017, function() {
dao.findAll("my_collection",function() {console.log(arguments);});
});