ajsfw
Version:
Ajs Framework
60 lines (59 loc) • 2.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var logger = require("ajsfw/dbg/logger");
var exceptions = require("./exceptions");
var logmsg = require("./Strings_Log.Debug");
var IndexedDbStorageProvider_1 = require("../storageProviders/IndexedDbStorageProvider");
var AjsStorage_1 = require("./AjsStorage");
var enums_1 = require("../enums");
var StorageIndexedDb = (function (_super) {
__extends(StorageIndexedDb, _super);
function StorageIndexedDb() {
return _super !== null && _super.apply(this, arguments) || this;
}
Object.defineProperty(StorageIndexedDb.prototype, "db", {
set: function (db) { this.__db = db; },
enumerable: true,
configurable: true
});
Object.defineProperty(StorageIndexedDb.prototype, "type", {
get: function () { return enums_1.StorageType.IndexedDb; },
enumerable: true,
configurable: true
});
StorageIndexedDb.prototype.initialize = function () {
return __awaiter(this, void 0, void 0, function () {
var _a;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
logger.log(logger.LogType.Enter, 0, logmsg.LOG_AJSRESSTOR, this);
if (this.__db === undefined) {
logger.log(logger.LogType.Error, 0, logmsg.LOG_AJSRESSTOR, this, logmsg.LOG_AJSINDEXEDDBNOTSET);
throw new exceptions.AjsIndexedDbNotSetException();
}
this._supported = window.indexedDB !== undefined;
if (!this._supported) return [3, 3];
this._storageProvider = new IndexedDbStorageProvider_1.IndexedDbStorageProvider(this.__db);
return [4, this._storageProvider.initialize()];
case 1:
_b.sent();
this._usedSpace = 0;
_a = this;
return [4, this._getResourcesInfo()];
case 2:
_a._resources = _b.sent();
return [3, 4];
case 3:
logger.log(logger.LogType.Error, 0, logmsg.LOG_AJSRESSTOR, this, logmsg.LOG_INDEXEDDB_STORAGE_NOT_SUPPORTED);
throw new exceptions.IndexedDbStorageNotSupportedException();
case 4:
logger.log(logger.LogType.Exit, 0, logmsg.LOG_AJSRESSTOR, this);
return [2];
}
});
});
};
return StorageIndexedDb;
}(AjsStorage_1.AjsStorage));
exports.StorageIndexedDb = StorageIndexedDb;