@a11ywatch/core
Version:
a11ywatch central API
60 lines • 2.95 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.killServer = exports.createServer = void 0;
const grpc_js_1 = require("@grpc/grpc-js");
const rpc_1 = require("../config/rpc");
const scan_start_1 = require("./calls/scan-start");
const scan_end_1 = require("./calls/scan-end");
const scan_1 = require("./calls/scan");
const scan_stream_1 = require("./calls/scan-stream");
const core_scan_1 = require("./calls/core-scan");
const page_update_1 = require("./calls/page-update");
const core_crawl_1 = require("./calls/core-crawl");
const website_1 = require("./website");
let server;
let publicServer;
const createServer = () => __awaiter(void 0, void 0, void 0, function* () {
const websiteProto = yield (0, website_1.loadProto)();
const coreProto = yield (0, website_1.loadProto)("apicore.proto");
server = new grpc_js_1.Server();
publicServer = new grpc_js_1.Server();
server.addService(websiteProto["website.WebsiteService"], {
scanStart: scan_start_1.scanStart,
scanEnd: scan_end_1.scanEnd,
scan: scan_1.scan,
scanStream: scan_stream_1.scanStream,
pageSet: page_update_1.pageUpdate,
});
publicServer.addService(coreProto["apicore.CoreService"], {
scan: core_scan_1.coreScan,
crawl: core_crawl_1.coreCrawl,
});
server.bindAsync(rpc_1.GRPC_HOST, grpc_js_1.ServerCredentials.createInsecure(), () => {
server.start();
console.log(`gRPC server running at ${rpc_1.GRPC_HOST}`);
});
publicServer.bindAsync(rpc_1.GRPC_HOST_PUBLIC, grpc_js_1.ServerCredentials.createInsecure(), () => {
publicServer.start();
console.log(`public - gRPC server running at ${rpc_1.GRPC_HOST_PUBLIC}`);
});
});
exports.createServer = createServer;
const killServer = () => __awaiter(void 0, void 0, void 0, function* () {
const websiteProto = yield (0, website_1.loadProto)();
const coreProto = yield (0, website_1.loadProto)("apicore.proto");
server.removeService(websiteProto["website.WebsiteService"]);
publicServer.removeService(coreProto["apicore.CoreService"]);
server.forceShutdown();
publicServer.forceShutdown();
});
exports.killServer = killServer;
//# sourceMappingURL=website-server.js.map
;