Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
/**
 * @fileoverview added by tsickle
 * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
 */
import { interval } from "rxjs/internal/observable/interval";
import { startWith, switchMap, takeWhile } from "rxjs/operators";
import { Observable } from "rxjs";
import { BundleUtils, PublishingStatus } from '../BundleUtils';
/** @type {?} */
const LOG_TAG = '[UpdatePoller]';
/** @enum {string} */
const UpdatePollerEventStatus = {
    Complete: "Complete",
    Stopped: "Stopped",
    Error: "Error",
};
export { UpdatePollerEventStatus };
/**
 * @record
 */
export function UpdatePollerEvent() { }
if (false) {
    /** @type {?} */
    UpdatePollerEvent.prototype.source;
    /** @type {?} */
    UpdatePollerEvent.prototype.status;
    /** @type {?} */
    UpdatePollerEvent.prototype.bundleStatus;
}
export class UpdatePoller {
    /**
     * @param {?} bundleName
     * @param {?} bundleVersion
     * @param {?} webContentService
     * @param {?} logger
     */
    constructor(bundleName, bundleVersion, webContentService, logger) {
        this.bundleName = bundleName;
        this.bundleVersion = bundleVersion;
        this.webContentService = webContentService;
        this.logger = logger;
        this._pollCount = 0;
        this._pollTime = 0;
        this._currentPollCount = 0;
    }
    /**
     * @param {?} pollcount
     * @param {?} polltime
     * @param {?} userData
     * @return {?}
     */
    start(pollcount, polltime, userData) {
        this._userData = userData;
        this._pollCount = pollcount;
        this._pollTime = polltime;
        return new Observable((/**
         * @param {?} observer
         * @return {?}
         */
        (observer) => {
            this._interval = interval(polltime)
                .pipe(takeWhile((/**
             * @param {?} it
             * @return {?}
             */
            it => this._currentPollCount < this._pollCount)), startWith(0), switchMap((/**
             * @return {?}
             */
            () => this.webContentService.getBundle(this.bundleName, this.bundleVersion))));
            this._interval.subscribe((/**
             * @param {?} res
             * @return {?}
             */
            (res) => {
                this.logger.debug(LOG_TAG, 'Poll event: ', res);
                this._bundleStatus = res;
                /** @type {?} */
                let pubStatus = BundleUtils.buildSyntheticStatus(res);
                res.info["syntheticStatus"] = pubStatus;
                if ((pubStatus === PublishingStatus.Published) || (pubStatus === PublishingStatus.Error)) {
                    this.stop();
                    observer.next({ source: this, status: UpdatePollerEventStatus.Complete, bundleStatus: this._bundleStatus });
                    observer.complete();
                    return;
                }
                else {
                    this._currentPollCount++;
                }
                if (this._currentPollCount >= this._pollCount) {
                    observer.next({ source: this, status: UpdatePollerEventStatus.Stopped, bundleStatus: this._bundleStatus });
                    observer.complete();
                }
            }));
        }));
    }
    /**
     * @return {?}
     */
    stop() {
        this.logger.debug(LOG_TAG, 'Stop called');
        this._currentPollCount = this._pollCount + 1;
    }
    /**
     * @return {?}
     */
    get userData() {
        return this._userData;
    }
    /**
     * @return {?}
     */
    get pollCount() {
        return this._pollCount;
    }
    /**
     * @return {?}
     */
    get pollTime() {
        return this._pollTime;
    }
    /**
     * @return {?}
     */
    get currentPollCount() {
        return this._currentPollCount;
    }
}
if (false) {
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype._userData;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype._bundleStatus;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype._interval;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype._pollCount;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype._pollTime;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype._currentPollCount;
    /** @type {?} */
    UpdatePoller.prototype.bundleName;
    /** @type {?} */
    UpdatePoller.prototype.bundleVersion;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype.webContentService;
    /**
     * @type {?}
     * @private
     */
    UpdatePoller.prototype.logger;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXBkYXRlUG9sbGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbW90aWYtd2ViLWFkbWluLWNvcmUvIiwic291cmNlcyI6WyJsaWIvc2VjdGlvbnMvV2ViQ29udGVudC9jb21wb25lbnRzL3VwZGF0ZS1wb2xsZXIvVXBkYXRlUG9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWEsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUUsT0FBTyxFQUFFLFVBQVUsRUFBeUIsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztNQUV6RCxPQUFPLEdBQUcsZ0JBQWdCOzs7SUFHNUIsVUFBVyxVQUFVO0lBQ3JCLFNBQVUsU0FBUztJQUNuQixPQUFRLE9BQU87Ozs7OztBQUduQix1Q0FJQzs7O0lBSEcsbUNBQXFCOztJQUNyQixtQ0FBZ0M7O0lBQ2hDLHlDQUEwQjs7QUFHOUIsTUFBTSxPQUFPLFlBQVk7Ozs7Ozs7SUFVckIsWUFBNEIsVUFBaUIsRUFDekIsYUFBcUIsRUFDN0IsaUJBQWlDLEVBQ2pDLE1BQWlCO1FBSEQsZUFBVSxHQUFWLFVBQVUsQ0FBTztRQUN6QixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUM3QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWdCO1FBQ2pDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFQckIsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGNBQVMsR0FBRyxDQUFDLENBQUM7UUFDZCxzQkFBaUIsR0FBRyxDQUFDLENBQUM7SUFLQyxDQUFDOzs7Ozs7O0lBR3pCLEtBQUssQ0FBQyxTQUFpQixFQUFFLFFBQWUsRUFBRSxRQUFhO1FBRTFELElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksQ0FB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O0lBQ3JDLHlDQUF5Qzs7Ozs7SUFDekMsOEJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVuZGxlc1NlcnZpY2UsIEJ1bmRsZVN0YXR1cyB9IGZyb20gJ0B3YS1tb3RpZi1vcGVuLWFwaS93ZWItY29udGVudC1zZXJ2aWNlJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9ICBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGludGVydmFsIH0gZnJvbSBcInJ4anMvaW50ZXJuYWwvb2JzZXJ2YWJsZS9pbnRlcnZhbFwiO1xuaW1wb3J0IHsgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFrZVdoaWxlIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBOR1hMb2dnZXIgfSBmcm9tICduZ3gtbG9nZ2VyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBCdW5kbGVVdGlscywgUHVibGlzaGluZ1N0YXR1cyB9IGZyb20gJy4uL0J1bmRsZVV0aWxzJztcblxuY29uc3QgTE9HX1RBRyA9ICdbVXBkYXRlUG9sbGVyXSc7XG5cbmV4cG9ydCBlbnVtIFVwZGF0ZVBvbGxlckV2ZW50U3RhdHVzIHtcbiAgICBDb21wbGV0ZSA9IFwiQ29tcGxldGVcIixcbiAgICBTdG9wcGVkID0gXCJTdG9wcGVkXCIsXG4gICAgRXJyb3IgPSBcIkVycm9yXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVQb2xsZXJFdmVudCB7XG4gICAgc291cmNlOiBVcGRhdGVQb2xsZXI7IFxuICAgIHN0YXR1czogVXBkYXRlUG9sbGVyRXZlbnRTdGF0dXMsXG4gICAgYnVuZGxlU3RhdHVzOiBCdW5kbGVTdGF0dXNcbn1cblxuZXhwb3J0IGNsYXNzIFVwZGF0ZVBvbGxlciB7XG5cbiAgICBwcml2YXRlIF91c2VyRGF0YTphbnk7XG5cbiAgICBwcml2YXRlIF9idW5kbGVTdGF0dXM6IEJ1bmRsZVN0YXR1cztcbiAgICBwcml2YXRlIF9pbnRlcnZhbDogT2JzZXJ2YWJsZTxhbnk+O1xuICAgIHByaXZhdGUgX3BvbGxDb3VudCA9IDA7XG4gICAgcHJpdmF0ZSBfcG9sbFRpbWUgPSAwO1xuICAgIHByaXZhdGUgX2N1cnJlbnRQb2xsQ291bnQgPSAwO1xuICAgIFxuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBidW5kbGVOYW1lOnN0cmluZywgXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBidW5kbGVWZXJzaW9uOiBzdHJpbmcsIFxuICAgICAgICBwcml2YXRlIHdlYkNvbnRlbnRTZXJ2aWNlOiBCdW5kbGVzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBsb2dnZXI6IE5HWExvZ2dlcil7fVxuXG5cbiAgICBwdWJsaWMgc3RhcnQocG9sbGNvdW50OiBudW1iZXIsIHBvbGx0aW1lOm51bWJlciwgdXNlckRhdGE6IGFueSkgOiBPYnNlcnZhYmxlPFVwZGF0ZVBvbGxlckV2ZW50PiB7XG5cbiAgICAgICAgdGhpcy5fdXNlckRhdGEgPSB1c2VyRGF0YTtcbiAgICAgICAgdGhpcy5fcG9sbENvdW50ID0gcG9sbGNvdW50O1xuICAgICAgICB0aGlzLl9wb2xsVGltZSA9IHBvbGx0aW1lO1xuXG4gICAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgob2JzZXJ2ZXIpPT57XG4gICAgICAgICAgICB0aGlzLl9pbnRlcnZhbCA9IGludGVydmFsKHBvbGx0aW1lKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFrZVdoaWxlKGl0ID0+IHRoaXMuX2N1cnJlbnRQb2xsQ291bnQgPCB0aGlzLl9wb2xsQ291bnQpLFxuICAgICAgICAgICAgICAgIHN0YXJ0V2l0aCgwKSxcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAoKCkgPT4gdGhpcy53ZWJDb250ZW50U2VydmljZS5nZXRCdW5kbGUodGhpcy5idW5kbGVOYW1lLCB0aGlzLmJ1bmRsZVZlcnNpb24pIClcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLl9pbnRlcnZhbC5zdWJzY3JpYmUoIChyZXM6QnVuZGxlU3RhdHVzKSA9PiB7IFxuICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKExPR19UQUcgLCAnUG9sbCBldmVudDogJywgcmVzKTtcbiAgICAgICAgICAgICAgICB0aGlzLl9idW5kbGVTdGF0dXMgPSByZXM7IFxuICAgICAgICAgICAgICAgIGxldCBwdWJTdGF0dXM6UHVibGlzaGluZ1N0YXR1cyA9IEJ1bmRsZVV0aWxzLmJ1aWxkU3ludGhldGljU3RhdHVzKHJlcyk7XG4gICAgICAgICAgICAgICAgcmVzLmluZm9bXCJzeW50aGV0aWNTdGF0dXNcIl0gPSBwdWJTdGF0dXM7XG4gICAgICAgICAgICAgICAgaWYgKChwdWJTdGF0dXMgPT09IFB1Ymxpc2hpbmdTdGF0dXMuUHVibGlzaGVkKSB8fCAocHViU3RhdHVzID09PSBQdWJsaXNoaW5nU3RhdHVzLkVycm9yKSl7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RvcCgpO1xuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KHsgc291cmNlOiB0aGlzLCBzdGF0dXM6IFVwZGF0ZVBvbGxlckV2ZW50U3RhdHVzLkNvbXBsZXRlLCBidW5kbGVTdGF0dXM6IHRoaXMuX2J1bmRsZVN0YXR1cyB9KTtcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2N1cnJlbnRQb2xsQ291bnQrKztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2N1cnJlbnRQb2xsQ291bnQgPj0gdGhpcy5fcG9sbENvdW50KXtcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dCh7IHNvdXJjZTogdGhpcywgc3RhdHVzOiBVcGRhdGVQb2xsZXJFdmVudFN0YXR1cy5TdG9wcGVkLCBidW5kbGVTdGF0dXM6IHRoaXMuX2J1bmRsZVN0YXR1cyB9KTtcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICk7XG4gICAgICAgIH0pO1xuXG4gICAgfSBcblxuICAgIHB1YmxpYyBzdG9wKCl7XG4gICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKExPR19UQUcgLCAnU3RvcCBjYWxsZWQnKTtcbiAgICAgICAgdGhpcy5fY3VycmVudFBvbGxDb3VudCA9IHRoaXMuX3BvbGxDb3VudCArIDE7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB1c2VyRGF0YSgpOmFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLl91c2VyRGF0YTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHBvbGxDb3VudCgpOm51bWJlcntcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BvbGxDb3VudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHBvbGxUaW1lKCk6bnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BvbGxUaW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VycmVudFBvbGxDb3VudCgpOm51bWJlcntcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbnRQb2xsQ291bnQ7XG4gICAgfVxuXG59Il19