From 42493aab5084e70aece5fff5d81e1f158c443fe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Majdand=C5=BEi=C4=87?= Date: Wed, 5 Apr 2023 19:29:26 +0200 Subject: [PATCH] Code polish --- src/HttpServer/CenterRequestHandler.ts | 2 +- src/HttpServer/ClientRequestHandler.ts | 2 +- src/Job/Job.ts | 18 +++++++++--------- .../Center/BindTranscieverReplyProcessor.ts | 1 - .../Center/SubmitSmReplyProcessor.ts | 2 +- .../Client/DestinationEnumeratorProcessor.ts | 1 + .../Client/SourceEnumeratorProcessor.ts | 1 + src/SmppSession.ts | 4 ++++ src/main.ts | 2 -- 9 files changed, 18 insertions(+), 15 deletions(-) diff --git a/src/HttpServer/CenterRequestHandler.ts b/src/HttpServer/CenterRequestHandler.ts index 2b3cd5a..9d5632e 100644 --- a/src/HttpServer/CenterRequestHandler.ts +++ b/src/HttpServer/CenterRequestHandler.ts @@ -24,7 +24,7 @@ export default class CenterRequestHandler extends RequestHandler { doGetAppliedProcessors(req: any, res: any): void { this.sessionManager.getSession(req.params.id).then((session: SmppSession) => { - let processors: PduProcessor[] = session.pduProcessors; + let processors: PduProcessor[] = session.appliedProcessors; res.send(processors.map((processor: any) => processor.serialize())); }, this.handleSessionNotFound.bind(this, req, res)); } diff --git a/src/HttpServer/ClientRequestHandler.ts b/src/HttpServer/ClientRequestHandler.ts index e0931b4..e5990ab 100644 --- a/src/HttpServer/ClientRequestHandler.ts +++ b/src/HttpServer/ClientRequestHandler.ts @@ -24,7 +24,7 @@ export default class ClientRequestHandler extends RequestHandler { doGetAppliedProcessors(req: any, res: any): void { this.sessionManager.getSession(req.params.id).then((session: SmppSession) => { - let processors: PduProcessor[] = session.pduProcessors; + let processors: PduProcessor[] = session.appliedProcessors; res.send(processors.map((processor: any) => processor.serialize())); }, this.handleSessionNotFound.bind(this, req, res)); } diff --git a/src/Job/Job.ts b/src/Job/Job.ts index b4598ee..0a6fd18 100644 --- a/src/Job/Job.ts +++ b/src/Job/Job.ts @@ -14,15 +14,6 @@ export default class Job { this._count = count; } - static pduParseShortMessage(pdu: PDU) { - if (pdu.short_message && pdu.short_message.type === "Buffer") { - pdu.short_message = Buffer.from(pdu.short_message.data, 'ascii').toString(); - } - if (typeof pdu.short_message === "object") { - pdu.short_message = pdu.short_message.toString(); - } - } - private _pdu: PDU; get pdu(): PDU { @@ -56,6 +47,15 @@ export default class Job { this.eventEmitter.emit(Job.STATE_CHANGED, {}); } + static pduParseShortMessage(pdu: PDU) { + if (pdu.short_message && pdu.short_message.type === "Buffer") { + pdu.short_message = Buffer.from(pdu.short_message.data, 'ascii').toString(); + } + if (typeof pdu.short_message === "object") { + pdu.short_message = pdu.short_message.toString(); + } + } + static createEmptySingle(command: string): Job { let pdu1 = new smpp.PDU(command, {}); Job.pduParseShortMessage(pdu1); diff --git a/src/PDUProcessor/Postprocessor/Center/BindTranscieverReplyProcessor.ts b/src/PDUProcessor/Postprocessor/Center/BindTranscieverReplyProcessor.ts index 231d56c..6833748 100644 --- a/src/PDUProcessor/Postprocessor/Center/BindTranscieverReplyProcessor.ts +++ b/src/PDUProcessor/Postprocessor/Center/BindTranscieverReplyProcessor.ts @@ -1,5 +1,4 @@ import Center from "../../../Center/Center"; -import SmppSession from "../../../SmppSession"; import Postprocessor from "../Postprocessor"; const smpp = require("smpp"); diff --git a/src/PDUProcessor/Postprocessor/Center/SubmitSmReplyProcessor.ts b/src/PDUProcessor/Postprocessor/Center/SubmitSmReplyProcessor.ts index 43c9320..db24bcb 100644 --- a/src/PDUProcessor/Postprocessor/Center/SubmitSmReplyProcessor.ts +++ b/src/PDUProcessor/Postprocessor/Center/SubmitSmReplyProcessor.ts @@ -8,7 +8,7 @@ export default class SubmitSmReplyProcessor extends Postprocessor { processPdu(session: any, pdu: any, entity?: SmppSession | undefined): Promise { return new Promise((resolve, reject) => { - if (!!pdu.command && pdu.command === 'submit_sm') { + if (!!pdu.command && pdu.command === 'submit_sm') { session.send(pdu.response()); resolve(pdu); } diff --git a/src/PDUProcessor/Preprocessor/Client/DestinationEnumeratorProcessor.ts b/src/PDUProcessor/Preprocessor/Client/DestinationEnumeratorProcessor.ts index 1634bbf..867c7bb 100644 --- a/src/PDUProcessor/Preprocessor/Client/DestinationEnumeratorProcessor.ts +++ b/src/PDUProcessor/Preprocessor/Client/DestinationEnumeratorProcessor.ts @@ -3,6 +3,7 @@ import Preprocessor from "../Preprocessor"; export default class DestinationEnumeratorProcessor extends Preprocessor { private iterator: number = 0; + constructor(type: string) { super(type); } diff --git a/src/PDUProcessor/Preprocessor/Client/SourceEnumeratorProcessor.ts b/src/PDUProcessor/Preprocessor/Client/SourceEnumeratorProcessor.ts index 52cbb0c..50d3726 100644 --- a/src/PDUProcessor/Preprocessor/Client/SourceEnumeratorProcessor.ts +++ b/src/PDUProcessor/Preprocessor/Client/SourceEnumeratorProcessor.ts @@ -3,6 +3,7 @@ import Preprocessor from "../Preprocessor"; export default class SourceEnumeratorProcessor extends Preprocessor { private iterator: number = 0; + constructor(type: string) { super(type); } diff --git a/src/SmppSession.ts b/src/SmppSession.ts index d8456bc..f2c6894 100644 --- a/src/SmppSession.ts +++ b/src/SmppSession.ts @@ -36,6 +36,10 @@ export default abstract class SmppSession { this.processors[Postprocessor.name] = []; } + get appliedProcessors(): PduProcessor[] { + return this.processors[Preprocessor.name].concat(this.processors[Postprocessor.name]); + } + abstract _username: string; get username(): string { diff --git a/src/main.ts b/src/main.ts index 2a48842..aa3dbcc 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,9 +1,7 @@ -import Center from "./Center/Center"; import CenterSessionManager from "./Center/CenterSessionManager"; import Client from "./Client/Client"; import ClientSessionManager from "./Client/ClientSessionManager"; import Logger from "./Logger"; -import SourceEnumeratorProcessor from "./PDUProcessor/Preprocessor/Client/SourceEnumeratorProcessor"; import ProcessorManager from "./PDUProcessor/ProcessorManager"; import WSServer from "./WS/WSServer";