import {IParamWriter} from "./IParamWriter"; export class LegacyParamEncoder implements IParamWriter { private readonly writeFN: (data: Buffer) => Promise; private readonly endFN: () => Promise; private obj = {}; constructor(write: (data: Buffer) => Promise, end: () => Promise) { this.writeFN = write; this.endFN = end; } writeParams(data: any): Promise { for(let key in data) { if(this.obj[key]==null) this.obj[key] = data[key]; } return Promise.resolve(); } async end(): Promise { await this.writeFN(Buffer.from(JSON.stringify(this.obj))); await this.endFN(); } }