-
Notifications
You must be signed in to change notification settings - Fork 3
/
calypso.js
30 lines (24 loc) · 748 Bytes
/
calypso.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
var ConstructorMap = require('./constructor_map');
var Query = require('./query');
var Repository = require('./repository/repository');
var RepositoryFactory = require('./repository/repository_factory');
exports.Query = Query;
exports.Repository = Repository;
exports.RepositoryFactory = RepositoryFactory;
var Engine = function(driver, mappings) {
this.driver = driver;
if (mappings) {
mappings.forEach(function(mapping) {
var constructorMap = new ConstructorMap();
mapping(constructorMap);
});
}
};
Engine.prototype.build = function(cb) {
this.driver.init(cb);
};
exports.configure = function(options) {
var driver = options.driver;
var mappings = options.mappings;
return new Engine(driver, mappings);
};