UNPKG

npaw-plugin-nwf

Version:
163 lines (162 loc) 4.25 kB
import DiagnosticBalancerCdn from './balancer/DiagnosticBalancerCdn'; import NpawPlugin from '../../NpawPlugin'; export default class DiagnosticTool { static defaultReportTimeout: number; private static _instance; private integrationMessageColors; private npawPluginInstance?; private balancerEnabled; private videoAnalyticsEnabled; private adsAnalyticsEnabled; private reportTimeoutDuration; private reportTimeout?; private reportTimeoutStarted; private runningOffline; private balancerInterceptedRequests; private successfulResponseFromSelector; private apiErrorMessage?; private usedSelectorAPI; private activeSwitchingEnabled; private asDecisionPerformed; private switchedCdns; private cdnList; private triedSendingBalancerStats; private mandatoryBalancerRequests; private capturedEvents; private successfulNQSRequests; private hasPlayerRegistered; private triedSendingNQSStats; private mandatoryNQSRequests; private shouldIgnoreAds; private capturedAdsEvents; private successfulNQSAdsRequests; private hasAdsPlayerRegistered; private triedSendingNQSAdStats; private mandatoryNQSAdsRequests; private constructor(); static getInstance(forceNew?: boolean): DiagnosticTool; /** * @internal */ destroy(): void; /** * @internal */ start(npawPluginInstance?: NpawPlugin): void; setSettings(newConfig: any): void; /** * @internal */ clearReportTimeout(): void; /** * @internal * @param options */ setOptions(options: any): void; setBalancerEnabled(enabled?: boolean): void; setVideoAnalyticsEnabled(enabled?: boolean): void; setAdsAnalyticsEnabled(enabled?: boolean): void; getReportTimeout(): number; setReportTimeout(timeout?: number): void; /** * @internal */ cleanCdnList(): void; /** * @internal * @param name * @param cdn */ addCdn(name: string, cdn: DiagnosticBalancerCdn): void; /** * @internal * @param name * @param numberOfRequests * @param trafficServedInBytes * @param failedRequests */ updateCdnInfo(name: string, numberOfRequests: number, trafficServedInBytes: number, failedRequests: number): void; /** * @internal * @param wasSuccessful * @param errorMessage */ wasSelectorCommunicationSuccessful(wasSuccessful: boolean, errorMessage?: string): void; /** * @internal * @param intercepted */ setInterceptedRequests(intercepted: boolean): void; /** * @internal * @param enabled */ setActiveSwitchingEnabled(enabled: boolean): void; /** * @internal * @param performed */ wasActiveSwitchingDecisionPerformed(performed: boolean): void; /** * @internal * @param switched */ setSwitchedCdns(switched: boolean): void; /** * @internal * @param used */ usedSelectorAPIResponse(used: boolean): void; /** * @internal * @param tried */ setTriedSendingBalancerStats(tried: boolean): void; /** * @internal * @param requestPath */ addNQSRequest(requestPath: string): void; /** * @internal * @param eventType * @param params */ addNQSEvent(eventType: string, params: any): void; /** * @internal * @param registered */ registeredPlayer(registered: boolean): void; /** * @internal * @param tried */ setTriedSendingNQSStats(tried: boolean): void; /** * @internal * @param requestPath */ addNQSAdRequest(requestPath: string): void; /** * @internal * @param eventType * @param params */ addNQSAdEvent(eventType: string, params: any): void; /** * @internal * @param registered */ registeredAdsPlayer(registered: boolean): void; /** * @internal * @param tried */ setTriedSendingNQSAdStats(tried: boolean): void; report(): void; private logBalancerDiagnostic; private logVideoAnalyticsDiagnostic; private logAdsAnalyticsDiagnostic; private getApiErrorMessage; }