jspurefix 2.0.2 → 2.0.5

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.
Files changed (364) hide show
  1. package/appveyor.yml +1 -0
  2. package/dist/buffer/ascii/index.js +5 -1
  3. package/dist/buffer/ascii/index.js.map +1 -1
  4. package/dist/buffer/fixml/index.js +5 -1
  5. package/dist/buffer/fixml/index.js.map +1 -1
  6. package/dist/buffer/index.js +5 -1
  7. package/dist/buffer/index.js.map +1 -1
  8. package/dist/collections/index.js +5 -1
  9. package/dist/collections/index.js.map +1 -1
  10. package/dist/config/index.js +5 -1
  11. package/dist/config/index.js.map +1 -1
  12. package/dist/dictionary/compiler/index.js +5 -1
  13. package/dist/dictionary/compiler/index.js.map +1 -1
  14. package/dist/dictionary/contained/index.js +5 -1
  15. package/dist/dictionary/contained/index.js.map +1 -1
  16. package/dist/dictionary/definition/index.js +5 -1
  17. package/dist/dictionary/definition/index.js.map +1 -1
  18. package/dist/dictionary/index.js +5 -1
  19. package/dist/dictionary/index.js.map +1 -1
  20. package/dist/dictionary/parser/fix-repository/index.js +5 -1
  21. package/dist/dictionary/parser/fix-repository/index.js.map +1 -1
  22. package/dist/dictionary/parser/fixml/index.js +5 -1
  23. package/dist/dictionary/parser/fixml/index.js.map +1 -1
  24. package/dist/dictionary/parser/index.js +5 -1
  25. package/dist/dictionary/parser/index.js.map +1 -1
  26. package/dist/dictionary/parser/quickfix/index.js +5 -1
  27. package/dist/dictionary/parser/quickfix/index.js.map +1 -1
  28. package/dist/index.js +5 -1
  29. package/dist/index.js.map +1 -1
  30. package/dist/runtime/index.js +5 -1
  31. package/dist/runtime/index.js.map +1 -1
  32. package/dist/runtime/session-launcher.js +2 -2
  33. package/dist/runtime/session-launcher.js.map +1 -1
  34. package/dist/sample/tcp/skeleton/jsfix.test_client.txt +6 -0
  35. package/dist/sample/tcp/skeleton/jsfix.test_server.txt +6 -0
  36. package/dist/sample/tcp/trade-capture/index.js +5 -1
  37. package/dist/sample/tcp/trade-capture/index.js.map +1 -1
  38. package/dist/sample/tcp/trade-capture/jsfix.test_client.txt +16 -11
  39. package/dist/sample/tcp/trade-capture/jsfix.test_server.txt +16 -10
  40. package/dist/store/index.js +5 -1
  41. package/dist/store/index.js.map +1 -1
  42. package/dist/transport/ascii/index.js +5 -1
  43. package/dist/transport/ascii/index.js.map +1 -1
  44. package/dist/transport/duplex/index.js +5 -1
  45. package/dist/transport/duplex/index.js.map +1 -1
  46. package/dist/transport/factory/index.js +5 -1
  47. package/dist/transport/factory/index.js.map +1 -1
  48. package/dist/transport/fixml/index.js +5 -1
  49. package/dist/transport/fixml/index.js.map +1 -1
  50. package/dist/transport/http/index.js +5 -1
  51. package/dist/transport/http/index.js.map +1 -1
  52. package/dist/transport/index.js +5 -1
  53. package/dist/transport/index.js.map +1 -1
  54. package/dist/transport/tcp/index.js +5 -1
  55. package/dist/transport/tcp/index.js.map +1 -1
  56. package/dist/transport/tcp/tls-options-factory.js +11 -7
  57. package/dist/transport/tcp/tls-options-factory.js.map +1 -1
  58. package/dist/types/FIX.5.0SP2/repo/enum/index.js +5 -1
  59. package/dist/types/FIX.5.0SP2/repo/enum/index.js.map +1 -1
  60. package/dist/types/FIX.5.0SP2/repo/index.js +5 -1
  61. package/dist/types/FIX.5.0SP2/repo/index.js.map +1 -1
  62. package/dist/types/FIX4.0/repo/enum/index.js +5 -1
  63. package/dist/types/FIX4.0/repo/enum/index.js.map +1 -1
  64. package/dist/types/FIX4.0/repo/index.js +5 -1
  65. package/dist/types/FIX4.0/repo/index.js.map +1 -1
  66. package/dist/types/FIX4.1/repo/enum/index.js +5 -1
  67. package/dist/types/FIX4.1/repo/enum/index.js.map +1 -1
  68. package/dist/types/FIX4.1/repo/index.js +5 -1
  69. package/dist/types/FIX4.1/repo/index.js.map +1 -1
  70. package/dist/types/FIX4.2/repo/enum/index.js +5 -1
  71. package/dist/types/FIX4.2/repo/enum/index.js.map +1 -1
  72. package/dist/types/FIX4.2/repo/index.js +5 -1
  73. package/dist/types/FIX4.2/repo/index.js.map +1 -1
  74. package/dist/types/FIX4.3/repo/enum/index.js +5 -1
  75. package/dist/types/FIX4.3/repo/enum/index.js.map +1 -1
  76. package/dist/types/FIX4.3/repo/index.js +5 -1
  77. package/dist/types/FIX4.3/repo/index.js.map +1 -1
  78. package/dist/types/FIX4.4/quickfix/enum/index.js +5 -1
  79. package/dist/types/FIX4.4/quickfix/enum/index.js.map +1 -1
  80. package/dist/types/FIX4.4/quickfix/index.js +5 -1
  81. package/dist/types/FIX4.4/quickfix/index.js.map +1 -1
  82. package/dist/types/FIX4.4/repo/enum/index.js +5 -1
  83. package/dist/types/FIX4.4/repo/enum/index.js.map +1 -1
  84. package/dist/types/FIX4.4/repo/index.js +5 -1
  85. package/dist/types/FIX4.4/repo/index.js.map +1 -1
  86. package/dist/types/FIXML50SP2/enum/index.js +5 -1
  87. package/dist/types/FIXML50SP2/enum/index.js.map +1 -1
  88. package/dist/types/FIXML50SP2/index.js +5 -1
  89. package/dist/types/FIXML50SP2/index.js.map +1 -1
  90. package/dist/types/enum/index.js +5 -1
  91. package/dist/types/enum/index.js.map +1 -1
  92. package/dist/types/index.js +5 -1
  93. package/dist/types/index.js.map +1 -1
  94. package/dist/util/index.js +5 -1
  95. package/dist/util/index.js.map +1 -1
  96. package/package.json +14 -14
  97. package/src/runtime/session-launcher.ts +2 -2
  98. package/src/transport/tcp/tls-options-factory.ts +13 -7
  99. package/.eslintrc.js +0 -6
  100. package/dist/a-session-msg-factory.d.ts +0 -0
  101. package/dist/a-session-msg-factory.js +0 -1
  102. package/dist/a-session-msg-factory.js.map +0 -1
  103. package/dist/ascii-encoder.test.d.ts +0 -0
  104. package/dist/ascii-encoder.test.js +0 -1
  105. package/dist/ascii-encoder.test.js.map +0 -1
  106. package/dist/ascii-parser.test.d.ts +0 -0
  107. package/dist/ascii-parser.test.js +0 -1
  108. package/dist/ascii-parser.test.js.map +0 -1
  109. package/dist/ascii-segment.test.d.ts +0 -0
  110. package/dist/ascii-segment.test.js +0 -1
  111. package/dist/ascii-segment.test.js.map +0 -1
  112. package/dist/ascii-store-replay.test.d.ts +0 -0
  113. package/dist/ascii-store-replay.test.js +0 -1
  114. package/dist/ascii-store-replay.test.js.map +0 -1
  115. package/dist/ascii-tag-pos.test.d.ts +0 -0
  116. package/dist/ascii-tag-pos.test.js +0 -1
  117. package/dist/ascii-tag-pos.test.js.map +0 -1
  118. package/dist/buffer/segment-description.d.ts +0 -26
  119. package/dist/buffer/segment-description.js +0 -72
  120. package/dist/buffer/segment-description.js.map +0 -1
  121. package/dist/buffer/segment-summary.d.ts +0 -13
  122. package/dist/buffer/segment-summary.js +0 -20
  123. package/dist/buffer/segment-summary.js.map +0 -1
  124. package/dist/buffer/segment-type.d.ts +0 -8
  125. package/dist/buffer/segment-type.js +0 -13
  126. package/dist/buffer/segment-type.js.map +0 -1
  127. package/dist/buffer/tag-pos.d.ts +0 -12
  128. package/dist/buffer/tag-pos.js +0 -55
  129. package/dist/buffer/tag-pos.js.map +0 -1
  130. package/dist/buffer/tag-type.d.ts +0 -13
  131. package/dist/buffer/tag-type.js +0 -18
  132. package/dist/buffer/tag-type.js.map +0 -1
  133. package/dist/buffer/tags.d.ts +0 -21
  134. package/dist/buffer/tags.js +0 -122
  135. package/dist/buffer/tags.js.map +0 -1
  136. package/dist/dictionary/parser/fix-repository/repository-msg.d.ts +0 -0
  137. package/dist/dictionary/parser/fix-repository/repository-msg.js +0 -1
  138. package/dist/dictionary/parser/fix-repository/repository-msg.js.map +0 -1
  139. package/dist/execution-report.test.d.ts +0 -0
  140. package/dist/execution-report.test.js +0 -1
  141. package/dist/execution-report.test.js.map +0 -1
  142. package/dist/experiment.d.ts +0 -0
  143. package/dist/experiment.js +0 -1
  144. package/dist/experiment.js.map +0 -1
  145. package/dist/fix-repo-dict.test.d.ts +0 -0
  146. package/dist/fix-repo-dict.test.js +0 -1
  147. package/dist/fix-repo-dict.test.js.map +0 -1
  148. package/dist/fix-session-state-args.d.ts +0 -0
  149. package/dist/fix-session-state-args.js +0 -1
  150. package/dist/fix-session-state-args.js.map +0 -1
  151. package/dist/fix-session-state.d.ts +0 -0
  152. package/dist/fix-session-state.js +0 -1
  153. package/dist/fix-session-state.js.map +0 -1
  154. package/dist/fix-session.d.ts +0 -0
  155. package/dist/fix-session.js +0 -1
  156. package/dist/fix-session.js.map +0 -1
  157. package/dist/fix.txt +0 -1
  158. package/dist/fixml-alloc-parse.test.d.ts +0 -0
  159. package/dist/fixml-alloc-parse.test.js +0 -1
  160. package/dist/fixml-alloc-parse.test.js.map +0 -1
  161. package/dist/fixml-mkt-data-fut-parse.test.d.ts +0 -0
  162. package/dist/fixml-mkt-data-fut-parse.test.js +0 -1
  163. package/dist/fixml-mkt-data-fut-parse.test.js.map +0 -1
  164. package/dist/fixml-mkt-data-settle-parse.test.d.ts +0 -0
  165. package/dist/fixml-mkt-data-settle-parse.test.js +0 -1
  166. package/dist/fixml-mkt-data-settle-parse.test.js.map +0 -1
  167. package/dist/fixml-tc-bi-lateral-parse.test.d.ts +0 -0
  168. package/dist/fixml-tc-bi-lateral-parse.test.js +0 -1
  169. package/dist/fixml-tc-bi-lateral-parse.test.js.map +0 -1
  170. package/dist/includes.test.d.ts +0 -0
  171. package/dist/includes.test.js +0 -1
  172. package/dist/includes.test.js.map +0 -1
  173. package/dist/launcher.d.ts +0 -0
  174. package/dist/launcher.js +0 -1
  175. package/dist/launcher.js.map +0 -1
  176. package/dist/logon.test.d.ts +0 -0
  177. package/dist/logon.test.js +0 -1
  178. package/dist/logon.test.js.map +0 -1
  179. package/dist/make-fix-session.d.ts +0 -0
  180. package/dist/make-fix-session.js +0 -1
  181. package/dist/make-fix-session.js.map +0 -1
  182. package/dist/memory-store.test.d.ts +0 -0
  183. package/dist/memory-store.test.js +0 -1
  184. package/dist/memory-store.test.js.map +0 -1
  185. package/dist/object.json +0 -691
  186. package/dist/qf-full-msg.test.d.ts +0 -0
  187. package/dist/qf-full-msg.test.js +0 -1
  188. package/dist/qf-full-msg.test.js.map +0 -1
  189. package/dist/repo-full-ascii-msg.test.d.ts +0 -0
  190. package/dist/repo-full-ascii-msg.test.js +0 -1
  191. package/dist/repo-full-ascii-msg.test.js.map +0 -1
  192. package/dist/runtime/DITokens.d.ts +0 -20
  193. package/dist/runtime/DITokens.js +0 -25
  194. package/dist/runtime/DITokens.js.map +0 -1
  195. package/dist/runtime/app-launcher.d.ts +0 -27
  196. package/dist/runtime/app-launcher.js +0 -131
  197. package/dist/runtime/app-launcher.js.map +0 -1
  198. package/dist/runtime/launcher.d.ts +0 -29
  199. package/dist/runtime/launcher.js +0 -131
  200. package/dist/runtime/launcher.js.map +0 -1
  201. package/dist/sample/launcher.d.ts +0 -29
  202. package/dist/sample/launcher.js +0 -131
  203. package/dist/sample/launcher.js.map +0 -1
  204. package/dist/sample/tcp/trade-capture/app-launher.d.ts +0 -0
  205. package/dist/sample/tcp/trade-capture/app-launher.js +0 -1
  206. package/dist/sample/tcp/trade-capture/app-launher.js.map +0 -1
  207. package/dist/segment-description.d.ts +0 -0
  208. package/dist/segment-description.js +0 -1
  209. package/dist/segment-description.js.map +0 -1
  210. package/dist/segment-summary.d.ts +0 -0
  211. package/dist/segment-summary.js +0 -1
  212. package/dist/segment-summary.js.map +0 -1
  213. package/dist/segment-type.d.ts +0 -0
  214. package/dist/segment-type.js +0 -1
  215. package/dist/segment-type.js.map +0 -1
  216. package/dist/session-description.d.ts +0 -0
  217. package/dist/session-description.js +0 -1
  218. package/dist/session-description.js.map +0 -1
  219. package/dist/session-msg-factory.d.ts +0 -0
  220. package/dist/session-msg-factory.js +0 -1
  221. package/dist/session-msg-factory.js.map +0 -1
  222. package/dist/session-state.d.ts +0 -0
  223. package/dist/session-state.js +0 -1
  224. package/dist/session-state.js.map +0 -1
  225. package/dist/session-state.test.d.ts +0 -0
  226. package/dist/session-state.test.js +0 -1
  227. package/dist/session-state.test.js.map +0 -1
  228. package/dist/session.test.d.ts +0 -0
  229. package/dist/session.test.js +0 -1
  230. package/dist/session.test.js.map +0 -1
  231. package/dist/setup.d.ts +0 -0
  232. package/dist/setup.js +0 -1
  233. package/dist/setup.js.map +0 -1
  234. package/dist/skeleton-runner.d.ts +0 -0
  235. package/dist/skeleton-runner.js +0 -1
  236. package/dist/skeleton-runner.js.map +0 -1
  237. package/dist/structure.json +0 -631
  238. package/dist/tag-pos.d.ts +0 -0
  239. package/dist/tag-pos.js +0 -1
  240. package/dist/tag-pos.js.map +0 -1
  241. package/dist/tag-type.d.ts +0 -0
  242. package/dist/tag-type.js +0 -1
  243. package/dist/tag-type.js.map +0 -1
  244. package/dist/tags.d.ts +0 -0
  245. package/dist/tags.js +0 -1
  246. package/dist/tags.js.map +0 -1
  247. package/dist/test/ascii-encoder.test.d.ts +0 -1
  248. package/dist/test/ascii-encoder.test.js +0 -508
  249. package/dist/test/ascii-encoder.test.js.map +0 -1
  250. package/dist/test/ascii-parser.test.d.ts +0 -1
  251. package/dist/test/ascii-parser.test.js +0 -123
  252. package/dist/test/ascii-parser.test.js.map +0 -1
  253. package/dist/test/ascii-segment.test.d.ts +0 -1
  254. package/dist/test/ascii-segment.test.js +0 -86
  255. package/dist/test/ascii-segment.test.js.map +0 -1
  256. package/dist/test/ascii-store-replay.test.d.ts +0 -1
  257. package/dist/test/ascii-store-replay.test.js +0 -92
  258. package/dist/test/ascii-store-replay.test.js.map +0 -1
  259. package/dist/test/ascii-tag-pos.test.d.ts +0 -1
  260. package/dist/test/ascii-tag-pos.test.js +0 -105
  261. package/dist/test/ascii-tag-pos.test.js.map +0 -1
  262. package/dist/test/execution-report.test.d.ts +0 -1
  263. package/dist/test/execution-report.test.js +0 -494
  264. package/dist/test/execution-report.test.js.map +0 -1
  265. package/dist/test/experiment.d.ts +0 -23
  266. package/dist/test/experiment.js +0 -33
  267. package/dist/test/experiment.js.map +0 -1
  268. package/dist/test/expieriment.d.ts +0 -23
  269. package/dist/test/expieriment.js +0 -33
  270. package/dist/test/expieriment.js.map +0 -1
  271. package/dist/test/fix-log-replay.test.d.ts +0 -1
  272. package/dist/test/fix-log-replay.test.js +0 -47
  273. package/dist/test/fix-log-replay.test.js.map +0 -1
  274. package/dist/test/fix-repo-dict.test.d.ts +0 -1
  275. package/dist/test/fix-repo-dict.test.js +0 -128
  276. package/dist/test/fix-repo-dict.test.js.map +0 -1
  277. package/dist/test/fixml-alloc-parse.test.d.ts +0 -1
  278. package/dist/test/fixml-alloc-parse.test.js +0 -161
  279. package/dist/test/fixml-alloc-parse.test.js.map +0 -1
  280. package/dist/test/fixml-mkt-data-fut-parse.test.d.ts +0 -1
  281. package/dist/test/fixml-mkt-data-fut-parse.test.js +0 -61
  282. package/dist/test/fixml-mkt-data-fut-parse.test.js.map +0 -1
  283. package/dist/test/fixml-mkt-data-settle-parse.test.d.ts +0 -1
  284. package/dist/test/fixml-mkt-data-settle-parse.test.js +0 -34
  285. package/dist/test/fixml-mkt-data-settle-parse.test.js.map +0 -1
  286. package/dist/test/fixml-tc-bi-lateral-parse.test.d.ts +0 -1
  287. package/dist/test/fixml-tc-bi-lateral-parse.test.js +0 -97
  288. package/dist/test/fixml-tc-bi-lateral-parse.test.js.map +0 -1
  289. package/dist/test/includes.test.d.ts +0 -1
  290. package/dist/test/includes.test.js +0 -43
  291. package/dist/test/includes.test.js.map +0 -1
  292. package/dist/test/logon.test.d.ts +0 -1
  293. package/dist/test/logon.test.js +0 -93
  294. package/dist/test/logon.test.js.map +0 -1
  295. package/dist/test/memory-store.test.d.ts +0 -1
  296. package/dist/test/memory-store.test.js +0 -78
  297. package/dist/test/memory-store.test.js.map +0 -1
  298. package/dist/test/qf-full-msg.test.d.ts +0 -1
  299. package/dist/test/qf-full-msg.test.js +0 -81
  300. package/dist/test/qf-full-msg.test.js.map +0 -1
  301. package/dist/test/repo-full-ascii-msg.test.d.ts +0 -1
  302. package/dist/test/repo-full-ascii-msg.test.js +0 -87
  303. package/dist/test/repo-full-ascii-msg.test.js.map +0 -1
  304. package/dist/test/repo-full-fixml-msg.test.d.ts +0 -1
  305. package/dist/test/repo-full-fixml-msg.test.js +0 -139
  306. package/dist/test/repo-full-fixml-msg.test.js.map +0 -1
  307. package/dist/test/session-state.test.d.ts +0 -1
  308. package/dist/test/session-state.test.js +0 -73
  309. package/dist/test/session-state.test.js.map +0 -1
  310. package/dist/test/session.test.d.ts +0 -1
  311. package/dist/test/session.test.js +0 -280
  312. package/dist/test/session.test.js.map +0 -1
  313. package/dist/test/setup.d.ts +0 -45
  314. package/dist/test/setup.js +0 -102
  315. package/dist/test/setup.js.map +0 -1
  316. package/dist/test/skeleton-runner.d.ts +0 -15
  317. package/dist/test/skeleton-runner.js +0 -108
  318. package/dist/test/skeleton-runner.js.map +0 -1
  319. package/dist/test/time-formatter.test.d.ts +0 -1
  320. package/dist/test/time-formatter.test.js +0 -80
  321. package/dist/test/time-formatter.test.js.map +0 -1
  322. package/dist/test/to-views.d.ts +0 -11
  323. package/dist/test/to-views.js +0 -56
  324. package/dist/test/to-views.js.map +0 -1
  325. package/dist/test/view-decode.test.d.ts +0 -1
  326. package/dist/test/view-decode.test.js +0 -183
  327. package/dist/test/view-decode.test.js.map +0 -1
  328. package/dist/time-formatter.test.d.ts +0 -0
  329. package/dist/time-formatter.test.js +0 -1
  330. package/dist/time-formatter.test.js.map +0 -1
  331. package/dist/to-views.d.ts +0 -0
  332. package/dist/to-views.js +0 -1
  333. package/dist/to-views.js.map +0 -1
  334. package/dist/token.txt +0 -248
  335. package/dist/transport/FixEntity.d.ts +0 -8
  336. package/dist/transport/FixEntity.js +0 -12
  337. package/dist/transport/FixEntity.js.map +0 -1
  338. package/dist/transport/a-session-msg-factory.d.ts +0 -23
  339. package/dist/transport/a-session-msg-factory.js +0 -58
  340. package/dist/transport/a-session-msg-factory.js.map +0 -1
  341. package/dist/transport/fix-msg-factory.d.ts +0 -15
  342. package/dist/transport/fix-msg-factory.js +0 -3
  343. package/dist/transport/fix-msg-factory.js.map +0 -1
  344. package/dist/transport/fix-session-state-args.d.ts +0 -8
  345. package/dist/transport/fix-session-state-args.js +0 -3
  346. package/dist/transport/fix-session-state-args.js.map +0 -1
  347. package/dist/transport/fix-session-state.d.ts +0 -32
  348. package/dist/transport/fix-session-state.js +0 -133
  349. package/dist/transport/fix-session-state.js.map +0 -1
  350. package/dist/transport/fix-session.d.ts +0 -50
  351. package/dist/transport/fix-session.js +0 -291
  352. package/dist/transport/fix-session.js.map +0 -1
  353. package/dist/transport/make-fix-session.d.ts +0 -5
  354. package/dist/transport/make-fix-session.js +0 -3
  355. package/dist/transport/make-fix-session.js.map +0 -1
  356. package/dist/transport/session-description.d.ts +0 -17
  357. package/dist/transport/session-description.js +0 -3
  358. package/dist/transport/session-description.js.map +0 -1
  359. package/dist/transport/session-msg-factory.d.ts +0 -15
  360. package/dist/transport/session-msg-factory.js +0 -3
  361. package/dist/transport/session-msg-factory.js.map +0 -1
  362. package/dist/transport/session-state.d.ts +0 -25
  363. package/dist/transport/session-state.js +0 -30
  364. package/dist/transport/session-state.js.map +0 -1
