@emeraldpay/api-node
Version:
Node client for Emerald gRPC APIs
28 lines • 1.36 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.MonitoringClient = void 0;
const api_1 = require("@emeraldpay/api");
const channel_1 = require("../channel");
const monitoring_grpc_pb_1 = require("../generated/monitoring_grpc_pb");
const monitoring_pb_1 = require("../generated/monitoring_pb");
// eslint-disable-next-line @typescript-eslint/no-var-requires
const { version: clientVersion } = require('../../package.json');
class MonitoringClient {
constructor(address, credentials, agents, retries = 3) {
const agent = [...agents, `emerald-client-node/${clientVersion}`].join(' ');
this.client = new monitoring_grpc_pb_1.MonitoringClient(address, credentials, { 'grpc.primary_user_agent': agent });
this.channel = new channel_1.NativeChannel(this.client);
this.credentials = credentials;
this.retries = retries;
}
setConnectionListener(listener) {
this.channel.setListener(listener);
}
ping() {
const request = new monitoring_pb_1.PingRequest();
const call = (0, channel_1.callSingle)(this.client.ping.bind(this.client), () => true);
return (0, api_1.publishToPromise)((0, api_1.readOnce)(this.channel, call, request, this.retries));
}
}
exports.MonitoringClient = MonitoringClient;
//# sourceMappingURL=MonitoringClient.js.map
;