blow-data
Version:
Data access layer for Blow.
35 lines (34 loc) • 773 B
JavaScript
;
const rxjs_1 = require('rxjs');
const DEFAULT_ID_PROPERTY_NAME = 'id';
const DEFAULT_ID_PROPERTY_TYPE = 'string';
class Adapter {
constructor(options) {
this._options = options;
}
get idPropertyName() {
return DEFAULT_ID_PROPERTY_NAME;
}
get idPropertyType() {
return DEFAULT_ID_PROPERTY_TYPE;
}
_connect() {
return rxjs_1.Observable.of(this);
}
connect() {
return this._connect();
}
toJSON() {
return {
name: this.constructor.name
};
}
inspect() {
return this.toJSON();
}
static init(options) {
const adapter = new this(options);
return adapter.connect().mapTo(adapter);
}
}
exports.Adapter = Adapter;