UNPKG

@multiplayer-app/session-recorder-common

Version:
40 lines 1.62 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SessionRecorderIdGenerator = void 0; const type_1 = require("./type"); const constants_base_1 = require("./constants/constants.base"); const sdk_1 = require("./sdk"); class SessionRecorderIdGenerator { constructor() { this.generateLongId = (0, sdk_1.getIdGenerator)(16); this.generateShortId = (0, sdk_1.getIdGenerator)(8); this.sessionShortId = ''; this.sessionType = type_1.SessionType.PLAIN; } generateTraceId() { const traceId = this.generateLongId(); if (this.sessionShortId) { let sessionTypePrefix = ''; switch (this.sessionType) { case type_1.SessionType.CONTINUOUS: sessionTypePrefix = constants_base_1.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX; break; default: sessionTypePrefix = constants_base_1.MULTIPLAYER_TRACE_DEBUG_PREFIX; } const prefix = `${sessionTypePrefix}${this.sessionShortId}`; const sessionTraceId = `${prefix}${traceId.substring(prefix.length, traceId.length)}`; return sessionTraceId; } return traceId; } generateSpanId() { return this.generateShortId(); } setSessionId(sessionShortId, sessionType = type_1.SessionType.PLAIN) { this.sessionShortId = sessionShortId; this.sessionType = sessionType; } } exports.SessionRecorderIdGenerator = SessionRecorderIdGenerator; //# sourceMappingURL=SessionRecorderIdGenerator.js.map