UNPKG

@opentelemetry/api

Version:
1 lines • 2.08 kB
{"version":3,"file":"baggage-impl.cjs","names":[],"sources":["../../../src/baggage/internal/baggage-impl.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { Baggage, BaggageEntry } from '../types';\n\nexport class BaggageImpl implements Baggage {\n private _entries: Map<string, BaggageEntry>;\n\n constructor(entries?: Map<string, BaggageEntry>) {\n this._entries = entries ? new Map(entries) : new Map();\n }\n\n getEntry(key: string): BaggageEntry | undefined {\n const entry = this._entries.get(key);\n if (!entry) {\n return undefined;\n }\n\n return Object.assign({}, entry);\n }\n\n getAllEntries(): [string, BaggageEntry][] {\n return Array.from(this._entries.entries());\n }\n\n setEntry(key: string, entry: BaggageEntry): BaggageImpl {\n const newBaggage = new BaggageImpl(this._entries);\n newBaggage._entries.set(key, entry);\n return newBaggage;\n }\n\n removeEntry(key: string): BaggageImpl {\n const newBaggage = new BaggageImpl(this._entries);\n newBaggage._entries.delete(key);\n return newBaggage;\n }\n\n removeEntries(...keys: string[]): BaggageImpl {\n const newBaggage = new BaggageImpl(this._entries);\n for (const key of keys) {\n newBaggage._entries.delete(key);\n }\n return newBaggage;\n }\n\n clear(): BaggageImpl {\n return new BaggageImpl();\n }\n}\n"],"mappings":";AAOA,IAAa,cAAb,MAAa,YAA+B;CAG1C,YAAY,SAAqC;EAC/C,KAAK,WAAW,UAAU,IAAI,IAAI,OAAO,oBAAI,IAAI,IAAI;CACvD;CAEA,SAAS,KAAuC;EAC9C,MAAM,QAAQ,KAAK,SAAS,IAAI,GAAG;EACnC,IAAI,CAAC,OACH;EAGF,OAAO,OAAO,OAAO,CAAC,GAAG,KAAK;CAChC;CAEA,gBAA0C;EACxC,OAAO,MAAM,KAAK,KAAK,SAAS,QAAQ,CAAC;CAC3C;CAEA,SAAS,KAAa,OAAkC;EACtD,MAAM,aAAa,IAAI,YAAY,KAAK,QAAQ;EAChD,WAAW,SAAS,IAAI,KAAK,KAAK;EAClC,OAAO;CACT;CAEA,YAAY,KAA0B;EACpC,MAAM,aAAa,IAAI,YAAY,KAAK,QAAQ;EAChD,WAAW,SAAS,OAAO,GAAG;EAC9B,OAAO;CACT;CAEA,cAAc,GAAG,MAA6B;EAC5C,MAAM,aAAa,IAAI,YAAY,KAAK,QAAQ;EAChD,KAAK,MAAM,OAAO,MAChB,WAAW,SAAS,OAAO,GAAG;EAEhC,OAAO;CACT;CAEA,QAAqB;EACnB,OAAO,IAAI,YAAY;CACzB;AACF"}