UNPKG

@optimizely/optimizely-sdk

Version:

JavaScript SDK for Optimizely Feature Experimentation, Optimizely Full Stack (legacy), and Optimizely Rollouts

39 lines (38 loc) 1.38 kB
import { DatafileManager, DatafileManagerConfig } from './datafile_manager'; import { BaseService } from '../service'; import { Consumer, Fn } from '../utils/type'; import { LoggerFacade } from '../logging/logger'; export declare const LOGGER_NAME = "PollingDatafileManager"; export declare const FAILED_TO_FETCH_DATAFILE = "Failed to fetch datafile"; export declare class PollingDatafileManager extends BaseService implements DatafileManager { private requestHandler; private currentDatafile?; private emitter; private autoUpdate; private initRetryRemaining?; private repeater; private lastResponseLastModified?; private datafileUrl; private currentRequest?; private cacheKey; private cache?; private sdkKey; private datafileAccessToken?; constructor(config: DatafileManagerConfig); setLogger(logger: LoggerFacade): void; onUpdate(listener: Consumer<string>): Fn; get(): string | undefined; start(): void; makeDisposable(): void; stop(): void; private handleInitFailure; private handleError; private onRequestRejected; private onRequestResolved; private makeDatafileRequest; private syncDatafile; private handleDatafile; private getDatafileFromResponse; private saveLastModified; private setDatafileFromCacheIfAvailable; }