UNPKG

adonis-grpc-consumer

Version:

Adonis gRPC client provider for easily communicate with gRPC services

27 lines (26 loc) 879 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); class GrpcConsumerProvider { constructor(app) { this.app = app; } /** * Register the grpc consumer binding */ register() { const config = this.app.container.resolveBinding('Adonis/Core/Config').get('grpc-consumer', {}); this.app.container.singleton('Adonis/Addons/GrpcConsumer', () => { const { GrpcConsumer } = require('../src/GrpcConsumer'); return new GrpcConsumer(config); }); } /** * Gracefully close all grpc active connections */ async shutdown() { const grpcConsumer = this.app.container.use('Adonis/Addons/GrpcConsumer'); await grpcConsumer.closeAll(); } } exports.default = GrpcConsumerProvider; GrpcConsumerProvider.needsApplication = true;