"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var abstractObservable_1 = require("./abstractObservable");
var OneTimeObservable = (function (_super) {
__extends(OneTimeObservable, _super);
function OneTimeObservable(result) {
var _this = _super.call(this) || this;
_this.result = result;
_this.started = false;
_this.stopped = false;
return _this;
}
OneTimeObservable.prototype.start = function () {
var _this = this;
Iif (this.started) {
return;
}
this.result.then(function (data) {
if (!_this.stopped) {
_this.onNext(data);
_this.onComplete();
}
})
.catch(function (error) {
Eif (!_this.stopped) {
_this.onError(error);
}
});
this.started = true;
};
OneTimeObservable.prototype.stop = function () {
this.onComplete();
this.stopped = true;
};
return OneTimeObservable;
}(abstractObservable_1.default));
exports.default = OneTimeObservable;
//# sourceMappingURL=oneTimeObservable.js.map |