@optimizely/optimizely-sdk
Version:
JavaScript SDK for Optimizely Feature Experimentation, Optimizely Full Stack (legacy), and Optimizely Rollouts
42 lines (41 loc) • 1.47 kB
TypeScript
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";
import { Platform } from '../platform_support';
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?;
private customHeaders?;
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;
}
export declare const __platforms: Platform[];