jspurefix 2.0.2 → 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/appveyor.yml +1 -0
- package/dist/runtime/session-launcher.js +2 -2
- package/dist/runtime/session-launcher.js.map +1 -1
- package/package.json +7 -7
- package/src/runtime/session-launcher.ts +2 -2
- package/dist/a-session-msg-factory.d.ts +0 -0
- package/dist/a-session-msg-factory.js +0 -1
- package/dist/a-session-msg-factory.js.map +0 -1
- package/dist/ascii-encoder.test.d.ts +0 -0
- package/dist/ascii-encoder.test.js +0 -1
- package/dist/ascii-encoder.test.js.map +0 -1
- package/dist/ascii-parser.test.d.ts +0 -0
- package/dist/ascii-parser.test.js +0 -1
- package/dist/ascii-parser.test.js.map +0 -1
- package/dist/ascii-segment.test.d.ts +0 -0
- package/dist/ascii-segment.test.js +0 -1
- package/dist/ascii-segment.test.js.map +0 -1
- package/dist/ascii-store-replay.test.d.ts +0 -0
- package/dist/ascii-store-replay.test.js +0 -1
- package/dist/ascii-store-replay.test.js.map +0 -1
- package/dist/ascii-tag-pos.test.d.ts +0 -0
- package/dist/ascii-tag-pos.test.js +0 -1
- package/dist/ascii-tag-pos.test.js.map +0 -1
- package/dist/buffer/segment-description.d.ts +0 -26
- package/dist/buffer/segment-description.js +0 -72
- package/dist/buffer/segment-description.js.map +0 -1
- package/dist/buffer/segment-summary.d.ts +0 -13
- package/dist/buffer/segment-summary.js +0 -20
- package/dist/buffer/segment-summary.js.map +0 -1
- package/dist/buffer/segment-type.d.ts +0 -8
- package/dist/buffer/segment-type.js +0 -13
- package/dist/buffer/segment-type.js.map +0 -1
- package/dist/buffer/tag-pos.d.ts +0 -12
- package/dist/buffer/tag-pos.js +0 -55
- package/dist/buffer/tag-pos.js.map +0 -1
- package/dist/buffer/tag-type.d.ts +0 -13
- package/dist/buffer/tag-type.js +0 -18
- package/dist/buffer/tag-type.js.map +0 -1
- package/dist/buffer/tags.d.ts +0 -21
- package/dist/buffer/tags.js +0 -122
- package/dist/buffer/tags.js.map +0 -1
- package/dist/dictionary/parser/fix-repository/repository-msg.d.ts +0 -0
- package/dist/dictionary/parser/fix-repository/repository-msg.js +0 -1
- package/dist/dictionary/parser/fix-repository/repository-msg.js.map +0 -1
- package/dist/execution-report.test.d.ts +0 -0
- package/dist/execution-report.test.js +0 -1
- package/dist/execution-report.test.js.map +0 -1
- package/dist/experiment.d.ts +0 -0
- package/dist/experiment.js +0 -1
- package/dist/experiment.js.map +0 -1
- package/dist/fix-repo-dict.test.d.ts +0 -0
- package/dist/fix-repo-dict.test.js +0 -1
- package/dist/fix-repo-dict.test.js.map +0 -1
- package/dist/fix-session-state-args.d.ts +0 -0
- package/dist/fix-session-state-args.js +0 -1
- package/dist/fix-session-state-args.js.map +0 -1
- package/dist/fix-session-state.d.ts +0 -0
- package/dist/fix-session-state.js +0 -1
- package/dist/fix-session-state.js.map +0 -1
- package/dist/fix-session.d.ts +0 -0
- package/dist/fix-session.js +0 -1
- package/dist/fix-session.js.map +0 -1
- package/dist/fix.txt +0 -1
- package/dist/fixml-alloc-parse.test.d.ts +0 -0
- package/dist/fixml-alloc-parse.test.js +0 -1
- package/dist/fixml-alloc-parse.test.js.map +0 -1
- package/dist/fixml-mkt-data-fut-parse.test.d.ts +0 -0
- package/dist/fixml-mkt-data-fut-parse.test.js +0 -1
- package/dist/fixml-mkt-data-fut-parse.test.js.map +0 -1
- package/dist/fixml-mkt-data-settle-parse.test.d.ts +0 -0
- package/dist/fixml-mkt-data-settle-parse.test.js +0 -1
- package/dist/fixml-mkt-data-settle-parse.test.js.map +0 -1
- package/dist/fixml-tc-bi-lateral-parse.test.d.ts +0 -0
- package/dist/fixml-tc-bi-lateral-parse.test.js +0 -1
- package/dist/fixml-tc-bi-lateral-parse.test.js.map +0 -1
- package/dist/includes.test.d.ts +0 -0
- package/dist/includes.test.js +0 -1
- package/dist/includes.test.js.map +0 -1
- package/dist/launcher.d.ts +0 -0
- package/dist/launcher.js +0 -1
- package/dist/launcher.js.map +0 -1
- package/dist/logon.test.d.ts +0 -0
- package/dist/logon.test.js +0 -1
- package/dist/logon.test.js.map +0 -1
- package/dist/make-fix-session.d.ts +0 -0
- package/dist/make-fix-session.js +0 -1
- package/dist/make-fix-session.js.map +0 -1
- package/dist/memory-store.test.d.ts +0 -0
- package/dist/memory-store.test.js +0 -1
- package/dist/memory-store.test.js.map +0 -1
- package/dist/object.json +0 -691
- package/dist/qf-full-msg.test.d.ts +0 -0
- package/dist/qf-full-msg.test.js +0 -1
- package/dist/qf-full-msg.test.js.map +0 -1
- package/dist/repo-full-ascii-msg.test.d.ts +0 -0
- package/dist/repo-full-ascii-msg.test.js +0 -1
- package/dist/repo-full-ascii-msg.test.js.map +0 -1
- package/dist/runtime/DITokens.d.ts +0 -20
- package/dist/runtime/DITokens.js +0 -25
- package/dist/runtime/DITokens.js.map +0 -1
- package/dist/runtime/app-launcher.d.ts +0 -27
- package/dist/runtime/app-launcher.js +0 -131
- package/dist/runtime/app-launcher.js.map +0 -1
- package/dist/runtime/launcher.d.ts +0 -29
- package/dist/runtime/launcher.js +0 -131
- package/dist/runtime/launcher.js.map +0 -1
- package/dist/sample/launcher.d.ts +0 -29
- package/dist/sample/launcher.js +0 -131
- package/dist/sample/launcher.js.map +0 -1
- package/dist/sample/tcp/trade-capture/app-launher.d.ts +0 -0
- package/dist/sample/tcp/trade-capture/app-launher.js +0 -1
- package/dist/sample/tcp/trade-capture/app-launher.js.map +0 -1
- package/dist/sample/tcp/trade-capture/jsfix.test_client.txt +0 -11
- package/dist/sample/tcp/trade-capture/jsfix.test_server.txt +0 -10
- package/dist/segment-description.d.ts +0 -0
- package/dist/segment-description.js +0 -1
- package/dist/segment-description.js.map +0 -1
- package/dist/segment-summary.d.ts +0 -0
- package/dist/segment-summary.js +0 -1
- package/dist/segment-summary.js.map +0 -1
- package/dist/segment-type.d.ts +0 -0
- package/dist/segment-type.js +0 -1
- package/dist/segment-type.js.map +0 -1
- package/dist/session-description.d.ts +0 -0
- package/dist/session-description.js +0 -1
- package/dist/session-description.js.map +0 -1
- package/dist/session-msg-factory.d.ts +0 -0
- package/dist/session-msg-factory.js +0 -1
- package/dist/session-msg-factory.js.map +0 -1
- package/dist/session-state.d.ts +0 -0
- package/dist/session-state.js +0 -1
- package/dist/session-state.js.map +0 -1
- package/dist/session-state.test.d.ts +0 -0
- package/dist/session-state.test.js +0 -1
- package/dist/session-state.test.js.map +0 -1
- package/dist/session.test.d.ts +0 -0
- package/dist/session.test.js +0 -1
- package/dist/session.test.js.map +0 -1
- package/dist/setup.d.ts +0 -0
- package/dist/setup.js +0 -1
- package/dist/setup.js.map +0 -1
- package/dist/skeleton-runner.d.ts +0 -0
- package/dist/skeleton-runner.js +0 -1
- package/dist/skeleton-runner.js.map +0 -1
- package/dist/structure.json +0 -631
- package/dist/tag-pos.d.ts +0 -0
- package/dist/tag-pos.js +0 -1
- package/dist/tag-pos.js.map +0 -1
- package/dist/tag-type.d.ts +0 -0
- package/dist/tag-type.js +0 -1
- package/dist/tag-type.js.map +0 -1
- package/dist/tags.d.ts +0 -0
- package/dist/tags.js +0 -1
- package/dist/tags.js.map +0 -1
- package/dist/test/ascii-encoder.test.d.ts +0 -1
- package/dist/test/ascii-encoder.test.js +0 -508
- package/dist/test/ascii-encoder.test.js.map +0 -1
- package/dist/test/ascii-parser.test.d.ts +0 -1
- package/dist/test/ascii-parser.test.js +0 -123
- package/dist/test/ascii-parser.test.js.map +0 -1
- package/dist/test/ascii-segment.test.d.ts +0 -1
- package/dist/test/ascii-segment.test.js +0 -86
- package/dist/test/ascii-segment.test.js.map +0 -1
- package/dist/test/ascii-store-replay.test.d.ts +0 -1
- package/dist/test/ascii-store-replay.test.js +0 -92
- package/dist/test/ascii-store-replay.test.js.map +0 -1
- package/dist/test/ascii-tag-pos.test.d.ts +0 -1
- package/dist/test/ascii-tag-pos.test.js +0 -105
- package/dist/test/ascii-tag-pos.test.js.map +0 -1
- package/dist/test/execution-report.test.d.ts +0 -1
- package/dist/test/execution-report.test.js +0 -494
- package/dist/test/execution-report.test.js.map +0 -1
- package/dist/test/experiment.d.ts +0 -23
- package/dist/test/experiment.js +0 -33
- package/dist/test/experiment.js.map +0 -1
- package/dist/test/expieriment.d.ts +0 -23
- package/dist/test/expieriment.js +0 -33
- package/dist/test/expieriment.js.map +0 -1
- package/dist/test/fix-log-replay.test.d.ts +0 -1
- package/dist/test/fix-log-replay.test.js +0 -47
- package/dist/test/fix-log-replay.test.js.map +0 -1
- package/dist/test/fix-repo-dict.test.d.ts +0 -1
- package/dist/test/fix-repo-dict.test.js +0 -128
- package/dist/test/fix-repo-dict.test.js.map +0 -1
- package/dist/test/fixml-alloc-parse.test.d.ts +0 -1
- package/dist/test/fixml-alloc-parse.test.js +0 -161
- package/dist/test/fixml-alloc-parse.test.js.map +0 -1
- package/dist/test/fixml-mkt-data-fut-parse.test.d.ts +0 -1
- package/dist/test/fixml-mkt-data-fut-parse.test.js +0 -61
- package/dist/test/fixml-mkt-data-fut-parse.test.js.map +0 -1
- package/dist/test/fixml-mkt-data-settle-parse.test.d.ts +0 -1
- package/dist/test/fixml-mkt-data-settle-parse.test.js +0 -34
- package/dist/test/fixml-mkt-data-settle-parse.test.js.map +0 -1
- package/dist/test/fixml-tc-bi-lateral-parse.test.d.ts +0 -1
- package/dist/test/fixml-tc-bi-lateral-parse.test.js +0 -97
- package/dist/test/fixml-tc-bi-lateral-parse.test.js.map +0 -1
- package/dist/test/includes.test.d.ts +0 -1
- package/dist/test/includes.test.js +0 -43
- package/dist/test/includes.test.js.map +0 -1
- package/dist/test/logon.test.d.ts +0 -1
- package/dist/test/logon.test.js +0 -93
- package/dist/test/logon.test.js.map +0 -1
- package/dist/test/memory-store.test.d.ts +0 -1
- package/dist/test/memory-store.test.js +0 -78
- package/dist/test/memory-store.test.js.map +0 -1
- package/dist/test/qf-full-msg.test.d.ts +0 -1
- package/dist/test/qf-full-msg.test.js +0 -81
- package/dist/test/qf-full-msg.test.js.map +0 -1
- package/dist/test/repo-full-ascii-msg.test.d.ts +0 -1
- package/dist/test/repo-full-ascii-msg.test.js +0 -87
- package/dist/test/repo-full-ascii-msg.test.js.map +0 -1
- package/dist/test/repo-full-fixml-msg.test.d.ts +0 -1
- package/dist/test/repo-full-fixml-msg.test.js +0 -139
- package/dist/test/repo-full-fixml-msg.test.js.map +0 -1
- package/dist/test/session-state.test.d.ts +0 -1
- package/dist/test/session-state.test.js +0 -73
- package/dist/test/session-state.test.js.map +0 -1
- package/dist/test/session.test.d.ts +0 -1
- package/dist/test/session.test.js +0 -280
- package/dist/test/session.test.js.map +0 -1
- package/dist/test/setup.d.ts +0 -45
- package/dist/test/setup.js +0 -102
- package/dist/test/setup.js.map +0 -1
- package/dist/test/skeleton-runner.d.ts +0 -15
- package/dist/test/skeleton-runner.js +0 -108
- package/dist/test/skeleton-runner.js.map +0 -1
- package/dist/test/time-formatter.test.d.ts +0 -1
- package/dist/test/time-formatter.test.js +0 -80
- package/dist/test/time-formatter.test.js.map +0 -1
- package/dist/test/to-views.d.ts +0 -11
- package/dist/test/to-views.js +0 -56
- package/dist/test/to-views.js.map +0 -1
- package/dist/test/view-decode.test.d.ts +0 -1
- package/dist/test/view-decode.test.js +0 -183
- package/dist/test/view-decode.test.js.map +0 -1
- package/dist/time-formatter.test.d.ts +0 -0
- package/dist/time-formatter.test.js +0 -1
- package/dist/time-formatter.test.js.map +0 -1
- package/dist/to-views.d.ts +0 -0
- package/dist/to-views.js +0 -1
- package/dist/to-views.js.map +0 -1
- package/dist/token.txt +0 -248
- package/dist/transport/FixEntity.d.ts +0 -8
- package/dist/transport/FixEntity.js +0 -12
- package/dist/transport/FixEntity.js.map +0 -1
- package/dist/transport/a-session-msg-factory.d.ts +0 -23
- package/dist/transport/a-session-msg-factory.js +0 -58
- package/dist/transport/a-session-msg-factory.js.map +0 -1
- package/dist/transport/fix-msg-factory.d.ts +0 -15
- package/dist/transport/fix-msg-factory.js +0 -3
- package/dist/transport/fix-msg-factory.js.map +0 -1
- package/dist/transport/fix-session-state-args.d.ts +0 -8
- package/dist/transport/fix-session-state-args.js +0 -3
- package/dist/transport/fix-session-state-args.js.map +0 -1
- package/dist/transport/fix-session-state.d.ts +0 -32
- package/dist/transport/fix-session-state.js +0 -133
- package/dist/transport/fix-session-state.js.map +0 -1
- package/dist/transport/fix-session.d.ts +0 -50
- package/dist/transport/fix-session.js +0 -291
- package/dist/transport/fix-session.js.map +0 -1
- package/dist/transport/make-fix-session.d.ts +0 -5
- package/dist/transport/make-fix-session.js +0 -3
- package/dist/transport/make-fix-session.js.map +0 -1
- package/dist/transport/session-description.d.ts +0 -17
- package/dist/transport/session-description.js +0 -3
- package/dist/transport/session-description.js.map +0 -1
- package/dist/transport/session-msg-factory.d.ts +0 -15
- package/dist/transport/session-msg-factory.js +0 -3
- package/dist/transport/session-msg-factory.js.map +0 -1
- package/dist/transport/session-state.d.ts +0 -25
- package/dist/transport/session-state.js +0 -30
- package/dist/transport/session-state.js.map +0 -1
package/appveyor.yml
CHANGED
|
@@ -120,8 +120,8 @@ class SessionLauncher {
|
|
|
120
120
|
setup() {
|
|
121
121
|
return __awaiter(this, void 0, void 0, function* () {
|
|
122
122
|
this.sessionContainer.registerGlobal();
|
|
123
|
-
const server = this.
|
|
124
|
-
const client = this.
|
|
123
|
+
const server = this.acceptorConfig ? this.makeServer() : this.empty();
|
|
124
|
+
const client = this.initiatorConfig ? this.makeClient() : this.empty();
|
|
125
125
|
this.logger.info('launching ....');
|
|
126
126
|
return Promise.all([server, client]);
|
|
127
127
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-launcher.js","sourceRoot":"","sources":["../../src/runtime/session-launcher.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"session-launcher.js","sourceRoot":"","sources":["../../src/runtime/session-launcher.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6BAA4B;AAC5B,sCAA6F;AAI7F,2DAAsD;AACtD,2CAAsC;AAEtC,MAAM,UAAU,GAAG,IAAI,+BAAsB,CAAC,sBAAa,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAA;AAEnF,MAAsB,eAAe;IAGnC,YAAuC,eAAuB,EACvB,iBAAyB,IAAI;QAD7B,oBAAe,GAAf,eAAe,CAAQ;QACvB,mBAAc,GAAd,cAAc,CAAe;QAH7D,SAAI,GAAW,QAAQ,CAAA;QAMpB,qBAAgB,GAAqB,IAAI,oCAAgB,EAAE,CAAA;QAFnE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IAC7C,CAAC;IAGO,KAAK;QACX,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;YAChC,YAAY,CAAC,GAAG,EAAE;gBAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAA;gBAC9C,OAAO,CAAC,IAAI,CAAC,CAAA;YACf,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,WAAW,CAAE,gBAAqC;QAC1D,IAAI,gBAAgB,CAAC,YAAY,CAAY,oBAAQ,CAAC,SAAS,CAAC,EAAE;YAChE,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAY,oBAAQ,CAAC,SAAS,CAAC,CAAA;YACtE,OAAO,MAAM,CAAC,KAAK,EAAE,CAAA;SACtB;aAAM;YACL,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;SACpB;IACH,CAAC;IAES,YAAY,CAAE,gBAAqC;QAC3D,IAAI,gBAAgB,CAAC,YAAY,CAAY,oBAAQ,CAAC,SAAS,CAAC,EAAE;YAChE,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAY,oBAAQ,CAAC,SAAS,CAAC,CAAA;YACtE,OAAO,MAAM,CAAC,KAAK,EAAE,CAAA;SACtB;aAAM;YACL,OAAO,IAAI,CAAC,KAAK,EAAE,CAAA;SACpB;IACH,CAAC;IAES,WAAW,CAAE,MAAoB;QACzC,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,GAAG;QACR,OAAO,IAAI,OAAO,CAAM,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YAC3B,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACrB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACtB,MAAM,CAAC,IAAI,CAAC,CAAA;YACd,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBACf,MAAM,CAAC,CAAC,CAAC,CAAA;YACX,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,IAAI;QACT,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YACnB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAC1B,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAClB,CAAC,CAAC,CAAA;IACJ,CAAC;IAEM,OAAO,CAAE,WAAgC;QAC9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IACnD,CAAC;IAEM,WAAW,CAAE,WAAgC;QAClD,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;IACvD,CAAC;IAES,mBAAmB,CAAE,gBAAqC;QAClE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAA;IAC5C,CAAC;IAEO,UAAU,CAAE,WAAgC;QAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,WAAW,CAAC,WAAW,CAAC,IAAI,cAAc,WAAW,CAAC,WAAW,CAAC,QAAQ,GAAG,CAAC,CAAA;QAC/G,OAAO,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;IACtD,CAAC;IAEO,QAAQ,CAAE,SAA8B;QAC9C,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAe,oBAAQ,CAAC,YAAY,CAAC,CAAA;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QACxC,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAA;SACpC;aAAM;YACL,IAAI,OAAO,CAAC,WAAW,EAAE;gBACvB,SAAS,CAAC,QAAQ,CAAa,oBAAQ,CAAC,UAAU,EAAE;oBAClD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;iBAC9C,CAAC,CAAA;aACH;SACF;IACH,CAAC;IAEa,UAAU;;YACtB,MAAM,WAAW,GAAwB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAA;YAC5F,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YAC3D,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;YACpC,OAAO,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAA;QAC5C,CAAC;KAAA;IAEa,UAAU;;YACtB,MAAM,WAAW,GAAwB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAA;YAC3F,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;YAC3D,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;YACnC,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;QAC3C,CAAC;KAAA;IAEa,KAAK;;YACjB,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAA;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YACrE,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;YAClC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;QACtC,CAAC;KAAA;CACF;AApHD,0CAoHC","sourcesContent":["import * as path from 'path'\r\nimport { IJsFixConfig, IJsFixLogger, JsFixWinstonLogFactory, WinstonLogger } from '../config'\r\nimport { ISessionDescription, FixEntity, FixSession } from '../transport'\r\nimport { DependencyContainer } from 'tsyringe'\r\nimport { EngineFactory } from './engine-factory'\r\nimport { SessionContainer } from './session-container'\r\nimport { DITokens } from './di-tokens'\r\n\r\nconst logFactory = new JsFixWinstonLogFactory(WinstonLogger.consoleOptions('info'))\r\n\r\nexport abstract class SessionLauncher {\r\n public root: string = '../../'\r\n protected readonly logger: IJsFixLogger\r\n protected constructor (public readonly initiatorConfig: string,\r\n public readonly acceptorConfig: string = null) {\r\n this.logger = logFactory.logger('launcher')\r\n }\r\n protected sessionContainer: SessionContainer = new SessionContainer()\r\n\r\n private empty (): Promise<any> {\r\n return new Promise((resolve, _) => {\r\n setImmediate(() => {\r\n this.logger.info('resolving an empty promise')\r\n resolve(null)\r\n })\r\n })\r\n }\r\n\r\n protected getAcceptor (sessionContainer: DependencyContainer): Promise<any> {\r\n if (sessionContainer.isRegistered<FixEntity>(DITokens.FixEntity)) {\r\n const entity = sessionContainer.resolve<FixEntity>(DITokens.FixEntity)\r\n return entity.start()\r\n } else {\r\n return this.empty()\r\n }\r\n }\r\n\r\n protected getInitiator (sessionContainer: DependencyContainer): Promise<any> {\r\n if (sessionContainer.isRegistered<FixEntity>(DITokens.FixEntity)) {\r\n const entity = sessionContainer.resolve<FixEntity>(DITokens.FixEntity)\r\n return entity.start()\r\n } else {\r\n return this.empty()\r\n }\r\n }\r\n\r\n protected makeFactory (config: IJsFixConfig): EngineFactory {\r\n return null\r\n }\r\n\r\n public run () {\r\n return new Promise<any>((accept, reject) => {\r\n const logger = this.logger\r\n logger.info('launching ..')\r\n this.setup().then(() => {\r\n logger.info('.. done')\r\n accept(true)\r\n }).catch((e: Error) => {\r\n logger.error(e)\r\n reject(e)\r\n })\r\n })\r\n }\r\n\r\n public exec () {\r\n this.run().then(() => {\r\n console.log('finished.')\r\n }).catch(e => {\r\n console.error(e)\r\n })\r\n }\r\n\r\n public isAscii (description: ISessionDescription): boolean {\r\n return this.sessionContainer.isAscii(description)\r\n }\r\n\r\n public isInitiator (description: ISessionDescription): boolean {\r\n return this.sessionContainer.isInitiator(description)\r\n }\r\n\r\n protected registerApplication (sessionContainer: DependencyContainer): void {\r\n this.logger.info('bypass register via DI')\r\n }\r\n\r\n private makeSystem (description: ISessionDescription): Promise<DependencyContainer> {\r\n this.logger.info(`creating app ${description.application.name} [protocol ${description.application.protocol}]`)\r\n return this.sessionContainer.makeSystem(description)\r\n }\r\n\r\n private register (container: DependencyContainer): void {\r\n const config = container.resolve<IJsFixConfig>(DITokens.IJsFixConfig)\r\n const factory = this.makeFactory(config)\r\n if (!factory) {\r\n this.registerApplication(container)\r\n } else {\r\n if (factory.makeSession) {\r\n container.register<FixSession>(DITokens.FixSession, {\r\n useFactory: () => factory.makeSession(config)\r\n })\r\n }\r\n }\r\n }\r\n\r\n private async makeClient (): Promise<any> {\r\n const description: ISessionDescription = require(path.join(this.root, this.initiatorConfig))\r\n const sessionContainer = await this.makeSystem(description)\r\n this.register(sessionContainer)\r\n this.logger.info('create initiator')\r\n return this.getInitiator(sessionContainer)\r\n }\r\n\r\n private async makeServer (): Promise<any> {\r\n const description: ISessionDescription = require(path.join(this.root, this.acceptorConfig))\r\n const sessionContainer = await this.makeSystem(description)\r\n this.register(sessionContainer)\r\n this.logger.info('create acceptor')\r\n return this.getAcceptor(sessionContainer)\r\n }\r\n\r\n private async setup () {\r\n this.sessionContainer.registerGlobal()\r\n const server = this.acceptorConfig ? this.makeServer() : this.empty()\r\n const client = this.initiatorConfig ? this.makeClient() : this.empty()\r\n this.logger.info('launching ....')\r\n return Promise.all([server, client])\r\n }\r\n}\r\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jspurefix",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.3",
|
|
4
4
|
"description": "pure node js fix engine",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"express": "^4.17.2",
|
|
66
66
|
"lodash": "^4.17.21",
|
|
67
67
|
"log4js": "^6.3.0",
|
|
68
|
-
"mathjs": "^10.0.
|
|
68
|
+
"mathjs": "^10.0.2",
|
|
69
69
|
"minimist": "^1.2.5",
|
|
70
70
|
"moment": "^2.29.1",
|
|
71
71
|
"node-fs-extra": "^0.8.2",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"sax": "^1.2.4",
|
|
76
76
|
"tsyringe": "^4.6.0",
|
|
77
77
|
"uuid": "^8.3.2",
|
|
78
|
-
"winston": "^3.3.
|
|
78
|
+
"winston": "^3.3.4",
|
|
79
79
|
"word-wrap": "^1.2.3",
|
|
80
80
|
"xml2js": "^0.4.23",
|
|
81
81
|
"xmlbuilder": "^15.1.1",
|
|
@@ -84,17 +84,17 @@
|
|
|
84
84
|
"devDependencies": {
|
|
85
85
|
"@types/express": "^4.17.13",
|
|
86
86
|
"@types/express-serve-static-core": "^4.17.27",
|
|
87
|
-
"@types/jest": "^27.0
|
|
87
|
+
"@types/jest": "^27.4.0",
|
|
88
88
|
"@types/lodash": "^4.14.178",
|
|
89
89
|
"@types/mathjs": "^9.4.1",
|
|
90
90
|
"@types/minimist": "^1.2.2",
|
|
91
|
-
"@types/node": "^17.0.
|
|
91
|
+
"@types/node": "^17.0.8",
|
|
92
92
|
"@types/request-promise-native": "^1.0.18",
|
|
93
93
|
"@types/sax": "^1.2.4",
|
|
94
|
-
"@types/uuid": "^8.3.
|
|
94
|
+
"@types/uuid": "^8.3.4",
|
|
95
95
|
"@types/winston": "^2.4.4",
|
|
96
96
|
"@types/xmlbuilder": "0.0.35",
|
|
97
|
-
"jest": "^27.4.
|
|
97
|
+
"jest": "^27.4.7",
|
|
98
98
|
"madge": "^5.0.1",
|
|
99
99
|
"standard": "^16.0.4",
|
|
100
100
|
"ts-jest": "^27.1.2",
|
|
@@ -119,8 +119,8 @@ export abstract class SessionLauncher {
|
|
|
119
119
|
|
|
120
120
|
private async setup () {
|
|
121
121
|
this.sessionContainer.registerGlobal()
|
|
122
|
-
const server = this.
|
|
123
|
-
const client = this.
|
|
122
|
+
const server = this.acceptorConfig ? this.makeServer() : this.empty()
|
|
123
|
+
const client = this.initiatorConfig ? this.makeClient() : this.empty()
|
|
124
124
|
this.logger.info('launching ....')
|
|
125
125
|
return Promise.all([server, client])
|
|
126
126
|
}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=a-session-msg-factory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"a-session-msg-factory.js","sourceRoot":"","sources":["../src/transport/a-session-msg-factory.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=ascii-encoder.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ascii-encoder.test.js","sourceRoot":"","sources":["../src/test/ascii-encoder.test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=ascii-parser.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ascii-parser.test.js","sourceRoot":"","sources":["../src/test/ascii-parser.test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=ascii-segment.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ascii-segment.test.js","sourceRoot":"","sources":["../src/test/ascii-segment.test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=ascii-store-replay.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ascii-store-replay.test.js","sourceRoot":"","sources":["../src/test/ascii-store-replay.test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=ascii-tag-pos.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ascii-tag-pos.test.js","sourceRoot":"","sources":["../src/test/ascii-tag-pos.test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { INumericKeyed } from '../collections/collection';
|
|
2
|
-
import { ContainedField, ContainedFieldSet } from '../dictionary/contained/';
|
|
3
|
-
import { SegmentType } from './segment-type';
|
|
4
|
-
export declare class SegmentDescription {
|
|
5
|
-
name: string;
|
|
6
|
-
startTag: number;
|
|
7
|
-
set: ContainedFieldSet;
|
|
8
|
-
startPosition: number;
|
|
9
|
-
readonly depth: number;
|
|
10
|
-
readonly type: SegmentType;
|
|
11
|
-
index: number;
|
|
12
|
-
endTag: number;
|
|
13
|
-
endPosition: number;
|
|
14
|
-
delimiterTag: number;
|
|
15
|
-
delimiterPositions: number[];
|
|
16
|
-
currentField: ContainedField;
|
|
17
|
-
containedDelimiterPositions: INumericKeyed<boolean>;
|
|
18
|
-
constructor(name: string, startTag: number, set: ContainedFieldSet, startPosition: number, depth: number, type: SegmentType);
|
|
19
|
-
contains(segment: SegmentDescription): boolean;
|
|
20
|
-
getInstance(instance: number): SegmentDescription;
|
|
21
|
-
startGroup(tag: number): void;
|
|
22
|
-
addDelimiterPosition(position: number): boolean;
|
|
23
|
-
setCurrentField(tag: number): void;
|
|
24
|
-
groupAddDelimiter(tag: number, position: number): boolean;
|
|
25
|
-
end(i: number, pos: number, endTag: number): void;
|
|
26
|
-
}
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SegmentDescription = void 0;
|
|
4
|
-
const definition_1 = require("../dictionary/definition");
|
|
5
|
-
const segment_type_1 = require("./segment-type");
|
|
6
|
-
class SegmentDescription {
|
|
7
|
-
constructor(name, startTag, set, startPosition, depth, type) {
|
|
8
|
-
this.name = name;
|
|
9
|
-
this.startTag = startTag;
|
|
10
|
-
this.set = set;
|
|
11
|
-
this.startPosition = startPosition;
|
|
12
|
-
this.depth = depth;
|
|
13
|
-
this.type = type;
|
|
14
|
-
this.endTag = 0;
|
|
15
|
-
this.endPosition = 0;
|
|
16
|
-
this.delimiterTag = 0;
|
|
17
|
-
}
|
|
18
|
-
contains(segment) {
|
|
19
|
-
return segment.startPosition >= this.startPosition && segment.endPosition <= this.endPosition;
|
|
20
|
-
}
|
|
21
|
-
getInstance(instance) {
|
|
22
|
-
const delimiters = this.delimiterPositions;
|
|
23
|
-
if (!delimiters) {
|
|
24
|
-
return null;
|
|
25
|
-
}
|
|
26
|
-
if (instance < 0 || instance >= delimiters.length) {
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
|
-
const start = delimiters[instance];
|
|
30
|
-
const end = instance < delimiters.length - 1 ?
|
|
31
|
-
delimiters[instance + 1] - 1 :
|
|
32
|
-
this.endPosition;
|
|
33
|
-
const name = this.type === segment_type_1.SegmentType.Batch ? this.set.abbreviation : this.name;
|
|
34
|
-
const d = new SegmentDescription(name, this.startTag, this.set, start, this.depth, this.type);
|
|
35
|
-
d.endPosition = end;
|
|
36
|
-
d.endTag = this.endTag;
|
|
37
|
-
return d;
|
|
38
|
-
}
|
|
39
|
-
startGroup(tag) {
|
|
40
|
-
this.delimiterTag = tag;
|
|
41
|
-
this.delimiterPositions = [];
|
|
42
|
-
this.containedDelimiterPositions = {};
|
|
43
|
-
}
|
|
44
|
-
addDelimiterPosition(position) {
|
|
45
|
-
if (this.containedDelimiterPositions[position]) {
|
|
46
|
-
return false;
|
|
47
|
-
}
|
|
48
|
-
this.delimiterPositions[this.delimiterPositions.length] = position;
|
|
49
|
-
this.containedDelimiterPositions[position] = true;
|
|
50
|
-
return true;
|
|
51
|
-
}
|
|
52
|
-
setCurrentField(tag) {
|
|
53
|
-
this.currentField = this.set.localTag[tag] || this.set.tagToField[tag];
|
|
54
|
-
}
|
|
55
|
-
groupAddDelimiter(tag, position) {
|
|
56
|
-
let delimiter = false;
|
|
57
|
-
if (this.set instanceof definition_1.GroupFieldDefinition) {
|
|
58
|
-
if (this.delimiterTag && tag === this.delimiterTag) {
|
|
59
|
-
delimiter = this.addDelimiterPosition(position);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
return delimiter;
|
|
63
|
-
}
|
|
64
|
-
end(i, pos, endTag) {
|
|
65
|
-
this.index = i;
|
|
66
|
-
this.currentField = null;
|
|
67
|
-
this.endPosition = pos;
|
|
68
|
-
this.endTag = endTag;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
exports.SegmentDescription = SegmentDescription;
|
|
72
|
-
//# sourceMappingURL=segment-description.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segment-description.js","sourceRoot":"","sources":["../../src/buffer/segment-description.ts"],"names":[],"mappings":"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","sourcesContent":["import { INumericKeyed } from '../collections/collection'\r\nimport { ContainedField, ContainedFieldSet } from '../dictionary/contained/'\r\nimport { GroupFieldDefinition } from '../dictionary/definition'\r\nimport { SegmentType } from './segment-type'\r\n\r\nexport class SegmentDescription {\r\n public index: number\r\n public endTag: number = 0\r\n public endPosition: number = 0\r\n public delimiterTag: number = 0\r\n public delimiterPositions: number[]\r\n public currentField: ContainedField\r\n public containedDelimiterPositions: INumericKeyed<boolean>\r\n\r\n constructor (\r\n public name: string,\r\n public startTag: number,\r\n public set: ContainedFieldSet,\r\n public startPosition: number,\r\n public readonly depth: number,\r\n public readonly type: SegmentType) {\r\n }\r\n\r\n public contains (segment: SegmentDescription): boolean {\r\n return segment.startPosition >= this.startPosition && segment.endPosition <= this.endPosition\r\n }\r\n\r\n public getInstance (instance: number): SegmentDescription {\r\n const delimiters: number[] = this.delimiterPositions\r\n if (!delimiters) {\r\n return null\r\n }\r\n if (instance < 0 || instance >= delimiters.length) {\r\n return null\r\n }\r\n const start: number = delimiters[instance]\r\n const end: number = instance < delimiters.length - 1 ?\r\n delimiters[instance + 1] - 1 :\r\n this.endPosition\r\n const name = this.type === SegmentType.Batch ? this.set.abbreviation : this.name\r\n const d: SegmentDescription = new SegmentDescription(name, this.startTag, this.set, start, this.depth, this.type)\r\n d.endPosition = end\r\n d.endTag = this.endTag\r\n return d\r\n }\r\n\r\n public startGroup (tag: number): void {\r\n this.delimiterTag = tag\r\n this.delimiterPositions = []\r\n this.containedDelimiterPositions = {}\r\n }\r\n\r\n public addDelimiterPosition (position: number): boolean {\r\n if (this.containedDelimiterPositions[position]) {\r\n return false\r\n }\r\n this.delimiterPositions[this.delimiterPositions.length] = position\r\n this.containedDelimiterPositions[position] = true\r\n return true\r\n }\r\n\r\n public setCurrentField (tag: number): void {\r\n this.currentField = this.set.localTag[tag] || this.set.tagToField[tag]\r\n }\r\n\r\n public groupAddDelimiter (tag: number, position: number): boolean {\r\n let delimiter: boolean = false\r\n if (this.set instanceof GroupFieldDefinition) {\r\n if (this.delimiterTag && tag === this.delimiterTag) {\r\n delimiter = this.addDelimiterPosition(position)\r\n }\r\n }\r\n return delimiter\r\n }\r\n\r\n public end (i: number, pos: number, endTag: number): void {\r\n this.index = i\r\n this.currentField = null\r\n this.endPosition = pos\r\n this.endTag = endTag\r\n }\r\n}\r\n"]}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { SegmentDescription } from './segment-description';
|
|
2
|
-
export declare class SegmentSummary {
|
|
3
|
-
readonly name: string;
|
|
4
|
-
readonly depth: number;
|
|
5
|
-
readonly startTag: number;
|
|
6
|
-
readonly startPosition: number;
|
|
7
|
-
readonly endTag: number;
|
|
8
|
-
readonly endPosition: number;
|
|
9
|
-
readonly delimiterTag: number;
|
|
10
|
-
readonly delimiterPositions: number[];
|
|
11
|
-
constructor(name: string, depth: number, startTag: number, startPosition: number, endTag: number, endPosition: number, delimiterTag: number, delimiterPositions: number[]);
|
|
12
|
-
static fromDescription(d: SegmentDescription): SegmentSummary;
|
|
13
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SegmentSummary = void 0;
|
|
4
|
-
class SegmentSummary {
|
|
5
|
-
constructor(name, depth, startTag, startPosition, endTag, endPosition, delimiterTag, delimiterPositions) {
|
|
6
|
-
this.name = name;
|
|
7
|
-
this.depth = depth;
|
|
8
|
-
this.startTag = startTag;
|
|
9
|
-
this.startPosition = startPosition;
|
|
10
|
-
this.endTag = endTag;
|
|
11
|
-
this.endPosition = endPosition;
|
|
12
|
-
this.delimiterTag = delimiterTag;
|
|
13
|
-
this.delimiterPositions = delimiterPositions;
|
|
14
|
-
}
|
|
15
|
-
static fromDescription(d) {
|
|
16
|
-
return new SegmentSummary(d.set.name, d.depth, d.startTag, d.startPosition, d.endTag, d.endPosition, d.delimiterTag, d.delimiterPositions || []);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
exports.SegmentSummary = SegmentSummary;
|
|
20
|
-
//# sourceMappingURL=segment-summary.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segment-summary.js","sourceRoot":"","sources":["../../src/buffer/segment-summary.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAc;IACzB,YACkB,IAAY,EACZ,KAAa,EACb,QAAgB,EAChB,aAAqB,EACrB,MAAc,EACd,WAAmB,EACnB,YAAoB,EACpB,kBAA4B;QAP5B,SAAI,GAAJ,IAAI,CAAQ;QACZ,UAAK,GAAL,KAAK,CAAQ;QACb,aAAQ,GAAR,QAAQ,CAAQ;QAChB,kBAAa,GAAb,aAAa,CAAQ;QACrB,WAAM,GAAN,MAAM,CAAQ;QACd,gBAAW,GAAX,WAAW,CAAQ;QACnB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,uBAAkB,GAAlB,kBAAkB,CAAU;IAC9C,CAAC;IACM,MAAM,CAAC,eAAe,CAAE,CAAqB;QAClD,OAAO,IAAI,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,aAAa,EAClE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAA;IAC9E,CAAC;CACF;AAfD,wCAeC","sourcesContent":["import { SegmentDescription } from './segment-description'\r\n\r\nexport class SegmentSummary {\r\n constructor (\r\n public readonly name: string,\r\n public readonly depth: number,\r\n public readonly startTag: number,\r\n public readonly startPosition: number,\r\n public readonly endTag: number,\r\n public readonly endPosition: number,\r\n public readonly delimiterTag: number,\r\n public readonly delimiterPositions: number[]) {\r\n }\r\n public static fromDescription (d: SegmentDescription): SegmentSummary {\r\n return new SegmentSummary(d.set.name, d.depth, d.startTag, d.startPosition,\r\n d.endTag, d.endPosition, d.delimiterTag, d.delimiterPositions || [])\r\n }\r\n}\r\n"]}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SegmentType = void 0;
|
|
4
|
-
var SegmentType;
|
|
5
|
-
(function (SegmentType) {
|
|
6
|
-
SegmentType[SegmentType["Component"] = 0] = "Component";
|
|
7
|
-
SegmentType[SegmentType["Group"] = 1] = "Group";
|
|
8
|
-
SegmentType[SegmentType["Msg"] = 2] = "Msg";
|
|
9
|
-
SegmentType[SegmentType["Gap"] = 3] = "Gap";
|
|
10
|
-
SegmentType[SegmentType["Batch"] = 4] = "Batch";
|
|
11
|
-
SegmentType[SegmentType["Unknown"] = 5] = "Unknown";
|
|
12
|
-
})(SegmentType = exports.SegmentType || (exports.SegmentType = {}));
|
|
13
|
-
//# sourceMappingURL=segment-type.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segment-type.js","sourceRoot":"","sources":["../../src/buffer/segment-type.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,uDAAa,CAAA;IACb,+CAAS,CAAA;IACT,2CAAO,CAAA;IACP,2CAAO,CAAA;IACP,+CAAS,CAAA;IACT,mDAAW,CAAA;AACb,CAAC,EAPW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAOtB","sourcesContent":["export enum SegmentType {\r\n Component = 0,\r\n Group = 1,\r\n Msg = 2,\r\n Gap = 3,\r\n Batch = 4,\r\n Unknown = 5\r\n}\r\n"]}
|
package/dist/buffer/tag-pos.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export declare class TagPos {
|
|
2
|
-
position: number;
|
|
3
|
-
tag: number;
|
|
4
|
-
start: number;
|
|
5
|
-
len: number;
|
|
6
|
-
constructor(position: number, tag: number, start: number, len: number);
|
|
7
|
-
static compare(lhs: TagPos, rhs: TagPos): number;
|
|
8
|
-
static binarySearch(ar: TagPos[], tag: number): number;
|
|
9
|
-
assign(position: number, tag: number, start: number, len: number): void;
|
|
10
|
-
toString(): string;
|
|
11
|
-
clone(): TagPos;
|
|
12
|
-
}
|
package/dist/buffer/tag-pos.js
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TagPos = void 0;
|
|
4
|
-
class TagPos {
|
|
5
|
-
constructor(position, tag, start, len) {
|
|
6
|
-
this.position = position;
|
|
7
|
-
this.tag = tag;
|
|
8
|
-
this.start = start;
|
|
9
|
-
this.len = len;
|
|
10
|
-
}
|
|
11
|
-
static compare(lhs, rhs) {
|
|
12
|
-
if (lhs.tag < rhs.tag) {
|
|
13
|
-
return -1;
|
|
14
|
-
}
|
|
15
|
-
if (lhs.tag > rhs.tag) {
|
|
16
|
-
return 1;
|
|
17
|
-
}
|
|
18
|
-
if (lhs.tag === rhs.tag && lhs.start === rhs.start) {
|
|
19
|
-
return 0;
|
|
20
|
-
}
|
|
21
|
-
return ((lhs.start < rhs.start) ? -1 : ((lhs.start > rhs.start) ? 1 : 0));
|
|
22
|
-
}
|
|
23
|
-
static binarySearch(ar, tag) {
|
|
24
|
-
let m = 0;
|
|
25
|
-
let n = ar.length - 1;
|
|
26
|
-
while (m <= n) {
|
|
27
|
-
const k = (n + m) >> 1;
|
|
28
|
-
const cmp = tag - (ar[k].tag);
|
|
29
|
-
if (cmp > 0) {
|
|
30
|
-
m = k + 1;
|
|
31
|
-
}
|
|
32
|
-
else if (cmp < 0) {
|
|
33
|
-
n = k - 1;
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
return k;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return -m - 1;
|
|
40
|
-
}
|
|
41
|
-
assign(position, tag, start, len) {
|
|
42
|
-
this.position = position;
|
|
43
|
-
this.tag = tag;
|
|
44
|
-
this.start = start;
|
|
45
|
-
this.len = len;
|
|
46
|
-
}
|
|
47
|
-
toString() {
|
|
48
|
-
return `[${this.position}] = ${this.tag} (${this.start}..${this.start + this.len})`;
|
|
49
|
-
}
|
|
50
|
-
clone() {
|
|
51
|
-
return new TagPos(this.position, this.tag, this.start, this.len);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
exports.TagPos = TagPos;
|
|
55
|
-
//# sourceMappingURL=tag-pos.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tag-pos.js","sourceRoot":"","sources":["../../src/buffer/tag-pos.ts"],"names":[],"mappings":";;;AAAA,MAAa,MAAM;IACjB,YAAoB,QAAgB,EAAS,GAAW,EAAS,KAAa,EAAS,GAAW;QAA9E,aAAQ,GAAR,QAAQ,CAAQ;QAAS,QAAG,GAAH,GAAG,CAAQ;QAAS,UAAK,GAAL,KAAK,CAAQ;QAAS,QAAG,GAAH,GAAG,CAAQ;IAClG,CAAC;IAEM,MAAM,CAAC,OAAO,CAAE,GAAW,EAAE,GAAW;QAC7C,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE;YACrB,OAAO,CAAC,CAAC,CAAA;SACV;QACD,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE;YACrB,OAAO,CAAC,CAAA;SACT;QACD,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,EAAE;YAClD,OAAO,CAAC,CAAA;SACT;QACD,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3E,CAAC;IAEM,MAAM,CAAC,YAAY,CAAE,EAAY,EAAE,GAAW;QACnD,IAAI,CAAC,GAAW,CAAC,CAAA;QACjB,IAAI,CAAC,GAAW,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;QAC7B,OAAO,CAAC,IAAI,CAAC,EAAE;YACb,MAAM,CAAC,GAAW,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;YAC9B,MAAM,GAAG,GAAW,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;YACrC,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;aACV;iBAAM,IAAI,GAAG,GAAG,CAAC,EAAE;gBAClB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;aACV;iBAAM;gBACL,OAAO,CAAC,CAAA;aACT;SACF;QACD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;IACf,CAAC;IAEM,MAAM,CAAE,QAAgB,EAAE,GAAW,EAAE,KAAa,EAAE,GAAW;QACtE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IAChB,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,IAAI,CAAC,QAAQ,OAAO,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,GAAG,CAAA;IACrF,CAAC;IAEM,KAAK;QACV,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;IAClE,CAAC;CACF;AAhDD,wBAgDC","sourcesContent":["export class TagPos {\r\n constructor (public position: number, public tag: number, public start: number, public len: number) {\r\n }\r\n\r\n public static compare (lhs: TagPos, rhs: TagPos): number {\r\n if (lhs.tag < rhs.tag) {\r\n return -1\r\n }\r\n if (lhs.tag > rhs.tag) {\r\n return 1\r\n }\r\n if (lhs.tag === rhs.tag && lhs.start === rhs.start) {\r\n return 0\r\n }\r\n return ((lhs.start < rhs.start) ? -1 : ((lhs.start > rhs.start) ? 1 : 0))\r\n }\r\n\r\n public static binarySearch (ar: TagPos[], tag: number): number {\r\n let m: number = 0\r\n let n: number = ar.length - 1\r\n while (m <= n) {\r\n const k: number = (n + m) >> 1\r\n const cmp: number = tag - (ar[k].tag)\r\n if (cmp > 0) {\r\n m = k + 1\r\n } else if (cmp < 0) {\r\n n = k - 1\r\n } else {\r\n return k\r\n }\r\n }\r\n return -m - 1\r\n }\r\n\r\n public assign (position: number, tag: number, start: number, len: number): void {\r\n this.position = position\r\n this.tag = tag\r\n this.start = start\r\n this.len = len\r\n }\r\n\r\n public toString (): string {\r\n return `[${this.position}] = ${this.tag} (${this.start}..${this.start + this.len})`\r\n }\r\n\r\n public clone (): TagPos {\r\n return new TagPos(this.position, this.tag, this.start, this.len)\r\n }\r\n}\r\n"]}
|
package/dist/buffer/tag-type.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TagType = void 0;
|
|
4
|
-
var TagType;
|
|
5
|
-
(function (TagType) {
|
|
6
|
-
TagType[TagType["String"] = 1] = "String";
|
|
7
|
-
TagType[TagType["Int"] = 2] = "Int";
|
|
8
|
-
TagType[TagType["Float"] = 3] = "Float";
|
|
9
|
-
TagType[TagType["Boolean"] = 4] = "Boolean";
|
|
10
|
-
TagType[TagType["UtcTimestamp"] = 5] = "UtcTimestamp";
|
|
11
|
-
TagType[TagType["UtcDateOnly"] = 6] = "UtcDateOnly";
|
|
12
|
-
TagType[TagType["UtcTimeOnly"] = 7] = "UtcTimeOnly";
|
|
13
|
-
TagType[TagType["LocalDate"] = 8] = "LocalDate";
|
|
14
|
-
TagType[TagType["RawData"] = 9] = "RawData";
|
|
15
|
-
TagType[TagType["Length"] = 10] = "Length";
|
|
16
|
-
TagType[TagType["Unknown"] = 11] = "Unknown";
|
|
17
|
-
})(TagType = exports.TagType || (exports.TagType = {}));
|
|
18
|
-
//# sourceMappingURL=tag-type.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tag-type.js","sourceRoot":"","sources":["../../src/buffer/tag-type.ts"],"names":[],"mappings":";;;AAAA,IAAY,OAYX;AAZD,WAAY,OAAO;IACjB,yCAAU,CAAA;IACV,mCAAO,CAAA;IACP,uCAAS,CAAA;IACT,2CAAW,CAAA;IACX,qDAAgB,CAAA;IAChB,mDAAe,CAAA;IACf,mDAAe,CAAA;IACf,+CAAa,CAAA;IACb,2CAAW,CAAA;IACX,0CAAW,CAAA;IACX,4CAAY,CAAA;AACd,CAAC,EAZW,OAAO,GAAP,eAAO,KAAP,eAAO,QAYlB","sourcesContent":["export enum TagType {\r\n String = 1,\r\n Int = 2,\r\n Float = 3,\r\n Boolean = 4,\r\n UtcTimestamp = 5,\r\n UtcDateOnly = 6,\r\n UtcTimeOnly = 7,\r\n LocalDate = 8,\r\n RawData = 9,\r\n Length = 10,\r\n Unknown = 11\r\n}\r\n"]}
|
package/dist/buffer/tags.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { FixDefinitions } from '../dictionary/definition';
|
|
2
|
-
import { ContainedSimpleField } from '../dictionary/contained';
|
|
3
|
-
import { TagPos } from './tag-pos';
|
|
4
|
-
import { TagType } from './tag-type';
|
|
5
|
-
export declare class Tags {
|
|
6
|
-
readonly definitions: FixDefinitions;
|
|
7
|
-
readonly startingLength: number;
|
|
8
|
-
static readonly BeginString: number;
|
|
9
|
-
static readonly BodyLengthTag: number;
|
|
10
|
-
static readonly CheckSumTag: number;
|
|
11
|
-
static readonly MsgTag: number;
|
|
12
|
-
tagPos: TagPos[];
|
|
13
|
-
nextTagPos: number;
|
|
14
|
-
constructor(definitions: FixDefinitions, startingLength?: number);
|
|
15
|
-
static toJSType(simple: ContainedSimpleField): string;
|
|
16
|
-
static toType(type: string): TagType;
|
|
17
|
-
clone(): Tags;
|
|
18
|
-
reset(): void;
|
|
19
|
-
store(start: number, len: number, tag: number): void;
|
|
20
|
-
private expand;
|
|
21
|
-
}
|
package/dist/buffer/tags.js
DELETED
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Tags = void 0;
|
|
4
|
-
const tag_pos_1 = require("./tag-pos");
|
|
5
|
-
const types_1 = require("../types");
|
|
6
|
-
const tag_type_1 = require("./tag-type");
|
|
7
|
-
class Tags {
|
|
8
|
-
constructor(definitions, startingLength = 30 * 1000) {
|
|
9
|
-
this.definitions = definitions;
|
|
10
|
-
this.startingLength = startingLength;
|
|
11
|
-
this.tagPos = new Array(this.startingLength);
|
|
12
|
-
this.nextTagPos = 0;
|
|
13
|
-
}
|
|
14
|
-
static toJSType(simple) {
|
|
15
|
-
switch (simple.definition.tagType) {
|
|
16
|
-
case tag_type_1.TagType.String:
|
|
17
|
-
return 'string';
|
|
18
|
-
case tag_type_1.TagType.Int:
|
|
19
|
-
case tag_type_1.TagType.Float:
|
|
20
|
-
case tag_type_1.TagType.Length:
|
|
21
|
-
return 'number';
|
|
22
|
-
case tag_type_1.TagType.RawData:
|
|
23
|
-
return 'Buffer';
|
|
24
|
-
case tag_type_1.TagType.Boolean:
|
|
25
|
-
return 'boolean';
|
|
26
|
-
case tag_type_1.TagType.UtcTimestamp:
|
|
27
|
-
case tag_type_1.TagType.UtcDateOnly:
|
|
28
|
-
case tag_type_1.TagType.UtcTimeOnly:
|
|
29
|
-
case tag_type_1.TagType.LocalDate:
|
|
30
|
-
return 'Date';
|
|
31
|
-
default:
|
|
32
|
-
return 'string';
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
static toType(type) {
|
|
36
|
-
type = type || 'string';
|
|
37
|
-
switch (type.toLowerCase()) {
|
|
38
|
-
case 'currency':
|
|
39
|
-
case 'string':
|
|
40
|
-
case 'char': {
|
|
41
|
-
return tag_type_1.TagType.String;
|
|
42
|
-
}
|
|
43
|
-
case 'int':
|
|
44
|
-
case 'numingroup':
|
|
45
|
-
case 'seqnum': {
|
|
46
|
-
return tag_type_1.TagType.Int;
|
|
47
|
-
}
|
|
48
|
-
case 'qty':
|
|
49
|
-
case 'percentage':
|
|
50
|
-
case 'amt':
|
|
51
|
-
case 'price':
|
|
52
|
-
case 'priceoffset':
|
|
53
|
-
case 'float': {
|
|
54
|
-
return tag_type_1.TagType.Float;
|
|
55
|
-
}
|
|
56
|
-
case 'length': {
|
|
57
|
-
return tag_type_1.TagType.Length;
|
|
58
|
-
}
|
|
59
|
-
case 'boolean': {
|
|
60
|
-
return tag_type_1.TagType.Boolean;
|
|
61
|
-
}
|
|
62
|
-
case 'utctimestamp': {
|
|
63
|
-
return tag_type_1.TagType.UtcTimestamp;
|
|
64
|
-
}
|
|
65
|
-
case 'localmktdate': {
|
|
66
|
-
return tag_type_1.TagType.LocalDate;
|
|
67
|
-
}
|
|
68
|
-
case 'utcdateonly': {
|
|
69
|
-
return tag_type_1.TagType.UtcDateOnly;
|
|
70
|
-
}
|
|
71
|
-
case 'utctimeonly': {
|
|
72
|
-
return tag_type_1.TagType.UtcTimeOnly;
|
|
73
|
-
}
|
|
74
|
-
case 'data': {
|
|
75
|
-
return tag_type_1.TagType.RawData;
|
|
76
|
-
}
|
|
77
|
-
default: {
|
|
78
|
-
return tag_type_1.TagType.String;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
clone() {
|
|
83
|
-
const next = this.nextTagPos;
|
|
84
|
-
const cloned = new Tags(this.definitions, next);
|
|
85
|
-
cloned.nextTagPos = next;
|
|
86
|
-
for (let i = 0; i < next; ++i) {
|
|
87
|
-
cloned.tagPos[i] = this.tagPos[i].clone();
|
|
88
|
-
}
|
|
89
|
-
return cloned;
|
|
90
|
-
}
|
|
91
|
-
reset() {
|
|
92
|
-
this.nextTagPos = 0;
|
|
93
|
-
}
|
|
94
|
-
store(start, len, tag) {
|
|
95
|
-
const tagPtr = this.nextTagPos;
|
|
96
|
-
if (tagPtr === this.tagPos.length) {
|
|
97
|
-
this.expand();
|
|
98
|
-
}
|
|
99
|
-
const tp = this.tagPos[tagPtr];
|
|
100
|
-
if (tp) {
|
|
101
|
-
tp.assign(tagPtr, tag, start, len);
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
this.tagPos[tagPtr] = new tag_pos_1.TagPos(tagPtr, tag, start, len);
|
|
105
|
-
}
|
|
106
|
-
this.nextTagPos++;
|
|
107
|
-
}
|
|
108
|
-
expand() {
|
|
109
|
-
const size = this.tagPos.length * 2;
|
|
110
|
-
const tagPos = new Array(size);
|
|
111
|
-
for (let i = 0; i < this.tagPos.length; ++i) {
|
|
112
|
-
tagPos[i] = this.tagPos[i];
|
|
113
|
-
}
|
|
114
|
-
this.tagPos = tagPos;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.Tags = Tags;
|
|
118
|
-
Tags.BeginString = types_1.MsgTag.BeginString;
|
|
119
|
-
Tags.BodyLengthTag = types_1.MsgTag.BodyLength;
|
|
120
|
-
Tags.CheckSumTag = types_1.MsgTag.CheckSum;
|
|
121
|
-
Tags.MsgTag = types_1.MsgTag.MsgType;
|
|
122
|
-
//# sourceMappingURL=tags.js.map
|