@os1-platform/dispatch-mobile 2.1.8 → 2.1.10

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 (131) hide show
  1. package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js +0 -2
  2. package/lib/commonjs/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
  3. package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js +0 -6
  4. package/lib/commonjs/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
  5. package/lib/commonjs/analytics/sentry/SentrySdkConstants.js +2 -0
  6. package/lib/commonjs/analytics/sentry/SentrySdkConstants.js.map +1 -1
  7. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js +1 -1
  8. package/lib/commonjs/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/manager/sdk/DispatchSDKManager.js +5 -4
  11. package/lib/commonjs/manager/sdk/DispatchSDKManager.js.map +1 -1
  12. package/lib/commonjs/manager/sdk/callbacksHandler.js +28 -1
  13. package/lib/commonjs/manager/sdk/callbacksHandler.js.map +1 -1
  14. package/lib/commonjs/manager/syncmanager/AppSyncManager.js +7 -5
  15. package/lib/commonjs/manager/syncmanager/AppSyncManager.js.map +1 -1
  16. package/lib/commonjs/manager/syncmanager/DBConfig.js +3 -1
  17. package/lib/commonjs/manager/syncmanager/DBConfig.js.map +1 -1
  18. package/lib/commonjs/manager/syncmanager/constants.js +4 -1
  19. package/lib/commonjs/manager/syncmanager/constants.js.map +1 -1
  20. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js +37 -20
  21. package/lib/commonjs/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  22. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js +26 -4
  23. package/lib/commonjs/manager/syncmanager/document/DocumentManager.js.map +1 -1
  24. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js +276 -20
  25. package/lib/commonjs/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  26. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js +41 -13
  27. package/lib/commonjs/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  28. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js +116 -59
  29. package/lib/commonjs/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  30. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js +17 -0
  31. package/lib/commonjs/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  32. package/lib/commonjs/models/auth.js.map +1 -1
  33. package/lib/commonjs/models/sdk.js.map +1 -1
  34. package/lib/commonjs/network/NetworkClient.js +12 -2
  35. package/lib/commonjs/network/NetworkClient.js.map +1 -1
  36. package/lib/commonjs/network/NetworkUtils.js +14 -7
  37. package/lib/commonjs/network/NetworkUtils.js.map +1 -1
  38. package/lib/commonjs/network/client.js +1 -1
  39. package/lib/commonjs/network/client.js.map +1 -1
  40. package/lib/commonjs/ui/screens/DeliverScreen.js.map +1 -1
  41. package/lib/commonjs/ui/screens/FormsScreen.js.map +1 -1
  42. package/lib/commonjs/utils/SyncManagerUtils.js +29 -2
  43. package/lib/commonjs/utils/SyncManagerUtils.js.map +1 -1
  44. package/lib/commonjs/utils/storage.js +21 -5
  45. package/lib/commonjs/utils/storage.js.map +1 -1
  46. package/lib/commonjs/utils/utils.js +0 -9
  47. package/lib/commonjs/utils/utils.js.map +1 -1
  48. package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js +0 -2
  49. package/lib/module/analytics/sentry/SentryAnalyticsSingleton.js.map +1 -1
  50. package/lib/module/analytics/sentry/SentryAnalyticsUtils.js +0 -6
  51. package/lib/module/analytics/sentry/SentryAnalyticsUtils.js.map +1 -1
  52. package/lib/module/analytics/sentry/SentrySdkConstants.js +2 -0
  53. package/lib/module/analytics/sentry/SentrySdkConstants.js.map +1 -1
  54. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js +1 -1
  55. package/lib/module/components/executiontasks/imageCapture/ImageCapture.js.map +1 -1
  56. package/lib/module/index.js.map +1 -1
  57. package/lib/module/manager/sdk/DispatchSDKManager.js +5 -4
  58. package/lib/module/manager/sdk/DispatchSDKManager.js.map +1 -1
  59. package/lib/module/manager/sdk/callbacksHandler.js +27 -1
  60. package/lib/module/manager/sdk/callbacksHandler.js.map +1 -1
  61. package/lib/module/manager/syncmanager/AppSyncManager.js +7 -5
  62. package/lib/module/manager/syncmanager/AppSyncManager.js.map +1 -1
  63. package/lib/module/manager/syncmanager/DBConfig.js +3 -1
  64. package/lib/module/manager/syncmanager/DBConfig.js.map +1 -1
  65. package/lib/module/manager/syncmanager/constants.js +3 -0
  66. package/lib/module/manager/syncmanager/constants.js.map +1 -1
  67. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js +38 -21
  68. package/lib/module/manager/syncmanager/document/DocumentHttpClient.js.map +1 -1
  69. package/lib/module/manager/syncmanager/document/DocumentManager.js +26 -4
  70. package/lib/module/manager/syncmanager/document/DocumentManager.js.map +1 -1
  71. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js +276 -20
  72. package/lib/module/manager/syncmanager/document/DocumentSyncManager.js.map +1 -1
  73. package/lib/module/manager/syncmanager/events/ETEventsManager.js +42 -14
  74. package/lib/module/manager/syncmanager/events/ETEventsManager.js.map +1 -1
  75. package/lib/module/manager/syncmanager/events/EventsSyncManager.js +119 -61
  76. package/lib/module/manager/syncmanager/events/EventsSyncManager.js.map +1 -1
  77. package/lib/module/manager/syncmanager/events/SyncHttpClient.js +15 -0
  78. package/lib/module/manager/syncmanager/events/SyncHttpClient.js.map +1 -1
  79. package/lib/module/models/auth.js.map +1 -1
  80. package/lib/module/models/sdk.js.map +1 -1
  81. package/lib/module/network/NetworkClient.js +12 -2
  82. package/lib/module/network/NetworkClient.js.map +1 -1
  83. package/lib/module/network/NetworkUtils.js +14 -7
  84. package/lib/module/network/NetworkUtils.js.map +1 -1
  85. package/lib/module/network/client.js +1 -1
  86. package/lib/module/network/client.js.map +1 -1
  87. package/lib/module/ui/screens/DeliverScreen.js.map +1 -1
  88. package/lib/module/ui/screens/FormsScreen.js.map +1 -1
  89. package/lib/module/utils/SyncManagerUtils.js +30 -3
  90. package/lib/module/utils/SyncManagerUtils.js.map +1 -1
  91. package/lib/module/utils/storage.js +21 -5
  92. package/lib/module/utils/storage.js.map +1 -1
  93. package/lib/module/utils/utils.js +0 -9
  94. package/lib/module/utils/utils.js.map +1 -1
  95. package/lib/typescript/analytics/sentry/SentrySdkConstants.d.ts +2 -0
  96. package/lib/typescript/manager/sdk/callbacksHandler.d.ts +3 -1
  97. package/lib/typescript/manager/syncmanager/DBConfig.d.ts +4 -0
  98. package/lib/typescript/manager/syncmanager/constants.d.ts +3 -0
  99. package/lib/typescript/manager/syncmanager/document/DocumentManager.d.ts +2 -0
  100. package/lib/typescript/manager/syncmanager/document/DocumentSyncManager.d.ts +2 -1
  101. package/lib/typescript/manager/syncmanager/events/ETEventsManager.d.ts +2 -0
  102. package/lib/typescript/manager/syncmanager/events/EventsSyncManager.d.ts +1 -1
  103. package/lib/typescript/models/sdk.d.ts +1 -0
  104. package/lib/typescript/utils/storage.d.ts +3 -3
  105. package/package.json +5 -5
  106. package/src/analytics/sentry/SentryAnalyticsSingleton.ts +7 -9
  107. package/src/analytics/sentry/SentryAnalyticsUtils.ts +24 -36
  108. package/src/analytics/sentry/SentrySdkConstants.ts +2 -0
  109. package/src/components/executiontasks/imageCapture/ImageCapture.tsx +1 -3
  110. package/src/index.tsx +1 -1
  111. package/src/manager/sdk/DispatchSDKManager.ts +8 -3
  112. package/src/manager/sdk/callbacksHandler.ts +39 -2
  113. package/src/manager/syncmanager/AppSyncManager.ts +15 -13
  114. package/src/manager/syncmanager/DBConfig.ts +4 -0
  115. package/src/manager/syncmanager/constants.ts +3 -0
  116. package/src/manager/syncmanager/document/DocumentHttpClient.ts +54 -24
  117. package/src/manager/syncmanager/document/DocumentManager.ts +48 -7
  118. package/src/manager/syncmanager/document/DocumentSyncManager.ts +351 -30
  119. package/src/manager/syncmanager/events/ETEventsManager.ts +50 -16
  120. package/src/manager/syncmanager/events/EventsSyncManager.ts +157 -74
  121. package/src/manager/syncmanager/events/SyncHttpClient.ts +30 -1
  122. package/src/models/auth.ts +1 -0
  123. package/src/models/sdk.ts +1 -0
  124. package/src/network/NetworkClient.ts +18 -2
  125. package/src/network/NetworkUtils.ts +9 -1
  126. package/src/network/client.ts +1 -1
  127. package/src/ui/screens/DeliverScreen.tsx +6 -5
  128. package/src/ui/screens/FormsScreen.tsx +8 -6
  129. package/src/utils/SyncManagerUtils.ts +41 -6
  130. package/src/utils/storage.ts +21 -8
  131. package/src/utils/utils.ts +0 -8