package/dist/token.txt DELETED
@@ -1,248 +0,0 @@
1
- [0] 8 (BeginString) = FIX4.4, [1] 9 (BodyLength) = 0004996
2
- [2] 35 (MsgType) = AE[TradeCaptureReport], [3] 49 (SenderCompID) = init-comp
3
- [4] 56 (TargetCompID) = accept-comp, [5] 34 (MsgSeqNum) = 1
4
- [6] 57 (TargetSubID) = fix, [7] 52 (SendingTime) = 20211227-14:01:51.366
5
- [8] 571 (TradeReportID) = Lorem, [9] 856 (TradeReportType) = 3[Decline]
6
- [10] 568 (TradeRequestID) = ipsum, [11] 828 (TrdType) = 1[BlockTrade]
7
- [12] 829 (TrdSubType) = 78693, [13] 830 (TransferReason) = dolor
8
- [14] 150 (ExecType) = D[Restated], [15] 748 (TotNumTradeReports) = 50836
9
- [16] 912 (LastRptRequested) = Y, [17] 263 (SubscriptionRequestType) = 2[DisablePreviousSnapshot]
10
- [18] 572 (TradeReportRefID) = sit, [19] 881 (SecondaryTradeReportRefID) = amet,
11
- [20] 818 (SecondaryTradeReportID) = consectetur, [21] 820 (TradeLinkID) = adipiscing
12
- [22] 880 (TrdMatchID) = elit., [23] 17 (ExecID) = Nunc
13
- [24] 39 (OrdStatus) = B[Calculated], [25] 527 (SecondaryExecID) = odio
14
- [26] 378 (ExecRestatementReason) = 2[VerbalChange], [27] 570 (PreviouslyReported) = Y[PerviouslyReportedToCounterparty]
15
- [28] 423 (PriceType) = 2[PerUnit], [29] 55 (Symbol) = orci,
16
- [30] 65 (SymbolSfx) = blandit, [31] 22 (SecurityIDSource) = 4[IsinNumber]
17
- [32] 454 (NoSecurityAltID) = 1, [33] 455 (SecurityAltID) = vel
18
- [34] 456 (SecurityAltIDSource) = semper, [35] 460 (Product) = 10[Mortgage]
19
- [36] 461 (CFICode) = sed,, [37] 762 (SecuritySubType) = bibendum
20
- [38] 200 (MaturityMonthYear) = cursus, [39] 541 (MaturityDate) = 20211227
21
- [40] 201 (PutOrCall) = 1[Call], [41] 224 (CouponPaymentDate) = 20211227
22
- [42] 225 (IssueDate) = 20211227, [43] 239 (RepoCollateralSecurityType) = lectus.
23
- [44] 226 (RepurchaseTerm) = 45548, [45] 227 (RepurchaseRate) = 92.28
24
- [46] 228 (Factor) = 0.8766, [47] 255 (CreditRating) = Aenean
25
- [48] 543 (InstrRegistry) = vel, [49] 470 (CountryOfIssue) = diam
26
- [50] 471 (StateOrProvinceOfIssue) = magna., [51] 472 (LocaleOfIssue) = Aenean
27
- [52] 240 (RedemptionDate) = 20211227, [53] 202 (StrikePrice) = 0.0054226
28
- [54] 231 (ContractMultiplier) = 0.0008984, [55] 223 (CouponRate) = 0.0053331
29
- [56] 207 (SecurityExchange) = et, [57] 106 (Issuer) = viverra
30
- [58] 348 (EncodedIssuerLen) = 90757, [59] 107 (SecurityDesc) = leo,
31
- [60] 350 (EncodedSecurityDescLen) = 59375, [61] 691 (Pool) = non
32
- [62] 875 (CPProgram) = 2[Program42], [63] 876 (CPRegType) = iaculis
33
- [64] 864 (NoEvents) = 1, [65] 865 (EventType) = 3[Tender]
34
- [66] 866 (EventDate) = 20211227, [67] 867 (EventPx) = 41.183
35
- [68] 868 (EventText) = neque., [69] 874 (InterestAccrualDate) = 20211227
36
- [70] 913 (AgreementDesc) = Nullam, [71] 914 (AgreementID) = arcu
37
- [72] 915 (AgreementDate) = 20211227, [73] 918 (AgreementCurrency) = lectus,
38
- [74] 916 (StartDate) = 20211227, [75] 917 (EndDate) = 20211227
39
- [76] 919 (DeliveryType) = 0[VersusPayment], [77] 898 (MarginRatio) = -3.4301
40
- [78] 38 (OrderQty) = -0.0007189, [79] 516 (OrderPercent) = 9.7936
41
- [80] 469 (RoundingModulus) = 6317.9, [81] 854 (QtyType) = 1[Contracts]
42
- [82] 235 (YieldType) = SIMPLE[SimpleYield], [83] 236 (Yield) = 2.3533
43
- [84] 701 (YieldCalcDate) = 20211227, [85] 698 (YieldRedemptionPriceType) = 65958
44
- [86] 711 (NoUnderlyings) = 3, [87] 311 (UnderlyingSymbol) = dignissim
45
- [88] 312 (UnderlyingSymbolSfx) = eget, [89] 305 (UnderlyingSecurityIDSource) = auctor
46
- [90] 457 (NoUnderlyingSecurityAltID) = 3, [91] 458 (UnderlyingSecurityAltID) = vitae,
47
- [92] 459 (UnderlyingSecurityAltIDSource) = maximus, [93] 458 (UnderlyingSecurityAltID) = ac
48
- [94] 459 (UnderlyingSecurityAltIDSource) = quam., [95] 458 (UnderlyingSecurityAltID) = Quisque
49
- [96] 462 (UnderlyingProduct) = 40726, [97] 463 (UnderlyingCFICode) = varius
50
- [98] 313 (UnderlyingMaturityMonthYear) = tincidunt, [99] 315 (UnderlyingPutOrCall) = 38931
51
- [100] 242 (UnderlyingIssueDate) = 20211227, [101] 243 (UnderlyingRepoCollateralSecurityType) = auctor.
52
- [102] 244 (UnderlyingRepurchaseTerm) = 61916, [103] 245 (UnderlyingRepurchaseRate) = 0.0007039
53
- [104] 256 (UnderlyingCreditRating) = Class, [105] 595 (UnderlyingInstrRegistry) = aptent
54
- [106] 592 (UnderlyingCountryOfIssue) = taciti, [107] 593 (UnderlyingStateOrProvinceOfIssue) = sociosqu
55
- [108] 247 (UnderlyingRedemptionDate) = 20211227, [109] 316 (UnderlyingStrikePrice) = 50.65
56
- [110] 941 (UnderlyingStrikeCurrency) = ad, [111] 317 (UnderlyingOptAttribute) = litora
57
- [112] 436 (UnderlyingContractMultiplier) = 85.628, [113] 435 (UnderlyingCouponRate) = -0.31303
58
- [114] 308 (UnderlyingSecurityExchange) = torquent, [115] 306 (UnderlyingIssuer) = per
59
- [116] 364 (EncodedUnderlyingSecurityDescLen) = 93974, [117] 878 (UnderlyingCPRegType) = conubia
60
- [118] 318 (UnderlyingCurrency) = nostra,, [119] 879 (UnderlyingQty) = 0.0006515
61
- [120] 810 (UnderlyingPx) = -0.0001727, [121] 883 (UnderlyingEndPrice) = 0.011643
62
- [122] 884 (UnderlyingStartValue) = 12.53, [123] 886 (UnderlyingEndValue) = 88.145
63
- [124] 887 (NoUnderlyingStips) = 2, [125] 888 (UnderlyingStipType) = per
64
- [126] 889 (UnderlyingStipValue) = inceptos, [127] 888 (UnderlyingStipType) = himenaeos.
65
- [128] 889 (UnderlyingStipValue) = Pellentesque, [129] 311 (UnderlyingSymbol) = eu
66
- [130] 312 (UnderlyingSymbolSfx) = luctus, [131] 309 (UnderlyingSecurityID) = risus,
67
- [132] 305 (UnderlyingSecurityIDSource) = et, [133] 457 (NoUnderlyingSecurityAltID) = 1
68
- [134] 458 (UnderlyingSecurityAltID) = tincidunt, [135] 463 (UnderlyingCFICode) = nunc.
69
- [136] 310 (UnderlyingSecurityType) = Morbi, [137] 763 (UnderlyingSecuritySubType) = tellus
70
- [138] 313 (UnderlyingMaturityMonthYear) = mi,, [139] 542 (UnderlyingMaturityDate) = 20211227
71
- [140] 315 (UnderlyingPutOrCall) = 3523, [141] 242 (UnderlyingIssueDate) = 20211227
72
- [142] 243 (UnderlyingRepoCollateralSecurityType) = feugiat, [143] 244 (UnderlyingRepurchaseTerm) = 94140
73
- [144] 245 (UnderlyingRepurchaseRate) = 0.048706, [145] 246 (UnderlyingFactor) = 0.082392
74
- [146] 595 (UnderlyingInstrRegistry) = vel, [147] 593 (UnderlyingStateOrProvinceOfIssue) = dictum
75
- [148] 594 (UnderlyingLocaleOfIssue) = ac,, [149] 247 (UnderlyingRedemptionDate) = 20211227
76
- [150] 316 (UnderlyingStrikePrice) = 0.0004474, [151] 941 (UnderlyingStrikeCurrency) = posuere
77
- [152] 317 (UnderlyingOptAttribute) = non, [153] 436 (UnderlyingContractMultiplier) = 0.11404
78
- [154] 435 (UnderlyingCouponRate) = 0.0752, [155] 306 (UnderlyingIssuer) = nibh.
79
- [156] 362 (EncodedUnderlyingIssuerLen) = 67554, [157] 364 (EncodedUnderlyingSecurityDescLen) = 6124
80
- [158] 877 (UnderlyingCPProgram) = Pellentesque, [159] 878 (UnderlyingCPRegType) = ornare,
81
- [160] 879 (UnderlyingQty) = -19.382, [161] 810 (UnderlyingPx) = 518.56
82
- [162] 882 (UnderlyingDirtyPrice) = -0.0009747, [163] 883 (UnderlyingEndPrice) = 0.42528
83
- [164] 884 (UnderlyingStartValue) = 24.846, [165] 885 (UnderlyingCurrentValue) = -0.0539
84
- [166] 886 (UnderlyingEndValue) = -6509.3, [167] 887 (NoUnderlyingStips) = 1
85
- [168] 888 (UnderlyingStipType) = lorem, [169] 889 (UnderlyingStipValue) = semper
86
- [170] 311 (UnderlyingSymbol) = consequat, [171] 312 (UnderlyingSymbolSfx) = laoreet,
87
- [172] 309 (UnderlyingSecurityID) = sapien, [173] 305 (UnderlyingSecurityIDSource) = odio
88
- [174] 457 (NoUnderlyingSecurityAltID) = 1, [175] 458 (UnderlyingSecurityAltID) = tempor
89
- [176] 462 (UnderlyingProduct) = 64791, [177] 463 (UnderlyingCFICode) = velit,
90
- [178] 310 (UnderlyingSecurityType) = a, [179] 763 (UnderlyingSecuritySubType) = sollicitudin
91
- [180] 313 (UnderlyingMaturityMonthYear) = purus, [181] 542 (UnderlyingMaturityDate) = 20211227
92
- [182] 315 (UnderlyingPutOrCall) = 55547, [183] 241 (UnderlyingCouponPaymentDate) = 20211227
93
- [184] 243 (UnderlyingRepoCollateralSecurityType) = augue, [185] 244 (UnderlyingRepurchaseTerm) = 29082
94
- [186] 245 (UnderlyingRepurchaseRate) = 0.018622, [187] 246 (UnderlyingFactor) = -0.0099393
95
- [188] 256 (UnderlyingCreditRating) = ut, [189] 595 (UnderlyingInstrRegistry) = odio.
96
- [190] 592 (UnderlyingCountryOfIssue) = Proin, [191] 593 (UnderlyingStateOrProvinceOfIssue) = tempor
97
- [192] 594 (UnderlyingLocaleOfIssue) = justo, [193] 247 (UnderlyingRedemptionDate) = 20211227
98
- [194] 317 (UnderlyingOptAttribute) = nisi,, [195] 436 (UnderlyingContractMultiplier) = 719.84
99
- [196] 435 (UnderlyingCouponRate) = 0.5477, [197] 308 (UnderlyingSecurityExchange) = ut
100
- [198] 306 (UnderlyingIssuer) = euismod, [199] 362 (EncodedUnderlyingIssuerLen) = 94466
101
- [200] 307 (UnderlyingSecurityDesc) = nibh, [201] 364 (EncodedUnderlyingSecurityDescLen) = 40167
102
- [202] 877 (UnderlyingCPProgram) = convallis, [203] 878 (UnderlyingCPRegType) = at.
103
- [204] 318 (UnderlyingCurrency) = Donec, [205] 879 (UnderlyingQty) = -0.73901
104
- [206] 882 (UnderlyingDirtyPrice) = 934.11, [207] 883 (UnderlyingEndPrice) = 0.026
105
- [208] 885 (UnderlyingCurrentValue) = 0.04018, [209] 886 (UnderlyingEndValue) = -0.0008814
106
- [210] 887 (NoUnderlyingStips) = 2, [211] 888 (UnderlyingStipType) = fermentum
107
- [212] 889 (UnderlyingStipValue) = erat, [213] 888 (UnderlyingStipType) = risus,
108
- [214] 822 (UnderlyingTradingSessionID) = vel, [215] 823 (UnderlyingTradingSessionSubID) = placerat
109
- [216] 32 (LastQty) = -0.0019538, [217] 31 (LastPx) = -0.078948
110
- [218] 669 (LastParPx) = -0.006833, [219] 194 (LastSpotRate) = -4.468
111
- [220] 715 (ClearingBusinessDate) = 20211227, [221] 6 (AvgPx) = 9.827
112
- [222] 218 (Spread) = 4.4614, [223] 220 (BenchmarkCurveCurrency) = nulla
113
- [224] 221 (BenchmarkCurveName) = luctus, [225] 222 (BenchmarkCurvePoint) = ac.
114
- [226] 663 (BenchmarkPriceType) = 51942, [227] 699 (BenchmarkSecurityID) = Vivamus
115
- [228] 761 (BenchmarkSecurityIDSource) = vel, [229] 819 (AvgPxIndicator) = 2[LastTrade]
116
- [230] 753 (NoPosAmt) = 1, [231] 707 (PosAmtType) = CASH[CashAmount]
117
- [232] 708 (PosAmt) = -0.64577, [233] 442 (MultiLegReportingType) = 1[SingleSecurity]
118
- [234] 824 (TradeLegRefID) = mi, [235] 555 (NoLegs) = 2
119
- [236] 600 (LegSymbol) = eros., [237] 601 (LegSymbolSfx) = Nam
120
- [238] 602 (LegSecurityID) = arcu, [239] 603 (LegSecurityIDSource) = urna,
121
- [240] 604 (NoLegSecurityAltID) = 3, [241] 605 (LegSecurityAltID) = rhoncus
122
- [242] 606 (LegSecurityAltIDSource) = sit, [243] 605 (LegSecurityAltID) = amet
123
- [244] 606 (LegSecurityAltIDSource) = bibendum, [245] 605 (LegSecurityAltID) = sit
124
- [246] 608 (LegCFICode) = amet,, [247] 609 (LegSecurityType) = eleifend
125
- [248] 764 (LegSecuritySubType) = non, [249] 610 (LegMaturityMonthYear) = massa.
126
- [250] 611 (LegMaturityDate) = 20211227, [251] 248 (LegCouponPaymentDate) = 20211227
127
- [252] 249 (LegIssueDate) = 20211227, [253] 250 (LegRepoCollateralSecurityType) = Nam
128
- [254] 251 (LegRepurchaseTerm) = 17316, [255] 253 (LegFactor) = -0.07926
129
- [256] 257 (LegCreditRating) = metus, [257] 597 (LegStateOrProvinceOfIssue) = mi,
130
- [258] 598 (LegLocaleOfIssue) = maximus, [259] 612 (LegStrikePrice) = -1.1535
131
- [260] 942 (LegStrikeCurrency) = et, [261] 614 (LegContractMultiplier) = -7.3717
132
- [262] 615 (LegCouponRate) = 0.0004804, [263] 616 (LegSecurityExchange) = facilisis
133
- [264] 617 (LegIssuer) = in,, [265] 621 (EncodedLegSecurityDescLen) = 82498
134
- [266] 624 (LegSide) = ornare, [267] 556 (LegCurrency) = sed
135
- [268] 739 (LegDatedDate) = 20211227, [269] 955 (LegContractSettlMonth) = magna.
136
- [270] 956 (LegInterestAccrualDate) = 20211227, [271] 687 (LegQty) = -0.000424
137
- [272] 683 (NoLegStipulations) = 1, [273] 688 (LegStipulationType) = Nulla
138
- [274] 689 (LegStipulationValue) = non, [275] 564 (LegPositionEffect) = leo
139
- [276] 565 (LegCoveredOrUncovered) = 34942, [277] 539 (NoNestedPartyIDs) = 3
140
- [278] 524 (NestedPartyID) = at, [279] 525 (NestedPartyIDSource) = odio
141
- [280] 538 (NestedPartyRole) = 99446, [281] 804 (NoNestedPartySubIDs) = 3
142
- [282] 545 (NestedPartySubID) = hendrerit, [283] 805 (NestedPartySubIDType) = 56692
143
- [284] 545 (NestedPartySubID) = placerat., [285] 805 (NestedPartySubIDType) = 67960
144
- [286] 545 (NestedPartySubID) = Pellentesque, [287] 805 (NestedPartySubIDType) = 54921
145
- [288] 524 (NestedPartyID) = felis, [289] 525 (NestedPartyIDSource) = arcu,
146
- [290] 804 (NoNestedPartySubIDs) = 2, [291] 545 (NestedPartySubID) = elementum
147
- [292] 805 (NestedPartySubIDType) = 1367, [293] 545 (NestedPartySubID) = eu
148
- [294] 805 (NestedPartySubIDType) = 53286, [295] 524 (NestedPartyID) = mollis
149
- [296] 538 (NestedPartyRole) = 53107, [297] 804 (NoNestedPartySubIDs) = 1
150
- [298] 545 (NestedPartySubID) = vitae,, [299] 805 (NestedPartySubIDType) = 12864
151
- [300] 654 (LegRefID) = euismod, [301] 566 (LegPrice) = -770.02
152
- [302] 587 (LegSettlType) = ut, [303] 588 (LegSettlDate) = 20211227
153
- [304] 637 (LegLastPx) = -164.81, [305] 600 (LegSymbol) = diam.
154
- [306] 602 (LegSecurityID) = Aliquam, [307] 603 (LegSecurityIDSource) = porttitor
155
- [308] 604 (NoLegSecurityAltID) = 2, [309] 605 (LegSecurityAltID) = erat
156
- [310] 606 (LegSecurityAltIDSource) = eget, [311] 605 (LegSecurityAltID) = tellus
157
- [312] 606 (LegSecurityAltIDSource) = cursus,, [313] 607 (LegProduct) = 75829
158
- [314] 608 (LegCFICode) = in, [315] 764 (LegSecuritySubType) = hendrerit
159
- [316] 610 (LegMaturityMonthYear) = nisi, [317] 611 (LegMaturityDate) = 20211227
160
- [318] 248 (LegCouponPaymentDate) = 20211227, [319] 250 (LegRepoCollateralSecurityType) = tempus.
161
- [320] 251 (LegRepurchaseTerm) = 3329, [321] 252 (LegRepurchaseRate) = -277.56
162
- [322] 253 (LegFactor) = -18.8, [323] 257 (LegCreditRating) = Interdum
163
- [324] 599 (LegInstrRegistry) = et, [325] 596 (LegCountryOfIssue) = malesuada
164
- [326] 597 (LegStateOrProvinceOfIssue) = fames, [327] 598 (LegLocaleOfIssue) = ac
165
- [328] 254 (LegRedemptionDate) = 20211227, [329] 612 (LegStrikePrice) = -7816.2
166
- [330] 942 (LegStrikeCurrency) = ante, [331] 613 (LegOptAttribute) = ipsum
167
- [332] 614 (LegContractMultiplier) = 416.66, [333] 617 (LegIssuer) = primis
168
- [334] 620 (LegSecurityDesc) = in, [335] 621 (EncodedLegSecurityDescLen) = 15061
169
- [336] 623 (LegRatioQty) = 0.0027833, [337] 624 (LegSide) = faucibus.
170
- [338] 556 (LegCurrency) = Ut, [339] 740 (LegPool) = egestas
171
- [340] 739 (LegDatedDate) = 20211227, [341] 955 (LegContractSettlMonth) = massa
172
- [342] 956 (LegInterestAccrualDate) = 20211227, [343] 687 (LegQty) = -0.0006061
173
- [344] 690 (LegSwapType) = 1[ParForPar], [345] 683 (NoLegStipulations) = 1
174
- [346] 688 (LegStipulationType) = ac, [347] 564 (LegPositionEffect) = cursus
175
- [348] 565 (LegCoveredOrUncovered) = 36419, [349] 539 (NoNestedPartyIDs) = 1
176
- [350] 524 (NestedPartyID) = semper., [351] 525 (NestedPartyIDSource) = Vivamus
177
- [352] 804 (NoNestedPartySubIDs) = 2, [353] 545 (NestedPartySubID) = rhoncus
178
- [354] 805 (NestedPartySubIDType) = 5487, [355] 545 (NestedPartySubID) = convallis
179
- [356] 805 (NestedPartySubIDType) = 10644, [357] 654 (LegRefID) = nulla,
180
- [358] 566 (LegPrice) = 8887.6, [359] 587 (LegSettlType) = nec
181
- [360] 637 (LegLastPx) = 75.646, [361] 768 (NoTrdRegTimestamps) = 1
182
- [362] 769 (TrdRegTimestamp) = 20211227-14:01:51.000, [363] 770 (TrdRegTimestampType) = 1[ExecutionTime]
183
- [364] 771 (TrdRegTimestampOrigin) = ornare, [365] 64 (SettlDate) = 20211227
184
- [366] 573 (MatchStatus) = 2[AdvisoryOrAlert], [367] 574 (MatchType) = M4[ActDefaultTrade]
185
- [368] 552 (NoSides) = 1[OneSide], [369] 54 (Side) = B[AsDefined]
186
- [370] 11 (ClOrdID) = urna, [371] 66 (ListID) = iaculis
187
- [372] 453 (NoPartyIDs) = 1, [373] 448 (PartyID) = vitae.
188
- [374] 447 (PartyIDSource) = C[GeneralIdentifier], [375] 452 (PartyRole) = 36[EnteringTrader]
189
- [376] 802 (NoPartySubIDs) = 1, [377] 523 (PartySubID) = Aliquam
190
- [378] 803 (PartySubIDType) = 16[Bic], [379] 1 (Account) = erat
191
- [380] 660 (AcctIDSource) = 5[DtccCode], [381] 581 (AccountType) = 4[FloorTrader]
192
- [382] 81 (ProcessCode) = 1[SoftDollar], [383] 576 (NoClearingInstructions) = 1
193
- [384] 577 (ClearingInstruction) = 12[CustomerTrade], [385] 579 (TradeInputDevice) = volutpat.
194
- [386] 15 (Currency) = In, [387] 376 (ComplianceID) = condimentum
195
- [388] 529 (OrderRestrictions) = 1[ProgramTrade], [389] 582 (CustOrderCapacity) = 3[MemberTradingForAnotherMember]
196
- [390] 40 (OrdType) = 8[LimitWithOrWithout], [391] 18 (ExecInst) = K[CancelOnTradingHalt]
197
- [392] 336 (TradingSessionID) = feugiat, [393] 625 (TradingSessionSubID) = sem
198
- [394] 943 (TimeBracket) = ut, [395] 12 (Commission) = -0.041751
199
- [396] 13 (CommType) = 5[PercentageWaivedEnhancedUnits], [397] 479 (CommCurrency) = porttitor.
200
- [398] 497 (FundRenewWaiv) = Y[Yes], [399] 230 (ExDate) = 20211227
201
- [400] 159 (AccruedInterestAmt) = 0.17864, [401] 738 (InterestAtMaturity) = 0.0013132
202
- [402] 920 (EndAccruedInterestAmt) = -120.39, [403] 921 (StartCash) = -0.046515
203
- [404] 922 (EndCash) = -0.5049, [405] 238 (Concession) = 0.018766
204
- [406] 237 (TotalTakedown) = 0.078006, [407] 118 (NetMoney) = 43.944
205
- [408] 119 (SettlCurrAmt) = 0.0050687, [409] 120 (SettlCurrency) = Quisque
206
- [410] 155 (SettlCurrFxRate) = -119.23, [411] 156 (SettlCurrFxRateCalc) = D[Divide]
207
- [412] 77 (PositionEffect) = R[Rolled], [413] 58 (Text) = pellentesque
208
- [414] 752 (SideMultiLegReportingType) = 1[SingleSecurity], [415] 518 (NoContAmts) = 1
209
- [416] 519 (ContAmtType) = 14[FundBasedRenewalCommissionOnFund], [417] 520 (ContAmtValue) = 6883.9
210
- [418] 521 (ContAmtCurr) = tortor, [419] 232 (NoStipulations) = 3
211
- [420] 233 (StipulationType) = MINQTY[MinimumQuantity], [421] 234 (StipulationValue) = eget
212
- [422] 233 (StipulationType) = PMAX[PoolsMaximum], [423] 234 (StipulationValue) = est
213
- [424] 233 (StipulationType) = PROD[ProductionYear], [425] 136 (NoMiscFees) = 1
214
- [426] 137 (MiscFeeAmt) = 27.84, [427] 891 (MiscFeeBasis) = 1[PerUnit]
215
- [428] 825 (ExchangeRule) = tincidunt, [429] 826 (TradeAllocIndicator) = 2[UseAllocationProvidedWithTheTrade]
216
- [430] 70 (AllocID) = Lorem, [431] 78 (NoAllocs) = 2
217
- [432] 79 (AllocAccount) = ipsum, [433] 661 (AllocAcctIDSource) = 49642
218
- [434] 467 (IndividualAllocID) = dolor, [435] 756 (NoNested2PartyIDs) = 3
219
- [436] 757 (Nested2PartyID) = sit, [437] 759 (Nested2PartyRole) = 99017
220
- [438] 806 (NoNested2PartySubIDs) = 3, [439] 760 (Nested2PartySubID) = amet,
221
- [440] 807 (Nested2PartySubIDType) = 209, [441] 760 (Nested2PartySubID) = consectetur
222
- [442] 760 (Nested2PartySubID) = adipiscing, [443] 807 (Nested2PartySubIDType) = 25708
223
- [444] 757 (Nested2PartyID) = elit., [445] 758 (Nested2PartyIDSource) = Nunc
224
- [446] 759 (Nested2PartyRole) = 6005, [447] 806 (NoNested2PartySubIDs) = 3
225
- [448] 760 (Nested2PartySubID) = odio, [449] 807 (Nested2PartySubIDType) = 52234
226
- [450] 760 (Nested2PartySubID) = orci,, [451] 807 (Nested2PartySubIDType) = 21855
227
- [452] 760 (Nested2PartySubID) = blandit, [453] 807 (Nested2PartySubIDType) = 60040
228
- [454] 757 (Nested2PartyID) = vel, [455] 758 (Nested2PartyIDSource) = semper
229
- [456] 806 (NoNested2PartySubIDs) = 3, [457] 760 (Nested2PartySubID) = sed,
230
- [458] 807 (Nested2PartySubIDType) = 57098, [459] 760 (Nested2PartySubID) = bibendum
231
- [460] 807 (Nested2PartySubIDType) = 26711, [461] 760 (Nested2PartySubID) = cursus
232
- [462] 80 (AllocQty) = 8958.7, [463] 79 (AllocAccount) = lectus.
233
- [464] 661 (AllocAcctIDSource) = 97104, [465] 756 (NoNested2PartyIDs) = 3
234
- [466] 757 (Nested2PartyID) = Aenean, [467] 758 (Nested2PartyIDSource) = vel
235
- [468] 759 (Nested2PartyRole) = 56444, [469] 806 (NoNested2PartySubIDs) = 3
236
- [470] 760 (Nested2PartySubID) = diam, [471] 807 (Nested2PartySubIDType) = 430
237
- [472] 760 (Nested2PartySubID) = magna., [473] 807 (Nested2PartySubIDType) = 58029
238
- [474] 760 (Nested2PartySubID) = Aenean, [475] 807 (Nested2PartySubIDType) = 79888
239
- [476] 757 (Nested2PartyID) = et, [477] 758 (Nested2PartyIDSource) = viverra
240
- [478] 759 (Nested2PartyRole) = 37017, [479] 806 (NoNested2PartySubIDs) = 1
241
- [480] 760 (Nested2PartySubID) = leo,, [481] 807 (Nested2PartySubIDType) = 56444
242
- [482] 757 (Nested2PartyID) = non, [483] 758 (Nested2PartyIDSource) = iaculis
243
- [484] 759 (Nested2PartyRole) = 76525, [485] 806 (NoNested2PartySubIDs) = 3
244
- [486] 760 (Nested2PartySubID) = neque., [487] 807 (Nested2PartySubIDType) = 85781
245
- [488] 760 (Nested2PartySubID) = Nullam, [489] 807 (Nested2PartySubIDType) = 20498
246
- [490] 760 (Nested2PartySubID) = arcu, [491] 807 (Nested2PartySubIDType) = 903
247
- [492] 80 (AllocQty) = -0.99254, [493] 852 (PublishTrdIndicator) = Y[ReportTrade]
248
- [494] 853 (ShortSaleReason) = 4[QualifiedServiceRepresentative], [495] 10 (CheckSum) = 163
@@ -1,8 +0,0 @@
1
- /// <reference types="node" />
2
- import { IJsFixConfig } from '../config';
3
- import * as events from 'events';
4
- export declare abstract class FixEntity extends events.EventEmitter {
5
- readonly config: IJsFixConfig;
6
- abstract start(): Promise<any>;
7
- constructor(config: IJsFixConfig);
8
- }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FixEntity = void 0;
4
- const events = require("events");
5
- class FixEntity extends events.EventEmitter {
6
- constructor(config) {
7
- super();
8
- this.config = config;
9
- }
10
- }
11
- exports.FixEntity = FixEntity;
12
- //# sourceMappingURL=FixEntity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FixEntity.js","sourceRoot":"","sources":["../../src/transport/FixEntity.ts"],"names":[],"mappings":";;;AACA,iCAAgC;AAEhC,MAAsB,SAAU,SAAQ,MAAM,CAAC,YAAY;IAEzD,YAA6B,MAAoB;QAC/C,KAAK,EAAE,CAAA;QADoB,WAAM,GAAN,MAAM,CAAc;IAEjD,CAAC;CACF;AALD,8BAKC","sourcesContent":["import { IJsFixConfig } from '../config'\r\nimport * as events from 'events'\r\n\r\nexport abstract class FixEntity extends events.EventEmitter {\r\n abstract start (): Promise<any>\r\n constructor (public readonly config: IJsFixConfig) {\r\n super()\r\n }\r\n}\r\n"]}
@@ -1,23 +0,0 @@
1
- import { ISessionMsgFactory } from './session/session-msg-factory';
2
- import { ISessionDescription } from './session/session-description';
3
- import { ILooseObject } from '../collections/collection';
4
- import { IStandardHeader } from '../types/FIX4.4/repo';
5
- export interface ObjectMutator {
6
- (description: ISessionDescription, type: string, o: ILooseObject): ILooseObject;
7
- }
8
- export declare abstract class ASessionMsgFactory implements ISessionMsgFactory {
9
- readonly description: ISessionDescription;
10
- mutator: ObjectMutator;
11
- isAscii: boolean;
12
- constructor(description: ISessionDescription, mutator?: ObjectMutator);
13
- reject(msgType: string, seqNo: number, msg: string, reason: number): ILooseObject;
14
- abstract logon(userRequestId: string, isResponse: boolean): ILooseObject;
15
- abstract logout(msgType: string, text: string): ILooseObject;
16
- abstract header(msgType: string, seqNum: number, time: Date, overrideData?: Partial<IStandardHeader>): ILooseObject;
17
- protected mutate(o: ILooseObject, type: string): ILooseObject;
18
- testRequest(reqId?: string): ILooseObject;
19
- heartbeat(testReqId: string): ILooseObject;
20
- resendRequest(from: number, to: number): ILooseObject;
21
- sequenceReset(newSeqNo: number, gapFill?: boolean): ILooseObject;
22
- trailer(checksum: number): ILooseObject;
23
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ASessionMsgFactory = void 0;
4
- const types_1 = require("../types");
5
- class ASessionMsgFactory {
6
- constructor(description, mutator = null) {
7
- this.description = description;
8
- this.mutator = mutator;
9
- }
10
- reject(msgType, seqNo, msg, reason) {
11
- const o = {
12
- RefMsgType: msgType,
13
- SessionRejectReason: reason,
14
- RefSeqNum: seqNo,
15
- Text: msg
16
- };
17
- return this.mutator ? this.mutator(this.description, types_1.MsgType.Reject, o) : o;
18
- }
19
- mutate(o, type) {
20
- return this.mutator ? this.mutator(this.description, type, o) : o;
21
- }
22
- testRequest(reqId = `ping-${new Date().toUTCString()}`) {
23
- const o = {
24
- TestReqID: reqId
25
- };
26
- return this.mutate(o, types_1.MsgType.TestRequest);
27
- }
28
- heartbeat(testReqId) {
29
- const o = {
30
- TestReqID: testReqId
31
- };
32
- return this.mutate(o, types_1.MsgType.Heartbeat);
33
- }
34
- resendRequest(from, to) {
35
- const o = {
36
- BeginSeqNo: from,
37
- EndSeqNo: to
38
- };
39
- return this.mutate(o, types_1.MsgType.ResendRequest);
40
- }
41
- sequenceReset(newSeqNo, gapFill) {
42
- const o = {
43
- GapFillFlag: gapFill === true,
44
- NewSeqNo: newSeqNo
45
- };
46
- return this.mutate(o, types_1.MsgType.SequenceReset);
47
- }
48
- trailer(checksum) {
49
- const s = checksum.toString();
50
- const padded = s.padStart(3, '0');
51
- const o = {
52
- CheckSum: padded
53
- };
54
- return this.mutate(o, 'StandardTrailer');
55
- }
56
- }
57
- exports.ASessionMsgFactory = ASessionMsgFactory;
58
- //# 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":";;;AAGA,oCAAkC;AAelC,MAAsB,kBAAkB;IAEtC,YAA6B,WAAgC,EAAS,UAAyB,IAAI;QAAtE,gBAAW,GAAX,WAAW,CAAqB;QAAS,YAAO,GAAP,OAAO,CAAsB;IACnG,CAAC;IAEM,MAAM,CAAE,OAAe,EAAE,KAAa,EAAE,GAAW,EAAE,MAAc;QACxE,MAAM,CAAC,GAAY;YACjB,UAAU,EAAE,OAAO;YACnB,mBAAmB,EAAE,MAAM;YAC3B,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,GAAG;SACC,CAAA;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,eAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7E,CAAC;IAOS,MAAM,CAAE,CAAe,EAAE,IAAY;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,CAAC;IAEM,WAAW,CAAE,QAAgB,QAAQ,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;QACpE,MAAM,CAAC,GAAiB;YACtB,SAAS,EAAE,KAAK;SACD,CAAA;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,WAAW,CAAC,CAAA;IAC5C,CAAC;IAEM,SAAS,CAAE,SAAiB;QACjC,MAAM,CAAC,GAAe;YACpB,SAAS,EAAE,SAAS;SACP,CAAA;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,SAAS,CAAC,CAAA;IAC1C,CAAC;IAEM,aAAa,CAAE,IAAY,EAAE,EAAU;QAC5C,MAAM,CAAC,GAAmB;YACxB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,EAAE;SACK,CAAA;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,aAAa,CAAC,CAAA;IAC9C,CAAC;IAEM,aAAa,CAAE,QAAgB,EAAE,OAAiB;QACvD,MAAM,CAAC,GAAmB;YACxB,WAAW,EAAE,OAAO,KAAK,IAAI;YAC7B,QAAQ,EAAE,QAAQ;SACD,CAAA;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,eAAO,CAAC,aAAa,CAAC,CAAA;IAC9C,CAAC;IAEM,OAAO,CAAE,QAAgB;QAC9B,MAAM,CAAC,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAA;QAC7B,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QACjC,MAAM,CAAC,GAAG;YACR,QAAQ,EAAE,MAAM;SACG,CAAA;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAA;IAC1C,CAAC;CACF;AA9DD,gDA8DC","sourcesContent":["import { ISessionMsgFactory } from './session/session-msg-factory'\r\nimport { ISessionDescription } from './session/session-description'\r\nimport { ILooseObject } from '../collections/collection'\r\nimport { MsgType } from '../types'\r\n\r\nimport {\r\n IHeartbeat,\r\n IReject,\r\n IResendRequest,\r\n ISequenceReset,\r\n IStandardHeader,\r\n IStandardTrailer,\r\n ITestRequest\r\n} from '../types/FIX4.4/repo'\r\n\r\nexport interface ObjectMutator { (description: ISessionDescription, type: string, o: ILooseObject): ILooseObject\r\n}\r\n\r\nexport abstract class ASessionMsgFactory implements ISessionMsgFactory {\r\n public isAscii: boolean\r\n constructor (public readonly description: ISessionDescription, public mutator: ObjectMutator = null) {\r\n }\r\n\r\n public reject (msgType: string, seqNo: number, msg: string, reason: number): ILooseObject {\r\n const o: IReject = {\r\n RefMsgType: msgType,\r\n SessionRejectReason: reason,\r\n RefSeqNum: seqNo,\r\n Text: msg\r\n } as IReject\r\n return this.mutator ? this.mutator(this.description, MsgType.Reject, o) : o\r\n }\r\n\r\n // see implementations Ascii and Fixml\r\n public abstract logon (userRequestId: string, isResponse: boolean): ILooseObject\r\n public abstract logout (msgType: string, text: string): ILooseObject\r\n public abstract header (msgType: string, seqNum: number, time: Date, overrideData?: Partial<IStandardHeader>): ILooseObject\r\n\r\n protected mutate (o: ILooseObject, type: string): ILooseObject {\r\n return this.mutator ? this.mutator(this.description, type, o) : o\r\n }\r\n\r\n public testRequest (reqId: string = `ping-${new Date().toUTCString()}`): ILooseObject {\r\n const o: ITestRequest = {\r\n TestReqID: reqId\r\n } as ITestRequest\r\n return this.mutate(o, MsgType.TestRequest)\r\n }\r\n\r\n public heartbeat (testReqId: string): ILooseObject {\r\n const o: IHeartbeat = {\r\n TestReqID: testReqId\r\n } as IHeartbeat\r\n return this.mutate(o, MsgType.Heartbeat)\r\n }\r\n\r\n public resendRequest (from: number, to: number): ILooseObject {\r\n const o: IResendRequest = {\r\n BeginSeqNo: from,\r\n EndSeqNo: to\r\n } as IResendRequest\r\n return this.mutate(o, MsgType.ResendRequest)\r\n }\r\n\r\n public sequenceReset (newSeqNo: number, gapFill?: boolean): ILooseObject {\r\n const o: ISequenceReset = {\r\n GapFillFlag: gapFill === true,\r\n NewSeqNo: newSeqNo\r\n } as ISequenceReset\r\n return this.mutate(o, MsgType.SequenceReset)\r\n }\r\n\r\n public trailer (checksum: number): ILooseObject {\r\n const s = checksum.toString()\r\n const padded = s.padStart(3, '0')\r\n const o = {\r\n CheckSum: padded\r\n } as IStandardTrailer\r\n return this.mutate(o, 'StandardTrailer')\r\n }\r\n}\r\n"]}
@@ -1,15 +0,0 @@
1
- import { ILooseObject } from '../collections/collection';
2
- import { IStandardHeader } from '../types/FIX4.4/repo';
3
- import { ISessionDescription } from './session/session-description';
4
- export interface ISessionMsgFactory {
5
- description: ISessionDescription;
6
- reject(msgType: string, seqNo: number, msg: string, reason: number): ILooseObject;
7
- logout(msgType: string, text: string): ILooseObject;
8
- logon(userRequestId?: string, isResponse?: boolean): ILooseObject;
9
- testRequest(reqId?: string): ILooseObject;
10
- resendRequest(from: number, to: number): ILooseObject;
11
- sequenceReset(newSeq: number, gapFill?: boolean): ILooseObject;
12
- heartbeat(testReqId: string): ILooseObject;
13
- header(msgType?: string, seqNum?: number, time?: Date, overrideData?: Partial<IStandardHeader>): ILooseObject;
14
- trailer(checksum: number): ILooseObject;
15
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=fix-msg-factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix-msg-factory.js","sourceRoot":"","sources":["../../src/transport/fix-msg-factory.ts"],"names":[],"mappings":"","sourcesContent":["import { ILooseObject } from '../collections/collection'\r\nimport { IStandardHeader } from '../types/FIX4.4/repo'\r\nimport { ISessionDescription } from './session/session-description'\r\n\r\nexport interface ISessionMsgFactory {\r\n description: ISessionDescription\r\n reject (msgType: string, seqNo: number, msg: string, reason: number): ILooseObject\r\n logout (msgType: string, text: string): ILooseObject\r\n logon (userRequestId?: string, isResponse?: boolean): ILooseObject\r\n testRequest (reqId?: string): ILooseObject\r\n resendRequest (from: number, to: number): ILooseObject\r\n sequenceReset (newSeq: number, gapFill?: boolean): ILooseObject\r\n heartbeat (testReqId: string): ILooseObject\r\n header (msgType?: string, seqNum?: number, time?: Date, overrideData?: Partial<IStandardHeader>): ILooseObject\r\n trailer (checksum: number): ILooseObject\r\n}\r\n"]}
@@ -1,8 +0,0 @@
1
- import { SessionState } from './session-state';
2
- export interface IFixSessionStateArgs {
3
- heartBeat: number;
4
- state?: SessionState;
5
- waitLogoutConfirmSeconds?: number;
6
- stopSeconds?: number;
7
- lastPeerMsgSeqNum?: number;
8
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=fix-session-state-args.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix-session-state-args.js","sourceRoot":"","sources":["../../src/transport/fix-session-state-args.ts"],"names":[],"mappings":"","sourcesContent":["import { SessionState } from './session-state'\r\n\r\nexport interface IFixSessionStateArgs {\r\n heartBeat: number\r\n state?: SessionState\r\n waitLogoutConfirmSeconds?: number\r\n stopSeconds?: number\r\n lastPeerMsgSeqNum?: number\r\n}\r\n"]}
@@ -1,32 +0,0 @@
1
- import { TickAction } from './tick-action';
2
- import { IFixSessionStateArgs } from './fix-session-state-args';
3
- import { SessionState } from './session-state';
4
- export declare class FixSessionState {
5
- nextTickAction: TickAction;
6
- lastReceivedAt: Date;
7
- LastSentAt: Date;
8
- lastTestRequestAt: Date;
9
- logoutSentAt: Date;
10
- now: Date;
11
- compId: string;
12
- peerCompId: string;
13
- peerHeartBeatSecs: number;
14
- lastPeerMsgSeqNum: number;
15
- readonly heartBeat: number;
16
- state: SessionState;
17
- readonly waitLogoutConfirmSeconds: number;
18
- readonly stopSeconds: number;
19
- private secondsSinceLogoutSent;
20
- private secondsSinceSent;
21
- private secondsSinceReceive;
22
- reset(resetSeqNo: boolean): void;
23
- constructor({ heartBeat, state, waitLogoutConfirmSeconds, stopSeconds, lastPeerMsgSeqNum }: IFixSessionStateArgs);
24
- private static dateAsString;
25
- toString(): string;
26
- calcAction(now: Date): TickAction;
27
- timeToDie(): boolean;
28
- timeToHeartbeat(): boolean;
29
- timeToTerminate(): boolean;
30
- timeToTestRequest(): boolean;
31
- private calcState;
32
- }
@@ -1,133 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FixSessionState = void 0;
4
- const buffer_1 = require("../buffer");
5
- const moment = require("moment");
6
- const tick_action_1 = require("./tick-action");
7
- const session_state_1 = require("./session-state");
8
- class FixSessionState {
9
- constructor({ heartBeat, state = session_state_1.SessionState.Idle, waitLogoutConfirmSeconds = 5, stopSeconds = 2, lastPeerMsgSeqNum = 0 }) {
10
- this.nextTickAction = tick_action_1.TickAction.Nothing;
11
- this.lastReceivedAt = null;
12
- this.LastSentAt = null;
13
- this.lastTestRequestAt = null;
14
- this.logoutSentAt = null;
15
- this.now = new Date();
16
- this.compId = '';
17
- this.peerCompId = '';
18
- this.peerHeartBeatSecs = 0;
19
- this.secondsSinceLogoutSent = -1;
20
- this.secondsSinceSent = -1;
21
- this.secondsSinceReceive = -1;
22
- this.heartBeat = heartBeat;
23
- this.state = state;
24
- this.waitLogoutConfirmSeconds = waitLogoutConfirmSeconds;
25
- this.stopSeconds = stopSeconds;
26
- this.lastPeerMsgSeqNum = lastPeerMsgSeqNum;
27
- }
28
- reset(resetSeqNo) {
29
- this.lastReceivedAt = null;
30
- this.LastSentAt = null;
31
- this.lastTestRequestAt = null;
32
- this.secondsSinceLogoutSent = -1;
33
- this.secondsSinceSent = -1;
34
- this.secondsSinceReceive = -1;
35
- this.peerHeartBeatSecs = 0;
36
- this.logoutSentAt = null;
37
- this.nextTickAction = tick_action_1.TickAction.Nothing;
38
- if (resetSeqNo) {
39
- this.lastPeerMsgSeqNum = 0;
40
- }
41
- }
42
- static dateAsString(d) {
43
- if (!d) {
44
- return 'null';
45
- }
46
- return moment(d).format('HH:mm:ss.SSS');
47
- }
48
- toString() {
49
- const buffer = new buffer_1.ElasticBuffer(1024);
50
- buffer.writeString(`compId = ${this.compId}, `);
51
- buffer.writeString(`heartBeat = ${this.heartBeat}, `);
52
- buffer.writeString(`state = ${session_state_1.SessionState[this.state]} (${this.state}), `);
53
- buffer.writeString(`nextTickAction = ${tick_action_1.TickAction[this.nextTickAction]} (${this.nextTickAction}), `);
54
- buffer.writeString(`now = ${FixSessionState.dateAsString(this.now)}, `);
55
- buffer.writeString(`timeToDie = ${this.timeToDie()}, `);
56
- buffer.writeString(`timeToHeartbeat = ${this.timeToHeartbeat()}, `);
57
- buffer.writeString(`timeToTerminate = ${this.timeToTerminate()}, `);
58
- buffer.writeString(`timeToTestRequest = ${this.timeToTestRequest()}, `);
59
- buffer.writeString(`lastReceivedAt = ${FixSessionState.dateAsString(this.lastReceivedAt)}, `);
60
- buffer.writeString(`LastSentAt = ${FixSessionState.dateAsString(this.LastSentAt)}, `);
61
- buffer.writeString(`lastTestRequestAt = ${FixSessionState.dateAsString(this.lastTestRequestAt)}, `);
62
- buffer.writeString(`logoutSentAt = ${FixSessionState.dateAsString(this.logoutSentAt)}, `);
63
- buffer.writeString(`peerHeartBeatSecs = ${this.peerHeartBeatSecs}, `);
64
- buffer.writeString(`peerCompId = ${this.peerCompId}, `);
65
- buffer.writeString(`lastPeerMsgSeqNum = ${this.lastPeerMsgSeqNum}, `);
66
- buffer.writeString(`secondsSinceLogoutSent = ${this.secondsSinceLogoutSent}, `);
67
- buffer.writeString(`secondsSinceSent = ${this.secondsSinceSent}, `);
68
- buffer.writeString(`secondsSinceReceive = ${this.secondsSinceReceive}`);
69
- return buffer.toString();
70
- }
71
- calcAction(now) {
72
- this.now = now;
73
- this.calcState();
74
- switch (this.state) {
75
- case session_state_1.SessionState.PeerLogonRejected: {
76
- if (this.secondsSinceSent >= this.stopSeconds) {
77
- this.nextTickAction = tick_action_1.TickAction.Stop;
78
- }
79
- break;
80
- }
81
- case session_state_1.SessionState.WaitingLogoutConfirm:
82
- case session_state_1.SessionState.ConfirmingLogout: {
83
- if (this.timeToDie()) {
84
- this.nextTickAction = tick_action_1.TickAction.Stop;
85
- }
86
- break;
87
- }
88
- case session_state_1.SessionState.ActiveNormalSession:
89
- case session_state_1.SessionState.AwaitingProcessingResponseToTestRequest:
90
- case session_state_1.SessionState.InitiationLogonReceived:
91
- case session_state_1.SessionState.InitiationLogonResponse: {
92
- if (this.timeToHeartbeat()) {
93
- this.nextTickAction = tick_action_1.TickAction.Heartbeat;
94
- }
95
- else {
96
- if (this.timeToTerminate()) {
97
- this.nextTickAction = tick_action_1.TickAction.TerminateOnError;
98
- }
99
- else if (this.timeToTestRequest()) {
100
- if (!this.lastTestRequestAt) {
101
- this.nextTickAction = tick_action_1.TickAction.TestRequest;
102
- this.lastTestRequestAt = this.now;
103
- }
104
- }
105
- }
106
- break;
107
- }
108
- }
109
- return this.nextTickAction;
110
- }
111
- timeToDie() {
112
- return this.secondsSinceLogoutSent > this.waitLogoutConfirmSeconds ||
113
- this.secondsSinceLogoutSent > this.stopSeconds;
114
- }
115
- timeToHeartbeat() {
116
- return this.secondsSinceSent >= this.heartBeat;
117
- }
118
- timeToTerminate() {
119
- return this.secondsSinceReceive >= 2.5 * this.peerHeartBeatSecs;
120
- }
121
- timeToTestRequest() {
122
- return this.secondsSinceReceive >= 1.5 * this.peerHeartBeatSecs;
123
- }
124
- calcState() {
125
- const time = this.now.getTime();
126
- this.nextTickAction = tick_action_1.TickAction.Nothing;
127
- this.secondsSinceLogoutSent = this.logoutSentAt ? (time - this.logoutSentAt.getTime()) / 1000 : -1;
128
- this.secondsSinceSent = (time - this.LastSentAt.getTime()) / 1000;
129
- this.secondsSinceReceive = (time - this.lastReceivedAt.getTime()) / 1000;
130
- }
131
- }
132
- exports.FixSessionState = FixSessionState;
133
- //# sourceMappingURL=fix-session-state.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix-session-state.js","sourceRoot":"","sources":["../../src/transport/fix-session-state.ts"],"names":[],"mappings":"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","sourcesContent":["import { ElasticBuffer } from '../buffer'\r\nimport moment = require('moment')\r\nimport { TickAction } from './tick-action'\r\nimport { IFixSessionStateArgs } from './fix-session-state-args'\r\nimport { SessionState } from './session-state'\r\n\r\nexport class FixSessionState {\r\n public nextTickAction: TickAction = TickAction.Nothing\r\n\r\n public lastReceivedAt: Date = null\r\n public LastSentAt: Date = null\r\n public lastTestRequestAt: Date = null\r\n public logoutSentAt: Date = null\r\n public now: Date = new Date()\r\n public compId: string = ''\r\n public peerCompId: string = ''\r\n public peerHeartBeatSecs: number = 0\r\n public lastPeerMsgSeqNum: number\r\n public readonly heartBeat: number\r\n public state: SessionState\r\n public readonly waitLogoutConfirmSeconds: number\r\n public readonly stopSeconds: number\r\n\r\n private secondsSinceLogoutSent: number = -1\r\n private secondsSinceSent: number = -1\r\n private secondsSinceReceive: number = -1\r\n\r\n public reset (resetSeqNo: boolean): void {\r\n this.lastReceivedAt = null\r\n this.LastSentAt = null\r\n this.lastTestRequestAt = null\r\n this.secondsSinceLogoutSent = -1\r\n this.secondsSinceSent = -1\r\n this.secondsSinceReceive = -1\r\n this.peerHeartBeatSecs = 0\r\n this.logoutSentAt = null\r\n this.nextTickAction = TickAction.Nothing\r\n if (resetSeqNo) {\r\n this.lastPeerMsgSeqNum = 0\r\n }\r\n }\r\n\r\n public constructor ({ heartBeat,\r\n state = SessionState.Idle,\r\n waitLogoutConfirmSeconds = 5,\r\n stopSeconds = 2,\r\n lastPeerMsgSeqNum = 0 }: IFixSessionStateArgs) {\r\n this.heartBeat = heartBeat\r\n this.state = state\r\n this.waitLogoutConfirmSeconds = waitLogoutConfirmSeconds\r\n this.stopSeconds = stopSeconds\r\n this.lastPeerMsgSeqNum = lastPeerMsgSeqNum\r\n }\r\n\r\n private static dateAsString (d: Date) {\r\n if (!d) {\r\n return 'null'\r\n }\r\n return moment(d).format('HH:mm:ss.SSS')\r\n }\r\n\r\n public toString (): string {\r\n\r\n const buffer = new ElasticBuffer(1024)\r\n\r\n buffer.writeString(`compId = ${this.compId}, `)\r\n buffer.writeString(`heartBeat = ${this.heartBeat}, `)\r\n buffer.writeString(`state = ${SessionState[this.state]} (${this.state}), `)\r\n buffer.writeString(`nextTickAction = ${TickAction[this.nextTickAction]} (${this.nextTickAction}), `)\r\n buffer.writeString(`now = ${FixSessionState.dateAsString(this.now)}, `)\r\n buffer.writeString(`timeToDie = ${this.timeToDie()}, `)\r\n buffer.writeString(`timeToHeartbeat = ${this.timeToHeartbeat()}, `)\r\n buffer.writeString(`timeToTerminate = ${this.timeToTerminate()}, `)\r\n buffer.writeString(`timeToTestRequest = ${this.timeToTestRequest()}, `)\r\n buffer.writeString(`lastReceivedAt = ${FixSessionState.dateAsString(this.lastReceivedAt)}, `)\r\n buffer.writeString(`LastSentAt = ${FixSessionState.dateAsString(this.LastSentAt)}, `)\r\n buffer.writeString(`lastTestRequestAt = ${FixSessionState.dateAsString(this.lastTestRequestAt)}, `)\r\n buffer.writeString(`logoutSentAt = ${FixSessionState.dateAsString(this.logoutSentAt)}, `)\r\n buffer.writeString(`peerHeartBeatSecs = ${this.peerHeartBeatSecs}, `)\r\n buffer.writeString(`peerCompId = ${this.peerCompId}, `)\r\n buffer.writeString(`lastPeerMsgSeqNum = ${this.lastPeerMsgSeqNum}, `)\r\n buffer.writeString(`secondsSinceLogoutSent = ${this.secondsSinceLogoutSent}, `)\r\n buffer.writeString(`secondsSinceSent = ${this.secondsSinceSent}, `)\r\n buffer.writeString(`secondsSinceReceive = ${this.secondsSinceReceive}`)\r\n\r\n return buffer.toString()\r\n }\r\n\r\n public calcAction (now: Date): TickAction {\r\n this.now = now\r\n this.calcState()\r\n\r\n switch (this.state) {\r\n\r\n case SessionState.PeerLogonRejected: {\r\n if (this.secondsSinceSent >= this.stopSeconds) {\r\n this.nextTickAction = TickAction.Stop\r\n }\r\n break\r\n }\r\n\r\n case SessionState.WaitingLogoutConfirm:\r\n case SessionState.ConfirmingLogout: {\r\n if (this.timeToDie()) {\r\n this.nextTickAction = TickAction.Stop\r\n }\r\n break\r\n }\r\n\r\n case SessionState.ActiveNormalSession:\r\n case SessionState.AwaitingProcessingResponseToTestRequest:\r\n case SessionState.InitiationLogonReceived:\r\n case SessionState.InitiationLogonResponse : {\r\n if (this.timeToHeartbeat()) {\r\n // have not sent anything for heartbeat period so let other side know still alive.\r\n this.nextTickAction = TickAction.Heartbeat\r\n } else {\r\n // console.log(`${application.name}: secondsSinceSent = ${secondsSinceSent} secondsSinceReceive = ${secondsSinceReceive}`)\r\n if (this.timeToTerminate()) {\r\n this.nextTickAction = TickAction.TerminateOnError\r\n } else if (this.timeToTestRequest()) {\r\n if (!this.lastTestRequestAt) {\r\n // not received anything from peer\r\n this.nextTickAction = TickAction.TestRequest\r\n this.lastTestRequestAt = this.now\r\n }\r\n }\r\n }\r\n break\r\n }\r\n }\r\n\r\n return this.nextTickAction\r\n }\r\n\r\n public timeToDie (): boolean {\r\n return this.secondsSinceLogoutSent > this.waitLogoutConfirmSeconds ||\r\n this.secondsSinceLogoutSent > this.stopSeconds\r\n }\r\n\r\n public timeToHeartbeat (): boolean {\r\n return this.secondsSinceSent >= this.heartBeat\r\n }\r\n\r\n public timeToTerminate (): boolean {\r\n return this.secondsSinceReceive >= 2.5 * this.peerHeartBeatSecs\r\n }\r\n\r\n public timeToTestRequest (): boolean {\r\n return this.secondsSinceReceive >= 1.5 * this.peerHeartBeatSecs\r\n }\r\n\r\n private calcState (): void {\r\n const time = this.now.getTime()\r\n this.nextTickAction = TickAction.Nothing\r\n this.secondsSinceLogoutSent = this.logoutSentAt ? (time - this.logoutSentAt.getTime()) / 1000 : -1\r\n this.secondsSinceSent = (time - this.LastSentAt.getTime()) / 1000\r\n this.secondsSinceReceive = (time - this.lastReceivedAt.getTime()) / 1000\r\n }\r\n}\r\n"]}