| 148 | } |
| 149 | |
| 150 | class ScopedTelemetryClient extends TelemetryClient { |
| 151 | constructor( |
| 152 | private readonly parent: TelemetryClient, |
| 153 | private readonly context: TelemetryContextIds, |
| 154 | ) { |
| 155 | super(); |
| 156 | } |
| 157 | |
| 158 | override setContext(input: TelemetryContextIds): void { |
| 159 | this.parent.setContext(input); |
| 160 | } |
| 161 | |
| 162 | override withContext(input: TelemetryContextIds): TelemetryClient { |
| 163 | return new ScopedTelemetryClient(this.parent, mergeContext(this.context, input)); |
| 164 | } |
| 165 | |
| 166 | override attachSink(sink: EventSink): void { |
| 167 | this.parent.attachSink(sink); |
| 168 | } |
| 169 | |
| 170 | override disable(): void { |
| 171 | this.parent.disable(); |
| 172 | } |
| 173 | |
| 174 | override enable(): void { |
| 175 | this.parent.enable(); |
| 176 | } |
| 177 | |
| 178 | override track(event: string, properties: TelemetryProperties = {}): void { |
| 179 | this.parent.trackWithContext(event, properties, this.context); |
| 180 | } |
| 181 | |
| 182 | override getSink(): EventSink | null { |
| 183 | return this.parent.getSink(); |
| 184 | } |
| 185 | |
| 186 | override async flush(signal?: AbortSignal): Promise<void> { |
| 187 | await this.parent.flush(signal); |
| 188 | } |
| 189 | |
| 190 | override flushSync(): void { |
| 191 | this.parent.flushSync(); |
| 192 | } |
| 193 | |
| 194 | override async shutdown(options: TelemetryShutdownOptions = {}): Promise<void> { |
| 195 | await this.parent.shutdown(options); |
| 196 | } |
| 197 | |
| 198 | override resetForTests(): void { |
| 199 | this.parent.resetForTests(); |
| 200 | } |
| 201 | } |
| 202 | |
| 203 | const defaultClient = new TelemetryClient(); |
| 204 |
nothing calls this directly
no outgoing calls
no test coverage detected