@@ -21,7 +21,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
21
21
  const SyncType = _platformCoreosExecutionEngineSdk.IDispatch.SyncType;
22
22
  class ETEventsManager {
23
23
  constructor() {
24
- _defineProperty(this, "maxRetryCount", 3);
24
+ _defineProperty(this, "maxRetryCount", _constants.MAX_RETRY_COUNT);
25
25
  _defineProperty(this, "_retries", 0);
26
26
  }
27
27
  static async getInstance() {
@@ -44,8 +44,14 @@ class ETEventsManager {
44
44
  ${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\
45
45
  ${_DBConfig.EVENTS_COLUMNS.META} TEXT NOT NULL,\
46
46
  ${_DBConfig.EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\
47
+ ${_DBConfig.EVENTS_COLUMNS.ATTEMPT_COUNT} INTEGER DEFAULT 0 NOT NULL,\
47
48
  ${_DBConfig.EVENTS_COLUMNS.SYNC_ERROR} TEXT);`, []);
48
49
  }
50
+
51
+ // This is the function to insert POD_DOC type event in event table.
52
+ async insertPODDocEvent(dspID, syncType) {
53
+ await Database.executeQuery(`INSERT INTO ${_DBConfig.EVENTS_TABLE}(${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID},${_DBConfig.EVENTS_COLUMNS.SYNC_TYPE},${_DBConfig.EVENTS_COLUMNS.PAYLOAD},${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH},${_DBConfig.EVENTS_COLUMNS.META},${_DBConfig.EVENTS_COLUMNS.SYNCED},${_DBConfig.EVENTS_COLUMNS.CONFIG},${_DBConfig.EVENTS_COLUMNS.SYNC_ERROR}) values (?,?,?,?,?,?,?,?)`, [dspID, syncType, '', 1, '', 0, '', '']);
54
+ }
49
55
  async insertEvent(sequence, payload, dspID, syncType, objectiveRef, config) {
50
56
  await Database.executeQuery(`INSERT INTO ${_DBConfig.EVENTS_TABLE}(\
51
57
  ${_DBConfig.EVENTS_COLUMNS.PAYLOAD},\
@@ -456,6 +462,12 @@ class ETEventsManager {
456
462
  SET \
457
463
  ${_DBConfig.EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${_DBConfig.EVENTS_COLUMNS.ID} = ?;`, [syncError, id]);
458
464
  }
465
+
466
+ // This function will actualy update the POD_DOC type of event as sync along with attempt count.
467
+ async markPODDocEventSynced(sync, attempt, podDocId) {
468
+ if (!podDocId) throw new TypeError('podDocId cannot be null');
469
+ await Database.executeQuery(`UPDATE ${_DBConfig.EVENTS_TABLE} SET ${_DBConfig.EVENTS_COLUMNS.SYNCED} = ?, ${_DBConfig.EVENTS_COLUMNS.ATTEMPT_COUNT} = ? WHERE ${_DBConfig.EVENTS_COLUMNS.SYNC_TYPE} = ?;`, [sync, attempt, podDocId]);
470
+ }
459
471
  async markEventSynced(id) {
460
472
  if (!id) throw new TypeError('Event ID cannot be null');
461
473
  await Database.executeQuery(`UPDATE ${_DBConfig.EVENTS_TABLE} SET ${_DBConfig.EVENTS_COLUMNS.SYNCED} = 1 WHERE ${_DBConfig.EVENTS_COLUMNS.ID} = ?;`, [id]);
@@ -494,18 +506,34 @@ class ETEventsManager {
494
506
  return sqlResult.rows._array;
495
507
  }
496
508
  async getBulkRowsToSync(id, dispatchId) {
497
- const query = `SELECT * FROM \
498
- (SELECT *, \
499
- (SELECT SUM(${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH}) \
500
- FROM ${_DBConfig.EVENTS_TABLE} \
501
- WHERE id <= t.id and ${_DBConfig.EVENTS_COLUMNS.ID} > ${id} and ${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} > 0 \
502
- ) total \
503
- FROM ${_DBConfig.EVENTS_TABLE} t \
504
- ) q \
505
- WHERE total <= ${_constants.BULK_DATA_LIMIT} \
506
- ORDER BY ${_DBConfig.EVENTS_COLUMNS.ID};`;
507
- const sqlResult = await Database.executeQuery(query, []);
508
- return sqlResult.rows._array;
509
+ // If it is allowed max_retried_rows are allowed to process then it will refetch those data which are even have tried max attempt otherwise it will skip those events.
510
+ if (_constants.PROCESS_MAX_RETRIED_ROWS) {
511
+ const query = `SELECT * FROM \
512
+ (SELECT *, \
513
+ (SELECT SUM(${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH}) \
514
+ FROM ${_DBConfig.EVENTS_TABLE} \
515
+ WHERE id <= t.id and ${_DBConfig.EVENTS_COLUMNS.ID} > ${id} and ${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${_DBConfig.EVENTS_COLUMNS.SYNCED} = 0 \
516
+ ) total \
517
+ FROM ${_DBConfig.EVENTS_TABLE} t \
518
+ ) q \
519
+ WHERE total <= ${_constants.BULK_DATA_LIMIT} \
520
+ ORDER BY ${_DBConfig.EVENTS_COLUMNS.ID};`;
521
+ const sqlResult = await Database.executeQuery(query, []);
522
+ return sqlResult.rows._array;
523
+ } else {
524
+ const query = `SELECT * FROM \
525
+ (SELECT *, \
526
+ (SELECT SUM(${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH}) \
527
+ FROM ${_DBConfig.EVENTS_TABLE} \
528
+ WHERE id <= t.id and ${_DBConfig.EVENTS_COLUMNS.ID} > ${id} and ${_DBConfig.EVENTS_COLUMNS.DISPATCH_ID} \ = '${dispatchId}' and ${_DBConfig.EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${_DBConfig.EVENTS_COLUMNS.SYNCED} = 0 and ${_DBConfig.EVENTS_COLUMNS.ATTEMPT_COUNT} < ${_constants.MAX_RETRY_COUNT} \
529
+ ) total \
530
+ FROM ${_DBConfig.EVENTS_TABLE} t \
531
+ ) q \
532
+ WHERE total <= ${_constants.BULK_DATA_LIMIT} \
533
+ ORDER BY ${_DBConfig.EVENTS_COLUMNS.ID};`;
534
+ const sqlResult = await Database.executeQuery(query, []);
535
+ return sqlResult.rows._array;
536
+ }
509
537
  }
510
538
  }
511
539
  exports.default = ETEventsManager;
@@ -1 +1 @@
1
- {"version":3,"names":["_utils","require","_DBConfig","Database","_interopRequireWildcard","_BaseError","_ErrorCodes","_Logger","_constants","_platformCoreosExecutionEngineSdk","_class","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_defineProperty","obj","key","value","_toPropertyKey","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SyncType","IDispatch","ETEventsManager","constructor","getInstance","instance","manager","init","executeQuery","EVENTS_TABLE","EVENTS_COLUMNS","ID","DISPATCH_ID","PAYLOAD","CONFIG","SYNC_TYPE","DATA_LENGTH","META","SYNCED","SYNC_ERROR","insertEvent","sequence","payload","dspID","syncType","objectiveRef","config","SEQUENCE","getWFIPayload","_bulkEventData","result","dispatchId","status","timestamp","code","attemptId","updatedBy","mergedObjectiveId","meta","outData","output","data","offset","jobMapping","DispatchExecutor","getJobMapping","BULK_DATA_LIMIT","__unmerged","keys","forEach","customETName","push","workflows","length","getCustodyPayload","getJobRemovalPayload","getDispatchUpdatePayload","_modifyEventData","CUSTODY_IN_SCAN","custodyInScans","action","CUSTODY_OUT_SCAN","custodyOutScans","WORKFLOW","map","_payload","_payload$workflows$0$","JOB_REMOVAL","_jobRemoval$success","_jobRemoval$failure","jobRemoval","success","failure","DispatchSyncType","DISPATCH_UPDATE","DISPATCH_SUB_STATUS_UPDATE","DEFAULT","splitData","chunkSize","splitKey","splitArray","Array","isArray","chunk","slice","insertQueueEvent","_eventData","args","values","queryData","_meta","JSON","stringify","query","join","executeBulkQuery","_retries","err","maxRetryCount","Logger","logEvent","toString","LOG_TYPE","SDK_DEBUG","insertBulkEvent","syncManagerPayload","index","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentError","InvalidArgumentsError","chunkedData","_evData","getAllEvents","dispatchID","resultSet","rows","_array","getAllUnsyncedEvents","deleteAllEvents","deleteEventsQuery","resetAutoIncrementSequence","updateError","id","syncError","markEventSynced","getWorkflowUpdateEvents","sqlResultSet","getJobRemovalEvents","getCustodyBatch","sqlResult","getObjectiveDetails","rs","getRowToSync","getBulkRowsToSync","exports"],"sources":["ETEventsManager.ts"],"sourcesContent":["import { isEmptyOrBlank } from '../../../utils/utils';\nimport {\n BulkEvent,\n CustodyData,\n DispatchSyncType,\n EventETData,\n EventRow,\n EVENTS_COLUMNS,\n EVENTS_TABLE,\n SyncManagerPayload,\n ExecEngineSyncType,\n WFUpdateBulkEventData,\n WIUpdateOutputPayload,\n WORKFLOW_INSTANCE_COLUMNS,\n WORKFLOW_INSTANCE_TABLE,\n} from '../DBConfig';\nimport type { ExecQuery } from '../database';\nimport * as Database from '../database';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n} from '../../../errors/ErrorCodes';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { BULK_DATA_LIMIT } from '../constants';\nimport Storage from '../../../utils/storage';\n\n// NEW CODE\nimport {\n DispatchExecutor,\n IDispatch,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nexport default class ETEventsManager {\n private static instance: ETEventsManager;\n private maxRetryCount: number = 3;\n private _retries = 0;\n\n private constructor() {}\n\n public static async getInstance(): Promise<ETEventsManager> {\n if (!ETEventsManager.instance) {\n let manager = new ETEventsManager();\n await ETEventsManager.init();\n ETEventsManager.instance = manager;\n }\n return ETEventsManager.instance;\n }\n\n // NEED TO REMOVE SYNCED, CONFIG, OBJECTIVE_REF\n private static async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${EVENTS_TABLE} (\\\n ${EVENTS_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${EVENTS_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.PAYLOAD} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.CONFIG} TEXT,\\\n ${EVENTS_COLUMNS.SYNC_TYPE} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.META} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.SYNC_ERROR} TEXT);`,\n []\n );\n }\n\n async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values (?,?,?,?,?,?)`,\n [payload, dspID, sequence, config ?? null, syncType, objectiveRef]\n );\n }\n\n private async getWFIPayload(\n _bulkEventData: BulkEvent\n ): Promise<Array<WIUpdateOutputPayload>> {\n const result: Array<WIUpdateOutputPayload> = [];\n const dispatchId = _bulkEventData.dispatchId;\n const { status, timestamp, code, attemptId, updatedBy, mergedObjectiveId } =\n _bulkEventData.meta;\n const outData: any = {};\n const output: WFUpdateBulkEventData = _bulkEventData.data;\n\n let offset = 0;\n let jobMapping: Array<{ jobId: string; workflowInstanceId: string }> =\n await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n do {\n const __unmerged: Array<{ jobId: string; workflowInstanceId: string }> =\n jobMapping;\n\n Object.keys(output).forEach((customETName: string) => {\n outData[customETName] = output[customETName];\n });\n\n result.push({\n dispatchId,\n updatedBy,\n workflows: [\n {\n status,\n attemptId,\n timestamp,\n code,\n data: outData,\n __unmerged,\n meta: {},\n },\n ],\n });\n\n offset += BULK_DATA_LIMIT;\n jobMapping = await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n } while (jobMapping.length > 0);\n\n return result;\n }\n\n private getCustodyPayload(_bulkEventData: BulkEvent) {\n const data: Array<CustodyData> = _bulkEventData.data;\n return data;\n }\n\n private getJobRemovalPayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n return data;\n }\n\n private getDispatchUpdatePayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n const payload = data.payload;\n return payload;\n }\n\n private async _modifyEventData(\n _bulkEventData: BulkEvent\n ): Promise<Array<SyncManagerPayload>> {\n const syncType: ExecEngineSyncType | DispatchSyncType =\n _bulkEventData.syncType;\n switch (syncType) {\n case SyncType.CUSTODY_IN_SCAN: {\n const custodyInScans = this.getCustodyPayload(_bulkEventData);\n return [\n {\n data: {\n action: SyncType.CUSTODY_IN_SCAN,\n payload: { output: custodyInScans },\n },\n length: custodyInScans.length,\n },\n ];\n }\n case SyncType.CUSTODY_OUT_SCAN: {\n const custodyOutScans = this.getCustodyPayload(_bulkEventData);\n\n return [\n {\n data: {\n action: SyncType.CUSTODY_OUT_SCAN,\n payload: { output: custodyOutScans },\n },\n length: custodyOutScans.length,\n },\n ];\n }\n case SyncType.WORKFLOW: {\n const payload = await this.getWFIPayload(_bulkEventData);\n return payload.map((_payload) => ({\n data: { action: SyncType.WORKFLOW, payload: _payload },\n length: _payload.workflows[0].__unmerged?.length || 0,\n }));\n }\n case SyncType.JOB_REMOVAL: {\n const jobRemoval = this.getJobRemovalPayload(_bulkEventData);\n const length =\n jobRemoval?.success?.length + jobRemoval?.failure?.length;\n return [\n {\n data: {\n action: SyncType.JOB_REMOVAL,\n payload: jobRemoval,\n },\n length: length || 0,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n default: {\n return [\n {\n data: {\n action: DispatchSyncType.DEFAULT,\n payload: {},\n },\n length: 0,\n },\n ];\n }\n }\n }\n\n private splitData(data: any, chunkSize: number, splitKey: string): any[] {\n const result: any = [];\n const splitArray = data[splitKey];\n\n if (!splitArray || !Array.isArray(splitArray)) {\n return result;\n }\n\n for (let i = 0; i < splitArray.length; i += chunkSize) {\n const chunk: any = {};\n\n for (const key in data) {\n if (data.hasOwnProperty(key)) {\n chunk[key] =\n key === splitKey ? splitArray.slice(i, i + chunkSize) : data[key];\n }\n }\n\n result.push(chunk);\n }\n\n return result;\n }\n\n // NEW CODE\n async insertQueueEvent(_eventData: BulkEvent): Promise<void> {\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n try {\n values.push(`(?,?,?,?)`);\n const _meta = JSON.stringify(_eventData.meta);\n args.push(\n _eventData.data,\n _eventData.dispatchId,\n _eventData.syncType,\n _meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertQueueEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertQueueEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n\n\n // NEW CODE\n async insertBulkEvent(_eventData: BulkEvent): Promise<void> {\n try {\n const output: Array<SyncManagerPayload> = await this._modifyEventData(\n _eventData\n );\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n const _meta = JSON.stringify(_eventData.meta || {});\n\n if (\n _eventData.syncType === SyncType.WORKFLOW ||\n _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n _eventData.syncType === SyncType.CUSTODY_OUT_SCAN ||\n _eventData.syncType === DispatchSyncType.DISPATCH_UPDATE ||\n _eventData.syncType === DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE\n ) {\n output.forEach(\n (syncManagerPayload: SyncManagerPayload, index: number) => {\n const _payload = JSON.stringify(syncManagerPayload.data);\n if (\n isEmptyOrBlank(syncManagerPayload.data.action) ||\n isEmptyOrBlank(_payload)\n ) {\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n }\n values.push(`(?,?,?,?,?)`);\n args.push(\n _payload,\n _eventData.dispatchId,\n _eventData.syncType,\n syncManagerPayload.length,\n _meta\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n }\n );\n\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n // else if (\n // _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n // _eventData.syncType === SyncType.CUSTODY_OUT_SCAN\n // ) {\n // output.forEach(\n // (syncManagerPayload: SyncManagerPayload, index: number) => {\n // const _payload = JSON.stringify(syncManagerPayload);\n // if (\n // isEmptyOrBlank(syncManagerPayload.action) ||\n // isEmptyOrBlank(_payload)\n // ) {\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n // }\n // values.push(`(?,?,?,?)`);\n // args.push(\n // _payload,\n // _eventData.dispatchId,\n // _eventData.syncType,\n // _meta\n // );\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // }\n // );\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } else if (_eventData.syncType === DispatchSyncType.DISPATCH_UPDATE) {\n // }\n else {\n const chunkedData = this.splitData(output, BULK_DATA_LIMIT, 'payload');\n\n chunkedData.forEach((_evData, index) => {\n const _payload = JSON.stringify(_evData.payload);\n if (isEmptyOrBlank(_evData.action) || isEmptyOrBlank(_payload))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n values.push(`(?,?,?,?,?)`);\n args.push(_evData, _eventData.dispatchId, _eventData.syncType, _meta);\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertBulkEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertBulkEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n // OLD CODE\n // async insertBulkEvent(_eventData: BulkEvent[]): Promise<void> {\n // try {\n // let args: any[] = [];\n // let values: any[] = [];\n // let queryData: ExecQuery[] = []; //final data to pass to db\n // let evIndex = 100;\n\n // _eventData.forEach((_evData, index) => {\n // if (\n // !_evData.sequence ||\n // isEmptyOrBlank(_evData.data) ||\n // isEmptyOrBlank(_evData.dispatchId) ||\n // isEmptyOrBlank(_evData.syncType)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n\n // values.push(`(?,?,?,?,?)`);\n // args.push(\n // _evData.data,\n // _evData.dispatchId,\n // // _evData.sequence,\n // _evData.config ? JSON.stringify(_evData.config) : null,\n // _evData.syncType,\n // _evData.meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n // );\n // if (index === evIndex || index === _eventData.length - 1) {\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.CONFIG},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // evIndex = evIndex + evIndex;\n // }\n // });\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } catch (err) {\n // if (this._retries < this.maxRetryCount) {\n // Logger.getInstance().logEvent(\n // 'insertBulkEvent ',\n // this._retries.toString(),\n // LOG_TYPE.SDK_DEBUG\n // );\n // this._retries++;\n // await this.insertBulkEvent(_eventData);\n // } else {\n // this._retries = 0;\n // throw err;\n // }\n // }\n // }\n\n async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n if (dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE};`,\n []\n );\n return resultSet.rows._array;\n }\n }\n\n async getAllUnsyncedEvents(): Promise<EventRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE} \\\n where ${EVENTS_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllEvents() {\n const deleteEventsQuery = {\n query: `DELETE FROM ${EVENTS_TABLE};`,\n args: [],\n };\n const resetAutoIncrementSequence = {\n query: `UPDATE sqlite_sequence SET seq = 0 WHERE name\n = '${EVENTS_TABLE}';`,\n args: [],\n };\n\n return Database.executeBulkQuery([\n deleteEventsQuery,\n resetAutoIncrementSequence,\n ]);\n }\n\n async updateError(id: number, syncError: string): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} \\\n SET \\\n ${EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [syncError, id]\n );\n }\n\n async markEventSynced(id: number): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = 1 WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [id]\n );\n }\n\n async getWorkflowUpdateEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getJobRemovalEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getCustodyBatch(dispatchID: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0 and \\\n (${EVENTS_COLUMNS.SYNC_TYPE} = ? or ${EVENTS_COLUMNS.SYNC_TYPE} = ?) \\\n and ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [SyncType.CUSTODY_IN_SCAN, SyncType.CUSTODY_OUT_SCAN, dispatchID]\n );\n return sqlResult.rows._array;\n }\n async getObjectiveDetails(objectiveRef: string): Promise<EventRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE} WHERE ${EVENTS_COLUMNS.META} = ?;`,\n [objectiveRef]\n );\n return rs.rows._array;\n }\n\n async getRowToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.ID} = ? and \\\n ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [id, dispatchId]\n );\n return sqlResult.rows._array;\n }\n\n async getBulkRowsToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n\n return sqlResult.rows._array;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_utils","require","_DBConfig","Database","_interopRequireWildcard","_BaseError","_ErrorCodes","_Logger","_constants","_platformCoreosExecutionEngineSdk","_class","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_defineProperty","obj","key","value","_toPropertyKey","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","TypeError","Number","SyncType","IDispatch","ETEventsManager","constructor","MAX_RETRY_COUNT","getInstance","instance","manager","init","executeQuery","EVENTS_TABLE","EVENTS_COLUMNS","ID","DISPATCH_ID","PAYLOAD","CONFIG","SYNC_TYPE","DATA_LENGTH","META","SYNCED","ATTEMPT_COUNT","SYNC_ERROR","insertPODDocEvent","dspID","syncType","insertEvent","sequence","payload","objectiveRef","config","SEQUENCE","getWFIPayload","_bulkEventData","result","dispatchId","status","timestamp","code","attemptId","updatedBy","mergedObjectiveId","meta","outData","output","data","offset","jobMapping","DispatchExecutor","getJobMapping","BULK_DATA_LIMIT","__unmerged","keys","forEach","customETName","push","workflows","length","getCustodyPayload","getJobRemovalPayload","getDispatchUpdatePayload","_modifyEventData","CUSTODY_IN_SCAN","custodyInScans","action","CUSTODY_OUT_SCAN","custodyOutScans","WORKFLOW","map","_payload","_payload$workflows$0$","JOB_REMOVAL","_jobRemoval$success","_jobRemoval$failure","jobRemoval","success","failure","DispatchSyncType","DISPATCH_UPDATE","DISPATCH_SUB_STATUS_UPDATE","DEFAULT","splitData","chunkSize","splitKey","splitArray","Array","isArray","chunk","slice","insertQueueEvent","_eventData","args","values","queryData","_meta","JSON","stringify","query","join","executeBulkQuery","_retries","err","maxRetryCount","Logger","logEvent","toString","LOG_TYPE","SDK_DEBUG","insertBulkEvent","syncManagerPayload","index","isEmptyOrBlank","BaseError","BaseErrorCodes","InvalidArgumentError","InvalidArgumentsError","chunkedData","_evData","getAllEvents","dispatchID","resultSet","rows","_array","getAllUnsyncedEvents","deleteAllEvents","deleteEventsQuery","resetAutoIncrementSequence","updateError","id","syncError","markPODDocEventSynced","sync","attempt","podDocId","markEventSynced","getWorkflowUpdateEvents","sqlResultSet","getJobRemovalEvents","getCustodyBatch","sqlResult","getObjectiveDetails","rs","getRowToSync","getBulkRowsToSync","PROCESS_MAX_RETRIED_ROWS","exports"],"sources":["ETEventsManager.ts"],"sourcesContent":["import { isEmptyOrBlank } from '../../../utils/utils';\nimport {\n BulkEvent,\n CustodyData,\n DispatchSyncType,\n EventETData,\n EventRow,\n EVENTS_COLUMNS,\n EVENTS_TABLE,\n SyncManagerPayload,\n ExecEngineSyncType,\n WFUpdateBulkEventData,\n WIUpdateOutputPayload,\n WORKFLOW_INSTANCE_COLUMNS,\n WORKFLOW_INSTANCE_TABLE,\n} from '../DBConfig';\nimport type { ExecQuery } from '../database';\nimport * as Database from '../database';\nimport { BaseError } from '../../../errors/BaseError';\nimport BaseErrorCodes, {\n InvalidArgumentsError,\n} from '../../../errors/ErrorCodes';\nimport Logger, { LOG_TYPE } from '../../../utils/Logger';\nimport { BULK_DATA_LIMIT, MAX_RETRY_COUNT, PROCESS_MAX_RETRIED_ROWS } from '../constants';\nimport Storage from '../../../utils/storage';\n\n// NEW CODE\nimport {\n DispatchExecutor,\n IDispatch,\n} from '@os1-platform/platform-coreos-execution-engine-sdk';\nconst SyncType = IDispatch.SyncType;\n\nexport default class ETEventsManager {\n private static instance: ETEventsManager;\n private maxRetryCount: number = MAX_RETRY_COUNT;\n private _retries = 0;\n\n private constructor() {}\n\n public static async getInstance(): Promise<ETEventsManager> {\n if (!ETEventsManager.instance) {\n let manager = new ETEventsManager();\n await ETEventsManager.init();\n ETEventsManager.instance = manager;\n }\n return ETEventsManager.instance;\n }\n\n // NEED TO REMOVE SYNCED, CONFIG, OBJECTIVE_REF\n private static async init(): Promise<void> {\n await Database.executeQuery(\n `CREATE TABLE IF NOT EXISTS ${EVENTS_TABLE} (\\\n ${EVENTS_COLUMNS.ID} INTEGER PRIMARY KEY AUTOINCREMENT,\\\n ${EVENTS_COLUMNS.DISPATCH_ID} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.PAYLOAD} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.CONFIG} TEXT,\\\n ${EVENTS_COLUMNS.SYNC_TYPE} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.DATA_LENGTH} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.META} TEXT NOT NULL,\\\n ${EVENTS_COLUMNS.SYNCED} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.ATTEMPT_COUNT} INTEGER DEFAULT 0 NOT NULL,\\\n ${EVENTS_COLUMNS.SYNC_ERROR} TEXT);`,\n []\n );\n }\n\n // This is the function to insert POD_DOC type event in event table.\n async insertPODDocEvent(dspID: string, syncType: string): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(${EVENTS_COLUMNS.DISPATCH_ID},${EVENTS_COLUMNS.SYNC_TYPE},${EVENTS_COLUMNS.PAYLOAD},${EVENTS_COLUMNS.DATA_LENGTH},${EVENTS_COLUMNS.META},${EVENTS_COLUMNS.SYNCED},${EVENTS_COLUMNS.CONFIG},${EVENTS_COLUMNS.SYNC_ERROR}) values (?,?,?,?,?,?,?,?)`,\n [dspID, syncType, '', 1, '', 0, '', '']\n );\n }\n\n async insertEvent(\n sequence: number,\n payload: string,\n dspID: string,\n syncType: string,\n objectiveRef: string,\n config?: string\n ): Promise<void> {\n await Database.executeQuery(\n `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SEQUENCE},\\\n ${EVENTS_COLUMNS.CONFIG},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values (?,?,?,?,?,?)`,\n [payload, dspID, sequence, config ?? null, syncType, objectiveRef]\n );\n }\n\n private async getWFIPayload(\n _bulkEventData: BulkEvent\n ): Promise<Array<WIUpdateOutputPayload>> {\n const result: Array<WIUpdateOutputPayload> = [];\n const dispatchId = _bulkEventData.dispatchId;\n const { status, timestamp, code, attemptId, updatedBy, mergedObjectiveId } =\n _bulkEventData.meta;\n const outData: any = {};\n const output: WFUpdateBulkEventData = _bulkEventData.data;\n\n let offset = 0;\n let jobMapping: Array<{ jobId: string; workflowInstanceId: string }> =\n await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n do {\n const __unmerged: Array<{ jobId: string; workflowInstanceId: string }> =\n jobMapping;\n\n Object.keys(output).forEach((customETName: string) => {\n outData[customETName] = output[customETName];\n });\n\n result.push({\n dispatchId,\n updatedBy,\n workflows: [\n {\n status,\n attemptId,\n timestamp,\n code,\n data: outData,\n __unmerged,\n meta: {},\n },\n ],\n });\n\n offset += BULK_DATA_LIMIT;\n jobMapping = await DispatchExecutor.getJobMapping(\n mergedObjectiveId,\n BULK_DATA_LIMIT,\n offset\n );\n } while (jobMapping.length > 0);\n\n return result;\n }\n\n private getCustodyPayload(_bulkEventData: BulkEvent) {\n const data: Array<CustodyData> = _bulkEventData.data;\n return data;\n }\n\n private getJobRemovalPayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n return data;\n }\n\n private getDispatchUpdatePayload(_bulkEventData: BulkEvent) {\n const data: any = _bulkEventData.data;\n const payload = data.payload;\n return payload;\n }\n\n private async _modifyEventData(\n _bulkEventData: BulkEvent\n ): Promise<Array<SyncManagerPayload>> {\n const syncType: ExecEngineSyncType | DispatchSyncType =\n _bulkEventData.syncType;\n switch (syncType) {\n case SyncType.CUSTODY_IN_SCAN: {\n const custodyInScans = this.getCustodyPayload(_bulkEventData);\n return [\n {\n data: {\n action: SyncType.CUSTODY_IN_SCAN,\n payload: { output: custodyInScans },\n },\n length: custodyInScans.length,\n },\n ];\n }\n case SyncType.CUSTODY_OUT_SCAN: {\n const custodyOutScans = this.getCustodyPayload(_bulkEventData);\n\n return [\n {\n data: {\n action: SyncType.CUSTODY_OUT_SCAN,\n payload: { output: custodyOutScans },\n },\n length: custodyOutScans.length,\n },\n ];\n }\n case SyncType.WORKFLOW: {\n const payload = await this.getWFIPayload(_bulkEventData);\n return payload.map((_payload) => ({\n data: { action: SyncType.WORKFLOW, payload: _payload },\n length: _payload.workflows[0].__unmerged?.length || 0,\n }));\n }\n case SyncType.JOB_REMOVAL: {\n const jobRemoval = this.getJobRemovalPayload(_bulkEventData);\n const length =\n jobRemoval?.success?.length + jobRemoval?.failure?.length;\n return [\n {\n data: {\n action: SyncType.JOB_REMOVAL,\n payload: jobRemoval,\n },\n length: length || 0,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n case DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE: {\n return [\n {\n data: {\n action: DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE,\n payload: this.getDispatchUpdatePayload(_bulkEventData),\n },\n length: 1,\n },\n ];\n }\n default: {\n return [\n {\n data: {\n action: DispatchSyncType.DEFAULT,\n payload: {},\n },\n length: 0,\n },\n ];\n }\n }\n }\n\n private splitData(data: any, chunkSize: number, splitKey: string): any[] {\n const result: any = [];\n const splitArray = data[splitKey];\n\n if (!splitArray || !Array.isArray(splitArray)) {\n return result;\n }\n\n for (let i = 0; i < splitArray.length; i += chunkSize) {\n const chunk: any = {};\n\n for (const key in data) {\n if (data.hasOwnProperty(key)) {\n chunk[key] =\n key === splitKey ? splitArray.slice(i, i + chunkSize) : data[key];\n }\n }\n\n result.push(chunk);\n }\n\n return result;\n }\n\n // NEW CODE\n async insertQueueEvent(_eventData: BulkEvent): Promise<void> {\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n try {\n values.push(`(?,?,?,?)`);\n const _meta = JSON.stringify(_eventData.meta);\n args.push(\n _eventData.data,\n _eventData.dispatchId,\n _eventData.syncType,\n _meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertQueueEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertQueueEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n\n\n // NEW CODE\n async insertBulkEvent(_eventData: BulkEvent): Promise<void> {\n try {\n const output: Array<SyncManagerPayload> = await this._modifyEventData(\n _eventData\n );\n let args: any[] = [];\n let values: any[] = [];\n let queryData: ExecQuery[] = []; //final data to pass to db\n const _meta = JSON.stringify(_eventData.meta || {});\n\n if (\n _eventData.syncType === SyncType.WORKFLOW ||\n _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n _eventData.syncType === SyncType.CUSTODY_OUT_SCAN ||\n _eventData.syncType === DispatchSyncType.DISPATCH_UPDATE ||\n _eventData.syncType === DispatchSyncType.DISPATCH_SUB_STATUS_UPDATE\n ) {\n output.forEach(\n (syncManagerPayload: SyncManagerPayload, index: number) => {\n const _payload = JSON.stringify(syncManagerPayload.data);\n if (\n isEmptyOrBlank(syncManagerPayload.data.action) ||\n isEmptyOrBlank(_payload)\n ) {\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n }\n values.push(`(?,?,?,?,?)`);\n args.push(\n _payload,\n _eventData.dispatchId,\n _eventData.syncType,\n syncManagerPayload.length,\n _meta\n );\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n }\n );\n\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n // else if (\n // _eventData.syncType === SyncType.CUSTODY_IN_SCAN ||\n // _eventData.syncType === SyncType.CUSTODY_OUT_SCAN\n // ) {\n // output.forEach(\n // (syncManagerPayload: SyncManagerPayload, index: number) => {\n // const _payload = JSON.stringify(syncManagerPayload);\n // if (\n // isEmptyOrBlank(syncManagerPayload.action) ||\n // isEmptyOrBlank(_payload)\n // ) {\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n // }\n // values.push(`(?,?,?,?)`);\n // args.push(\n // _payload,\n // _eventData.dispatchId,\n // _eventData.syncType,\n // _meta\n // );\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // }\n // );\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } else if (_eventData.syncType === DispatchSyncType.DISPATCH_UPDATE) {\n // }\n else {\n const chunkedData = this.splitData(output, BULK_DATA_LIMIT, 'payload');\n\n chunkedData.forEach((_evData, index) => {\n const _payload = JSON.stringify(_evData.payload);\n if (isEmptyOrBlank(_evData.action) || isEmptyOrBlank(_payload))\n throw new BaseError(\n BaseErrorCodes.InvalidArgumentError,\n InvalidArgumentsError\n );\n values.push(`(?,?,?,?,?)`);\n args.push(_evData, _eventData.dispatchId, _eventData.syncType, _meta);\n queryData.push({\n query: `INSERT INTO ${EVENTS_TABLE}(\\\n ${EVENTS_COLUMNS.PAYLOAD},\\\n ${EVENTS_COLUMNS.DISPATCH_ID},\\\n ${EVENTS_COLUMNS.SYNC_TYPE},\\\n ${EVENTS_COLUMNS.DATA_LENGTH},\\\n ${EVENTS_COLUMNS.META}) \\\n values ${values.join(',')};`,\n args,\n });\n values = [];\n args = [];\n });\n await Database.executeBulkQuery(queryData);\n this._retries = 0;\n }\n } catch (err) {\n if (this._retries < this.maxRetryCount) {\n Logger.getInstance().logEvent(\n 'insertBulkEvent ',\n this._retries.toString(),\n LOG_TYPE.SDK_DEBUG\n );\n this._retries++;\n await this.insertBulkEvent(_eventData);\n } else {\n this._retries = 0;\n throw err;\n }\n }\n }\n\n // OLD CODE\n // async insertBulkEvent(_eventData: BulkEvent[]): Promise<void> {\n // try {\n // let args: any[] = [];\n // let values: any[] = [];\n // let queryData: ExecQuery[] = []; //final data to pass to db\n // let evIndex = 100;\n\n // _eventData.forEach((_evData, index) => {\n // if (\n // !_evData.sequence ||\n // isEmptyOrBlank(_evData.data) ||\n // isEmptyOrBlank(_evData.dispatchId) ||\n // isEmptyOrBlank(_evData.syncType)\n // )\n // throw new BaseError(\n // BaseErrorCodes.InvalidArgumentError,\n // InvalidArgumentsError\n // );\n\n // values.push(`(?,?,?,?,?)`);\n // args.push(\n // _evData.data,\n // _evData.dispatchId,\n // // _evData.sequence,\n // _evData.config ? JSON.stringify(_evData.config) : null,\n // _evData.syncType,\n // _evData.meta\n // ? _evData.meta.jobId + _evData.meta.objectiveReference\n // : 'NO_REF_FOUND'\n // );\n // if (index === evIndex || index === _eventData.length - 1) {\n // queryData.push({\n // query: `INSERT INTO ${EVENTS_TABLE}(\\\n // ${EVENTS_COLUMNS.PAYLOAD},\\\n // ${EVENTS_COLUMNS.DISPATCH_ID},\\\n // ${EVENTS_COLUMNS.CONFIG},\\\n // ${EVENTS_COLUMNS.SYNC_TYPE},\\\n // ${EVENTS_COLUMNS.OBJECTIVE_REF}) \\\n // values ${values.join(',')};`,\n // args,\n // });\n // values = [];\n // args = [];\n // evIndex = evIndex + evIndex;\n // }\n // });\n\n // await Database.executeBulkQuery(queryData);\n // this._retries = 0;\n // } catch (err) {\n // if (this._retries < this.maxRetryCount) {\n // Logger.getInstance().logEvent(\n // 'insertBulkEvent ',\n // this._retries.toString(),\n // LOG_TYPE.SDK_DEBUG\n // );\n // this._retries++;\n // await this.insertBulkEvent(_eventData);\n // } else {\n // this._retries = 0;\n // throw err;\n // }\n // }\n // }\n\n async getAllEvents(dispatchID?: string): Promise<EventRow[]> {\n if (dispatchID) {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.DISPATCH_ID} = ?;`,\n [dispatchID]\n );\n return resultSet.rows._array;\n } else {\n const resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE};`,\n []\n );\n return resultSet.rows._array;\n }\n }\n\n async getAllUnsyncedEvents(): Promise<EventRow[]> {\n let resultSet = await Database.executeQuery(\n `SELECT * FROM ${EVENTS_TABLE} \\\n where ${EVENTS_COLUMNS.SYNCED} = 0;`,\n []\n );\n return resultSet.rows._array;\n }\n\n public deleteAllEvents() {\n const deleteEventsQuery = {\n query: `DELETE FROM ${EVENTS_TABLE};`,\n args: [],\n };\n const resetAutoIncrementSequence = {\n query: `UPDATE sqlite_sequence SET seq = 0 WHERE name\n = '${EVENTS_TABLE}';`,\n args: [],\n };\n\n return Database.executeBulkQuery([\n deleteEventsQuery,\n resetAutoIncrementSequence,\n ]);\n }\n\n async updateError(id: number, syncError: string): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} \\\n SET \\\n ${EVENTS_COLUMNS.SYNC_ERROR} = ? WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [syncError, id]\n );\n }\n\n // This function will actualy update the POD_DOC type of event as sync along with attempt count.\n async markPODDocEventSynced(sync: number, attempt:number, podDocId: String): Promise<void> {\n if (!podDocId) throw new TypeError('podDocId cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = ?, ${EVENTS_COLUMNS.ATTEMPT_COUNT} = ? WHERE ${EVENTS_COLUMNS.SYNC_TYPE} = ?;`,\n [sync,attempt,podDocId]\n );\n }\n\n async markEventSynced(id: number): Promise<void> {\n if (!id) throw new TypeError('Event ID cannot be null');\n await Database.executeQuery(\n `UPDATE ${EVENTS_TABLE} SET ${EVENTS_COLUMNS.SYNCED} = 1 WHERE ${EVENTS_COLUMNS.ID} = ?;`,\n [id]\n );\n }\n\n async getWorkflowUpdateEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getJobRemovalEvents(syncType: string): Promise<EventRow[]> {\n let sqlResultSet = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0\\\n and ${EVENTS_COLUMNS.SYNC_TYPE} = ?\\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC LIMIT 1;`,\n [syncType]\n );\n return sqlResultSet.rows._array;\n }\n async getCustodyBatch(dispatchID: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.SYNCED} = 0 and \\\n (${EVENTS_COLUMNS.SYNC_TYPE} = ? or ${EVENTS_COLUMNS.SYNC_TYPE} = ?) \\\n and ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [SyncType.CUSTODY_IN_SCAN, SyncType.CUSTODY_OUT_SCAN, dispatchID]\n );\n return sqlResult.rows._array;\n }\n async getObjectiveDetails(objectiveRef: string): Promise<EventRow[]> {\n let rs = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE} WHERE ${EVENTS_COLUMNS.META} = ?;`,\n [objectiveRef]\n );\n return rs.rows._array;\n }\n\n async getRowToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n const sqlResult = await Database.executeQuery(\n `SELECT * from ${EVENTS_TABLE}\\\n WHERE ${EVENTS_COLUMNS.ID} = ? and \\\n ${EVENTS_COLUMNS.DISPATCH_ID} = ? \\\n ORDER BY ${EVENTS_COLUMNS.ID} ASC;`,\n [id, dispatchId]\n );\n return sqlResult.rows._array;\n }\n\n async getBulkRowsToSync(id: string, dispatchId: string): Promise<EventRow[]> {\n // If it is allowed max_retried_rows are allowed to process then it will refetch those data which are even have tried max attempt otherwise it will skip those events.\n if(PROCESS_MAX_RETRIED_ROWS){\n const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n return sqlResult.rows._array;\n }else{\n const query = `SELECT * FROM \\\n (SELECT *, \\ \n (SELECT SUM(${EVENTS_COLUMNS.DATA_LENGTH}) \\\n FROM ${EVENTS_TABLE} \\\n WHERE id <= t.id and ${EVENTS_COLUMNS.ID} > ${id} and ${EVENTS_COLUMNS.DISPATCH_ID} \\ = '${dispatchId}' and ${EVENTS_COLUMNS.DATA_LENGTH} > 0 and ${EVENTS_COLUMNS.SYNCED} = 0 and ${EVENTS_COLUMNS.ATTEMPT_COUNT} < ${MAX_RETRY_COUNT} \\\n ) total \\\n FROM ${EVENTS_TABLE} t \\\n ) q \\\n WHERE total <= ${BULK_DATA_LIMIT} \\\n ORDER BY ${EVENTS_COLUMNS.ID};`;\n\n const sqlResult = await Database.executeQuery(query, []);\n return sqlResult.rows._array;\n }\n }\n}\n"],"mappings":"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"}
@@ -36,7 +36,7 @@ class EventsSyncManager {
36
36
  _defineProperty(this, "inProgress", false);
37
37
  _defineProperty(this, "cScanInProgress", false);
38
38
  _defineProperty(this, "eventsManager", void 0);
39
- _defineProperty(this, "maxRetryCount", 3);
39
+ _defineProperty(this, "maxRetryCount", _constants.MAX_RETRY_COUNT);
40
40
  _defineProperty(this, "_retries", 0);
41
41
  }
42
42
  initSyncManager(baseURL, retryCount) {
@@ -64,10 +64,28 @@ class EventsSyncManager {
64
64
  const lastSyncedEventId = await _storage.default.getInstance().getSharedItem(_constants.LAST_SYNCED_EVENT_ID);
65
65
  const dspID = await _DispatchSdkCache.default.getInstance().getKeyFromCache(_DispatchSdkCache.default.KEYS.DISPATCH_ID);
66
66
  const bulkEventRows = await this.eventsManager.getBulkRowsToSync(lastSyncedEventId, dspID ?? '');
67
- if (bulkEventRows.length) {
68
- await this.syncBulkEventToServer(bulkEventRows, lastSyncedEventId);
67
+ var arrEventsToSync = [];
68
+
69
+ // Filtering and removing those events which are type of POD_DOC
70
+ for (var index in bulkEventRows) {
71
+ let syncType = bulkEventRows[index].sync_type;
72
+ if (syncType.includes(_constants.POD_DOC)) {
73
+ break;
74
+ }
75
+ arrEventsToSync.push(bulkEventRows[index]);
76
+ }
77
+ if (arrEventsToSync.length) {
78
+ await this.syncBulkEventToServer(arrEventsToSync, lastSyncedEventId);
79
+ let extraParameters = {
80
+ bulkEventRows: arrEventsToSync.length
81
+ };
82
+ _Logger.default.getInstance().logEvent('startSync-event-to-sync', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
69
83
  } else {
70
- _Logger.default.getInstance().logEvent('startSync', 'No data to sync in Events Manager', _Logger.LOG_TYPE.SDK_INFO);
84
+ let extraParameters = {
85
+ bulkEventRows: bulkEventRows.length,
86
+ arrEventsToSync: arrEventsToSync.length
87
+ };
88
+ _Logger.default.getInstance().logEvent('startSync-no-event-to-sync', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
71
89
  }
72
90
 
73
91
  // OLD CODE
@@ -78,16 +96,31 @@ class EventsSyncManager {
78
96
  // ];
79
97
  // await Promise.all(promises);
80
98
  } else {
81
- _Logger.default.getInstance().logEvent('startSync', 'NO NETWORK AVAILABLE!!', _Logger.LOG_TYPE.SDK_INFO);
99
+ let extraParameters = {
100
+ network: hasNetwork
101
+ };
102
+ _Logger.default.getInstance().logEvent('startSync-no network', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
82
103
  }
83
- } catch (error) {} finally {
104
+ } catch (error) {
105
+ _Logger.default.getInstance().logEvent('startSync-error', (0, _utils.flattenObject)(error), _Logger.LOG_TYPE.SDK_ERROR);
106
+ } finally {
84
107
  this.inProgress = false;
85
108
  if ((await this.isSyncPending()) && hasNetwork) {
86
109
  await this.startSync();
110
+ } else {
111
+ let extraParameters = {
112
+ hasNetwork: hasNetwork,
113
+ pending: this.isSyncPending()
114
+ };
115
+ _Logger.default.getInstance().logEvent('startSync-inprogress-syncpending-hasnetwork', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
87
116
  }
88
117
  }
89
118
  } else {
90
- _Logger.default.getInstance().logEvent('startSync', 'WORKFLOW/TASK ALREADY IN PROGRESS || Max Retries reached', _Logger.LOG_TYPE.SDK_INFO);
119
+ let extraParameters = {
120
+ isProgress: this.inProgress,
121
+ retry: this._retries
122
+ };
123
+ _Logger.default.getInstance().logEvent('startSync-inprogress-maxretries', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
91
124
  }
92
125
  }
93
126
 
@@ -173,7 +206,7 @@ class EventsSyncManager {
173
206
  try {
174
207
  promises.push(this.eventsManager.updateError(ev.id, errorString));
175
208
  } catch (err) {
176
- _Logger.default.getInstance().logEvent('updateEventError', err.message, _Logger.LOG_TYPE.SDK_WARNING);
209
+ _Logger.default.getInstance().logEvent('updateEventError', (0, _utils.flattenObject)(err), _Logger.LOG_TYPE.SDK_WARNING);
177
210
  }
178
211
  }
179
212
  await Promise.all(promises);
@@ -214,11 +247,20 @@ class EventsSyncManager {
214
247
  try {
215
248
  promises.push(await this.eventsManager.markEventSynced(ev.id));
216
249
  } catch (err) {
217
- _Logger.default.getInstance().logEvent('markEventSynced', err.message, _Logger.LOG_TYPE.SDK_WARNING);
250
+ _Logger.default.getInstance().logEvent('markEventSynced', (0, _utils.flattenObject)(err), _Logger.LOG_TYPE.SDK_WARNING);
218
251
  }
219
252
  }
220
253
  await Promise.all(promises);
221
254
  }
255
+
256
+ // This function will insert POD_DOC type of event in event table.
257
+ async insertPODDocEvent(dspID, syncType) {
258
+ if ((0, _utils.isEmptyOrBlank)(dspID) || (0, _utils.isEmptyOrBlank)(syncType)) throw new _BaseError.BaseError(_ErrorCodes.default.InvalidArgumentError, _ErrorCodes.InvalidArgumentsError);
259
+ if (!this.eventsManager) {
260
+ this.eventsManager = await _ETEventsManager.default.getInstance();
261
+ }
262
+ await this.eventsManager.insertPODDocEvent(dspID, syncType);
263
+ }
222
264
  async insertEvent(sequence, payload, dspID, syncType, objectiveRef, config) {
223
265
  if (!sequence || (0, _utils.isEmptyOrBlank)(payload) || (0, _utils.isEmptyOrBlank)(dspID) || (0, _utils.isEmptyOrBlank)(syncType) || (0, _utils.isEmptyOrBlank)(objectiveRef)) throw new _BaseError.BaseError(_ErrorCodes.default.InvalidArgumentError, _ErrorCodes.InvalidArgumentsError);
224
266
  if (!this.eventsManager) {
@@ -295,50 +337,67 @@ class EventsSyncManager {
295
337
  }
296
338
  if (requiredPayload) return requiredPayload.data;else return null;
297
339
  } catch (err) {
298
- _Logger.default.getInstance().logEvent('getObjectiveSummary', err.message, _Logger.LOG_TYPE.SDK_WARNING);
340
+ _Logger.default.getInstance().logEvent('getObjectiveSummary', (0, _utils.flattenObject)(err), _Logger.LOG_TYPE.SDK_WARNING);
299
341
  return null;
300
342
  }
301
343
  }
302
- async syncEventToServer(eventRows, syncType) {
303
- try {
304
- var _this$syncHttpClient;
305
- const success = await ((_this$syncHttpClient = this.syncHttpClient) === null || _this$syncHttpClient === void 0 ? void 0 : _this$syncHttpClient.syncEvent(eventRows, syncType));
306
- if (success) {
307
- this._retries = 0;
308
- // NEW CODE
309
- const lastSyncedEventId = await _storage.default.getInstance().getSharedItem(_constants.LAST_SYNCED_EVENT_ID);
310
- const syncEventId = parseInt(lastSyncedEventId) + 1;
311
- await _storage.default.getInstance().setSharedItem(_constants.LAST_SYNCED_EVENT_ID, `${syncEventId}`);
312
344
 
313
- // OLD CODE
314
- await this.markEventSynced(eventRows);
315
- } else {
316
- this._retries++;
317
- /* Logger.getInstance().logEvent(
318
- 'syncEventToServer',
319
- `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,
320
- LOG_TYPE.SDK_ERROR
321
- ); */
322
- await this.updateEventError(eventRows, 'Unexpected error');
323
- }
324
- } catch (error) {
325
- this._retries++;
326
- /* Logger.getInstance().logEvent(
327
- 'syncEventToServer',
328
- `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${
329
- error.message
330
- }`,
331
- LOG_TYPE.SDK_ERROR
332
- ); */
333
- await this.updateEventError(eventRows, JSON.stringify({
334
- error
335
- }));
336
- }
337
- }
345
+ // private async syncEventToServer(
346
+ // eventRows: EventRow[],
347
+ // syncType: ExecEngineSyncType | DispatchSyncType
348
+ // ) {
349
+ // try {
350
+ // const success = await this.syncHttpClient?.syncEvent(eventRows, syncType);
351
+
352
+ // if (success) {
353
+ // this._retries = 0;
354
+ // // NEW CODE
355
+ // const lastSyncedEventId = await Storage.getInstance().getSharedItem(
356
+ // LAST_SYNCED_EVENT_ID
357
+ // );
358
+ // const syncEventId = parseInt(lastSyncedEventId) + 1;
359
+ // await Storage.getInstance().setSharedItem(
360
+ // LAST_SYNCED_EVENT_ID,
361
+ // `${syncEventId}`
362
+ // );
363
+
364
+ // // OLD CODE
365
+ // await this.markEventSynced(eventRows);
366
+ // } else {
367
+ // this._retries++;
368
+ // /* Logger.getInstance().logEvent(
369
+ // 'syncEventToServer',
370
+ // `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,
371
+ // LOG_TYPE.SDK_ERROR
372
+ // ); */
373
+ // await this.updateEventError(eventRows, 'Unexpected error');
374
+ // }
375
+ // } catch (error: any) {
376
+ // this._retries++;
377
+ // /* Logger.getInstance().logEvent(
378
+ // 'syncEventToServer',
379
+ // `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${
380
+ // error.message
381
+ // }`,
382
+ // LOG_TYPE.SDK_ERROR
383
+ // ); */
384
+ // await this.updateEventError(
385
+ // eventRows,
386
+ // JSON.stringify({
387
+ // error,
388
+ // })
389
+ // );
390
+ // }
391
+ // }
392
+
338
393
  async syncBulkEventToServer(eventRows, lastSyncedEventId) {
339
394
  try {
340
- var _this$syncHttpClient2;
341
- const success = await ((_this$syncHttpClient2 = this.syncHttpClient) === null || _this$syncHttpClient2 === void 0 ? void 0 : _this$syncHttpClient2.syncBulkEvent(eventRows));
395
+ var _this$syncHttpClient;
396
+ const success = await ((_this$syncHttpClient = this.syncHttpClient) === null || _this$syncHttpClient === void 0 ? void 0 : _this$syncHttpClient.syncBulkEvent(eventRows));
397
+ let extraParameters = {
398
+ success: success
399
+ };
400
+ _Logger.default.getInstance().logEvent('syncBulkEventToServer-syncBulkEvent-success-true', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
342
401
  if (success) {
343
402
  this._retries = 0;
344
403
  // NEW CODE
@@ -348,24 +407,22 @@ class EventsSyncManager {
348
407
 
349
408
  // OLD CODE
350
409
  await this.markEventSynced(eventRows);
410
+ let extraParameters = {
411
+ retries: this._retries,
412
+ lastSyncEventId: syncEventId
413
+ };
414
+ _Logger.default.getInstance().logEvent('syncBulkEventToServer-markEventSynced', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
351
415
  } else {
352
416
  this._retries++;
353
- /* Logger.getInstance().logEvent(
354
- 'syncEventToServer',
355
- `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)}`,
356
- LOG_TYPE.SDK_ERROR
357
- ); */
358
417
  await this.updateEventError(eventRows, 'Unexpected error');
418
+ let extraParameters = {
419
+ success: success
420
+ };
421
+ _Logger.default.getInstance().logEvent('syncBulkEventToServer-syncBulkEvent-success-false', (0, _utils.flattenObject)(extraParameters), _Logger.LOG_TYPE.SDK_ERROR);
359
422
  }
360
423
  } catch (error) {
361
424
  this._retries++;
362
- /* Logger.getInstance().logEvent(
363
- 'syncEventToServer',
364
- `Syncing Error ${syncType} :- ${JSON.stringify(eventRows)} -: ${
365
- error.message
366
- }`,
367
- LOG_TYPE.SDK_ERROR
368
- ); */
425
+ _Logger.default.getInstance().logEvent('syncBulkEventToServer-error', (0, _utils.flattenObject)(error), _Logger.LOG_TYPE.SDK_ERROR);
369
426
  await this.updateEventError(eventRows, JSON.stringify({
370
427
  error
371
428
  }));