| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | 
							- "use strict";
 
- var __extends = (this && this.__extends) || function (d, b) {
 
-     for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
 
-     function __() { this.constructor = d; }
 
-     d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
 
- };
 
- var Observable_1 = require('../Observable');
 
- var subscribeToResult_1 = require('../util/subscribeToResult');
 
- var OuterSubscriber_1 = require('../OuterSubscriber');
 
- /**
 
-  * We need this JSDoc comment for affecting ESDoc.
 
-  * @extends {Ignored}
 
-  * @hide true
 
-  */
 
- var UsingObservable = (function (_super) {
 
-     __extends(UsingObservable, _super);
 
-     function UsingObservable(resourceFactory, observableFactory) {
 
-         _super.call(this);
 
-         this.resourceFactory = resourceFactory;
 
-         this.observableFactory = observableFactory;
 
-     }
 
-     UsingObservable.create = function (resourceFactory, observableFactory) {
 
-         return new UsingObservable(resourceFactory, observableFactory);
 
-     };
 
-     /** @deprecated internal use only */ UsingObservable.prototype._subscribe = function (subscriber) {
 
-         var _a = this, resourceFactory = _a.resourceFactory, observableFactory = _a.observableFactory;
 
-         var resource;
 
-         try {
 
-             resource = resourceFactory();
 
-             return new UsingSubscriber(subscriber, resource, observableFactory);
 
-         }
 
-         catch (err) {
 
-             subscriber.error(err);
 
-         }
 
-     };
 
-     return UsingObservable;
 
- }(Observable_1.Observable));
 
- exports.UsingObservable = UsingObservable;
 
- var UsingSubscriber = (function (_super) {
 
-     __extends(UsingSubscriber, _super);
 
-     function UsingSubscriber(destination, resource, observableFactory) {
 
-         _super.call(this, destination);
 
-         this.resource = resource;
 
-         this.observableFactory = observableFactory;
 
-         destination.add(resource);
 
-         this.tryUse();
 
-     }
 
-     UsingSubscriber.prototype.tryUse = function () {
 
-         try {
 
-             var source = this.observableFactory.call(this, this.resource);
 
-             if (source) {
 
-                 this.add(subscribeToResult_1.subscribeToResult(this, source));
 
-             }
 
-         }
 
-         catch (err) {
 
-             this._error(err);
 
-         }
 
-     };
 
-     return UsingSubscriber;
 
- }(OuterSubscriber_1.OuterSubscriber));
 
- //# sourceMappingURL=UsingObservable.js.map
 
 
  |