UNPKG

1.85 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const IlpPacket = require("ilp-packet");
4const config_1 = require("../services/config");
5const accounts_1 = require("../services/accounts");
6const route_broadcaster_1 = require("../services/route-broadcaster");
7const route_builder_1 = require("../services/route-builder");
8const ilp_prepare_1 = require("../controllers/ilp-prepare");
9const log_1 = require("../common/log");
10const log = log_1.create('core-middleware');
11const { InvalidPacketError } = IlpPacket.Errors;
12class Core {
13 constructor(deps) {
14 this.config = deps(config_1.default);
15 this.accounts = deps(accounts_1.default);
16 this.routeBroadcaster = deps(route_broadcaster_1.default);
17 this.routeBuilder = deps(route_builder_1.default);
18 this.ilpPrepareController = deps(ilp_prepare_1.default);
19 }
20 async processData(data, accountId, outbound) {
21 if (!this.accounts.getInfo(accountId)) {
22 log.warn('got data from unknown account id. accountId=%s', accountId);
23 throw new Error('got data from unknown account id. accountId=' + accountId);
24 }
25 if (!Buffer.isBuffer(data)) {
26 log.error('data handler was passed a non-buffer. typeof=%s data=%s', typeof data, data);
27 throw new Error('data handler was passed a non-buffer. typeof=' + typeof data);
28 }
29 switch (data[0]) {
30 case IlpPacket.Type.TYPE_ILP_PREPARE:
31 return this.ilpPrepareController.sendData(data, accountId, outbound);
32 default:
33 log.error('received invalid packet type. source=%s type=%s', accountId, data[0]);
34 throw new InvalidPacketError('invalid packet type received. type=' + data[0]);
35 }
36 }
37}
38exports.default = Core;
39//# sourceMappingURL=core.js.map
\No newline at end of file