couchbase
Version:
The official Couchbase Node.js Client Library.
87 lines (86 loc) • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.NoOpMeter = exports.NoOpValueRecorder = exports.wrapObservableBindingCall = exports.NoOpTracer = exports.NoOpSpan = void 0;
const bindingutilities_1 = require("./bindingutilities");
/**
* @internal
*/
class NoOpSpan {
/**
* @internal
*/
setAttribute() { }
/**
* @internal
*/
addEvent() { }
/**
* @internal
*/
setStatus() { }
/**
* @internal
*/
end() { }
/**
* @internal
*/
get name() {
return '';
}
}
exports.NoOpSpan = NoOpSpan;
/**
* @internal
*/
class NoOpTracer {
/**
* @internal
*/
requestSpan() {
return new NoOpSpan();
}
}
exports.NoOpTracer = NoOpTracer;
/**
* @internal
*/
async function wrapObservableBindingCall(fn, req, obsReqHandler) {
return await new Promise((resolve) => {
req.wrapper_span_name = obsReqHandler.wrapperSpanName;
fn(req, (cppErr, res) => {
let err = null;
if (cppErr) {
err = (0, bindingutilities_1.errorFromCpp)(cppErr);
obsReqHandler.processCoreSpan(cppErr.cpp_core_span);
}
else {
obsReqHandler.processCoreSpan(res.cpp_core_span);
}
resolve([err, res]);
});
});
}
exports.wrapObservableBindingCall = wrapObservableBindingCall;
/**
* @internal
*/
class NoOpValueRecorder {
/**
* @internal
*/
recordValue(_value) { }
}
exports.NoOpValueRecorder = NoOpValueRecorder;
/**
* @internal
*/
class NoOpMeter {
/**
* @internal
*/
valueRecorder(_name, _tags) {
return new NoOpValueRecorder();
}
}
exports.NoOpMeter = NoOpMeter;