@oaklean/profiler-core
Version:
Part of the @oaklean suite. It provides all basic functions to work with the `.oak` file format. It allows parsing the `.oak` file format as well as tools for analyzing the measurement values. It also provides all necessary capabilities required for prec
65 lines • 3.92 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.InspectorSessionHelper = void 0;
const node_inspector_1 = __importDefault(require("node:inspector"));
class InspectorSessionHelper {
/*
* Connects the inspector session.
*/
static connect() {
if (InspectorSessionHelper._destroyed) {
throw new Error('Inspector session has been destroyed');
}
if (InspectorSessionHelper._connected) {
return;
}
InspectorSessionHelper._session.connect();
InspectorSessionHelper._connected = true;
}
/**
* Disconnects the inspector session.
*/
static disconnect() {
if (InspectorSessionHelper._destroyed) {
throw new Error('Inspector session has been destroyed');
}
if (!InspectorSessionHelper._connected) {
return;
}
InspectorSessionHelper._session.disconnect();
InspectorSessionHelper._connected = false;
InspectorSessionHelper._destroyed = true;
}
/**
* Returns whether the inspector session is connected.
*/
static get connected() {
return InspectorSessionHelper._connected;
}
/**
* Returns whether the inspector session is destroyed.
*/
static get destroyed() {
return InspectorSessionHelper._destroyed;
}
/**
* Returns the singleton inspector session, connecting it if necessary.
*/
static get session() {
if (InspectorSessionHelper._destroyed) {
throw new Error('Inspector session has been destroyed');
}
if (!InspectorSessionHelper._connected) {
InspectorSessionHelper.connect();
}
return InspectorSessionHelper._session;
}
}
exports.InspectorSessionHelper = InspectorSessionHelper;
InspectorSessionHelper._session = new node_inspector_1.default.Session();
InspectorSessionHelper._connected = false;
InspectorSessionHelper._destroyed = false;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zcGVjdG9yU2Vzc2lvbkhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9oZWxwZXIvSW5zcGVjdG9yU2Vzc2lvbkhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxvRUFBc0M7QUFFdEMsTUFBYSxzQkFBc0I7SUFLbEM7O09BRUc7SUFDSCxNQUFNLENBQUMsT0FBTztRQUNiLElBQUksc0JBQXNCLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO1FBQ3hELENBQUM7UUFDRCxJQUFJLHNCQUFzQixDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZDLE9BQU07UUFDUCxDQUFDO1FBQ0Qsc0JBQXNCLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFBO1FBQ3pDLHNCQUFzQixDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFVBQVU7UUFDaEIsSUFBSSxzQkFBc0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUE7UUFDeEQsQ0FBQztRQUNELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN4QyxPQUFNO1FBQ1AsQ0FBQztRQUVELHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUM1QyxzQkFBc0IsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFBO1FBQ3pDLHNCQUFzQixDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxLQUFLLFNBQVM7UUFDbkIsT0FBTyxzQkFBc0IsQ0FBQyxVQUFVLENBQUE7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxLQUFLLFNBQVM7UUFDbkIsT0FBTyxzQkFBc0IsQ0FBQyxVQUFVLENBQUE7SUFDekMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxLQUFLLE9BQU87UUFDakIsSUFBSSxzQkFBc0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUE7UUFDeEQsQ0FBQztRQUVELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN4QyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUNqQyxDQUFDO1FBQ0QsT0FBTyxzQkFBc0IsQ0FBQyxRQUFRLENBQUE7SUFDdkMsQ0FBQzs7QUE3REYsd0RBOERDO0FBN0RlLCtCQUFRLEdBQUcsSUFBSSx3QkFBUyxDQUFDLE9BQU8sRUFBRSxDQUFBO0FBQ2xDLGlDQUFVLEdBQUcsS0FBSyxDQUFBO0FBQ2xCLGlDQUFVLEdBQUcsS0FBSyxDQUFBIn0=