@restforgejs/platform 5.3.9 → 5.3.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.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +1 -1
- package/cli/consumer.js +1 -1
- package/cli/designer.js +1 -1
- package/generators/cli/fast-track.js +43 -6
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +2 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +1 -1
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function
|
|
1
|
+
'use strict';const a0_0x395c7e=a0_0x35aa;(function(_0x27fc17,_0x4c75db){const _0x58dbab=a0_0x35aa,_0x5b8304=_0x27fc17();while(!![]){try{const _0x14ff50=parseInt(_0x58dbab(0x197))/0x1*(parseInt(_0x58dbab(0x193))/0x2)+-parseInt(_0x58dbab(0x185))/0x3*(-parseInt(_0x58dbab(0x195))/0x4)+-parseInt(_0x58dbab(0x168))/0x5*(-parseInt(_0x58dbab(0x177))/0x6)+-parseInt(_0x58dbab(0x16c))/0x7+parseInt(_0x58dbab(0x161))/0x8*(parseInt(_0x58dbab(0x178))/0x9)+parseInt(_0x58dbab(0x17c))/0xa+parseInt(_0x58dbab(0x170))/0xb*(-parseInt(_0x58dbab(0x199))/0xc);if(_0x14ff50===_0x4c75db)break;else _0x5b8304['push'](_0x5b8304['shift']());}catch(_0x21f062){_0x5b8304['push'](_0x5b8304['shift']());}}}(a0_0x32ba,0x48247));function a0_0x35aa(_0x90bfe9,_0x24244a){_0x90bfe9=_0x90bfe9-0x158;const _0x32ba0a=a0_0x32ba();let _0x35aab7=_0x32ba0a[_0x90bfe9];if(a0_0x35aa['aptUCL']===undefined){var _0x1131df=function(_0x56c620){const _0x522cff='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4beb19='',_0x508bce='';for(let _0x3a6c92=0x0,_0x38bb53,_0x4d36ab,_0x38d894=0x0;_0x4d36ab=_0x56c620['charAt'](_0x38d894++);~_0x4d36ab&&(_0x38bb53=_0x3a6c92%0x4?_0x38bb53*0x40+_0x4d36ab:_0x4d36ab,_0x3a6c92++%0x4)?_0x4beb19+=String['fromCharCode'](0xff&_0x38bb53>>(-0x2*_0x3a6c92&0x6)):0x0){_0x4d36ab=_0x522cff['indexOf'](_0x4d36ab);}for(let _0x5c8a42=0x0,_0x36ca56=_0x4beb19['length'];_0x5c8a42<_0x36ca56;_0x5c8a42++){_0x508bce+='%'+('00'+_0x4beb19['charCodeAt'](_0x5c8a42)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x508bce);};a0_0x35aa['cRTwws']=_0x1131df,a0_0x35aa['fFYAvW']={},a0_0x35aa['aptUCL']=!![];}const _0x4c9f38=_0x32ba0a[0x0],_0x385caf=_0x90bfe9+_0x4c9f38,_0x589ab2=a0_0x35aa['fFYAvW'][_0x385caf];return!_0x589ab2?(_0x35aab7=a0_0x35aa['cRTwws'](_0x35aab7),a0_0x35aa['fFYAvW'][_0x385caf]=_0x35aab7):_0x35aab7=_0x589ab2,_0x35aab7;}function a0_0x32ba(){const _0x193454=['Bw9KDwXL','BM93','Dg9mB3DLCKnHC2u','D2fYBG','DgvTCa','Cgf0Aa','q3rHDKW','Agv4','DgvTCerPCG','BwTKAxjtEw5J','Aw5JBhvKzxm','y295r1K','vvbmt0fex1rftvbFreLs','ngLXwgDmrW','zw5KCg9PBNq','mta2mZa0txnjsKDk','ChjVAMvJDa','mteYmdaXCKDny2Pi','DxbSB2fKzwrcEq','nZm3mtK2ALneshHo','ChjLzML4','BwvZC2fNzq','lI9SB2DNzxi','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','AM9PBG','DxbSB2fKCW','z2vUzxjHDgvlzxK','C2L6zq','zgvMyxvSDa','mtqXntjMBKv2yvu','ywXSB3DLzfr5CgvZ','yNvJA2v0','x3rLBxbeAxi','rMfPBgvKihrVigrLBgv0zsb0zw1WigzPBgu','Bwf0y2G','ChjVDMLKzxjoyw1L','mJi1otvLu3rguxu','Bwf4rMLSzvnPEMu','qwDlwwm','BwLTzxr5Cgu','mJy0odCZr0rSrvv0','Dg9vChbLCKnHC2u','zxHPC3rZu3LUyW','x3bHCNnLrMLSzvnPEMu','otLYD3fSwKu','DxbSB2fKlq','zxjYB3i','Dg9tDhjPBMC','zxH0BMfTzq','tePzC0S','DxjS','nKvUyM9rua','mtq0mhvcDgP5Ea','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','B3jPz2LUywXUyw1L','Dw5SAw5R','mZq4mdK0mfbctMjusa','t01wCwm','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','x2rLBgv0zvrLBxbgAwXL','zw52','BNvTyMvY','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','tuLJq3a','BxvSDgvY','m0HxAwLdvG'];a0_0x32ba=function(){return _0x193454;};return a0_0x32ba();}const multer=require(a0_0x395c7e(0x184)),path=require(a0_0x395c7e(0x18b)),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require(a0_0x395c7e(0x15a));class UploadHandlerV2{constructor(){this['_tempDir']=null;}get[a0_0x395c7e(0x18e)](){const _0x28a207=a0_0x395c7e,_0x1585d7={'LJYsK':_0x28a207(0x18a),'MoYWa':_0x28a207(0x15d)};if(!this['_tempDir']){const _0xa4c51=process['env']['RESTFORGE_PROJECT_NAME']||_0x28a207(0x160);this[_0x28a207(0x164)]=process[_0x28a207(0x180)][_0x28a207(0x192)]||path[_0x28a207(0x15c)](process['cwd'](),_0x1585d7[_0x28a207(0x175)],_0x1585d7['MoYWa'],_0xa4c51),!fsSync['existsSync'](this['_tempDir'])&&fsSync[_0x28a207(0x18f)](this[_0x28a207(0x164)],{'recursive':!![]});}return this[_0x28a207(0x164)];}[a0_0x395c7e(0x182)](_0x72bb2e={}){const _0x57b7e1=a0_0x395c7e,_0x33d7e2={'MBBcE':_0x57b7e1(0x18d),'CtavL':function(_0x4f02d2,_0x435e12){return _0x4f02d2(_0x435e12);},'AgKYc':'10MB'},_0x1ca848=_0x72bb2e['maxFiles']||0x5,_0x4c6608=this[_0x57b7e1(0x16f)](_0x72bb2e[_0x57b7e1(0x169)]||_0x33d7e2[_0x57b7e1(0x16a)]),_0x3456e5=_0x72bb2e[_0x57b7e1(0x162)]||[],_0x4815c0=multer['diskStorage']({'destination':(_0x4bba71,_0x16df4a,_0x82aeac)=>{const _0x2c9a24=_0x57b7e1;!fsSync[_0x2c9a24(0x16e)](this['tempDir'])&&fsSync[_0x2c9a24(0x18f)](this[_0x2c9a24(0x18e)],{'recursive':!![]}),_0x82aeac(null,this['tempDir']);},'filename':(_0x493218,_0x5cd439,_0x2a4b6f)=>{const _0x2b5ae2=_0x57b7e1,_0x1b0c71=crypto['randomBytes'](0x8)[_0x2b5ae2(0x173)](_0x33d7e2['MBBcE']),_0x2cd55f=Date[_0x2b5ae2(0x187)](),_0x1d64ac=path['extname'](_0x5cd439['originalname']);_0x2a4b6f(null,_0x2b5ae2(0x171)+_0x2cd55f+'-'+_0x1b0c71+_0x1d64ac);}}),_0x32de15=(_0x406647,_0x4cea0f,_0x4caf94)=>{const _0x14f559=_0x57b7e1;if(_0x3456e5['length']===0x0)return _0x4caf94(null,!![]);const _0x5c6ffb=path[_0x14f559(0x174)](_0x4cea0f[_0x14f559(0x17a)])[_0x14f559(0x188)]()['replace']('.','');_0x3456e5[_0x14f559(0x190)](_0x5c6ffb)?_0x4caf94(null,!![]):_0x33d7e2['CtavL'](_0x4caf94,new Error('File\x20type\x20\x22.'+_0x5c6ffb+'\x22\x20is\x20not\x20allowed.\x20Allowed\x20types:\x20'+_0x3456e5[_0x14f559(0x15c)](',\x20')));};return _0x33d7e2[_0x57b7e1(0x18c)](multer,{'storage':_0x4815c0,'limits':{'fileSize':_0x4c6608,'files':_0x1ca848},'fileFilter':_0x32de15})['array']('files',_0x1ca848);}async['processUploadedFiles'](_0x58de0c,_0x5339d1,_0x1e4a98={}){const _0xc5bf0d=a0_0x395c7e,_0x3c7f1b={'coyGY':function(_0x457fee,_0x1acb9b){return _0x457fee(_0x1acb9b);},'YsveE':_0xc5bf0d(0x15b)},{createFileMetadata:_0x2c4f34}=_0x3c7f1b['coyGY'](require,_0x3c7f1b['YsveE']),_0x43019c=[];for(const _0x5ab4b9 of _0x58de0c){try{const _0x1b8b73=_0x5339d1[_0xc5bf0d(0x15e)](_0x5ab4b9[_0xc5bf0d(0x17a)],{'prefix':_0x1e4a98[_0xc5bf0d(0x158)]||'','project':_0x1e4a98[_0xc5bf0d(0x196)]||'','module':_0x1e4a98[_0xc5bf0d(0x186)]||'','endpoint':_0x1e4a98[_0xc5bf0d(0x194)]||''}),_0x207a5b=fsSync['createReadStream'](_0x5ab4b9['path']),_0x115e95=await _0x5339d1['upload'](_0x207a5b,_0x1b8b73,{'contentType':_0x5ab4b9[_0xc5bf0d(0x16b)],'fileSize':_0x5ab4b9['size']}),_0x2adc1a=_0x3c7f1b[_0xc5bf0d(0x191)](_0x2c4f34,{'key':_0x115e95['key'],'originalName':_0x5ab4b9['originalname'],'fileName':path['basename'](_0x1b8b73),'contentType':_0x5ab4b9[_0xc5bf0d(0x16b)],'size':_0x5ab4b9[_0xc5bf0d(0x15f)],'url':_0x115e95[_0xc5bf0d(0x176)],'provider':_0x5339d1[_0xc5bf0d(0x167)],'bucket':_0x5339d1[_0xc5bf0d(0x163)]||null,'uploadedBy':_0x1e4a98[_0xc5bf0d(0x198)]||null});_0x43019c['push'](_0x2adc1a);}catch(_0x5cd9cc){logger[_0xc5bf0d(0x172)]({'event':_0xc5bf0d(0x179),'file':_0x5ab4b9[_0xc5bf0d(0x17a)],'error':_0x5cd9cc[_0xc5bf0d(0x159)]},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x5ab4b9[_0xc5bf0d(0x17a)]);throw _0x5cd9cc;}finally{await this[_0xc5bf0d(0x17f)](_0x5ab4b9[_0xc5bf0d(0x18b)]);}}return _0x43019c;}async['_deleteTempFile'](_0x4f0d1d){const _0x162bdc=a0_0x395c7e;try{await fs[_0x162bdc(0x17b)](_0x4f0d1d);}catch(_0x10e1a9){logger[_0x162bdc(0x189)]({'event':_0x162bdc(0x17e),'filePath':_0x4f0d1d,'error':_0x10e1a9[_0x162bdc(0x159)]},_0x162bdc(0x165));}}[a0_0x395c7e(0x16f)](_0x2b99e3){const _0x3728c5=a0_0x395c7e,_0x40f72d={'OMVqc':function(_0xe3133b,_0x961554){return _0xe3133b*_0x961554;},'MIcCp':function(_0x50e0ba,_0x1649f0){return _0x50e0ba(_0x1649f0);}};if(typeof _0x2b99e3===_0x3728c5(0x181))return _0x2b99e3;const _0x1c5de6=String(_0x2b99e3)['trim']()[_0x3728c5(0x166)](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x1c5de6)return _0x40f72d['OMVqc'](0xa,0x400)*0x400;const _0x4cc21d=_0x40f72d[_0x3728c5(0x183)](parseFloat,_0x1c5de6[0x1]),_0x1aad59=_0x1c5de6[0x2][_0x3728c5(0x16d)](),_0x5d337e={'B':0x1,'KB':0x400,'MB':_0x40f72d[_0x3728c5(0x17d)](0x400,0x400),'GB':_0x40f72d[_0x3728c5(0x17d)](0x400*0x400,0x400)};return Math['floor'](_0x4cc21d*(_0x5d337e[_0x1aad59]||0x1));}}module['exports']=new UploadHandlerV2();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x2af315=a0_0x5a41;(function(_0x437259,_0x2d4e32){const _0x2771ec=a0_0x5a41,_0x18ed88=_0x437259();while(!![]){try{const _0x3dcefd=parseInt(_0x2771ec(0x11f))/0x1+-parseInt(_0x2771ec(0x10a))/0x2+parseInt(_0x2771ec(0x124))/0x3*(parseInt(_0x2771ec(0x122))/0x4)+parseInt(_0x2771ec(0x100))/0x5+-parseInt(_0x2771ec(0x123))/0x6+parseInt(_0x2771ec(0x104))/0x7*(-parseInt(_0x2771ec(0x120))/0x8)+parseInt(_0x2771ec(0x11a))/0x9;if(_0x3dcefd===_0x2d4e32)break;else _0x18ed88['push'](_0x18ed88['shift']());}catch(_0x5895d2){_0x18ed88['push'](_0x18ed88['shift']());}}}(a0_0x4dcf,0x6ea1e));const multer=require(a0_0x2af315(0x110)),path=require('path'),crypto=require('crypto'),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');function a0_0x5a41(_0x53778b,_0xeb2b57){_0x53778b=_0x53778b-0xfa;const _0x4dcf14=a0_0x4dcf();let _0x5a41da=_0x4dcf14[_0x53778b];if(a0_0x5a41['PFmJGS']===undefined){var _0x439b46=function(_0x22ceac){const _0x5b0628='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x28f8b3='',_0x376899='';for(let _0x311275=0x0,_0x158603,_0x251d4e,_0x5dff1c=0x0;_0x251d4e=_0x22ceac['charAt'](_0x5dff1c++);~_0x251d4e&&(_0x158603=_0x311275%0x4?_0x158603*0x40+_0x251d4e:_0x251d4e,_0x311275++%0x4)?_0x28f8b3+=String['fromCharCode'](0xff&_0x158603>>(-0x2*_0x311275&0x6)):0x0){_0x251d4e=_0x5b0628['indexOf'](_0x251d4e);}for(let _0x5bc1ac=0x0,_0x29038b=_0x28f8b3['length'];_0x5bc1ac<_0x29038b;_0x5bc1ac++){_0x376899+='%'+('00'+_0x28f8b3['charCodeAt'](_0x5bc1ac)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x376899);};a0_0x5a41['wYlORA']=_0x439b46,a0_0x5a41['eZdtjI']={},a0_0x5a41['PFmJGS']=!![];}const _0xc09e54=_0x4dcf14[0x0],_0x39a80f=_0x53778b+_0xc09e54,_0x1546e1=a0_0x5a41['eZdtjI'][_0x39a80f];return!_0x1546e1?(_0x5a41da=a0_0x5a41['wYlORA'](_0x5a41da),a0_0x5a41['eZdtjI'][_0x39a80f]=_0x5a41da):_0x5a41da=_0x1546e1,_0x5a41da;}function a0_0x4dcf(){const _0x23ea93=['Agv4','qKXjzhO','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','BwLTzxr5Cgu','BwTKAxjtEw5J','mtm4odGWAvbSzKzi','zxjYB3i','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','Dw5SAw5R','mZyZnJaXqwfzqwTP','AM9PBG','vvbmt0fex0rjuG','CwDMEMG','z2v0u3rVCMfNzq','t3zRwfu','mtm5ndK0nNrNrK1tua','z2v0vxbSB2fKtwLKzgXLD2fYzq','rMfPBgvKihrVigrLBgv0zsb1CgXVywrLzcbMAwXL','Aw5JBhvKzxm','x3vWBg9HzerPCG','rw1tsuC','BxvSDgvY','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq','Egj2ywi','DxbSB2fKrgLY','Aw5MBW','BwvZC2fNzq','DxbSB2fKx2zPBgvFzgvSzxrLza','lI4VlI4VDgvTCc91CgXVywrZlW','B3jPz2LUywXUyw1L','CMfUzg9TqNL0zxm','mZm4mZi0ngLvvwLAza','D0L2t0q','Bwf4rMLSzvnPEMu','zxHWB3j0CW','zxH0BMfTzq','ota1otiYCxzhqxfc','nJrkwuLKzu0','yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','mZm2ntK4ne5IsLrcwq','mZuWoty1ofzuC1fcCG','m3bPvevZrW','DxbSB2fKx2HHBMrSzxjFAw5PDa','zgLZA1n0B3jHz2u','C2LUz2XL','EMXhuvq','DxbSB2fKlq'];a0_0x4dcf=function(){return _0x23ea93;};return a0_0x4dcf();}class UploadHandler{constructor(){const _0x1f5d90=a0_0x2af315,_0x246fd5={'oOaky':function(_0x130798,_0x299dfa){return _0x130798*_0x299dfa;}};this[_0x1f5d90(0x10e)]=null,this[_0x1f5d90(0x11c)]=_0x246fd5['oOaky'](0xa,0x400)*0x400;}get[a0_0x2af315(0x113)](){const _0x557a84=a0_0x2af315,_0x89cabf={'qgfzh':_0x557a84(0x125),'zlGQT':'Upload\x20handler\x20initialized','wIvOD':'Failed\x20to\x20initialize\x20upload\x20handler'};if(!this['_uploadDir']){const _0x2dca99=process['env'][_0x557a84(0xfd)]||'default';this[_0x557a84(0x10e)]=process['env'][_0x557a84(0x106)]||path[_0x557a84(0x105)](__dirname,_0x557a84(0x117)+_0x2dca99);try{!fsSync['existsSync'](this['_uploadDir'])&&fsSync[_0x557a84(0xff)](this['_uploadDir'],{'recursive':!![]}),logger['info']({'event':_0x89cabf[_0x557a84(0x107)],'dir':this['_uploadDir']},_0x89cabf[_0x557a84(0x128)]);}catch(_0x181609){logger[_0x557a84(0x101)]({'event':'upload_handler_init_error','error':_0x181609[_0x557a84(0x115)]},_0x89cabf[_0x557a84(0x11b)]);}}return this['_uploadDir'];}[a0_0x2af315(0x108)](){const _0x4c6c77=a0_0x2af315,_0x2970fb={'MqsWO':function(_0x3bfe85,_0x59575d,_0x503abb){return _0x3bfe85(_0x59575d,_0x503abb);}};return multer[_0x4c6c77(0x126)]({'destination':(_0x1cbbe0,_0x1eb932,_0x210998)=>{const _0x4c57e0=_0x4c6c77;!fsSync['existsSync'](this[_0x4c57e0(0x113)])&&fsSync[_0x4c57e0(0xff)](this['uploadDir'],{'recursive':!![]}),_0x2970fb['MqsWO'](_0x210998,null,this[_0x4c57e0(0x113)]);},'filename':(_0x1b55b6,_0x1a3597,_0x26b93f)=>{const _0x4756b2=_0x4c6c77,_0x2e5b92=crypto[_0x4756b2(0x119)](0x8)['toString'](_0x4756b2(0xfb)),_0x448370=Date['now'](),_0x50f5f1=path['extname'](_0x1a3597['originalname']);_0x26b93f(null,_0x4756b2(0xfa)+_0x448370+'-'+_0x2e5b92+_0x50f5f1);}});}[a0_0x2af315(0x10b)](){const _0x509d0c=a0_0x2af315,_0x2797be={'EmSIG':_0x509d0c(0x121),'xbvab':'.xlsx','mooAR':'.xls','BLIdz':function(_0x579bee,_0x461ce6,_0x4bc864){return _0x579bee(_0x461ce6,_0x4bc864);},'OvkXU':function(_0x41579b,_0x26445b){return _0x41579b(_0x26445b);},'PQyGq':'file'};return _0x2797be[_0x509d0c(0x109)](multer,{'storage':this['getStorage'](),'limits':{'fileSize':this[_0x509d0c(0x11c)],'files':0x1},'fileFilter':(_0x51225d,_0x5d2b8a,_0xbc0c52)=>{const _0xcf1e83=_0x509d0c,_0x3e219f=[_0xcf1e83(0x111),_0x2797be[_0xcf1e83(0x10f)]],_0x392604=[_0x2797be[_0xcf1e83(0x112)],_0x2797be['mooAR']],_0xf69f2d=path[_0xcf1e83(0x11e)](_0x5d2b8a[_0xcf1e83(0x118)])['toLowerCase']();_0x3e219f[_0xcf1e83(0x10d)](_0x5d2b8a[_0xcf1e83(0xfe)])&&_0x392604[_0xcf1e83(0x10d)](_0xf69f2d)?_0x2797be[_0xcf1e83(0xfc)](_0xbc0c52,null,!![]):_0xbc0c52(new Error(_0xcf1e83(0x102)));}})[_0x509d0c(0x127)](_0x2797be['PQyGq']);}async['deleteFile'](_0x201f92){const _0x3e07a1=a0_0x2af315,_0x41ac96={'jVCPe':'Uploaded\x20file\x20deleted','FNvMZ':_0x3e07a1(0x10c)};try{await fs[_0x3e07a1(0x103)](_0x201f92),logger[_0x3e07a1(0x114)]({'event':_0x3e07a1(0x116),'filePath':_0x201f92},_0x41ac96['jVCPe']);}catch(_0x313bc0){logger['error']({'event':'upload_file_delete_error','filePath':_0x201f92,'error':_0x313bc0[_0x3e07a1(0x115)]},_0x41ac96['FNvMZ']);}}}module[a0_0x2af315(0x11d)]=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x3c72c4=a0_0x3a72;(function(_0x2a4382,_0x15bd61){const _0x44956e=a0_0x3a72,_0x2dfde9=_0x2a4382();while(!![]){try{const _0x24359f=parseInt(_0x44956e(0x76))/0x1+-parseInt(_0x44956e(0x77))/0x2+parseInt(_0x44956e(0x7c))/0x3*(parseInt(_0x44956e(0x79))/0x4)+-parseInt(_0x44956e(0x73))/0x5*(-parseInt(_0x44956e(0x81))/0x6)+parseInt(_0x44956e(0x87))/0x7+parseInt(_0x44956e(0x8c))/0x8*(-parseInt(_0x44956e(0x88))/0x9)+-parseInt(_0x44956e(0x7b))/0xa*(-parseInt(_0x44956e(0x75))/0xb);if(_0x24359f===_0x15bd61)break;else _0x2dfde9['push'](_0x2dfde9['shift']());}catch(_0x3e3193){_0x2dfde9['push'](_0x2dfde9['shift']());}}}(a0_0x1403,0x1a607));const axios=require('axios');function a0_0x1403(){const _0x2b1649=['wM1cvw4','otmWnNrUtLPoBq','Cg9ZDa','sw5Zzxj0ihDLyMHVB2SGC2vUDcb0BYa','rgvSzxrLihDLyMHVB2SGC2vUDcb0BYa','wKrctuS','lcbtDgf0Dxm6ia','mtC2nJCZvxDNBvnq','mJyZn1vXCLzJCW','u1LerK0','zxHWB3j0CW','uMvZDezVCMDLlvDLyMHVB2SVms4W','mZy4oeHRv2v5DW','rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','yxbWBgLJyxrPB24VANnVBG','mtblD2nKvKq','C3rHDhvZ','mte5otbMswTdChe','mtKXnZe1ChDvENHy','mZaYotC4z3f1B0jV','zgvSzxrL','mJb1BwfHshu','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','nZmWqLn5z1ft','nty5odvAAgHyqKC','BwvZC2fNzq','zxjYB3i','Dg9ju09tDhjPBMC'];a0_0x1403=function(){return _0x2b1649;};return a0_0x1403();}function a0_0x3a72(_0x4a2130,_0x1dc21f){_0x4a2130=_0x4a2130-0x72;const _0x1403bb=a0_0x1403();let _0x3a7214=_0x1403bb[_0x4a2130];if(a0_0x3a72['Vqzhtv']===undefined){var _0x5ad670=function(_0x58bd1e){const _0x3f26a2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47fea8='',_0x19d6b7='';for(let _0x5cbfb0=0x0,_0x321c6e,_0x4a0161,_0x5104e2=0x0;_0x4a0161=_0x58bd1e['charAt'](_0x5104e2++);~_0x4a0161&&(_0x321c6e=_0x5cbfb0%0x4?_0x321c6e*0x40+_0x4a0161:_0x4a0161,_0x5cbfb0++%0x4)?_0x47fea8+=String['fromCharCode'](0xff&_0x321c6e>>(-0x2*_0x5cbfb0&0x6)):0x0){_0x4a0161=_0x3f26a2['indexOf'](_0x4a0161);}for(let _0x248ec3=0x0,_0x3322cd=_0x47fea8['length'];_0x248ec3<_0x3322cd;_0x248ec3++){_0x19d6b7+='%'+('00'+_0x47fea8['charCodeAt'](_0x248ec3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19d6b7);};a0_0x3a72['XkqioD']=_0x5ad670,a0_0x3a72['UbEUkM']={},a0_0x3a72['Vqzhtv']=!![];}const _0x9901a6=_0x1403bb[0x0],_0x38e518=_0x4a2130+_0x9901a6,_0x473e26=a0_0x3a72['UbEUkM'][_0x38e518];return!_0x473e26?(_0x3a7214=a0_0x3a72['XkqioD'](_0x3a7214),a0_0x3a72['UbEUkM'][_0x38e518]=_0x3a7214):_0x3a7214=_0x473e26,_0x3a7214;}async function sendInsertWebhook(_0xdb9022,_0x3c742e,_0x58115e={}){const _0x448ba2=a0_0x3a72,_0x4d7b80={'ZmBUn':'insert','EOoTN':_0x448ba2(0x72),'SYDFM':'Insert\x20webhook\x20sent\x20successfully','SwDMh':_0x448ba2(0x8d),'ZDBMK':'Failed\x20to\x20send\x20insert\x20webhook'};try{const _0xfb0cec={'event':_0x4d7b80[_0x448ba2(0x80)],'timestamp':new Date()[_0x448ba2(0x7f)](),'data':_0x3c742e},_0x1ed3c3=await axios[_0x448ba2(0x82)](_0xdb9022,_0xfb0cec,{'headers':{'Content-Type':_0x4d7b80['EOoTN'],'User-Agent':_0x448ba2(0x8b),..._0x58115e},'timeout':0x2710});return console['log'](_0x448ba2(0x83)+_0xdb9022+_0x448ba2(0x86)+_0x1ed3c3['status']),{'success':!![],'message':_0x4d7b80[_0x448ba2(0x89)],'status':_0x1ed3c3[_0x448ba2(0x74)],'url':_0xdb9022};}catch(_0x4bd275){return console[_0x448ba2(0x7e)](_0x4d7b80['SwDMh'],_0x4bd275[_0x448ba2(0x7d)]),{'success':![],'message':_0x4d7b80[_0x448ba2(0x85)],'error':_0x4bd275[_0x448ba2(0x7d)],'url':_0xdb9022};}}async function sendDeleteWebhook(_0x391a67,_0x456f9d,_0x5e0b66={}){const _0x103589=a0_0x3a72,_0x354e23={'seFMb':_0x103589(0x72),'VYYnJ':_0x103589(0x8b),'YXirQ':_0x103589(0x7a),'XLezf':'Failed\x20to\x20send\x20delete\x20webhook'};try{const _0x445c1e={'event':_0x103589(0x78),'timestamp':new Date()[_0x103589(0x7f)](),'deleted_data':_0x456f9d},_0x4c757e=await axios[_0x103589(0x82)](_0x391a67,_0x445c1e,{'headers':{'Content-Type':_0x354e23['seFMb'],'User-Agent':_0x354e23['VYYnJ'],..._0x5e0b66},'timeout':0x2710});return console['log'](_0x103589(0x84)+_0x391a67+',\x20Status:\x20'+_0x4c757e['status']),{'success':!![],'message':_0x354e23['YXirQ'],'status':_0x4c757e['status'],'url':_0x391a67};}catch(_0x40e752){return console[_0x103589(0x7e)]('Error\x20sending\x20delete\x20webhook:',_0x40e752['message']),{'success':![],'message':_0x354e23['XLezf'],'error':_0x40e752['message'],'url':_0x391a67};}}module[a0_0x3c72c4(0x8a)]={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x682657=a0_0x467a;(function(_0x5534ec,_0x59b793){const _0x215fa=a0_0x467a,_0x121078=_0x5534ec();while(!![]){try{const _0x2e8d7b=parseInt(_0x215fa(0x205))/0x1+parseInt(_0x215fa(0x20a))/0x2*(-parseInt(_0x215fa(0x1f4))/0x3)+parseInt(_0x215fa(0x1f8))/0x4+-parseInt(_0x215fa(0x212))/0x5+parseInt(_0x215fa(0x200))/0x6*(-parseInt(_0x215fa(0x206))/0x7)+parseInt(_0x215fa(0x1fa))/0x8*(-parseInt(_0x215fa(0x1fe))/0x9)+parseInt(_0x215fa(0x20b))/0xa*(parseInt(_0x215fa(0x210))/0xb);if(_0x2e8d7b===_0x59b793)break;else _0x121078['push'](_0x121078['shift']());}catch(_0x12272e){_0x121078['push'](_0x121078['shift']());}}}(a0_0x4aa0,0xcda41));const express=require(a0_0x682657(0x211)),{logger}=require(a0_0x682657(0x20e));function createLockRoutes(){const _0x416397=a0_0x682657,_0x1f25d4={'xDDWA':function(_0x3f2459,_0x3dd6a0){return _0x3f2459(_0x3dd6a0);},'OPAlD':'./resource-lock-manager','HFLpV':_0x416397(0x201),'OBAgB':function(_0x4e22b7,_0x28ba8b){return _0x4e22b7===_0x28ba8b;},'ekzPa':_0x416397(0x209),'CSgJL':'Internal\x20server\x20error\x20during\x20lock\x20acquisition','HJDDk':_0x416397(0x202),'yHmze':'Internal\x20server\x20error\x20during\x20lock\x20release','OZTIO':function(_0x285cc6){return _0x285cc6();},'gLWvG':_0x416397(0x1fc)},_0x53463b=express['Router']();let _0x1b28b9=null;function _0x956452(){const _0x3bae0b=_0x416397;return!_0x1b28b9&&(_0x1b28b9=_0x1f25d4['xDDWA'](require,_0x1f25d4[_0x3bae0b(0x20f)])),_0x1b28b9;}return _0x53463b[_0x416397(0x20d)]('/acquire',async(_0x524a28,_0x3d98cc)=>{const _0x2f0d61=_0x416397;try{const {resource:_0x56aca4,lock_keys:_0x166ef8,ttl:_0x457557,owner:_0x3c84bf}=_0x524a28['body'];if(!_0x56aca4||!_0x166ef8||!_0x457557||!_0x3c84bf)return _0x3d98cc[_0x2f0d61(0x1f3)](0x190)[_0x2f0d61(0x1fb)]({'success':![],'error':_0x1f25d4['HFLpV']});const _0x211a10=_0x956452(),_0x327770=await _0x211a10['acquireResourceLocks']({'resource':_0x56aca4,'lockKeys':_0x166ef8,'ttl':_0x457557,'owner':_0x3c84bf});if(_0x327770[_0x2f0d61(0x1f9)])return _0x3d98cc['json'](_0x327770);const _0x4502c8=_0x1f25d4[_0x2f0d61(0x1f7)](_0x327770[_0x2f0d61(0x1f1)],'Resource\x20lock\x20conflict')?0x199:0x190;return _0x3d98cc['status'](_0x4502c8)[_0x2f0d61(0x1fb)](_0x327770);}catch(_0x331861){logger['error']({'event':_0x1f25d4['ekzPa'],'error':_0x331861['message']},_0x2f0d61(0x1f5)+_0x331861[_0x2f0d61(0x204)]),_0x3d98cc[_0x2f0d61(0x1f3)](0x1f4)[_0x2f0d61(0x1fb)]({'success':![],'error':_0x1f25d4[_0x2f0d61(0x1f6)]});}}),_0x53463b[_0x416397(0x20d)]('/release',async(_0x1e2241,_0x51b674)=>{const _0x243469=_0x416397;try{const {resource:_0x487cc0,lock_keys:_0x251bfd,lock_token:_0x100afc}=_0x1e2241['body'];if(!_0x487cc0||!_0x251bfd||!_0x100afc)return _0x51b674['status'](0x190)[_0x243469(0x1fb)]({'success':![],'error':_0x243469(0x207)});const _0x22b56f=_0x956452(),_0x35ff17=await _0x22b56f['releaseResourceLocks']({'resource':_0x487cc0,'lockKeys':_0x251bfd,'lockToken':_0x100afc});if(_0x35ff17[_0x243469(0x1f9)])return _0x51b674['json'](_0x35ff17);return _0x51b674['status'](0x190)[_0x243469(0x1fb)](_0x35ff17);}catch(_0x403bc0){logger['error']({'event':_0x1f25d4['HJDDk'],'error':_0x403bc0['message']},_0x243469(0x1fd)+_0x403bc0[_0x243469(0x204)]),_0x51b674[_0x243469(0x1f3)](0x1f4)[_0x243469(0x1fb)]({'success':![],'error':_0x1f25d4['yHmze']});}}),_0x53463b['post'](_0x1f25d4['gLWvG'],async(_0x509eaf,_0x288b38)=>{const _0x5ece9f=_0x416397;try{const {resource:_0xea9aa6,lock_keys:_0x1e53d4}=_0x509eaf[_0x5ece9f(0x20c)];if(!_0xea9aa6||!_0x1e53d4)return _0x288b38[_0x5ece9f(0x1f3)](0x190)['json']({'success':![],'error':'Missing\x20required\x20fields:\x20resource,\x20lock_keys'});const _0x35bca3=_0x1f25d4[_0x5ece9f(0x203)](_0x956452),_0x370ff8=await _0x35bca3['getResourceLockStatus']({'resource':_0xea9aa6,'lockKeys':_0x1e53d4});if(_0x370ff8['success'])return _0x288b38[_0x5ece9f(0x1fb)](_0x370ff8);return _0x288b38['status'](0x190)['json'](_0x370ff8);}catch(_0x5966b7){logger['error']({'event':_0x5ece9f(0x1f2),'error':_0x5966b7['message']},'Lock\x20status\x20route\x20error:\x20'+_0x5966b7[_0x5ece9f(0x204)]),_0x288b38['status'](0x1f4)[_0x5ece9f(0x1fb)]({'success':![],'error':_0x5ece9f(0x208)});}}),_0x53463b;}function a0_0x4aa0(){const _0x5284a5=['Bg9JA19YzwXLyxnLx3jVDxrLx2vYCM9Y','t1Pusu8','BwvZC2fNzq','mtG2odm3qvrQtMLZ','mtm2mJLSy1jNrei','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRihn0yxr1CYbJAgvJAW','Bg9JA19Hy3f1AxjLx3jVDxrLx2vYCM9Y','ngXTzvrLEa','mJeYnZyZndboA0fdwui','yM9KEq','Cg9ZDa','lI4VlI4VDxrPBhmVBg9Nz2vY','t1bbBeq','mtfotuDVr2C','zxHWCMvZCW','mZmXmdiWtwLtqLHm','zxjYB3i','Bg9JA19ZDgf0DxnFCM91DgvFzxjYB3i','C3rHDhvZ','ndm4mZKWAe5twufv','tg9JAYbHy3f1AxjLihjVDxrLigvYCM9YoIa','q1nNsKW','t0jbz0i','mta1nJa4oefVveLRDG','C3vJy2vZCW','mZj2DvDLCwy','ANnVBG','l3n0yxr1CW','tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','mJuWnda5n29ftxLQrG','zxHWB3j0CW','ode2EM5eDfjZ','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi'];a0_0x4aa0=function(){return _0x5284a5;};return a0_0x4aa0();}function a0_0x467a(_0x16f0ab,_0x542e34){_0x16f0ab=_0x16f0ab-0x1f1;const _0x4aa0fc=a0_0x4aa0();let _0x467a07=_0x4aa0fc[_0x16f0ab];if(a0_0x467a['tZdPpu']===undefined){var _0x5b208e=function(_0x4c87d4){const _0x5ad529='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b22e2='',_0x4b91fb='';for(let _0x3ced70=0x0,_0x4972a6,_0x694e9d,_0x3c65ec=0x0;_0x694e9d=_0x4c87d4['charAt'](_0x3c65ec++);~_0x694e9d&&(_0x4972a6=_0x3ced70%0x4?_0x4972a6*0x40+_0x694e9d:_0x694e9d,_0x3ced70++%0x4)?_0x1b22e2+=String['fromCharCode'](0xff&_0x4972a6>>(-0x2*_0x3ced70&0x6)):0x0){_0x694e9d=_0x5ad529['indexOf'](_0x694e9d);}for(let _0x10afcd=0x0,_0x1743f5=_0x1b22e2['length'];_0x10afcd<_0x1743f5;_0x10afcd++){_0x4b91fb+='%'+('00'+_0x1b22e2['charCodeAt'](_0x10afcd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4b91fb);};a0_0x467a['fskaIx']=_0x5b208e,a0_0x467a['iRETGm']={},a0_0x467a['tZdPpu']=!![];}const _0x28436f=_0x4aa0fc[0x0],_0x4aadfe=_0x16f0ab+_0x28436f,_0x4a3256=a0_0x467a['iRETGm'][_0x4aadfe];return!_0x4a3256?(_0x467a07=a0_0x467a['fskaIx'](_0x467a07),a0_0x467a['iRETGm'][_0x4aadfe]=_0x467a07):_0x467a07=_0x4a3256,_0x467a07;}module[a0_0x682657(0x1ff)]=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x16ed4e=a0_0x2610;(function(_0x32ce9a,_0x165f7a){const _0x5a8e77=a0_0x2610,_0x1b3982=_0x32ce9a();while(!![]){try{const _0x577b3a=parseInt(_0x5a8e77(0x17b))/0x1*(-parseInt(_0x5a8e77(0x165))/0x2)+-parseInt(_0x5a8e77(0x151))/0x3*(-parseInt(_0x5a8e77(0x16f))/0x4)+-parseInt(_0x5a8e77(0x15f))/0x5+-parseInt(_0x5a8e77(0x185))/0x6*(parseInt(_0x5a8e77(0x161))/0x7)+parseInt(_0x5a8e77(0x17a))/0x8+parseInt(_0x5a8e77(0x158))/0x9+parseInt(_0x5a8e77(0x173))/0xa;if(_0x577b3a===_0x165f7a)break;else _0x1b3982['push'](_0x1b3982['shift']());}catch(_0x273eb7){_0x1b3982['push'](_0x1b3982['shift']());}}}(a0_0x4096,0xad7ff));function a0_0x2610(_0x532be3,_0x4aca54){_0x532be3=_0x532be3-0x147;const _0x40963c=a0_0x4096();let _0x2610b9=_0x40963c[_0x532be3];if(a0_0x2610['YxjZCf']===undefined){var _0x8f1262=function(_0x6b01b4){const _0x1e4876='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x416b9a='',_0x3e0b8f='';for(let _0x1cc521=0x0,_0x5d8a21,_0x405892,_0x35190b=0x0;_0x405892=_0x6b01b4['charAt'](_0x35190b++);~_0x405892&&(_0x5d8a21=_0x1cc521%0x4?_0x5d8a21*0x40+_0x405892:_0x405892,_0x1cc521++%0x4)?_0x416b9a+=String['fromCharCode'](0xff&_0x5d8a21>>(-0x2*_0x1cc521&0x6)):0x0){_0x405892=_0x1e4876['indexOf'](_0x405892);}for(let _0x2c201e=0x0,_0x300a27=_0x416b9a['length'];_0x2c201e<_0x300a27;_0x2c201e++){_0x3e0b8f+='%'+('00'+_0x416b9a['charCodeAt'](_0x2c201e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e0b8f);};a0_0x2610['gfsyta']=_0x8f1262,a0_0x2610['BIopdR']={},a0_0x2610['YxjZCf']=!![];}const _0x30b81f=_0x40963c[0x0],_0x3901c8=_0x532be3+_0x30b81f,_0x4e5bb6=a0_0x2610['BIopdR'][_0x3901c8];return!_0x4e5bb6?(_0x2610b9=a0_0x2610['gfsyta'](_0x2610b9),a0_0x2610['BIopdR'][_0x3901c8]=_0x2610b9):_0x2610b9=_0x4e5bb6,_0x2610b9;}const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x4301fc=a0_0x2610,_0xbaf719={'EWGtH':_0x4301fc(0x152)},_0x1e93ee=process['env'][_0x4301fc(0x166)]||_0xbaf719['EWGtH'];return _0x4301fc(0x154)+_0x1e93ee+':rlock:';}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT='\x0a\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20return\x20redis.call(\x22del\x22,\x20KEYS[1])\x0a\x20\x20else\x0a\x20\x20\x20\x20return\x200\x0a\x20\x20end\x0a';function a0_0x4096(){const _0x487c0d=['uMjRrKe','Aw5KzxHpzG','Dw5RBM93BG','ntaXntC3ofrcq0jpsq','tu5Xs0W','BgvUz3rO','C3vIC3rYAw5N','tg9JAYbYzwXLyxnLigzHAwXLzdOG','z3vACgC','Aw5MBW','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','BwvZC2fNzq','zfz5vem','BM93','nZeYmM9Zt3D6sa','zgvMyxvSDa','z2vUzxjHDgvuB2TLBG','CMy6','AxnbCNjHEq','x3zHBgLKyxrLuMvSzwfZzuLUChv0','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','mZiYnJK2ofjmCLzVzW','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','ywXS','C1DhrLG','BwLU','ywnXDwLYzvjLC291CMnLtg9JA3m','mtC1nZeYnvvXswLtEq','zxH0CMfJDe93BMvY','n255wxj6tW','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','DhrSuMvTywLUAw5N','nhv5zvvAzW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','igTLExmP','A2v5','t1rnv04','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','AfDHr0S','C3rYAw5N','yw9czvi','DMfSDwu','mti2ogLWzMPqsq','x3jVBgXIywnRs2v5CW','Dg9ju09tDhjPBMC','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','odq5ntaYmgr4q2TKzW','ywPUt2m','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','zw52','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CevcEMe','igTLExmSifrutdOG','nti5mteYAhzxCNng','nJqZntrIsfPLwgq','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','ChvZAa','z2v0twf4vfrmu2vJB25KCW','yNvPBgrlzxK','zxjYB3i','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5'];a0_0x4096=function(){return _0x487c0d;};return a0_0x4096();}class ResourceLockManager{['buildKey'](_0x24e4ad,_0x59542a,_0x20a096){const _0x60e6f2={'fWcar':function(_0x40c47a){return _0x40c47a();}};return''+_0x60e6f2['fWcar'](getPrefix)+_0x24e4ad+':'+_0x59542a+':'+_0x20a096;}[a0_0x16ed4e(0x153)](_0x309bd7){const _0x2ecc29=a0_0x16ed4e;return _0x309bd7+':'+uuidv4()+':'+Date[_0x2ecc29(0x150)]();}[a0_0x16ed4e(0x160)](_0x277d3f){const _0x3c44af=a0_0x16ed4e,_0x38d302={'RXDNw':function(_0x320432,_0x341d3e){return _0x320432>_0x341d3e;}};if(!_0x277d3f)return'unknown';const _0x15cee2=_0x277d3f[_0x3c44af(0x183)](':');return _0x38d302['RXDNw'](_0x15cee2,0x0)?_0x277d3f[_0x3c44af(0x149)](0x0,_0x15cee2):_0x277d3f;}['getMaxTTLSeconds'](){const _0x54ea7f=a0_0x16ed4e;return parseInt(process[_0x54ea7f(0x176)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x16ed4e(0x15e)]({resource:_0x576b85,lockKeys:_0x3809fc,ttl:_0x453041,owner:_0xb35e13}){const _0x5a45ed=a0_0x16ed4e,_0x2596b8={'KEuRy':_0x5a45ed(0x162),'OTMWN':'resource_lock_acquired','ajnOc':'resource_lock_rollback_error','hWaGK':'resource_lock_acquire_error'},_0x59ac3b=this['_validateAcquireInput']({'resource':_0x576b85,'lockKeys':_0x3809fc,'ttl':_0x453041,'owner':_0xb35e13});if(!_0x59ac3b['valid'])return{'success':![],'error':_0x59ac3b[_0x5a45ed(0x180)]};const _0x485a68=this[_0x5a45ed(0x17e)](),_0x3dbeaf=Math[_0x5a45ed(0x15d)](_0x453041,_0x485a68),_0x1e9665=this['generateToken'](_0xb35e13),_0x54808f=[];try{const _0x817add=redisClient['getClient']();for(let _0x547e7e=0x0;_0x547e7e<_0x3809fc[_0x5a45ed(0x148)];_0x547e7e++){const {key:_0x34bb42,value:_0x4edad3}=_0x3809fc[_0x547e7e],_0x1499cc=this[_0x5a45ed(0x17f)](_0x576b85,_0x34bb42,_0x4edad3),_0x177a15=await _0x817add['set'](_0x1499cc,_0x1e9665,'EX',_0x3dbeaf,'NX');if(_0x177a15==='OK')_0x54808f[_0x5a45ed(0x17d)](_0x1499cc);else{await this[_0x5a45ed(0x170)](_0x817add,_0x54808f,_0x1e9665);const _0xc5f74c=await this['_getConflictInfo'](_0x817add,_0x1499cc);return logger['warn']({'event':_0x5a45ed(0x14d),'resource':_0x576b85,'conflicting_key':{'key':_0x34bb42,'value':_0x4edad3},'locked_by':_0xc5f74c['owner'],'ttl_remaining':_0xc5f74c[_0x5a45ed(0x164)],'attempted_by':_0xb35e13},'Resource\x20lock\x20conflict\x20on\x20'+_0x576b85+':'+_0x34bb42+':'+_0x4edad3),{'success':![],'error':_0x2596b8['KEuRy'],'data':{'conflicting_key':{'key':_0x34bb42,'value':_0x4edad3},'locked_by':_0xc5f74c['owner'],'ttl_remaining':_0xc5f74c[_0x5a45ed(0x164)]}};}}const _0x1e73da=_0x3809fc['map'](({key:_0x149389,value:_0x12abf5})=>({'key':_0x149389,'value':_0x12abf5,'lock_key':this['buildKey'](_0x576b85,_0x149389,_0x12abf5)}));return logger['info']({'event':_0x2596b8[_0x5a45ed(0x169)],'resource':_0x576b85,'keys_count':_0x3809fc['length'],'ttl':_0x3dbeaf,'owner':_0xb35e13},_0x5a45ed(0x172)+_0x576b85+'\x20('+_0x3809fc['length']+_0x5a45ed(0x179)+_0x3dbeaf+'s)'),{'success':!![],'data':{'lock_token':_0x1e9665,'resource':_0x576b85,'locked_keys':_0x1e73da,'ttl':_0x3dbeaf,'owner':_0xb35e13,'acquired_at':new Date()[_0x5a45ed(0x171)]()}};}catch(_0x3c307c){try{const _0x38cc44=redisClient['getClient']();await this[_0x5a45ed(0x170)](_0x38cc44,_0x54808f,_0x1e9665);}catch(_0x3b69ed){logger[_0x5a45ed(0x180)]({'event':_0x2596b8[_0x5a45ed(0x174)],'error':_0x3b69ed['message']},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger['error']({'event':_0x2596b8[_0x5a45ed(0x16b)],'resource':_0x576b85,'owner':_0xb35e13,'error':_0x3c307c[_0x5a45ed(0x14e)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x3c307c['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x3c307c[_0x5a45ed(0x14e)]};}}async['releaseResourceLocks']({resource:_0x3da530,lockKeys:_0x3ff66e,lockToken:_0x4f1f97}){const _0x291869=a0_0x16ed4e,_0x3428ef={'TDkII':_0x291869(0x159)},_0x316037=this[_0x291869(0x156)]({'resource':_0x3da530,'lockKeys':_0x3ff66e,'lockToken':_0x4f1f97});if(!_0x316037['valid'])return{'success':![],'error':_0x316037['error']};try{const _0x4d5c2f=redisClient['getClient']();let _0x1e67c9=0x0;for(const {key:_0x4bf7d1,value:_0x441307}of _0x3ff66e){const _0x2b8510=this[_0x291869(0x17f)](_0x3da530,_0x4bf7d1,_0x441307),_0x30c061=await _0x4d5c2f['eval'](RELEASE_LUA_SCRIPT,0x1,_0x2b8510,_0x4f1f97);_0x30c061===0x1&&_0x1e67c9++;}return logger[_0x291869(0x14c)]({'event':_0x3428ef['TDkII'],'resource':_0x3da530,'released_keys':_0x1e67c9,'total_keys':_0x3ff66e[_0x291869(0x148)],'owner':this['extractOwner'](_0x4f1f97)},'Resource\x20lock\x20released:\x20'+_0x3da530+'\x20('+_0x1e67c9+'/'+_0x3ff66e['length']+_0x291869(0x167)),{'success':!![],'data':{'resource':_0x3da530,'released_keys':_0x1e67c9,'total_keys':_0x3ff66e['length']}};}catch(_0x3ccbfc){return logger[_0x291869(0x180)]({'event':_0x291869(0x163),'resource':_0x3da530,'error':_0x3ccbfc['message']},'Resource\x20lock\x20release\x20error:\x20'+_0x3ccbfc['message']),{'success':![],'error':_0x291869(0x14a)+_0x3ccbfc[_0x291869(0x14e)]};}}async['getResourceLockStatus']({resource:_0x58a7d9,lockKeys:_0x108b7a}){const _0x1a7e46=a0_0x16ed4e,_0x238e82={'sWGFX':function(_0x24eece,_0x294484){return _0x24eece===_0x294484;},'hULJG':function(_0x41fbac,_0x4a2c11){return _0x41fbac!==_0x4a2c11;},'lTHpo':'resource_lock_status_error'};if(!_0x58a7d9||!Array['isArray'](_0x108b7a)||_0x238e82[_0x1a7e46(0x15c)](_0x108b7a['length'],0x0))return{'success':![],'error':_0x1a7e46(0x15a)};try{const _0x4cf5d9=redisClient['getClient'](),_0x53f952=[];for(const {key:_0x5b1d20,value:_0x10b28b}of _0x108b7a){const _0x141f92=this['buildKey'](_0x58a7d9,_0x5b1d20,_0x10b28b),[_0x4847c7,_0x1b1b19]=await Promise[_0x1a7e46(0x15b)]([_0x4cf5d9['get'](_0x141f92),_0x4cf5d9['ttl'](_0x141f92)]),_0x181296=_0x238e82['hULJG'](_0x4847c7,null);_0x53f952[_0x1a7e46(0x17d)]({'key':_0x5b1d20,'value':_0x10b28b,'locked':_0x181296,'owner':_0x181296?this['extractOwner'](_0x4847c7):null,'ttl_remaining':_0x181296&&_0x1b1b19>0x0?_0x1b1b19:null});}return{'success':!![],'data':{'resource':_0x58a7d9,'keys':_0x53f952}};}catch(_0x349b42){return logger['error']({'event':_0x238e82['lTHpo'],'resource':_0x58a7d9,'error':_0x349b42['message']},'Resource\x20lock\x20status\x20error:\x20'+_0x349b42[_0x1a7e46(0x14e)]),{'success':![],'error':_0x1a7e46(0x17c)+_0x349b42['message']};}}async[a0_0x16ed4e(0x170)](_0x1432ca,_0x52fa05,_0xca0f2d){const _0x3ebc30=a0_0x16ed4e;for(const _0x40aaaf of _0x52fa05){try{await _0x1432ca['eval'](RELEASE_LUA_SCRIPT,0x1,_0x40aaaf,_0xca0f2d);}catch(_0xe8847d){logger[_0x3ebc30(0x180)]({'event':_0x3ebc30(0x175),'key':_0x40aaaf,'error':_0xe8847d['message']},'Failed\x20to\x20rollback\x20key:\x20'+_0x40aaaf);}}}async['_getConflictInfo'](_0x35353d,_0x2ba16b){const _0x76f7f6=a0_0x16ed4e,_0x73cf1e={'MNqKL':'unknown'};try{const [_0x33f6c1,_0x129896]=await Promise[_0x76f7f6(0x15b)]([_0x35353d['get'](_0x2ba16b),_0x35353d['ttl'](_0x2ba16b)]);return{'owner':_0x33f6c1?this['extractOwner'](_0x33f6c1):_0x76f7f6(0x184),'ttlRemaining':_0x129896>0x0?_0x129896:null};}catch{return{'owner':_0x73cf1e[_0x76f7f6(0x147)],'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x178d4a,lockKeys:_0x275e9a,ttl:_0x89af0f,owner:_0x5c5d0f}){const _0x2f44bf=a0_0x16ed4e,_0x24642b={'DXjzV':function(_0x39b0d4,_0x6a9f7b){return _0x39b0d4!==_0x6a9f7b;},'dVyTC':'string','NtASb':function(_0x3b3e60,_0x1429c2){return _0x3b3e60===_0x1429c2;},'sTKzy':_0x2f44bf(0x181),'pEBza':function(_0x5d2e67,_0x5e3461){return _0x5d2e67>_0x5e3461;},'gOcho':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','guZpg':function(_0x18cf50,_0x3cebab){return _0x18cf50<_0x3cebab;},'RbkFA':_0x2f44bf(0x177)};if(!_0x178d4a||_0x24642b['DXjzV'](typeof _0x178d4a,_0x24642b[_0x2f44bf(0x14f)]))return{'valid':![],'error':_0x2f44bf(0x16a)};if(!Array[_0x2f44bf(0x155)](_0x275e9a)||_0x24642b['NtASb'](_0x275e9a[_0x2f44bf(0x148)],0x0))return{'valid':![],'error':_0x24642b['sTKzy']};if(_0x24642b[_0x2f44bf(0x178)](_0x275e9a['length'],0x64))return{'valid':![],'error':_0x24642b['gOcho']};for(let _0x4f9865=0x0;_0x24642b[_0x2f44bf(0x14b)](_0x4f9865,_0x275e9a[_0x2f44bf(0x148)]);_0x4f9865++){const _0xee2f80=_0x275e9a[_0x4f9865];if(!_0xee2f80||!_0xee2f80[_0x2f44bf(0x168)]||!_0xee2f80['value'])return{'valid':![],'error':'lock_keys['+_0x4f9865+_0x2f44bf(0x157)};}if(!_0x89af0f||typeof _0x89af0f!=='number'||_0x89af0f<0x1)return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x59031c=this[_0x2f44bf(0x17e)]();if(_0x24642b['pEBza'](_0x89af0f,_0x59031c))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x59031c+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x5c5d0f||_0x24642b['DXjzV'](typeof _0x5c5d0f,_0x24642b['dVyTC']))return{'valid':![],'error':_0x24642b[_0x2f44bf(0x182)]};return{'valid':!![]};}[a0_0x16ed4e(0x156)]({resource:_0x33b8c1,lockKeys:_0x20bc19,lockToken:_0x2e5872}){const _0xc2261c=a0_0x16ed4e,_0x49f3f8={'gFiNv':function(_0x505546,_0x21b68f){return _0x505546!==_0x21b68f;},'aoBeR':_0xc2261c(0x16c),'osHZL':_0xc2261c(0x16a),'taOzx':function(_0x505de2,_0x255171){return _0x505de2===_0x255171;}};if(!_0x33b8c1||_0x49f3f8['gFiNv'](typeof _0x33b8c1,_0x49f3f8[_0xc2261c(0x16d)]))return{'valid':![],'error':_0x49f3f8['osHZL']};if(!Array['isArray'](_0x20bc19)||_0x49f3f8['taOzx'](_0x20bc19[_0xc2261c(0x148)],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x1a246a=0x0;_0x1a246a<_0x20bc19['length'];_0x1a246a++){const _0x1f0c8f=_0x20bc19[_0x1a246a];if(!_0x1f0c8f||!_0x1f0c8f['key']||!_0x1f0c8f[_0xc2261c(0x16e)])return{'valid':![],'error':'lock_keys['+_0x1a246a+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x2e5872||typeof _0x2e5872!==_0x49f3f8['aoBeR'])return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}module['exports']=new ResourceLockManager();
|
|
1
|
+
const a0_0x5e417f=a0_0x3530;(function(_0x408b35,_0x3b2a94){const _0x5535f7=a0_0x3530,_0xa3c739=_0x408b35();while(!![]){try{const _0x4831ea=parseInt(_0x5535f7(0x1cd))/0x1+-parseInt(_0x5535f7(0x1f8))/0x2*(parseInt(_0x5535f7(0x1e6))/0x3)+-parseInt(_0x5535f7(0x203))/0x4*(-parseInt(_0x5535f7(0x1f1))/0x5)+parseInt(_0x5535f7(0x1d7))/0x6*(-parseInt(_0x5535f7(0x1e7))/0x7)+-parseInt(_0x5535f7(0x1ba))/0x8+-parseInt(_0x5535f7(0x1fb))/0x9+parseInt(_0x5535f7(0x1c6))/0xa;if(_0x4831ea===_0x3b2a94)break;else _0xa3c739['push'](_0xa3c739['shift']());}catch(_0x2f1916){_0xa3c739['push'](_0xa3c739['shift']());}}}(a0_0xe6c5,0x392b2));const redisClient=require('../../utils/redis-client'),{logger}=require(a0_0x5e417f(0x1b8)),{v4:uuidv4}=require(a0_0x5e417f(0x1eb));function getPrefix(){const _0x5de4a4=a0_0x5e417f,_0x43505f=process[_0x5de4a4(0x1da)][_0x5de4a4(0x1cf)]||_0x5de4a4(0x1f5);return'rf:'+_0x43505f+_0x5de4a4(0x1ec);}function a0_0x3530(_0x3fb07a,_0x3b3960){_0x3fb07a=_0x3fb07a-0x1b7;const _0xe6c5fb=a0_0xe6c5();let _0x3530b8=_0xe6c5fb[_0x3fb07a];if(a0_0x3530['KGLaru']===undefined){var _0xeb114a=function(_0x2c7268){const _0xbc8e51='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31e06f='',_0x168b77='';for(let _0x5bafb4=0x0,_0x361606,_0x306c96,_0x214aac=0x0;_0x306c96=_0x2c7268['charAt'](_0x214aac++);~_0x306c96&&(_0x361606=_0x5bafb4%0x4?_0x361606*0x40+_0x306c96:_0x306c96,_0x5bafb4++%0x4)?_0x31e06f+=String['fromCharCode'](0xff&_0x361606>>(-0x2*_0x5bafb4&0x6)):0x0){_0x306c96=_0xbc8e51['indexOf'](_0x306c96);}for(let _0x183a17=0x0,_0x448b01=_0x31e06f['length'];_0x183a17<_0x448b01;_0x183a17++){_0x168b77+='%'+('00'+_0x31e06f['charCodeAt'](_0x183a17)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x168b77);};a0_0x3530['DeVbMJ']=_0xeb114a,a0_0x3530['fQaZLr']={},a0_0x3530['KGLaru']=!![];}const _0xb4a68a=_0xe6c5fb[0x0],_0x4d87f8=_0x3fb07a+_0xb4a68a,_0x5980fd=a0_0x3530['fQaZLr'][_0x4d87f8];return!_0x5980fd?(_0x3530b8=a0_0x3530['DeVbMJ'](_0x3530b8),a0_0x3530['fQaZLr'][_0x4d87f8]=_0x3530b8):_0x3530b8=_0x5980fd,_0x3530b8;}const DEFAULT_MAX_TTL_SECONDS=0x12c,RELEASE_LUA_SCRIPT=a0_0x5e417f(0x1d0);class ResourceLockManager{['buildKey'](_0x35d501,_0x746ab3,_0x183956){const _0xf5f38e={'DWQrF':function(_0x6da9bf){return _0x6da9bf();}};return''+_0xf5f38e['DWQrF'](getPrefix)+_0x35d501+':'+_0x746ab3+':'+_0x183956;}[a0_0x5e417f(0x1d5)](_0xb8d81f){const _0x23001a=a0_0x5e417f,_0x30545b={'wSsXB':function(_0x118826){return _0x118826();}};return _0xb8d81f+':'+_0x30545b['wSsXB'](uuidv4)+':'+Date[_0x23001a(0x1b9)]();}['extractOwner'](_0x4b2836){const _0x317444=a0_0x5e417f,_0x185f49={'VADxJ':_0x317444(0x1de)};if(!_0x4b2836)return _0x185f49['VADxJ'];const _0x1b69d0=_0x4b2836['indexOf'](':');return _0x1b69d0>0x0?_0x4b2836['substring'](0x0,_0x1b69d0):_0x4b2836;}['getMaxTTLSeconds'](){const _0x100630=a0_0x5e417f;return parseInt(process[_0x100630(0x1da)]['LOCK_RESOURCE_MAX_TTL'],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x52128f,lockKeys:_0x1bc995,ttl:_0xca834f,owner:_0x3313eb}){const _0x225d70=a0_0x5e417f,_0x198590={'hqhjN':function(_0x113a18,_0x4239aa){return _0x113a18<_0x4239aa;},'OwrQw':function(_0x2a1f1f,_0x52fa99){return _0x2a1f1f===_0x52fa99;},'OSudr':_0x225d70(0x1b7),'SEsbP':'resource_lock_acquired'},_0x5270e6=this['_validateAcquireInput']({'resource':_0x52128f,'lockKeys':_0x1bc995,'ttl':_0xca834f,'owner':_0x3313eb});if(!_0x5270e6[_0x225d70(0x1d2)])return{'success':![],'error':_0x5270e6[_0x225d70(0x1e0)]};const _0x18da3d=this['getMaxTTLSeconds'](),_0x27cb2e=Math[_0x225d70(0x1f6)](_0xca834f,_0x18da3d),_0x11d323=this[_0x225d70(0x1d5)](_0x3313eb),_0x575dd2=[];try{const _0x48b28a=redisClient['getClient']();for(let _0x41506a=0x0;_0x198590[_0x225d70(0x1c2)](_0x41506a,_0x1bc995['length']);_0x41506a++){const {key:_0x197552,value:_0x3b6a4d}=_0x1bc995[_0x41506a],_0x328f0d=this[_0x225d70(0x1ef)](_0x52128f,_0x197552,_0x3b6a4d),_0x37698d=await _0x48b28a['set'](_0x328f0d,_0x11d323,'EX',_0x27cb2e,'NX');if(_0x198590[_0x225d70(0x1fa)](_0x37698d,'OK'))_0x575dd2['push'](_0x328f0d);else{await this['_rollbackKeys'](_0x48b28a,_0x575dd2,_0x11d323);const _0x47e1c7=await this['_getConflictInfo'](_0x48b28a,_0x328f0d);return logger[_0x225d70(0x1db)]({'event':_0x198590[_0x225d70(0x1c8)],'resource':_0x52128f,'conflicting_key':{'key':_0x197552,'value':_0x3b6a4d},'locked_by':_0x47e1c7[_0x225d70(0x1ff)],'ttl_remaining':_0x47e1c7['ttlRemaining'],'attempted_by':_0x3313eb},_0x225d70(0x1e8)+_0x52128f+':'+_0x197552+':'+_0x3b6a4d),{'success':![],'error':_0x225d70(0x1d6),'data':{'conflicting_key':{'key':_0x197552,'value':_0x3b6a4d},'locked_by':_0x47e1c7['owner'],'ttl_remaining':_0x47e1c7['ttlRemaining']}};}}const _0xdb1356=_0x1bc995[_0x225d70(0x1f2)](({key:_0xb94351,value:_0x41503c})=>({'key':_0xb94351,'value':_0x41503c,'lock_key':this['buildKey'](_0x52128f,_0xb94351,_0x41503c)}));return logger[_0x225d70(0x1ca)]({'event':_0x198590['SEsbP'],'resource':_0x52128f,'keys_count':_0x1bc995[_0x225d70(0x1bc)],'ttl':_0x27cb2e,'owner':_0x3313eb},_0x225d70(0x1cc)+_0x52128f+'\x20('+_0x1bc995[_0x225d70(0x1bc)]+_0x225d70(0x201)+_0x27cb2e+'s)'),{'success':!![],'data':{'lock_token':_0x11d323,'resource':_0x52128f,'locked_keys':_0xdb1356,'ttl':_0x27cb2e,'owner':_0x3313eb,'acquired_at':new Date()['toISOString']()}};}catch(_0x1be0ee){try{const _0x486f7a=redisClient['getClient']();await this['_rollbackKeys'](_0x486f7a,_0x575dd2,_0x11d323);}catch(_0x357899){logger['error']({'event':'resource_lock_rollback_error','error':_0x357899[_0x225d70(0x1dd)]},'Failed\x20to\x20rollback\x20resource\x20locks\x20after\x20error');}return logger[_0x225d70(0x1e0)]({'event':_0x225d70(0x1be),'resource':_0x52128f,'owner':_0x3313eb,'error':_0x1be0ee[_0x225d70(0x1dd)]},'Resource\x20lock\x20acquire\x20error:\x20'+_0x1be0ee[_0x225d70(0x1dd)]),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x1be0ee['message']};}}async['releaseResourceLocks']({resource:_0xfafc68,lockKeys:_0x8e4d20,lockToken:_0x373aac}){const _0x53469b=a0_0x5e417f,_0x2f3ca0={'LAHrZ':function(_0x45ca4b,_0x1baef4){return _0x45ca4b===_0x1baef4;},'TtuPX':_0x53469b(0x1bf)},_0x7c940c=this[_0x53469b(0x202)]({'resource':_0xfafc68,'lockKeys':_0x8e4d20,'lockToken':_0x373aac});if(!_0x7c940c[_0x53469b(0x1d2)])return{'success':![],'error':_0x7c940c[_0x53469b(0x1e0)]};try{const _0x3ab3de=redisClient[_0x53469b(0x1e1)]();let _0x5e62c3=0x0;for(const {key:_0x2708e2,value:_0x5dd528}of _0x8e4d20){const _0x3bf790=this[_0x53469b(0x1ef)](_0xfafc68,_0x2708e2,_0x5dd528),_0x547278=await _0x3ab3de[_0x53469b(0x1f7)](RELEASE_LUA_SCRIPT,0x1,_0x3bf790,_0x373aac);_0x2f3ca0[_0x53469b(0x1f0)](_0x547278,0x1)&&_0x5e62c3++;}return logger[_0x53469b(0x1ca)]({'event':_0x53469b(0x200),'resource':_0xfafc68,'released_keys':_0x5e62c3,'total_keys':_0x8e4d20[_0x53469b(0x1bc)],'owner':this[_0x53469b(0x1d4)](_0x373aac)},'Resource\x20lock\x20released:\x20'+_0xfafc68+'\x20('+_0x5e62c3+'/'+_0x8e4d20['length']+_0x53469b(0x1d1)),{'success':!![],'data':{'resource':_0xfafc68,'released_keys':_0x5e62c3,'total_keys':_0x8e4d20['length']}};}catch(_0x5b315a){return logger[_0x53469b(0x1e0)]({'event':_0x2f3ca0[_0x53469b(0x1c1)],'resource':_0xfafc68,'error':_0x5b315a[_0x53469b(0x1dd)]},_0x53469b(0x1bb)+_0x5b315a['message']),{'success':![],'error':_0x53469b(0x1d9)+_0x5b315a[_0x53469b(0x1dd)]};}}async[a0_0x5e417f(0x1e4)]({resource:_0x1374d5,lockKeys:_0x121d3b}){const _0x1c4be2=a0_0x5e417f,_0x4667f3={'ezllZ':'resource\x20and\x20lock_keys\x20are\x20required','hrrdq':function(_0x4e986c,_0x50b052){return _0x4e986c!==_0x50b052;},'EUlCx':function(_0x50c84d,_0xe67e2c){return _0x50c84d>_0xe67e2c;},'VQKUo':'resource_lock_status_error'};if(!_0x1374d5||!Array['isArray'](_0x121d3b)||_0x121d3b[_0x1c4be2(0x1bc)]===0x0)return{'success':![],'error':_0x4667f3[_0x1c4be2(0x1f4)]};try{const _0x49ecde=redisClient['getClient'](),_0x3b3a66=[];for(const {key:_0x48d195,value:_0x1a64a6}of _0x121d3b){const _0x53e7d7=this[_0x1c4be2(0x1ef)](_0x1374d5,_0x48d195,_0x1a64a6),[_0x5b543a,_0x5118c9]=await Promise[_0x1c4be2(0x1f3)]([_0x49ecde[_0x1c4be2(0x1e3)](_0x53e7d7),_0x49ecde['ttl'](_0x53e7d7)]),_0x29f0f3=_0x4667f3[_0x1c4be2(0x1e2)](_0x5b543a,null);_0x3b3a66[_0x1c4be2(0x1ea)]({'key':_0x48d195,'value':_0x1a64a6,'locked':_0x29f0f3,'owner':_0x29f0f3?this['extractOwner'](_0x5b543a):null,'ttl_remaining':_0x29f0f3&&_0x4667f3['EUlCx'](_0x5118c9,0x0)?_0x5118c9:null});}return{'success':!![],'data':{'resource':_0x1374d5,'keys':_0x3b3a66}};}catch(_0x3d0c80){return logger['error']({'event':_0x4667f3[_0x1c4be2(0x1fc)],'resource':_0x1374d5,'error':_0x3d0c80['message']},_0x1c4be2(0x1dc)+_0x3d0c80['message']),{'success':![],'error':_0x1c4be2(0x1c9)+_0x3d0c80['message']};}}async[a0_0x5e417f(0x1e5)](_0x46fafc,_0x1aca18,_0x30942a){const _0x1a3922=a0_0x5e417f,_0x3b4157={'Cspec':_0x1a3922(0x1d8)};for(const _0x4269c9 of _0x1aca18){try{await _0x46fafc['eval'](RELEASE_LUA_SCRIPT,0x1,_0x4269c9,_0x30942a);}catch(_0x51e852){logger['error']({'event':_0x3b4157[_0x1a3922(0x1c3)],'key':_0x4269c9,'error':_0x51e852[_0x1a3922(0x1dd)]},_0x1a3922(0x1f9)+_0x4269c9);}}}async['_getConflictInfo'](_0x3414b7,_0x3b468f){const _0x11512=a0_0x5e417f,_0x5eb54={'AbWFY':function(_0x5da8b5,_0x320b23){return _0x5da8b5>_0x320b23;}};try{const [_0x189c1a,_0x3c2a33]=await Promise[_0x11512(0x1f3)]([_0x3414b7['get'](_0x3b468f),_0x3414b7[_0x11512(0x1df)](_0x3b468f)]);return{'owner':_0x189c1a?this[_0x11512(0x1d4)](_0x189c1a):'unknown','ttlRemaining':_0x5eb54['AbWFY'](_0x3c2a33,0x0)?_0x3c2a33:null};}catch{return{'owner':_0x11512(0x1de),'ttlRemaining':null};}}['_validateAcquireInput']({resource:_0x480b01,lockKeys:_0xd8da05,ttl:_0xa70b73,owner:_0x478601}){const _0x47b66f=a0_0x5e417f,_0x4246fc={'gtDVE':function(_0x4f206c,_0x1d59dd){return _0x4f206c!==_0x1d59dd;},'YIwUZ':_0x47b66f(0x1c4),'vUdzw':function(_0x1ab079,_0x48e4d2){return _0x1ab079===_0x48e4d2;},'vKcnt':function(_0x5696cc,_0x1611e7){return _0x5696cc>_0x1611e7;},'ZOMjQ':_0x47b66f(0x1ed),'bSEVG':function(_0x3fd319,_0x39c264){return _0x3fd319<_0x39c264;},'NjnyY':function(_0x2a6741,_0x19994d){return _0x2a6741!==_0x19994d;},'DaaAQ':function(_0x29857c,_0x13b90d){return _0x29857c<_0x13b90d;},'ZtQIU':function(_0x2ace8e,_0x13b090){return _0x2ace8e>_0x13b090;}};if(!_0x480b01||_0x4246fc['gtDVE'](typeof _0x480b01,_0x4246fc['YIwUZ']))return{'valid':![],'error':_0x47b66f(0x1c7)};if(!Array[_0x47b66f(0x1c0)](_0xd8da05)||_0x4246fc[_0x47b66f(0x1c5)](_0xd8da05['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(_0x4246fc['vKcnt'](_0xd8da05['length'],0x64))return{'valid':![],'error':_0x4246fc['ZOMjQ']};for(let _0x40cef2=0x0;_0x4246fc['bSEVG'](_0x40cef2,_0xd8da05['length']);_0x40cef2++){const _0x5403a9=_0xd8da05[_0x40cef2];if(!_0x5403a9||!_0x5403a9[_0x47b66f(0x1d3)]||!_0x5403a9[_0x47b66f(0x1cb)])return{'valid':![],'error':_0x47b66f(0x1ce)+_0x40cef2+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0xa70b73||_0x4246fc[_0x47b66f(0x1ee)](typeof _0xa70b73,_0x47b66f(0x1fd))||_0x4246fc[_0x47b66f(0x1fe)](_0xa70b73,0x1))return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x1a769f=this['getMaxTTLSeconds']();if(_0x4246fc['ZtQIU'](_0xa70b73,_0x1a769f))return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x1a769f+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x478601||typeof _0x478601!=='string')return{'valid':![],'error':'owner\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}[a0_0x5e417f(0x202)]({resource:_0x485c8a,lockKeys:_0x4b7c40,lockToken:_0x5c4107}){const _0x1401e9=a0_0x5e417f,_0x329063={'SyVme':function(_0x5cb71b,_0x355966){return _0x5cb71b!==_0x355966;},'KObLZ':function(_0x17bbca,_0x568ddb){return _0x17bbca===_0x568ddb;},'gqyma':function(_0xa2a22a,_0x3dd2c1){return _0xa2a22a<_0x3dd2c1;},'MJJDd':_0x1401e9(0x1c4)};if(!_0x485c8a||_0x329063['SyVme'](typeof _0x485c8a,_0x1401e9(0x1c4)))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array[_0x1401e9(0x1c0)](_0x4b7c40)||_0x329063[_0x1401e9(0x204)](_0x4b7c40['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x463d9d=0x0;_0x329063['gqyma'](_0x463d9d,_0x4b7c40['length']);_0x463d9d++){const _0x29dc1d=_0x4b7c40[_0x463d9d];if(!_0x29dc1d||!_0x29dc1d[_0x1401e9(0x1d3)]||!_0x29dc1d[_0x1401e9(0x1cb)])return{'valid':![],'error':_0x1401e9(0x1ce)+_0x463d9d+_0x1401e9(0x1e9)};}if(!_0x5c4107||_0x329063['SyVme'](typeof _0x5c4107,_0x329063['MJJDd']))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}module[a0_0x5e417f(0x1bd)]=new ResourceLockManager();function a0_0xe6c5(){const _0x453be9=['ody1mJm2EKjRC2Pp','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','tg9JAYbYzwXLyxnLigzHAwXLzdOG','zw52','D2fYBG','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','BwvZC2fNzq','Dw5RBM93BG','DhrS','zxjYB3i','z2v0q2XPzw50','AhjYzhe','z2v0','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','x3jVBgXIywnRs2v5CW','mtvuAKzTvNq','mtrjwePxDNe','uMvZB3vYy2uGBg9JAYbJB25MBgLJDcbVBIa','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','ChvZAa','DxvPza','oNjSB2nRoG','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','tMPUEvK','yNvPBgrlzxK','tefiCLO','mti4mZv2r2XMzgu','BwfW','ywXS','zxPSBfO','zgvMyxvSDa','BwLU','zxzHBa','nZqYndzbvK9Vzwu','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','t3DYuxC','mZe1mdC1nM9QrKnQBG','vLflvw8','BNvTyMvY','rgfHqve','B3DUzxi','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','igTLExmSifrutdOG','x3zHBgLKyxrLuMvSzwfZzuLUChv0','mJKYtxvAqvPW','s09ItfO','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','lI4VlI4VDxrPBhmVBg9Nz2vY','BM93','mZi2mJCYohzZDMrstW','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','BgvUz3rO','zxHWB3j0CW','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y','AxnbCNjHEq','vhr1ufG','AhfOAK4','q3nWzwm','C3rYAw5N','DLvKENC','odK3ntG3mgTRuuPryq','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','t1n1zhi','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','Aw5MBW','DMfSDwu','uMvZB3vYy2uGBg9JAYbHy3f1AxjLzdOG','mZGXmtm2zMHYBMvT','Bg9JA19RzxLZwW','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','cIaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicbLBhnLcIaGicbYzxr1CM4GmaOGigvUzaO','igTLExmP','DMfSAwq','A2v5','zxH0CMfJDe93BMvY','z2vUzxjHDgvuB2TLBG','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa'];a0_0xe6c5=function(){return _0x453be9;};return a0_0xe6c5();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x537a(_0x55cade,_0x3107df){_0x55cade=_0x55cade-0x13b;const _0x2d517d=a0_0x2d51();let _0x537a86=_0x2d517d[_0x55cade];if(a0_0x537a['MoAzTg']===undefined){var _0x4b0574=function(_0x31d8c3){const _0x5875c8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x463d16='',_0x12a7da='';for(let _0x56c684=0x0,_0x19aa4d,_0x4c5a4c,_0x227a87=0x0;_0x4c5a4c=_0x31d8c3['charAt'](_0x227a87++);~_0x4c5a4c&&(_0x19aa4d=_0x56c684%0x4?_0x19aa4d*0x40+_0x4c5a4c:_0x4c5a4c,_0x56c684++%0x4)?_0x463d16+=String['fromCharCode'](0xff&_0x19aa4d>>(-0x2*_0x56c684&0x6)):0x0){_0x4c5a4c=_0x5875c8['indexOf'](_0x4c5a4c);}for(let _0x2f8d82=0x0,_0x3aef22=_0x463d16['length'];_0x2f8d82<_0x3aef22;_0x2f8d82++){_0x12a7da+='%'+('00'+_0x463d16['charCodeAt'](_0x2f8d82)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x12a7da);};a0_0x537a['PFEAhq']=_0x4b0574,a0_0x537a['QyOCKD']={},a0_0x537a['MoAzTg']=!![];}const _0x3dfe62=_0x2d517d[0x0],_0x3bc3b4=_0x55cade+_0x3dfe62,_0x3162f4=a0_0x537a['QyOCKD'][_0x3bc3b4];return!_0x3162f4?(_0x537a86=a0_0x537a['PFEAhq'](_0x537a86),a0_0x537a['QyOCKD'][_0x3bc3b4]=_0x537a86):_0x537a86=_0x3162f4,_0x537a86;}const a0_0x4b0507=a0_0x537a;(function(_0x3eca08,_0x97116a){const _0x40720f=a0_0x537a,_0x4b94f9=_0x3eca08();while(!![]){try{const _0x234728=parseInt(_0x40720f(0x1ae))/0x1*(parseInt(_0x40720f(0x156))/0x2)+parseInt(_0x40720f(0x19c))/0x3*(parseInt(_0x40720f(0x17b))/0x4)+-parseInt(_0x40720f(0x161))/0x5*(parseInt(_0x40720f(0x150))/0x6)+-parseInt(_0x40720f(0x1a5))/0x7*(-parseInt(_0x40720f(0x162))/0x8)+parseInt(_0x40720f(0x15c))/0x9*(-parseInt(_0x40720f(0x1a3))/0xa)+-parseInt(_0x40720f(0x174))/0xb+-parseInt(_0x40720f(0x18b))/0xc*(parseInt(_0x40720f(0x1a8))/0xd);if(_0x234728===_0x97116a)break;else _0x4b94f9['push'](_0x4b94f9['shift']());}catch(_0x5ae8c4){_0x4b94f9['push'](_0x4b94f9['shift']());}}}(a0_0x2d51,0x7179c));const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require('uuid');function a0_0x2d51(){const _0x59eca1=['mZaWmda','AxnqyxvZzwq','y29UC3vTzxi','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFu0fttf9qqvntv09sra','z2v0q29UzMLN','yxv0B0nVBw1PDa','C3rHCNruAw1L','BwvZC2fNzq','z2v0tg9Ntgv2zwW','y2XPzw50swq','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','ndaZmNznvLLmwG','Bg9JywXOB3n0oJKWoti','su5gtW','AM9PBG','CMvKDwnL','BgvUz3rO','C2v0DxbfDMvUDeHHBMrSzxjZ','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','BwvZC2fNzxngywLSzwq','AxndB25Uzwn0zwq','DMfSDwu','thzJuxG','y29UBMvJDgLVBLrPBwvVDxq','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','s0fgs0fFqvvut19dt01nsvq','zw52','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','ntDVBwXLBhy','v0fstG','C3rVCa','zw50CMLLCW','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','BM93','yNjVA2vYCW','odmZnZbkyNzuvgq','tK9useLorW','odGXm0Lfv2P0tq','C3rHCNrdB25ZDw1PBMC','z3LNzMS','otGXnw9XDejyzW','BwfW','Cgf5Bg9Hza','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzwqGDg8GDg9WAwm6ia','C3vIC2nYAwjLzfrVCgLJCW','AgvHCNrIzwf0sw50zxj2ywW','nhnPze1VAG','zxjYB3i','lwnVBNn1BwvYlwDYB3vW','ChjVy2vZC2LUz1rPBwvZ','C3vIC2nYAwjL','icHMCM9TqMvNAw5UAw5NoIa','s0fgs0fFu0fttf9vu0vstKfnrq','A2fMA2e','y2rfwLO','y2XVC2u','BK52thm','CMvZDgzVCMDLlq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','AxnsDw5UAw5N','AvPHA3u','s0fgs0fFru5bqKXfra','s0fgs0fFuKvuuLLFrevmqvK','z2v0vgLTzq','Dg9tDhjPBMC','CMvZzxrnzxrYAwnZ','rvjst1i','y29UC3vTzxiUCMvIywXHBMnPBMC','y1nSveC','DM1VB1u','D2fYBG','Bwf4qNL0zxnqzxjqyxj0AxrPB24','Dg9mB3DLCKnHC2u','CMv0CNLbDhrLBxb0CW','C3bSAxq','DgLTzxn0yw1W','mJuWmda','t05AAhi','ChvZAa','Bg9N','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','uhfgqLq','nLDirvHvwq','swTdy3K','s0fgs0fFq0Xjru5ux0Le','y29TBwL0t2zMC2v0CW','EMLkA2C','rhbZELq','ndm3ndK0z21xv3jj','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','B2zMC2v0','zgvMyxvSDa','s0fgs0fFq09otKvdveLptL9usu1ft1vu','Ew5fz3u','nJnswuDQrxm','CgfYC2vizwfKzxjZ','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','revcvuC','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','mJG4mtq1meLfwvrZqG','mZe2oeDkB0vbDa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','mZaWma','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','y29UC3vTzxiUy3jHC2G','BwvZC2fNzxnqCM9JzxnZzwq','AxnjBML0AwfSAxPPBMC','s0fgs0fFu1nm','Dhj1zq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','s0fgs0fFuKvuuLLFtufyx0rftefz','z2v0u3rHDhvZ','mta0odu3nG','z3jVDxbjza','CgfYC2u','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','CMvZDw1L','y29UBMvJDgLVBLbYB21PC2u','mJiWntGWogPYDMfdyW','DLrSrNe','zMXVB3i','BwvZC2fNzxnszwnLAxzLza','C2vLA1rVt2zMC2v0','Cgf1C2u','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','mZC5mtz1EurQq1K','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','BwvZC2fNzuHHBMrSzxi'];a0_0x2d51=function(){return _0x59eca1;};return a0_0x2d51();}class KafkaConsumerService{constructor(){const _0x40c3a4=a0_0x537a;this['kafka']=null,this[_0x40c3a4(0x181)]=null,this[_0x40c3a4(0x194)]=![],this[_0x40c3a4(0x168)]=![],this['isRunning']=![],this['isPaused']=![],this[_0x40c3a4(0x173)]=null,this[_0x40c3a4(0x1ac)]=[],this['groupId']=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}['getConfig'](){const _0x36f52c=a0_0x537a,_0x1dde0c={'ONZhr':function(_0x2d361a,_0x3b3cc3){return _0x2d361a===_0x3b3cc3;},'LvcQx':_0x36f52c(0x164),'vmooU':function(_0x3cfc40,_0x46a01a){return _0x3cfc40(_0x46a01a);},'meHME':_0x36f52c(0x14a),'VJBgz':function(_0xefe347,_0x3565b8){return _0xefe347(_0x3565b8);},'HGfgf':'true','ziJkg':'5000','vTlFq':_0x36f52c(0x17f)};return{'enabled':_0x1dde0c[_0x36f52c(0x14b)](process[_0x36f52c(0x19a)][_0x36f52c(0x13b)],_0x36f52c(0x16a)),'brokers':(process['env']['KAFKA_BROKERS']||_0x36f52c(0x18c))['split'](','),'clientId':process['env'][_0x36f52c(0x152)]||'restforge-'+(process[_0x36f52c(0x19a)]['RESTFORGE_PROJECT_NAME']||_0x36f52c(0x159))+'-consumer','connectionTimeout':parseInt(process['env'][_0x36f52c(0x15a)]||_0x1dde0c[_0x36f52c(0x196)]),'requestTimeout':_0x1dde0c[_0x36f52c(0x143)](parseInt,process['env']['KAFKA_REQUEST_TIMEOUT']||_0x1dde0c['meHME']),'sessionTimeout':_0x1dde0c['vmooU'](parseInt,process[_0x36f52c(0x19a)]['KAFKA_SESSION_TIMEOUT']||'30000'),'heartbeatInterval':_0x1dde0c['VJBgz'](parseInt,process[_0x36f52c(0x19a)]['KAFKA_HEARTBEAT_INTERVAL']||_0x1dde0c['LvcQx']),'maxBytesPerPartition':parseInt(process['env']['KAFKA_MAX_BYTES_PER_PARTITION']||_0x36f52c(0x16e)),'autoCommit':process[_0x36f52c(0x19a)][_0x36f52c(0x199)]===_0x1dde0c['HGfgf'],'autoCommitInterval':parseInt(process[_0x36f52c(0x19a)]['KAFKA_AUTO_COMMIT_INTERVAL']||_0x1dde0c[_0x36f52c(0x154)]),'retryAttempts':parseInt(process[_0x36f52c(0x19a)][_0x36f52c(0x182)]||'3'),'retryDelay':parseInt(process['env'][_0x36f52c(0x13c)]||'1000'),'retryMaxDelay':parseInt(process[_0x36f52c(0x19a)][_0x36f52c(0x16c)]||_0x1dde0c[_0x36f52c(0x175)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x36f52c(0x144)};}[a0_0x4b0507(0x188)](_0x3fa51d){const _0xfcdd29=a0_0x4b0507,_0x2abe98={'nothing':logLevel[_0xfcdd29(0x1a4)],'error':logLevel[_0xfcdd29(0x140)],'warn':logLevel[_0xfcdd29(0x19d)],'info':logLevel[_0xfcdd29(0x18d)],'debug':logLevel[_0xfcdd29(0x15f)]};return _0x2abe98[_0x3fa51d[_0xfcdd29(0x146)]()]||logLevel[_0xfcdd29(0x19d)];}async['initialize'](_0x29562d={}){const _0x587fa6=a0_0x4b0507,_0x361d12={'DpszT':function(_0x6c34d6,_0x2d27e6){return _0x6c34d6===_0x2d27e6;},'ohcXZ':_0x587fa6(0x16a),'cSlTG':_0x587fa6(0x17a)},_0x2b88ea=this['getConfig']();if(!_0x2b88ea['enabled'])return console['log'](_0x361d12[_0x587fa6(0x142)]),![];if(this['isConnected'])return!![];if(this[_0x587fa6(0x168)]&&this['connectionPromise'])return this['connectionPromise'];return this[_0x587fa6(0x168)]=!![],this[_0x587fa6(0x173)]=new Promise(async _0x2d8caf=>{const _0x33cf81=_0x587fa6;try{let _0x5a7bbe=undefined;_0x361d12[_0x33cf81(0x155)](process[_0x33cf81(0x19a)][_0x33cf81(0x169)],_0x361d12['ohcXZ'])&&(_0x5a7bbe=!![]);let _0x24e4ca=undefined;process[_0x33cf81(0x19a)]['KAFKA_SASL_MECHANISM']&&(_0x24e4ca={'mechanism':process[_0x33cf81(0x19a)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x33cf81(0x1b4)]||'','password':process[_0x33cf81(0x19a)][_0x33cf81(0x183)]||''}),this[_0x33cf81(0x1b5)]=new Kafka({'clientId':_0x29562d[_0x33cf81(0x189)]||_0x2b88ea[_0x33cf81(0x189)],'brokers':_0x2b88ea['brokers'],'connectionTimeout':_0x2b88ea[_0x33cf81(0x197)],'requestTimeout':_0x2b88ea['requestTimeout'],'logLevel':this['getLogLevel'](_0x2b88ea['logLevel']),'ssl':_0x5a7bbe,'sasl':_0x24e4ca,'retry':{'initialRetryTime':_0x2b88ea['retryDelay'],'retries':_0x2b88ea[_0x33cf81(0x147)],'maxRetryTime':_0x2b88ea['retryMaxDelay']}}),this[_0x33cf81(0x16f)]=_0x29562d['groupId']||_0x33cf81(0x1b9)+(process[_0x33cf81(0x19a)]['RESTFORGE_PROJECT_NAME']||'default')+_0x33cf81(0x1b0),this[_0x33cf81(0x181)]=this['kafka'][_0x33cf81(0x181)]({'groupId':this[_0x33cf81(0x16f)],'sessionTimeout':_0x2b88ea['sessionTimeout'],'heartbeatInterval':_0x2b88ea[_0x33cf81(0x1ad)],'maxBytesPerPartition':_0x2b88ea[_0x33cf81(0x145)],'allowAutoTopicCreation':![]}),await this[_0x33cf81(0x181)]['connect'](),this['isConnected']=!![],console[_0x33cf81(0x14d)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x2b88ea[_0x33cf81(0x1a2)]['join'](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x2d8caf(!![]);}catch(_0x4e938f){console['error'](_0x33cf81(0x171)+_0x4e938f['message']),this['isConnected']=![],_0x2d8caf(![]);}finally{this['isInitializing']=![];}}),this[_0x587fa6(0x173)];}[a0_0x4b0507(0x191)](){const _0x138df4=a0_0x4b0507,_0x4c8d26={'pJsth':'consumer.disconnect','PjcsO':'consumer.stop','MvPZa':_0x138df4(0x166)};if(!this['consumer'])return;this['consumer']['on'](_0x4c8d26['pJsth'],()=>{const _0xc5d29b=_0x138df4;console[_0xc5d29b(0x14d)](_0xc5d29b(0x15e)),this['isConnected']=![],this[_0xc5d29b(0x1bb)]=![];}),this[_0x138df4(0x181)]['on'](_0x4c8d26['PjcsO'],()=>{console['log']('[KafkaConsumer]\x20Consumer\x20stopped'),this['isRunning']=![];}),this['consumer']['on'](_0x4c8d26['MvPZa'],_0x51081b=>{const _0x2a55f4=_0x138df4;console[_0x2a55f4(0x1af)](_0x2a55f4(0x165)+_0x51081b[_0x2a55f4(0x1aa)][_0x2a55f4(0x1af)][_0x2a55f4(0x187)]),this[_0x2a55f4(0x1bb)]=![];}),this['consumer']['on'](_0x138df4(0x141),()=>{const _0x30a068=_0x138df4;console[_0x30a068(0x14d)]('[KafkaConsumer]\x20Consumer\x20rebalancing...');});}async[a0_0x4b0507(0x1b2)](_0x36dea6,_0x57337a=![]){const _0x12f3a2=a0_0x4b0507;if(!this['isConnected'])return console[_0x12f3a2(0x1af)]('[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'),![];try{const _0x137dca=Array['isArray'](_0x36dea6)?_0x36dea6:[_0x36dea6];for(const _0x125131 of _0x137dca){await this['consumer']['subscribe']({'topic':_0x125131,'fromBeginning':_0x57337a}),console[_0x12f3a2(0x14d)](_0x12f3a2(0x1ab)+_0x125131+_0x12f3a2(0x1b3)+_0x57337a+')');}return this[_0x12f3a2(0x1ac)]=[...new Set([...this[_0x12f3a2(0x1ac)],..._0x137dca])],!![];}catch(_0x4465a6){return console[_0x12f3a2(0x1af)]('[KafkaConsumer]\x20Subscribe\x20error:\x20'+_0x4465a6['message']),![];}}async[a0_0x4b0507(0x1a6)](_0x183f6b,_0x4e953d={}){const _0x3594c0=a0_0x4b0507,_0x27eb70={'ycIGy':function(_0x574a1d,_0x11647d){return _0x574a1d+_0x11647d;},'PMCFP':function(_0x25638a,_0x420d18){return _0x25638a(_0x420d18);},'CRDty':function(_0x3f2838,_0x299e09){return _0x3f2838>_0x299e09;},'HsdrA':function(_0xe3ba38){return _0xe3ba38();},'GrXQM':_0x3594c0(0x17d),'NsXxh':_0x3594c0(0x1ba)};if(!this[_0x3594c0(0x194)])return console['error'](_0x27eb70['GrXQM']),![];if(this['isRunning'])return console['log'](_0x27eb70['NsXxh']),!![];const _0x3eeee4=this[_0x3594c0(0x184)]();this[_0x3594c0(0x17e)]=_0x183f6b;try{return this[_0x3594c0(0x17c)]['startTime']=new Date(),await this['consumer']['run']({'autoCommit':_0x4e953d[_0x3594c0(0x185)]!==undefined?_0x4e953d['autoCommit']:_0x3eeee4[_0x3594c0(0x185)],'autoCommitInterval':_0x3eeee4['autoCommitInterval'],'eachMessage':async({topic:_0x4e0562,partition:_0x4a2eb8,message:_0x2fb03e,heartbeat:_0x48ad9f})=>{const _0x10b0b5=_0x3594c0,_0xe2e5e6=Date[_0x10b0b5(0x1a1)]();this['metrics'][_0x10b0b5(0x177)]++,this['metrics']['lastMessageTime']=new Date();try{const _0x241bcd=_0x2fb03e[_0x10b0b5(0x195)]?_0x2fb03e['value']['toString']():null;let _0x20184=null;try{_0x20184=_0x241bcd?JSON[_0x10b0b5(0x170)](_0x241bcd):null;}catch(_0x1b4d17){_0x20184=_0x241bcd;}const _0x4c6975={'topic':_0x4e0562,'partition':_0x4a2eb8,'offset':_0x2fb03e[_0x10b0b5(0x158)],'key':_0x2fb03e['key']?_0x2fb03e['key'][_0x10b0b5(0x13e)]():null,'headers':this[_0x10b0b5(0x15d)](_0x2fb03e['headers']),'timestamp':_0x2fb03e[_0x10b0b5(0x149)],'value':_0x20184,'raw':_0x241bcd};this['messageHandler']&&await this[_0x10b0b5(0x17e)](_0x4c6975);!_0x3eeee4[_0x10b0b5(0x185)]&&await this[_0x10b0b5(0x181)][_0x10b0b5(0x153)]([{'topic':_0x4e0562,'partition':_0x4a2eb8,'offset':_0x27eb70['ycIGy'](_0x27eb70['PMCFP'](parseInt,_0x2fb03e[_0x10b0b5(0x158)]),0x1)['toString']()}]);this['metrics'][_0x10b0b5(0x167)]++;const _0x395d40=Date['now']()-_0xe2e5e6;this[_0x10b0b5(0x17c)]['processingTimes'][_0x10b0b5(0x14c)](_0x395d40),_0x27eb70['CRDty'](this['metrics'][_0x10b0b5(0x1b1)]['length'],0x64)&&this[_0x10b0b5(0x17c)][_0x10b0b5(0x1b1)]['shift'](),await _0x27eb70['HsdrA'](_0x48ad9f);}catch(_0x46a211){this[_0x10b0b5(0x17c)][_0x10b0b5(0x193)]++,console['error']('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x46a211[_0x10b0b5(0x187)]);throw _0x46a211;}}}),this['isRunning']=!![],console['log'](_0x3594c0(0x18a)+this[_0x3594c0(0x1ac)][_0x3594c0(0x18e)](',\x20')),!![];}catch(_0x582b1d){return console['error']('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x582b1d[_0x3594c0(0x187)]),![];}}[a0_0x4b0507(0x15d)](_0x6cbb16){const _0x1bb267=a0_0x4b0507;if(!_0x6cbb16)return{};const _0x59ee9e={};for(const [_0x38c624,_0x3edd1f]of Object[_0x1bb267(0x19f)](_0x6cbb16)){_0x59ee9e[_0x38c624]=_0x3edd1f?_0x3edd1f[_0x1bb267(0x13e)]():null;}return _0x59ee9e;}async[a0_0x4b0507(0x179)](){const _0x28a1b5=a0_0x4b0507,_0x307e45={'IkCcy':_0x28a1b5(0x1a0),'cdEZZ':_0x28a1b5(0x14e)};if(!this[_0x28a1b5(0x194)]||!this[_0x28a1b5(0x1bb)])return console['log'](_0x307e45[_0x28a1b5(0x151)]),![];if(this['isPaused'])return console['log'](_0x307e45[_0x28a1b5(0x1b6)]),!![];try{const _0x4c75ec=this['subscribedTopics'][_0x28a1b5(0x1a9)](_0x33090a=>({'topic':_0x33090a}));return this['consumer'][_0x28a1b5(0x179)](_0x4c75ec),this[_0x28a1b5(0x180)]=!![],console['log']('[KafkaConsumer]\x20Consumer\x20paused'),!![];}catch(_0x4ddf21){return console[_0x28a1b5(0x1af)](_0x28a1b5(0x157)+_0x4ddf21['message']),![];}}async[a0_0x4b0507(0x172)](){const _0x4dacc4=a0_0x4b0507,_0x224d6a={'nNvLs':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','pFhaX':'[KafkaConsumer]\x20Consumer\x20not\x20paused','seroX':'[KafkaConsumer]\x20Consumer\x20resumed'};if(!this['isConnected']||!this['isRunning'])return console[_0x4dacc4(0x14d)](_0x224d6a[_0x4dacc4(0x1b8)]),![];if(!this[_0x4dacc4(0x180)])return console['log'](_0x224d6a['pFhaX']),!![];try{const _0x22019e=this[_0x4dacc4(0x1ac)]['map'](_0x28aafa=>({'topic':_0x28aafa}));return this[_0x4dacc4(0x181)][_0x4dacc4(0x172)](_0x22019e),this['isPaused']=![],console[_0x4dacc4(0x14d)](_0x224d6a['seroX']),!![];}catch(_0x2821c5){return console[_0x4dacc4(0x1af)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x2821c5[_0x4dacc4(0x187)]),![];}}async['stop'](){const _0x2badfa=a0_0x4b0507,_0x5c2591={'iZaku':_0x2badfa(0x16b),'Cmmck':'2|4|5|1|0|3'};if(!this[_0x2badfa(0x194)])return console[_0x2badfa(0x14d)](_0x5c2591[_0x2badfa(0x1bc)]),!![];try{const _0x1dd39b=_0x5c2591['Cmmck'][_0x2badfa(0x148)]('|');let _0x537b0a=0x0;while(!![]){switch(_0x1dd39b[_0x537b0a++]){case'0':console[_0x2badfa(0x14d)](_0x2badfa(0x163));continue;case'1':this[_0x2badfa(0x180)]=![];continue;case'2':this[_0x2badfa(0x181)]&&(await this[_0x2badfa(0x181)]['stop'](),await this[_0x2badfa(0x181)]['disconnect']());continue;case'3':return!![];case'4':this[_0x2badfa(0x194)]=![];continue;case'5':this[_0x2badfa(0x1bb)]=![];continue;}break;}}catch(_0x437bff){return console[_0x2badfa(0x1af)](_0x2badfa(0x192)+_0x437bff['message']),![];}}async[a0_0x4b0507(0x178)](_0x12bcad,_0x34820a,_0x57a87b){const _0x2eefbb=a0_0x4b0507,_0x56c676={'GoHpO':'[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'};if(!this[_0x2eefbb(0x194)])return console[_0x2eefbb(0x1af)](_0x56c676['GoHpO']),![];try{return this[_0x2eefbb(0x181)]['seek']({'topic':_0x12bcad,'partition':_0x34820a,'offset':_0x57a87b[_0x2eefbb(0x13e)]()}),console['log'](_0x2eefbb(0x19b)+_0x57a87b+'\x20on\x20'+_0x12bcad+':'+_0x34820a),!![];}catch(_0x2a9de3){return console[_0x2eefbb(0x1af)](_0x2eefbb(0x198)+_0x2a9de3['message']),![];}}[a0_0x4b0507(0x16d)](){const _0x3f1301=a0_0x4b0507,_0x5b40d7=this[_0x3f1301(0x184)]();return{'enabled':_0x5b40d7['enabled'],'connected':this['isConnected'],'running':this['isRunning'],'paused':this['isPaused'],'brokers':_0x5b40d7['brokers'],'clientId':_0x5b40d7[_0x3f1301(0x189)],'groupId':this['groupId'],'subscribedTopics':this[_0x3f1301(0x1ac)]};}['getMetrics'](){const _0x49cdf4=a0_0x4b0507,_0x993424={'ynEgu':function(_0x345df0,_0x4ef700){return _0x345df0>_0x4ef700;},'tPrta':function(_0x12f931,_0x259737){return _0x12f931>_0x259737;},'HfeXK':function(_0x5907cd,_0x1143cb){return _0x5907cd+_0x1143cb;},'PqFBT':function(_0x36a07a,_0x586508){return _0x36a07a/_0x586508;},'gygfk':function(_0x432206,_0x13fcbb){return _0x432206-_0x13fcbb;}},_0x42a19c=_0x993424[_0x49cdf4(0x15b)](this['metrics']['processingTimes']['length'],0x0)?this[_0x49cdf4(0x17c)]['processingTimes'][_0x49cdf4(0x18f)]((_0x969439,_0x685ded)=>_0x969439+_0x685ded,0x0)/this['metrics'][_0x49cdf4(0x1b1)][_0x49cdf4(0x190)]:0x0,_0x3a17ce=_0x993424['tPrta'](this['metrics'][_0x49cdf4(0x1b1)][_0x49cdf4(0x190)],0x0)?Math['min'](...this['metrics'][_0x49cdf4(0x1b1)]):0x0,_0x433050=this['metrics']['processingTimes']['length']>0x0?Math['max'](...this['metrics'][_0x49cdf4(0x1b1)]):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this[_0x49cdf4(0x17c)]['messagesProcessed'],'messagesFailed':this['metrics']['messagesFailed'],'successRate':this[_0x49cdf4(0x17c)][_0x49cdf4(0x177)]>0x0?_0x993424['HfeXK']((this['metrics'][_0x49cdf4(0x167)]/this[_0x49cdf4(0x17c)]['messagesReceived']*0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this[_0x49cdf4(0x17c)]['lastMessageTime'],'startTime':this[_0x49cdf4(0x17c)][_0x49cdf4(0x186)],'uptime':this[_0x49cdf4(0x17c)][_0x49cdf4(0x186)]?_0x993424['HfeXK'](Math[_0x49cdf4(0x176)](_0x993424[_0x49cdf4(0x14f)](_0x993424[_0x49cdf4(0x1a7)](Date[_0x49cdf4(0x1a1)](),this['metrics'][_0x49cdf4(0x186)][_0x49cdf4(0x13d)]()),0x3e8)),'s'):'0s','processingTime':{'avg':_0x993424['HfeXK'](Math['round'](_0x42a19c),'ms'),'min':_0x3a17ce+'ms','max':_0x433050+'ms'}};}[a0_0x4b0507(0x13f)](){const _0x2222c8=a0_0x4b0507;this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log'](_0x2222c8(0x160));}async[a0_0x4b0507(0x1b7)](){const _0x1e06d1=a0_0x4b0507;await this[_0x1e06d1(0x19e)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
const a0_0x136db5=a0_0x244d;(function(_0x59d2b4,_0x5365f2){const _0x472ed7=a0_0x244d,_0x213f7e=_0x59d2b4();while(!![]){try{const _0x36235d=parseInt(_0x472ed7(0x195))/0x1*(parseInt(_0x472ed7(0x1b8))/0x2)+parseInt(_0x472ed7(0x1c0))/0x3+parseInt(_0x472ed7(0x1be))/0x4*(-parseInt(_0x472ed7(0x194))/0x5)+-parseInt(_0x472ed7(0x18e))/0x6*(-parseInt(_0x472ed7(0x18d))/0x7)+parseInt(_0x472ed7(0x17c))/0x8+parseInt(_0x472ed7(0x199))/0x9+-parseInt(_0x472ed7(0x182))/0xa*(parseInt(_0x472ed7(0x1d3))/0xb);if(_0x36235d===_0x5365f2)break;else _0x213f7e['push'](_0x213f7e['shift']());}catch(_0x3c532f){_0x213f7e['push'](_0x213f7e['shift']());}}}(a0_0x3199,0x236bd));const {Kafka,logLevel}=require(a0_0x136db5(0x1aa)),{v7:uuidv7}=require('uuid');class KafkaConsumerService{constructor(){const _0x3fae40=a0_0x136db5,_0x6a1aae={'jiWPu':_0x3fae40(0x17f)},_0x3b999f=_0x6a1aae['jiWPu'][_0x3fae40(0x1ac)]('|');let _0x199e39=0x0;while(!![]){switch(_0x3b999f[_0x199e39++]){case'0':this[_0x3fae40(0x19b)]=null;continue;case'1':this['subscribedTopics']=[];continue;case'2':this['consumer']=null;continue;case'3':this['isRunning']=![];continue;case'4':this[_0x3fae40(0x1bf)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};continue;case'5':this[_0x3fae40(0x198)]=![];continue;case'6':this[_0x3fae40(0x1b3)]=![];continue;case'7':this[_0x3fae40(0x179)]=![];continue;case'8':this['connectionPromise']=null;continue;case'9':this['messageHandler']=null;continue;case'10':this[_0x3fae40(0x19c)]=null;continue;}break;}}['getConfig'](){const _0x3ff665=a0_0x136db5,_0x225571={'dpPHf':function(_0x2a26e8,_0xf35bfc){return _0x2a26e8===_0xf35bfc;},'kXrhn':_0x3ff665(0x1ed),'UEFPU':_0x3ff665(0x1ec),'hIIDF':function(_0x5a6850,_0xf411e7){return _0x5a6850(_0xf411e7);},'bMcwO':'25000','HhWIV':function(_0xa0d5e7,_0x566e83){return _0xa0d5e7(_0x566e83);},'rQcHt':'5000'};return{'enabled':_0x225571['dpPHf'](process['env']['KAFKA_ENABLED'],_0x225571[_0x3ff665(0x1cc)]),'brokers':(process[_0x3ff665(0x1ee)][_0x3ff665(0x183)]||'localhost:9092')[_0x3ff665(0x1ac)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x3ff665(0x1f6)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x225571['UEFPU'])+'-consumer','connectionTimeout':parseInt(process[_0x3ff665(0x1ee)][_0x3ff665(0x1cb)]||'3000'),'requestTimeout':_0x225571[_0x3ff665(0x1a2)](parseInt,process['env'][_0x3ff665(0x1b0)]||_0x225571['bMcwO']),'sessionTimeout':parseInt(process[_0x3ff665(0x1ee)]['KAFKA_SESSION_TIMEOUT']||_0x3ff665(0x1d9)),'heartbeatInterval':_0x225571[_0x3ff665(0x1b7)](parseInt,process['env']['KAFKA_HEARTBEAT_INTERVAL']||'3000'),'maxBytesPerPartition':parseInt(process['env']['KAFKA_MAX_BYTES_PER_PARTITION']||'1048576'),'autoCommit':process['env'][_0x3ff665(0x1d5)]==='true','autoCommitInterval':parseInt(process['env']['KAFKA_AUTO_COMMIT_INTERVAL']||_0x225571['rQcHt']),'retryAttempts':_0x225571['HhWIV'](parseInt,process[_0x3ff665(0x1ee)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':parseInt(process[_0x3ff665(0x1ee)][_0x3ff665(0x1e6)]||_0x3ff665(0x1ab)),'retryMaxDelay':_0x225571['HhWIV'](parseInt,process['env'][_0x3ff665(0x1da)]||_0x3ff665(0x1d9)),'logLevel':process[_0x3ff665(0x1ee)]['KAFKA_LOG_LEVEL']||'warn'};}['getLogLevel'](_0x55ab5f){const _0x1b6697=a0_0x136db5,_0x54a24c={'nothing':logLevel['NOTHING'],'error':logLevel[_0x1b6697(0x1b5)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x54a24c[_0x55ab5f[_0x1b6697(0x1bc)]()]||logLevel[_0x1b6697(0x19d)];}async[a0_0x136db5(0x1a1)](_0xa73d12={}){const _0x117e3d=a0_0x136db5,_0x2733dc={'wZaAV':function(_0x204500,_0x1acafc){return _0x204500===_0x1acafc;},'ZDOGJ':'default','pJHwo':function(_0x26d797,_0xaf19cf){return _0x26d797(_0xaf19cf);}},_0xfee786=this['getConfig']();if(!_0xfee786[_0x117e3d(0x1d0)])return console[_0x117e3d(0x1a7)]('[KafkaConsumer]\x20Kafka\x20consumer\x20is\x20disabled\x20in\x20configuration'),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this['connectionPromise'])return this['connectionPromise'];return this['isInitializing']=!![],this['connectionPromise']=new Promise(async _0x52ecc4=>{const _0x372c27=_0x117e3d;try{let _0x15e7db=undefined;_0x2733dc[_0x372c27(0x17b)](process[_0x372c27(0x1ee)]['KAFKA_SSL'],'true')&&(_0x15e7db=!![]);let _0x12e509=undefined;process[_0x372c27(0x1ee)][_0x372c27(0x19a)]&&(_0x12e509={'mechanism':process[_0x372c27(0x1ee)]['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x372c27(0x1b4)]||'','password':process[_0x372c27(0x1ee)][_0x372c27(0x1ca)]||''}),this[_0x372c27(0x19c)]=new Kafka({'clientId':_0xa73d12['clientId']||_0xfee786['clientId'],'brokers':_0xfee786[_0x372c27(0x1cd)],'connectionTimeout':_0xfee786['connectionTimeout'],'requestTimeout':_0xfee786['requestTimeout'],'logLevel':this[_0x372c27(0x1a8)](_0xfee786['logLevel']),'ssl':_0x15e7db,'sasl':_0x12e509,'retry':{'initialRetryTime':_0xfee786[_0x372c27(0x1b1)],'retries':_0xfee786[_0x372c27(0x1f5)],'maxRetryTime':_0xfee786['retryMaxDelay']}}),this['groupId']=_0xa73d12[_0x372c27(0x19b)]||_0x372c27(0x1f6)+(process[_0x372c27(0x1ee)][_0x372c27(0x1d2)]||_0x2733dc['ZDOGJ'])+_0x372c27(0x1f8),this[_0x372c27(0x1e2)]=this['kafka'][_0x372c27(0x1e2)]({'groupId':this[_0x372c27(0x19b)],'sessionTimeout':_0xfee786['sessionTimeout'],'heartbeatInterval':_0xfee786[_0x372c27(0x181)],'maxBytesPerPartition':_0xfee786[_0x372c27(0x1ef)],'allowAutoTopicCreation':![]}),await this['consumer']['connect'](),this['isConnected']=!![],console['log'](_0x372c27(0x1c7)+_0xfee786[_0x372c27(0x1cd)][_0x372c27(0x197)](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x52ecc4(!![]);}catch(_0x4161e6){console['error'](_0x372c27(0x1b6)+_0x4161e6['message']),this[_0x372c27(0x1b3)]=![],_0x2733dc[_0x372c27(0x1dc)](_0x52ecc4,![]);}finally{this[_0x372c27(0x198)]=![];}}),this[_0x117e3d(0x192)];}[a0_0x136db5(0x1e1)](){const _0x26aa8b=a0_0x136db5,_0x20c119={'cORUf':_0x26aa8b(0x1e9),'JlgWl':'[KafkaConsumer]\x20Consumer\x20stopped','ahbPg':_0x26aa8b(0x1f1),'WuAht':'consumer.disconnect','wmZbt':_0x26aa8b(0x1ad),'mfMyE':'consumer.rebalancing'};if(!this['consumer'])return;this['consumer']['on'](_0x20c119['WuAht'],()=>{const _0x254da8=_0x26aa8b;console[_0x254da8(0x1a7)](_0x20c119[_0x254da8(0x191)]),this[_0x254da8(0x1b3)]=![],this['isRunning']=![];}),this['consumer']['on'](_0x20c119[_0x26aa8b(0x1e8)],()=>{const _0x3ab4ec=_0x26aa8b;console[_0x3ab4ec(0x1a7)](_0x20c119[_0x3ab4ec(0x18b)]),this[_0x3ab4ec(0x17a)]=![];}),this[_0x26aa8b(0x1e2)]['on'](_0x26aa8b(0x18f),_0x3fe885=>{const _0x424fbd=_0x26aa8b;console['error'](_0x424fbd(0x18a)+_0x3fe885[_0x424fbd(0x1c8)]['error'][_0x424fbd(0x1e0)]),this[_0x424fbd(0x17a)]=![];}),this[_0x26aa8b(0x1e2)]['on'](_0x20c119[_0x26aa8b(0x180)],()=>{const _0x442dc7=_0x26aa8b;console[_0x442dc7(0x1a7)](_0x20c119['ahbPg']);});}async['subscribe'](_0x5e49c8,_0x34c1c8=![]){const _0x5dc3d7=a0_0x136db5,_0x18fd52={'xwqeU':'[KafkaConsumer]\x20Cannot\x20subscribe\x20-\x20not\x20connected'};if(!this[_0x5dc3d7(0x1b3)])return console['error'](_0x18fd52['xwqeU']),![];try{const _0x49105e=Array[_0x5dc3d7(0x1d7)](_0x5e49c8)?_0x5e49c8:[_0x5e49c8];for(const _0x1b777a of _0x49105e){await this[_0x5dc3d7(0x1e2)]['subscribe']({'topic':_0x1b777a,'fromBeginning':_0x34c1c8}),console[_0x5dc3d7(0x1a7)]('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x1b777a+_0x5dc3d7(0x1d8)+_0x34c1c8+')');}return this['subscribedTopics']=[...new Set([...this[_0x5dc3d7(0x1a3)],..._0x49105e])],!![];}catch(_0x11600a){return console[_0x5dc3d7(0x19f)](_0x5dc3d7(0x1a5)+_0x11600a[_0x5dc3d7(0x1e0)]),![];}}async[a0_0x136db5(0x1c3)](_0x1752eb,_0x536383={}){const _0x599212=a0_0x136db5,_0x14c867={'rjtkA':function(_0x23445c,_0x40c086){return _0x23445c(_0x40c086);},'PiiJz':function(_0x55c058,_0x266f66){return _0x55c058-_0x266f66;},'woEFb':function(_0x1fd27f,_0x25e9a6){return _0x1fd27f>_0x25e9a6;},'DoBgX':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','NHBTQ':_0x599212(0x1de)};if(!this[_0x599212(0x1b3)])return console['error'](_0x14c867['DoBgX']),![];if(this[_0x599212(0x17a)])return console[_0x599212(0x1a7)](_0x14c867[_0x599212(0x1df)]),!![];const _0x3f5ba8=this['getConfig']();this['messageHandler']=_0x1752eb;try{return this['metrics']['startTime']=new Date(),await this[_0x599212(0x1e2)][_0x599212(0x1bb)]({'autoCommit':_0x536383['autoCommit']!==undefined?_0x536383['autoCommit']:_0x3f5ba8['autoCommit'],'autoCommitInterval':_0x3f5ba8[_0x599212(0x1d4)],'eachMessage':async({topic:_0x164b67,partition:_0x5241b8,message:_0x89bb62,heartbeat:_0x4654d9})=>{const _0x2bedf0=_0x599212,_0x564f0f=Date[_0x2bedf0(0x1d6)]();this[_0x2bedf0(0x1bf)]['messagesReceived']++,this['metrics']['lastMessageTime']=new Date();try{const _0x51e73b=_0x89bb62[_0x2bedf0(0x1ba)]?_0x89bb62['value'][_0x2bedf0(0x190)]():null;let _0x52b016=null;try{_0x52b016=_0x51e73b?JSON[_0x2bedf0(0x1bd)](_0x51e73b):null;}catch(_0xe5cbe0){_0x52b016=_0x51e73b;}const _0x2d3503={'topic':_0x164b67,'partition':_0x5241b8,'offset':_0x89bb62['offset'],'key':_0x89bb62['key']?_0x89bb62[_0x2bedf0(0x1e4)][_0x2bedf0(0x190)]():null,'headers':this[_0x2bedf0(0x1c1)](_0x89bb62[_0x2bedf0(0x1ae)]),'timestamp':_0x89bb62[_0x2bedf0(0x1a0)],'value':_0x52b016,'raw':_0x51e73b};this[_0x2bedf0(0x189)]&&await this['messageHandler'](_0x2d3503);!_0x3f5ba8['autoCommit']&&await this[_0x2bedf0(0x1e2)]['commitOffsets']([{'topic':_0x164b67,'partition':_0x5241b8,'offset':(_0x14c867['rjtkA'](parseInt,_0x89bb62[_0x2bedf0(0x1f2)])+0x1)['toString']()}]);this[_0x2bedf0(0x1bf)][_0x2bedf0(0x1a6)]++;const _0x4386b4=_0x14c867['PiiJz'](Date[_0x2bedf0(0x1d6)](),_0x564f0f);this['metrics'][_0x2bedf0(0x1f7)][_0x2bedf0(0x1b9)](_0x4386b4),_0x14c867['woEFb'](this['metrics'][_0x2bedf0(0x1f7)]['length'],0x64)&&this['metrics']['processingTimes']['shift'](),await _0x4654d9();}catch(_0x48983c){this['metrics']['messagesFailed']++,console['error'](_0x2bedf0(0x1c4)+_0x48983c[_0x2bedf0(0x1e0)]);throw _0x48983c;}}}),this['isRunning']=!![],console[_0x599212(0x1a7)]('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this[_0x599212(0x1a3)][_0x599212(0x197)](',\x20')),!![];}catch(_0x554aeb){return console['error']('[KafkaConsumer]\x20Start\x20consuming\x20error:\x20'+_0x554aeb['message']),![];}}['parseHeaders'](_0x1c92bf){const _0x57123b=a0_0x136db5;if(!_0x1c92bf)return{};const _0xf08879={};for(const [_0x33002c,_0x344811]of Object['entries'](_0x1c92bf)){_0xf08879[_0x33002c]=_0x344811?_0x344811[_0x57123b(0x190)]():null;}return _0xf08879;}async['pause'](){const _0x20059b=a0_0x136db5,_0x4d09ce={'goUNk':_0x20059b(0x1e3)};if(!this[_0x20059b(0x1b3)]||!this['isRunning'])return console['log'](_0x4d09ce[_0x20059b(0x19e)]),![];if(this['isPaused'])return console['log']('[KafkaConsumer]\x20Consumer\x20already\x20paused'),!![];try{const _0x282c72=this[_0x20059b(0x1a3)]['map'](_0x275171=>({'topic':_0x275171}));return this['consumer'][_0x20059b(0x1e5)](_0x282c72),this['isPaused']=!![],console[_0x20059b(0x1a7)]('[KafkaConsumer]\x20Consumer\x20paused'),!![];}catch(_0x2b663a){return console['error'](_0x20059b(0x1f4)+_0x2b663a[_0x20059b(0x1e0)]),![];}}async['resume'](){const _0x9f0e7f=a0_0x136db5,_0x5666b5={'npeuT':_0x9f0e7f(0x196)};if(!this[_0x9f0e7f(0x1b3)]||!this['isRunning'])return console[_0x9f0e7f(0x1a7)]('[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running'),![];if(!this['isPaused'])return console['log']('[KafkaConsumer]\x20Consumer\x20not\x20paused'),!![];try{const _0x55acb1=this[_0x9f0e7f(0x1a3)]['map'](_0x523d30=>({'topic':_0x523d30}));return this['consumer'][_0x9f0e7f(0x1cf)](_0x55acb1),this['isPaused']=![],console['log'](_0x5666b5['npeuT']),!![];}catch(_0x3cac3e){return console[_0x9f0e7f(0x19f)]('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x3cac3e[_0x9f0e7f(0x1e0)]),![];}}async[a0_0x136db5(0x1dd)](){const _0x137ec5=a0_0x136db5,_0x24e681={'NzkHW':_0x137ec5(0x1f3),'fTmpG':'[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'};if(!this['isConnected'])return console[_0x137ec5(0x1a7)](_0x24e681[_0x137ec5(0x1e7)]),!![];try{return this['consumer']&&(await this['consumer'][_0x137ec5(0x1dd)](),await this['consumer'][_0x137ec5(0x17e)]()),this[_0x137ec5(0x1b3)]=![],this[_0x137ec5(0x17a)]=![],this['isPaused']=![],console['log'](_0x24e681['fTmpG']),!![];}catch(_0x409c3d){return console[_0x137ec5(0x19f)](_0x137ec5(0x184)+_0x409c3d['message']),![];}}async[a0_0x136db5(0x1c6)](_0x47e5ca,_0x19cbc6,_0x24987f){const _0x3399a7=a0_0x136db5,_0x5ef5b9={'jUoFa':_0x3399a7(0x1c9)};if(!this[_0x3399a7(0x1b3)])return console[_0x3399a7(0x19f)](_0x5ef5b9['jUoFa']),![];try{return this['consumer'][_0x3399a7(0x187)]({'topic':_0x47e5ca,'partition':_0x19cbc6,'offset':_0x24987f[_0x3399a7(0x190)]()}),console['log'](_0x3399a7(0x193)+_0x24987f+'\x20on\x20'+_0x47e5ca+':'+_0x19cbc6),!![];}catch(_0xfd7818){return console['error'](_0x3399a7(0x1c2)+_0xfd7818[_0x3399a7(0x1e0)]),![];}}['getStatus'](){const _0x19373b=a0_0x136db5,_0x47136c=this['getConfig']();return{'enabled':_0x47136c['enabled'],'connected':this['isConnected'],'running':this[_0x19373b(0x17a)],'paused':this['isPaused'],'brokers':_0x47136c[_0x19373b(0x1cd)],'clientId':_0x47136c[_0x19373b(0x1b2)],'groupId':this[_0x19373b(0x19b)],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x478560=a0_0x136db5,_0x42bc6b={'rpoJA':function(_0x35ccfa,_0x4f6d5d){return _0x35ccfa>_0x4f6d5d;},'VdRqN':function(_0x400c56,_0x14e3c6){return _0x400c56/_0x14e3c6;},'oVkJa':function(_0x27d263,_0x561599){return _0x27d263>_0x561599;},'fGjdu':function(_0xd137d,_0x116903){return _0xd137d>_0x116903;},'hrYJc':function(_0x45fa51,_0x431695){return _0x45fa51>_0x431695;},'DEeKU':function(_0x2a56f6,_0x17852d){return _0x2a56f6+_0x17852d;}},_0x1e7877=_0x42bc6b['rpoJA'](this['metrics']['processingTimes'][_0x478560(0x186)],0x0)?_0x42bc6b['VdRqN'](this[_0x478560(0x1bf)][_0x478560(0x1f7)][_0x478560(0x1f0)]((_0x38e569,_0x4ccda6)=>_0x38e569+_0x4ccda6,0x0),this['metrics'][_0x478560(0x1f7)]['length']):0x0,_0x4bb280=_0x42bc6b[_0x478560(0x1a4)](this['metrics'][_0x478560(0x1f7)]['length'],0x0)?Math['min'](...this[_0x478560(0x1bf)]['processingTimes']):0x0,_0x22c6af=_0x42bc6b['fGjdu'](this[_0x478560(0x1bf)]['processingTimes'][_0x478560(0x186)],0x0)?Math[_0x478560(0x188)](...this[_0x478560(0x1bf)][_0x478560(0x1f7)]):0x0;return{'messagesReceived':this['metrics'][_0x478560(0x17d)],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this['metrics'][_0x478560(0x1ce)],'successRate':_0x42bc6b['hrYJc'](this['metrics']['messagesReceived'],0x0)?_0x42bc6b['DEeKU']((_0x42bc6b[_0x478560(0x185)](this['metrics']['messagesProcessed'],this['metrics'][_0x478560(0x17d)])*0x64)[_0x478560(0x1af)](0x2),'%'):'0%','lastMessageTime':this[_0x478560(0x1bf)][_0x478560(0x1c5)],'startTime':this[_0x478560(0x1bf)]['startTime'],'uptime':this[_0x478560(0x1bf)]['startTime']?Math[_0x478560(0x1db)](_0x42bc6b['VdRqN'](Date['now']()-this[_0x478560(0x1bf)][_0x478560(0x18c)]['getTime'](),0x3e8))+'s':'0s','processingTime':{'avg':Math['round'](_0x1e7877)+'ms','min':_0x4bb280+'ms','max':_0x22c6af+'ms'}};}[a0_0x136db5(0x1d1)](){const _0x5d1a7a=a0_0x136db5;this[_0x5d1a7a(0x1bf)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this[_0x5d1a7a(0x17a)]?new Date():null,'processingTimes':[]},console[_0x5d1a7a(0x1a7)](_0x5d1a7a(0x1eb));}async['close'](){const _0x253c90=a0_0x136db5;await this[_0x253c90(0x1dd)]();}}let instance=null;function a0_0x244d(_0x5bf32a,_0x4e2d15){_0x5bf32a=_0x5bf32a-0x179;const _0x319959=a0_0x3199();let _0x244d1b=_0x319959[_0x5bf32a];if(a0_0x244d['sVtTOR']===undefined){var _0x350512=function(_0x5a19c3){const _0x2bf02e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xdb2bae='',_0x45e4eb='';for(let _0x573b21=0x0,_0x454130,_0x3e3feb,_0x230531=0x0;_0x3e3feb=_0x5a19c3['charAt'](_0x230531++);~_0x3e3feb&&(_0x454130=_0x573b21%0x4?_0x454130*0x40+_0x3e3feb:_0x3e3feb,_0x573b21++%0x4)?_0xdb2bae+=String['fromCharCode'](0xff&_0x454130>>(-0x2*_0x573b21&0x6)):0x0){_0x3e3feb=_0x2bf02e['indexOf'](_0x3e3feb);}for(let _0x378176=0x0,_0x6f3875=_0xdb2bae['length'];_0x378176<_0x6f3875;_0x378176++){_0x45e4eb+='%'+('00'+_0xdb2bae['charCodeAt'](_0x378176)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x45e4eb);};a0_0x244d['IiCpEd']=_0x350512,a0_0x244d['YVdhgn']={},a0_0x244d['sVtTOR']=!![];}const _0x50dfa6=_0x319959[0x0],_0x4ddbe8=_0x5bf32a+_0x50dfa6,_0xfbafc0=a0_0x244d['YVdhgn'][_0x4ddbe8];return!_0xfbafc0?(_0x244d1b=a0_0x244d['IiCpEd'](_0x244d1b),a0_0x244d['YVdhgn'][_0x4ddbe8]=_0x244d1b):_0x244d1b=_0xfbafc0,_0x244d1b;}function a0_0x3199(){const _0x1e68a4=['zgLZy29UBMvJDa','mtb8mNW2Fdv8m3W3FdH8mxWWFdL8na','BwznEuu','AgvHCNrIzwf0sw50zxj2ywW','nJi4mdeWrxLAt3jQ','s0fgs0fFqLjps0vsuW','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','vMrsCu4','BgvUz3rO','C2vLAW','Bwf4','BwvZC2fNzuHHBMrSzxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignYyxnOzwq6ia','sMXNv2W','C3rHCNruAw1L','mty3m1vTtxPKrq','mJC2nKnAruXLyq','y29UC3vTzxiUy3jHC2G','Dg9tDhjPBMC','y09svwy','y29UBMvJDgLVBLbYB21PC2u','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','nu5yAvjWBa','mtm3odG1ufD6y2vr','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','AM9PBG','AxnjBML0AwfSAxPPBMC','mJq3ntuZmvP6r1jkAG','s0fgs0fFu0fttf9nruniqu5ju00','z3jVDxbjza','A2fMA2e','v0fstG','z29vtMS','zxjYB3i','DgLTzxn0yw1W','Aw5PDgLHBgL6zq','AeLjrey','C3vIC2nYAwjLzfrVCgLJCW','B1zRsMe','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','BwvZC2fNzxnqCM9JzxnZzwq','Bg9N','z2v0tg9Ntgv2zwW','zxHWB3j0CW','A2fMA2fQCW','mtaWma','C3bSAxq','y29UC3vTzxiUC3rVCa','AgvHzgvYCW','Dg9gAxHLza','s0fgs0fFuKvrvuvtvf9usu1ft1vu','CMv0CNLezwXHEq','y2XPzw50swq','AxndB25Uzwn0zwq','s0fgs0fFu0fttf9vu0vstKfnrq','rvjst1i','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','sgHxsvy','mLfYBun6ua','ChvZAa','DMfSDwu','CNvU','Dg9mB3DLCKnHC2u','CgfYC2u','nZa3mda4wgXtqLbh','Bwv0CMLJCW','mZe2odi3rMfsChft','CgfYC2vizwfKzxjZ','w0THzMTHq29UC3vTzxjDifnLzwSGzxjYB3i6ia','C3rHCNrdB25ZDw1PBMC','w0THzMTHq29UC3vTzxjDie1LC3nHz2uGChjVy2vZC2LUzYbLCNjVCJOG','BgfZDe1LC3nHz2vuAw1L','C2vLA1rVt2zMC2v0','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','Cgf5Bg9Hza','w0THzMTHq29UC3vTzxjDienHBM5VDcbZzwvRic0GBM90ignVBM5Ly3rLza','s0fgs0fFu0fttf9qqvntv09sra','s0fgs0fFq09otKvdveLptL9usu1ft1vu','A1HYAg4','yNjVA2vYCW','BwvZC2fNzxngywLSzwq','CMvZDw1L','zw5HyMXLza','CMvZzxrnzxrYAwnZ','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','otLztMDct0G','yxv0B0nVBw1PDeLUDgvYDMfS','s0fgs0fFqvvut19dt01nsvq','BM93','AxnbCNjHEq','icHMCM9TqMvNAw5UAw5NoIa','mZaWmda','s0fgs0fFuKvuuLLFtufyx0rftefz','zMXVB3i','CePiD28','C3rVCa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','tKHcvfe','BwvZC2fNzq','C2v0DxbfDMvUDeHHBMrSzxjZ','y29UC3vTzxi','w0THzMTHq29UC3vTzxjDienHBM5VDcbWyxvZzsaTignVBNn1BwvYig5VDcbYDw5UAw5N','A2v5','Cgf1C2u','s0fgs0fFuKvuuLLFrevmqvK','tNPRsfC','D21AyNq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','y2XVC2u','w0THzMTHq29UC3vTzxjDie1LDhjPy3mGCMvZzxq','zgvMyxvSDa','Dhj1zq','zw52','Bwf4qNL0zxnqzxjqyxj0AxrPB24','CMvKDwnL','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLyMfSyw5JAw5NlI4U','B2zMC2v0','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','w0THzMTHq29UC3vTzxjDifbHDxnLigvYCM9YoIa','CMv0CNLbDhrLBxb0CW','CMvZDgzVCMDLlq','ChjVy2vZC2LUz1rPBwvZ','lwnVBNn1BwvYlwDYB3vW','AxnqyxvZzwq','AxnsDw5UAw5N','D1PHqvy','mJa2nJuXmNDcsxH2Eq','BwvZC2fNzxnszwnLAxzLza'];a0_0x3199=function(){return _0x1e68a4;};return a0_0x3199();}function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){const _0x338722=a0_0x136db5;instance&&(instance[_0x338722(0x1ea)](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x136db5(0x1a9)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x80b73b=a0_0x186f;(function(_0x1d53f9,_0x562c50){const _0x3f70da=a0_0x186f,_0x49a6e8=_0x1d53f9();while(!![]){try{const _0x570126=parseInt(_0x3f70da(0x1d6))/0x1+parseInt(_0x3f70da(0x200))/0x2*(parseInt(_0x3f70da(0x1c5))/0x3)+-parseInt(_0x3f70da(0x205))/0x4*(-parseInt(_0x3f70da(0x1cf))/0x5)+-parseInt(_0x3f70da(0x20a))/0x6+parseInt(_0x3f70da(0x209))/0x7+parseInt(_0x3f70da(0x1b9))/0x8*(parseInt(_0x3f70da(0x1a7))/0x9)+-parseInt(_0x3f70da(0x1e0))/0xa*(parseInt(_0x3f70da(0x1b4))/0xb);if(_0x570126===_0x562c50)break;else _0x49a6e8['push'](_0x49a6e8['shift']());}catch(_0x17aaa5){_0x49a6e8['push'](_0x49a6e8['shift']());}}}(a0_0x297a,0x2c034));const {Kafka,logLevel,Partitioners}=require(a0_0x80b73b(0x1d1)),{v7:uuidv7}=require(a0_0x80b73b(0x1b2));class KafkaService{constructor(){const _0x177b2c=a0_0x80b73b;this['kafka']=null,this['producer']=null,this['isConnected']=![],this[_0x177b2c(0x1f2)]=![],this['connectionPromise']=null;}[a0_0x80b73b(0x1ad)](){const _0xeb627e=a0_0x80b73b,_0x4b4d6={'iUMfb':function(_0x1921dd,_0x518c26){return _0x1921dd===_0x518c26;},'YCANo':function(_0x1b80f6,_0xb39f3b){return _0x1b80f6(_0xb39f3b);},'oWeDv':'3000','GCKdx':'25000','PYyNl':_0xeb627e(0x1d9),'aCjtx':function(_0x4cb489,_0x351c0a){return _0x4cb489(_0x351c0a);},'bkgNc':_0xeb627e(0x1fb),'LhKPi':_0xeb627e(0x1c4)};return{'enabled':_0x4b4d6['iUMfb'](process[_0xeb627e(0x1fc)][_0xeb627e(0x1bc)],_0xeb627e(0x1bb)),'brokers':(process[_0xeb627e(0x1fc)]['KAFKA_BROKERS']||'localhost:9092')[_0xeb627e(0x1e2)](','),'clientId':process[_0xeb627e(0x1fc)]['KAFKA_CLIENT_ID']||'restforge-'+(process[_0xeb627e(0x1fc)]['RESTFORGE_PROJECT_NAME']||'default')+'-producer','connectionTimeout':_0x4b4d6[_0xeb627e(0x1a5)](parseInt,process['env'][_0xeb627e(0x1a4)]||_0x4b4d6[_0xeb627e(0x1ee)]),'requestTimeout':parseInt(process[_0xeb627e(0x1fc)][_0xeb627e(0x1bf)]||_0x4b4d6['GCKdx']),'topicPattern':process['env'][_0xeb627e(0x1c9)]||'{module}.{endpoint}.events','tenantId':process['env'][_0xeb627e(0x1aa)]||_0x4b4d6[_0xeb627e(0x1ba)],'retryAttempts':_0x4b4d6['YCANo'](parseInt,process[_0xeb627e(0x1fc)][_0xeb627e(0x1be)]||'3'),'retryDelay':_0x4b4d6[_0xeb627e(0x1ea)](parseInt,process['env']['KAFKA_RETRY_DELAY']||_0x4b4d6['bkgNc']),'logLevel':process['env'][_0xeb627e(0x1fe)]||_0x4b4d6['LhKPi']};}['getLogLevel'](_0x91dc3b){const _0x3879a1=a0_0x80b73b,_0x2faeb1={'nothing':logLevel[_0x3879a1(0x1e8)],'error':logLevel[_0x3879a1(0x1e3)],'warn':logLevel[_0x3879a1(0x1b0)],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x2faeb1[_0x91dc3b['toLowerCase']()]||logLevel[_0x3879a1(0x1b0)];}async[a0_0x80b73b(0x1bd)](){const _0x1f2220=a0_0x80b73b,_0xec7960={'KzfPT':_0x1f2220(0x1c6),'HKQma':function(_0x16dc13,_0xe4d8b){return _0x16dc13===_0xe4d8b;},'KVpiQ':_0x1f2220(0x1bb),'jJWBf':function(_0x35c57b,_0x2cbf90){return _0x35c57b(_0x2cbf90);},'DfpnG':function(_0x1e37c,_0x34b4d9){return _0x1e37c(_0x34b4d9);},'PTWSF':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x19c31e=this['getConfig']();if(!_0x19c31e['enabled'])return console['log'](_0xec7960[_0x1f2220(0x1ef)]),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x1f2220(0x1c8)])return this['connectionPromise'];return this['isInitializing']=!![],this[_0x1f2220(0x1c8)]=new Promise(async _0x4c3a3c=>{const _0x4c1210=_0x1f2220;try{let _0x36c05a=undefined;_0xec7960[_0x4c1210(0x1f5)](process[_0x4c1210(0x1fc)]['KAFKA_SSL'],_0xec7960['KVpiQ'])&&(_0x36c05a=!![]);let _0x4c051e=undefined;process[_0x4c1210(0x1fc)][_0x4c1210(0x1a8)]&&(_0x4c051e={'mechanism':process['env'][_0x4c1210(0x1a8)],'username':process[_0x4c1210(0x1fc)][_0x4c1210(0x202)]||'','password':process[_0x4c1210(0x1fc)][_0x4c1210(0x1cd)]||''}),this[_0x4c1210(0x1c0)]=new Kafka({'clientId':_0x19c31e['clientId'],'brokers':_0x19c31e['brokers'],'connectionTimeout':_0x19c31e['connectionTimeout'],'requestTimeout':_0x19c31e[_0x4c1210(0x1c2)],'logLevel':this['getLogLevel'](_0x19c31e['logLevel']),'ssl':_0x36c05a,'sasl':_0x4c051e,'retry':{'initialRetryTime':_0x19c31e['retryDelay'],'retries':_0x19c31e['retryAttempts']}}),this['producer']=this['kafka'][_0x4c1210(0x1d8)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x4c1210(0x1f0)]}),await this[_0x4c1210(0x1d8)]['connect'](),this['isConnected']=!![],console['log']('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x19c31e['brokers'][_0x4c1210(0x1af)](',\x20')),this['producer']['on'](_0x4c1210(0x1e7),()=>{const _0x52f6d0=_0x4c1210;console['log'](_0xec7960[_0x52f6d0(0x1cc)]),this[_0x52f6d0(0x1ec)]=![];}),_0xec7960[_0x4c1210(0x1f8)](_0x4c3a3c,!![]);}catch(_0x234277){console[_0x4c1210(0x1f6)](_0x4c1210(0x1ff)+_0x234277['message']),this['isConnected']=![],_0xec7960[_0x4c1210(0x1da)](_0x4c3a3c,![]);}finally{this['isInitializing']=![];}}),this['connectionPromise'];}['formatDateTime'](_0x3913d9){const _0x3cb5ca=a0_0x80b73b,_0x367736={'URKwv':function(_0x163d1a,_0x2833dd){return _0x163d1a(_0x2833dd);},'xJvcb':function(_0x57cae4,_0x4b7f42){return _0x57cae4+_0x4b7f42;}},_0x120801=_0x3913d9||new Date(),_0x4ea404=_0x120801[_0x3cb5ca(0x1b5)](),_0x300d9a=_0x367736[_0x3cb5ca(0x1b6)](String,_0x367736[_0x3cb5ca(0x1d2)](_0x120801[_0x3cb5ca(0x1f4)](),0x1))['padStart'](0x2,'0'),_0x416e20=String(_0x120801['getDate']())[_0x3cb5ca(0x1c1)](0x2,'0'),_0x1fc34b=_0x367736['URKwv'](String,_0x120801[_0x3cb5ca(0x1ac)]())[_0x3cb5ca(0x1c1)](0x2,'0'),_0x2ac12a=String(_0x120801[_0x3cb5ca(0x1d7)]())[_0x3cb5ca(0x1c1)](0x2,'0'),_0x5ddea9=String(_0x120801[_0x3cb5ca(0x207)]())['padStart'](0x2,'0');return _0x4ea404+'-'+_0x300d9a+'-'+_0x416e20+'\x20'+_0x1fc34b+':'+_0x2ac12a+':'+_0x5ddea9;}['buildTopicName'](_0x1d6a96,_0x4f719c,_0xdae22f,_0x584dcb=null){const _0x34419f=a0_0x80b73b,_0x393202={'FaHzn':'{module}','dZNHD':'{endpoint}','srfTJ':_0x34419f(0x1ca)};if(_0x584dcb)return _0x584dcb;const _0x104262=this[_0x34419f(0x1ad)]()['topicPattern'];return _0x104262[_0x34419f(0x1dc)](_0x393202[_0x34419f(0x1ce)],_0x1d6a96)['replace'](_0x393202[_0x34419f(0x1ed)],_0x4f719c)[_0x34419f(0x1dc)](_0x393202['srfTJ'],_0xdae22f);}['buildEventMessage'](_0x410cf9,_0x46e05d,_0x52b788,_0x487b98={}){const _0xee30f2=a0_0x80b73b,_0x527849={'ghSQD':function(_0x4d2d01){return _0x4d2d01();},'GrBNx':_0xee30f2(0x201),'cihIX':_0xee30f2(0x1e5),'aLBGs':_0xee30f2(0x1a3)},_0x4ae480=new Date(),_0x278316=this[_0xee30f2(0x1e1)](_0x4ae480),_0x14b33a=_0x487b98[_0xee30f2(0x1b7)]||'corr-'+_0x527849[_0xee30f2(0x206)](uuidv7);return{'eventId':'evt-'+uuidv7(),'eventType':_0x410cf9,'eventTime':_0x278316,'eventVersion':_0x527849['GrBNx'],'source':_0xee30f2(0x1b3)+(_0x487b98['module']||_0x527849[_0xee30f2(0x1b1)]),'correlationId':_0x14b33a,'newData':_0x52b788,'oldData':_0x46e05d,'metadata':{'createdBy':_0x487b98[_0xee30f2(0x1c7)]||_0x527849['aLBGs'],'createdAt':_0x278316,'systemId':'RESTFORGE-'+(_0x487b98['module']||_0xee30f2(0x1e5))['toUpperCase'](),'tenantId':this['getConfig']()[_0xee30f2(0x208)],'endpoint':_0x487b98['endpoint']||null,'tableName':_0x487b98[_0xee30f2(0x1a9)]||null}};}async[a0_0x80b73b(0x1df)](_0x42db72,_0xca49b0,_0x4d18ec,_0x579d67,_0x3d14e3={}){const _0x53d152=a0_0x80b73b,_0x141949={'pbHds':function(_0x360eda){return _0x360eda();}},_0x314054=this[_0x53d152(0x1ad)]();if(!_0x314054['enabled'])return{'success':![],'reason':_0x53d152(0x1f7),'published':![]};if(!this['isConnected']){const _0x16d735=await this['initialize']();if(!_0x16d735)return{'success':![],'reason':_0x53d152(0x1d0),'published':![]};}try{const _0x4eda82=this[_0x53d152(0x1dd)](_0xca49b0,_0x4d18ec,_0x579d67,_0x3d14e3),_0x2135a7=_0x3d14e3[_0x53d152(0x1e6)]||'id',_0x154c90=_0x579d67?.[_0x2135a7]||_0x4d18ec?.[_0x2135a7]||_0x141949[_0x53d152(0x1d5)](uuidv7),_0x3a8af6=await this[_0x53d152(0x1d8)][_0x53d152(0x1cb)]({'topic':_0x42db72,'messages':[{'key':String(_0x154c90),'value':JSON[_0x53d152(0x1db)](_0x4eda82),'headers':{'event-type':_0xca49b0,'correlation-id':_0x4eda82['correlationId'],'source':_0x4eda82['source']}}]});return console[_0x53d152(0x1fd)]('[Kafka]\x20Event\x20published\x20to\x20'+_0x42db72+':\x20'+_0xca49b0+'\x20(key:\x20'+_0x154c90+')'),{'success':!![],'correlationId':_0x4eda82['correlationId'],'topic':_0x42db72,'partition':_0x3a8af6[0x0]?.[_0x53d152(0x1f3)],'offset':_0x3a8af6[0x0]?.[_0x53d152(0x203)],'published':!![]};}catch(_0x21c692){return console[_0x53d152(0x1f6)](_0x53d152(0x1f9)+_0x42db72+':\x20'+_0x21c692[_0x53d152(0x1ae)]),{'success':![],'error':_0x21c692[_0x53d152(0x1ae)],'published':![]};}}async[a0_0x80b73b(0x1d4)](_0x51432b,_0x13916a,_0x421463,_0x28c8d5={}){const _0x1efbfe=a0_0x80b73b,_0x22da3f={'PmxqN':'created'},_0x450ff7=this[_0x1efbfe(0x1b8)](_0x51432b,_0x13916a,_0x22da3f[_0x1efbfe(0x1fa)],_0x28c8d5[_0x1efbfe(0x1e4)]);return this[_0x1efbfe(0x1df)](_0x450ff7,_0x1efbfe(0x1e9),null,_0x421463,{'module':_0x51432b,'endpoint':_0x13916a,'keyField':_0x28c8d5[_0x1efbfe(0x1e6)],'tableName':_0x28c8d5['tableName'],'correlationId':_0x28c8d5[_0x1efbfe(0x1b7)]});}async['publishUpdate'](_0x3d1c69,_0x2113d8,_0x32f30f,_0x35d879,_0x50f91f={}){const _0x321260=a0_0x80b73b,_0x468a7f=this['buildTopicName'](_0x3d1c69,_0x2113d8,'updated',_0x50f91f[_0x321260(0x1e4)]);return this[_0x321260(0x1df)](_0x468a7f,'ENTITY_UPDATED',_0x32f30f,_0x35d879,{'module':_0x3d1c69,'endpoint':_0x2113d8,'keyField':_0x50f91f['keyField'],'tableName':_0x50f91f[_0x321260(0x1a9)],'correlationId':_0x50f91f['correlationId']});}async[a0_0x80b73b(0x204)](_0x4a7fe0,_0x3eea62,_0x545e73,_0x8c7add={}){const _0x23145a=a0_0x80b73b,_0xc8f311=this[_0x23145a(0x1b8)](_0x4a7fe0,_0x3eea62,'deleted',_0x8c7add['topic']);return this['publishEvent'](_0xc8f311,_0x23145a(0x1c3),_0x545e73,null,{'module':_0x4a7fe0,'endpoint':_0x3eea62,'keyField':_0x8c7add[_0x23145a(0x1e6)],'tableName':_0x8c7add['tableName'],'correlationId':_0x8c7add[_0x23145a(0x1b7)]});}['getStatus'](){const _0x295c6e=a0_0x80b73b,_0x4cdb31=this[_0x295c6e(0x1ad)]();return{'enabled':_0x4cdb31[_0x295c6e(0x1ab)],'connected':this['isConnected'],'brokers':_0x4cdb31[_0x295c6e(0x1f1)],'clientId':_0x4cdb31[_0x295c6e(0x1a6)],'topicPattern':_0x4cdb31['topicPattern']};}async[a0_0x80b73b(0x1d3)](){const _0x256da4=a0_0x80b73b,_0x477607={'SkHUQ':_0x256da4(0x1eb)};if(this[_0x256da4(0x1d8)]&&this['isConnected'])try{await this[_0x256da4(0x1d8)][_0x256da4(0x1de)](),this['isConnected']=![],console['log'](_0x477607['SkHUQ']);}catch(_0x312ee7){console['error']('[Kafka]\x20Error\x20disconnecting:\x20'+_0x312ee7[_0x256da4(0x1ae)]);}}}function a0_0x186f(_0x4725c0,_0x54fb2d){_0x4725c0=_0x4725c0-0x1a3;const _0x297a3b=a0_0x297a();let _0x186fe9=_0x297a3b[_0x4725c0];if(a0_0x186f['SZxPOw']===undefined){var _0x640e88=function(_0x33ccee){const _0x11d035='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d7653='',_0x84d0f9='';for(let _0xa5bd16=0x0,_0x5ba553,_0xf8ca51,_0x55b17d=0x0;_0xf8ca51=_0x33ccee['charAt'](_0x55b17d++);~_0xf8ca51&&(_0x5ba553=_0xa5bd16%0x4?_0x5ba553*0x40+_0xf8ca51:_0xf8ca51,_0xa5bd16++%0x4)?_0x3d7653+=String['fromCharCode'](0xff&_0x5ba553>>(-0x2*_0xa5bd16&0x6)):0x0){_0xf8ca51=_0x11d035['indexOf'](_0xf8ca51);}for(let _0x5f34ff=0x0,_0x24ab9e=_0x3d7653['length'];_0x5f34ff<_0x24ab9e;_0x5f34ff++){_0x84d0f9+='%'+('00'+_0x3d7653['charCodeAt'](_0x5f34ff)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x84d0f9);};a0_0x186f['ymRmdX']=_0x640e88,a0_0x186f['LQDnKL']={},a0_0x186f['SZxPOw']=!![];}const _0x3acee0=_0x297a3b[0x0],_0x492875=_0x4725c0+_0x3acee0,_0x5f458f=a0_0x186f['LQDnKL'][_0x492875];return!_0x5f458f?(_0x186fe9=a0_0x186f['ymRmdX'](_0x186fe9),a0_0x186f['LQDnKL'][_0x492875]=_0x186fe9):_0x186fe9=_0x5f458f,_0x186fe9;}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};function a0_0x297a(){const _0x46c82=['z2v0q29UzMLN','BwvZC2fNzq','AM9PBG','v0fstG','y2LOsvG','DxvPza','CMvZDgzVCMDLlq','ntvWAefPrvm','z2v0rNvSBfLLyxi','vvjlD3y','y29YCMvSyxrPB25jza','yNvPBgruB3bPy05HBwu','ndC3nLzgvMnsDq','ufL5tMW','Dhj1zq','s0fgs0fFru5bqKXfra','Aw5PDgLHBgL6zq','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFuKvrvuvtvf9usu1ft1vu','A2fMA2e','CgfKu3rHCNq','CMvXDwvZDfrPBwvVDxq','ru5usvrzx0rftevuruq','D2fYBG','mtK1EMDMy3rX','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwq','y3jLyxrLzej5','y29UBMvJDgLVBLbYB21PC2u','s0fgs0fFve9qsunFuefuvevstG','E2fJDgLVBN0','C2vUza','s3PMufq','s0fgs0fFu0fttf9qqvntv09sra','rMfiEM4','mZbqqvH1Dxu','rMfPBgvKihrVignVBM5Ly3qGDg8Gs2fMA2eGyNjVA2vY','A2fMA2fQCW','EeP2y2i','y2XVC2u','ChvIBgLZAeLUC2vYDa','Cgjizhm','mJG1mZbJzevVqMy','z2v0twLUDxrLCW','ChjVzhvJzxi','zgvMyxvSDa','rgzWBKC','C3rYAw5NAwz5','CMvWBgfJzq','yNvPBgrfDMvUDe1LC3nHz2u','zgLZy29UBMvJDa','ChvIBgLZAev2zw50','nJm3otuWvxzXsMvQ','zM9YBwf0rgf0zvrPBwu','C3bSAxq','rvjst1i','Dg9WAwm','Dw5RBM93BG','A2v5rMLLBgq','ChjVzhvJzxiUzgLZy29UBMvJDa','tK9useLorW','ru5usvrzx0nsrufuruq','yunQDhG','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','AxndB25Uzwn0zwq','zfPoseq','B1DLrhy','ufrxu0y','tgvNywn5ugfYDgL0Aw9Uzxi','yNjVA2vYCW','AxnjBML0AwfSAxPPBMC','CgfYDgL0Aw9U','z2v0tw9UDgG','seTrBwe','zxjYB3i','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','AKPxqMy','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','ug14Cu4','mtaWma','zw52','Bg9N','s0fgs0fFte9hx0XfvKvm','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','nJi3nefQsxHIEq','ms4W','s0fgs0fFu0fttf9vu0vstKfnrq','yMfZzu9MzNnLDa','ChvIBgLZAerLBgv0zq','mtqXmdeYyxrMB0PJ','z2Htuuq','z2v0u2vJB25KCW','DgvUyw50swq','mty1odyXnvnfCePkua','mta5nZa0nLv3reXMvW','u1Ltvevn','s0fgs0fFq09otKvdveLptL9usu1ft1vu','wunbtM8','y2XPzw50swq','mtHjtKz1uMq','s0fgs0fFu0fttf9nruniqu5ju00','DgfIBgvoyw1L','s0fgs0fFvevoqu5ux0Le','zw5HyMXLza','z2v0sg91CNm'];a0_0x297a=function(){return _0x46c82;};return a0_0x297a();}
|
|
1
|
+
const a0_0x578e00=a0_0x482f;function a0_0x2f3e(){const _0x1781d2=['Dg9WAwm','Aw5PDgLHBgL6zq','DxbKyxrLza','CMvWBgfJzq','ve1oyNy','y29YCMvSyxrPB25jza','ChvIBgLZAev2zw50','zM9YBwf0rgf0zvrPBwu','E2vUzhbVAw50Fq','AxDJwvG','s0fgs0fFvevoqu5ux0Le','s0fgs0fFq0Xjru5ux0Le','s0fgs0fFu0fttf9qqvntv09sra','Bg9Ntgv2zwW','y29UBMvJDgLVBLbYB21PC2u','tgvNywn5ugfYDgL0Aw9Uzxi','wLLTCMC','DgfIBgvoyw1L','CgfKu3rHCNq','AxnjBML0AwfSAxPPBMC','mtfkANLYs1e','Bw9KDwXL','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','mtKYmZe2CxvNCKr2','nZyWotm5owTVweTIqq','ChvIBgLZAfvWzgf0zq','u1Ltvevn','v1jryMm','CMvZDgzVCMDLlq','y2XVC2u','ms4W','v0fstG','s0fgs0fFuKvuuLLFrevmqvK','uKvtvezpuKDflq','zgLZy29UBMvJDa','A2fMA2e','C3bSAxq','yNvPBgruB3bPy05HBwu','nZvTBM9hwM4','CMv0CNLezwXHEq','tMTezeu','CMv0CNLbDhrLBxb0CW','mtqYnta0sNzhtgLp','E21VzhvSzx0','ue5Hre4','AM9PBG','zw5KCg9PBNq','shvWswC','ChjVzhvJzxiUzgLZy29UBMvJDa','su5gtW','zgvMyxvSDa','A2v5rMLLBgq','zxz0lq','s0fgs0fFve9qsunFuefuvevstG','AxndB25Uzwn0zwq','odu5mJy5D3nNy21x','zw5HyMXLza','s2XSCgG','ndi1mJyWogfYEeLtqG','lxbYB2r1y2vY','Dhj1zq','y29UBMvJDa','mZaXote3nKDQvgXqEG','ru5usvrzx1vqrefuruq','rvjst1i','s0fgs0fFu0fttf9nruniqu5ju00','mtu2mZiYnZbnsvbyy0u','z2v0rNvSBfLLyxi','CxPduhe','Bg9JywXOB3n0oJKWoti','s0fgs0fFuKvrvuvtvf9usu1ft1vu','z2v0q29UzMLN','y29YCI0','mKvduwnHAq','s0fgs0fFte9hx0XfvKvm','Bg9N','ChjVzhvJzxi','DgvUyw50swq','BNnVsgq','zxjYB3i','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','mJuYzxHdz2Lx','C2vUza','wu96Due','w0THzMTHxsbdB25Uzwn0Aw9UigzHAwXLzdOG','Dg9WAwnqyxr0zxjU','CMvXDwvZDfrPBwvVDxq','yNjVA2vYCW','Dg9mB3DLCKnHC2u','zw52','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','EwLTDxy','z2v0twLUDxrLCW','BwvZC2fNzq','yMfZzu9MzNnLDa','DxvPza'];a0_0x2f3e=function(){return _0x1781d2;};return a0_0x2f3e();}(function(_0xef88a8,_0x16d9f0){const _0x4fa4ba=a0_0x482f,_0x36f405=_0xef88a8();while(!![]){try{const _0x5dd064=-parseInt(_0x4fa4ba(0x162))/0x1+-parseInt(_0x4fa4ba(0x174))/0x2*(-parseInt(_0x4fa4ba(0x169))/0x3)+-parseInt(_0x4fa4ba(0x1a2))/0x4*(-parseInt(_0x4fa4ba(0x151))/0x5)+parseInt(_0x4fa4ba(0x165))/0x6+parseInt(_0x4fa4ba(0x1a3))/0x7+parseInt(_0x4fa4ba(0x155))/0x8*(-parseInt(_0x4fa4ba(0x17c))/0x9)+parseInt(_0x4fa4ba(0x16d))/0xa*(-parseInt(_0x4fa4ba(0x19f))/0xb);if(_0x5dd064===_0x16d9f0)break;else _0x36f405['push'](_0x36f405['shift']());}catch(_0x139a54){_0x36f405['push'](_0x36f405['shift']());}}}(a0_0x2f3e,0x9301e));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require(a0_0x578e00(0x18a));class KafkaService{constructor(){const _0x55e97f=a0_0x578e00,_0x11855e='1|2|0|4|3'[_0x55e97f(0x14f)]('|');let _0x3f5917=0x0;while(!![]){switch(_0x11855e[_0x3f5917++]){case'0':this[_0x55e97f(0x161)]=![];continue;case'1':this[_0x55e97f(0x14e)]=null;continue;case'2':this['producer']=null;continue;case'3':this['connectionPromise']=null;continue;case'4':this[_0x55e97f(0x19e)]=![];continue;}break;}}[a0_0x578e00(0x172)](){const _0x433d6d=a0_0x578e00,_0x57b640={'YLMSf':function(_0x4d43cc,_0x1da664){return _0x4d43cc===_0x1da664;},'NkDdE':_0x433d6d(0x167),'iwcYX':'25000','Rshpl':_0x433d6d(0x15d),'rZAGO':function(_0x40ba7b,_0x2c0b71){return _0x40ba7b(_0x2c0b71);},'Kllph':'1000'};return{'enabled':_0x57b640['YLMSf'](process[_0x433d6d(0x184)]['KAFKA_ENABLED'],_0x57b640[_0x433d6d(0x153)]),'brokers':(process[_0x433d6d(0x184)]['KAFKA_BROKERS']||_0x433d6d(0x170))[_0x433d6d(0x14f)](','),'clientId':process['env'][_0x433d6d(0x196)]||_0x433d6d(0x147)+(process[_0x433d6d(0x184)]['RESTFORGE_PROJECT_NAME']||'default')+_0x433d6d(0x166),'connectionTimeout':parseInt(process['env']['KAFKA_CONNECTION_TIMEOUT']||'3000'),'requestTimeout':parseInt(process[_0x433d6d(0x184)][_0x433d6d(0x171)]||_0x57b640[_0x433d6d(0x194)]),'topicPattern':process[_0x433d6d(0x184)][_0x433d6d(0x160)]||_0x433d6d(0x1a1),'tenantId':process[_0x433d6d(0x184)][_0x433d6d(0x195)]||_0x57b640['Rshpl'],'retryAttempts':_0x57b640['rZAGO'](parseInt,process[_0x433d6d(0x184)]['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x57b640['rZAGO'](parseInt,process[_0x433d6d(0x184)][_0x433d6d(0x14b)]||_0x57b640[_0x433d6d(0x164)]),'logLevel':process['env'][_0x433d6d(0x175)]||'warn'};}['getLogLevel'](_0x4bea3b){const _0x57e8a1=a0_0x578e00,_0xf814d7={'nothing':logLevel['NOTHING'],'error':logLevel[_0x57e8a1(0x16b)],'warn':logLevel[_0x57e8a1(0x14a)],'info':logLevel[_0x57e8a1(0x15c)],'debug':logLevel['DEBUG']};return _0xf814d7[_0x4bea3b[_0x57e8a1(0x183)]()]||logLevel[_0x57e8a1(0x14a)];}async[a0_0x578e00(0x18c)](){const _0x107f95=a0_0x578e00,_0x29ffea={'TDzdW':function(_0x21d46a,_0x3308ff){return _0x21d46a===_0x3308ff;},'miagB':_0x107f95(0x167),'nsoHd':function(_0x345ff4,_0x86c145){return _0x345ff4(_0x86c145);},'WRQbc':function(_0x2639bd,_0x33d026){return _0x2639bd(_0x33d026);},'TMNbv':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x141c9a=this[_0x107f95(0x172)]();if(!_0x141c9a['enabled'])return console[_0x107f95(0x176)](_0x29ffea[_0x107f95(0x18f)]),![];if(this[_0x107f95(0x161)])return!![];if(this[_0x107f95(0x19e)]&&this[_0x107f95(0x199)])return this['connectionPromise'];return this[_0x107f95(0x19e)]=!![],this['connectionPromise']=new Promise(async _0x47846d=>{const _0x5506fc=_0x107f95;try{let _0x49777c=undefined;_0x29ffea['TDzdW'](process['env']['KAFKA_SSL'],_0x29ffea['miagB'])&&(_0x49777c=!![]);let _0x15116c=undefined;process['env'][_0x5506fc(0x16c)]&&(_0x15116c={'mechanism':process['env'][_0x5506fc(0x16c)],'username':process[_0x5506fc(0x184)]['KAFKA_SASL_USERNAME']||'','password':process[_0x5506fc(0x184)][_0x5506fc(0x197)]||''}),this['kafka']=new Kafka({'clientId':_0x141c9a['clientId'],'brokers':_0x141c9a[_0x5506fc(0x182)],'connectionTimeout':_0x141c9a['connectionTimeout'],'requestTimeout':_0x141c9a[_0x5506fc(0x181)],'logLevel':this['getLogLevel'](_0x141c9a[_0x5506fc(0x198)]),'ssl':_0x49777c,'sasl':_0x15116c,'retry':{'initialRetryTime':_0x141c9a[_0x5506fc(0x152)],'retries':_0x141c9a[_0x5506fc(0x154)]}}),this[_0x5506fc(0x177)]=this['kafka'][_0x5506fc(0x177)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x5506fc(0x19a)]}),await this['producer'][_0x5506fc(0x168)](),this['isConnected']=!![],console[_0x5506fc(0x176)]('[Kafka]\x20Producer\x20connected\x20to\x20brokers:\x20'+_0x141c9a['brokers'][_0x5506fc(0x158)](',\x20')),this['producer']['on'](_0x5506fc(0x15b),()=>{const _0x5cfbf7=_0x5506fc;console[_0x5cfbf7(0x176)]('[Kafka]\x20Producer\x20disconnected'),this[_0x5cfbf7(0x161)]=![];}),_0x29ffea[_0x5506fc(0x179)](_0x47846d,!![]);}catch(_0x4104ee){console[_0x5506fc(0x17a)](_0x5506fc(0x17f)+_0x4104ee['message']),this['isConnected']=![],_0x29ffea[_0x5506fc(0x146)](_0x47846d,![]);}finally{this[_0x5506fc(0x19e)]=![];}}),this[_0x107f95(0x199)];}['formatDateTime'](_0x4d4de7){const _0x5d1c29=a0_0x578e00,_0x554da5={'ZYmrg':function(_0x3a7430,_0x32af24){return _0x3a7430(_0x32af24);}},_0x4475a7=_0x4d4de7||new Date(),_0x38b6fb=_0x4475a7[_0x5d1c29(0x16e)](),_0x4afd24=String(_0x4475a7['getMonth']()+0x1)[_0x5d1c29(0x19d)](0x2,'0'),_0x3d2d2b=String(_0x4475a7['getDate']())['padStart'](0x2,'0'),_0x4f225b=_0x554da5[_0x5d1c29(0x19b)](String,_0x4475a7['getHours']())[_0x5d1c29(0x19d)](0x2,'0'),_0x4a7f1d=String(_0x4475a7[_0x5d1c29(0x187)]())['padStart'](0x2,'0'),_0x830981=_0x554da5[_0x5d1c29(0x19b)](String,_0x4475a7['getSeconds']())[_0x5d1c29(0x19d)](0x2,'0');return _0x38b6fb+'-'+_0x4afd24+'-'+_0x3d2d2b+'\x20'+_0x4f225b+':'+_0x4a7f1d+':'+_0x830981;}['buildTopicName'](_0xc73725,_0x24991a,_0x242418,_0x54d306=null){const _0x2e5897=a0_0x578e00,_0x13c08d={'KmiVa':_0x2e5897(0x193),'mzyNS':'{action}'};if(_0x54d306)return _0x54d306;const _0x1d3a38=this[_0x2e5897(0x172)]()[_0x2e5897(0x180)];return _0x1d3a38[_0x2e5897(0x18e)](_0x2e5897(0x156),_0xc73725)[_0x2e5897(0x18e)](_0x13c08d['KmiVa'],_0x24991a)['replace'](_0x13c08d['mzyNS'],_0x242418);}['buildEventMessage'](_0x305008,_0x56abfa,_0x481572,_0x57a35a={}){const _0xafc705=a0_0x578e00,_0x5b298d={'NnvJu':function(_0x5324c9){return _0x5324c9();},'qzCPq':_0xafc705(0x149),'YOzuA':'unknown','USNDR':_0xafc705(0x145)},_0x28b5c2=new Date(),_0x5bd0ad=this[_0xafc705(0x192)](_0x28b5c2),_0x4521a6=_0x57a35a[_0xafc705(0x190)]||_0xafc705(0x173)+_0x5b298d['NnvJu'](uuidv7);return{'eventId':_0xafc705(0x15f)+uuidv7(),'eventType':_0x305008,'eventTime':_0x5bd0ad,'eventVersion':_0x5b298d[_0xafc705(0x16f)],'source':_0xafc705(0x147)+(_0x57a35a['module']||_0x5b298d[_0xafc705(0x17e)]),'correlationId':_0x4521a6,'newData':_0x481572,'oldData':_0x56abfa,'metadata':{'createdBy':_0x57a35a['createdBy']||_0x5b298d['USNDR'],'createdAt':_0x5bd0ad,'systemId':_0xafc705(0x14c)+(_0x57a35a[_0xafc705(0x1a0)]||_0x5b298d['YOzuA'])['toUpperCase'](),'tenantId':this['getConfig']()[_0xafc705(0x178)],'endpoint':_0x57a35a[_0xafc705(0x159)]||null,'tableName':_0x57a35a['tableName']||null}};}async['publishEvent'](_0x3d3dc0,_0x5c61a9,_0x2898f1,_0x40d83d,_0x428fc4={}){const _0x1f7026=a0_0x578e00,_0x7c0348={'oCoOa':_0x1f7026(0x17b)},_0x154227=this[_0x1f7026(0x172)]();if(!_0x154227[_0x1f7026(0x163)])return{'success':![],'reason':_0x7c0348['oCoOa'],'published':![]};if(!this['isConnected']){const _0xdcd068=await this['initialize']();if(!_0xdcd068)return{'success':![],'reason':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','published':![]};}try{const _0x1fb4de=this['buildEventMessage'](_0x5c61a9,_0x2898f1,_0x40d83d,_0x428fc4),_0x11576f=_0x428fc4[_0x1f7026(0x15e)]||'id',_0x47a516=_0x40d83d?.[_0x11576f]||_0x2898f1?.[_0x11576f]||uuidv7(),_0x56d6ef=await this[_0x1f7026(0x177)][_0x1f7026(0x17d)]({'topic':_0x3d3dc0,'messages':[{'key':String(_0x47a516),'value':JSON['stringify'](_0x1fb4de),'headers':{'event-type':_0x5c61a9,'correlation-id':_0x1fb4de[_0x1f7026(0x190)],'source':_0x1fb4de['source']}}]});return console['log']('[Kafka]\x20Event\x20published\x20to\x20'+_0x3d3dc0+':\x20'+_0x5c61a9+'\x20(key:\x20'+_0x47a516+')'),{'success':!![],'correlationId':_0x1fb4de[_0x1f7026(0x190)],'topic':_0x3d3dc0,'partition':_0x56d6ef[0x0]?.['partition'],'offset':_0x56d6ef[0x0]?.[_0x1f7026(0x189)],'published':!![]};}catch(_0x589b5f){return console['error']('[Kafka]\x20Publish\x20error\x20to\x20'+_0x3d3dc0+':\x20'+_0x589b5f[_0x1f7026(0x188)]),{'success':![],'error':_0x589b5f['message'],'published':![]};}}async['publishInsert'](_0x3aac53,_0x1f12aa,_0x3f134b,_0x50b00f={}){const _0x49da7c=a0_0x578e00,_0x1a1a06={'MZhrU':'ENTITY_CREATED'},_0x5dea3d=this['buildTopicName'](_0x3aac53,_0x1f12aa,'created',_0x50b00f[_0x49da7c(0x18b)]);return this[_0x49da7c(0x191)](_0x5dea3d,_0x1a1a06['MZhrU'],null,_0x3f134b,{'module':_0x3aac53,'endpoint':_0x1f12aa,'keyField':_0x50b00f[_0x49da7c(0x15e)],'tableName':_0x50b00f[_0x49da7c(0x19c)],'correlationId':_0x50b00f['correlationId']});}async[a0_0x578e00(0x1a4)](_0x1f93ad,_0x16f609,_0x3c16d4,_0x17353c,_0x5cffcb={}){const _0x3a42d0=a0_0x578e00,_0x5b5c73={'VDeWd':_0x3a42d0(0x18d),'yimuv':_0x3a42d0(0x16a)},_0x2461c0=this[_0x3a42d0(0x150)](_0x1f93ad,_0x16f609,_0x5b5c73['VDeWd'],_0x5cffcb[_0x3a42d0(0x18b)]);return this[_0x3a42d0(0x191)](_0x2461c0,_0x5b5c73[_0x3a42d0(0x186)],_0x3c16d4,_0x17353c,{'module':_0x1f93ad,'endpoint':_0x16f609,'keyField':_0x5cffcb[_0x3a42d0(0x15e)],'tableName':_0x5cffcb['tableName'],'correlationId':_0x5cffcb['correlationId']});}async['publishDelete'](_0xee7fcb,_0xdf2d30,_0xe5d65b,_0x3d8e8b={}){const _0x130ab8=a0_0x578e00,_0x594c05={'PNaDN':'deleted','HupIg':'ENTITY_DELETED'},_0x101a6d=this[_0x130ab8(0x150)](_0xee7fcb,_0xdf2d30,_0x594c05[_0x130ab8(0x157)],_0x3d8e8b[_0x130ab8(0x18b)]);return this[_0x130ab8(0x191)](_0x101a6d,_0x594c05[_0x130ab8(0x15a)],_0xe5d65b,null,{'module':_0xee7fcb,'endpoint':_0xdf2d30,'keyField':_0x3d8e8b[_0x130ab8(0x15e)],'tableName':_0x3d8e8b['tableName'],'correlationId':_0x3d8e8b['correlationId']});}['getStatus'](){const _0x44d921=a0_0x578e00,_0x29157d=this['getConfig']();return{'enabled':_0x29157d['enabled'],'connected':this['isConnected'],'brokers':_0x29157d[_0x44d921(0x182)],'clientId':_0x29157d['clientId'],'topicPattern':_0x29157d['topicPattern']};}async[a0_0x578e00(0x148)](){const _0x565b86=a0_0x578e00;if(this[_0x565b86(0x177)]&&this['isConnected'])try{await this['producer'][_0x565b86(0x14d)](),this[_0x565b86(0x161)]=![],console['log']('[Kafka]\x20Producer\x20disconnected\x20gracefully');}catch(_0x25d3a9){console[_0x565b86(0x17a)](_0x565b86(0x185)+_0x25d3a9['message']);}}}function a0_0x482f(_0x3e0fb5,_0x1ee71e){_0x3e0fb5=_0x3e0fb5-0x145;const _0x2f3e9b=a0_0x2f3e();let _0x482f5c=_0x2f3e9b[_0x3e0fb5];if(a0_0x482f['MoHiLm']===undefined){var _0x376faa=function(_0x3afb72){const _0x3b37ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x139df4='',_0x43029d='';for(let _0x5a920a=0x0,_0x30b250,_0x403acd,_0x1da4f2=0x0;_0x403acd=_0x3afb72['charAt'](_0x1da4f2++);~_0x403acd&&(_0x30b250=_0x5a920a%0x4?_0x30b250*0x40+_0x403acd:_0x403acd,_0x5a920a++%0x4)?_0x139df4+=String['fromCharCode'](0xff&_0x30b250>>(-0x2*_0x5a920a&0x6)):0x0){_0x403acd=_0x3b37ad['indexOf'](_0x403acd);}for(let _0x2889f7=0x0,_0x261ebd=_0x139df4['length'];_0x2889f7<_0x261ebd;_0x2889f7++){_0x43029d+='%'+('00'+_0x139df4['charCodeAt'](_0x2889f7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x43029d);};a0_0x482f['XoyKxF']=_0x376faa,a0_0x482f['PislqH']={},a0_0x482f['MoHiLm']=!![];}const _0x482ad6=_0x2f3e9b[0x0],_0x5c18ff=_0x3e0fb5+_0x482ad6,_0x3665a8=a0_0x482f['PislqH'][_0x5c18ff];return!_0x3665a8?(_0x482f5c=a0_0x482f['XoyKxF'](_0x482f5c),a0_0x482f['PislqH'][_0x5c18ff]=_0x482f5c):_0x482f5c=_0x3665a8,_0x482f5c;}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x221fb6=a0_0x578e00;instance&&(instance[_0x221fb6(0x148)](),instance=null);}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x4112(_0x418c1b,_0x1e8de8){_0x418c1b=_0x418c1b-0xd9;const _0x2c585e=a0_0x2c58();let _0x411289=_0x2c585e[_0x418c1b];if(a0_0x4112['dYGxUu']===undefined){var _0x5e880b=function(_0x2d0792){const _0x48959e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xe09941='',_0x3cec0f='';for(let _0x4c32da=0x0,_0x1c3b6c,_0x4ca2e7,_0x1563ae=0x0;_0x4ca2e7=_0x2d0792['charAt'](_0x1563ae++);~_0x4ca2e7&&(_0x1c3b6c=_0x4c32da%0x4?_0x1c3b6c*0x40+_0x4ca2e7:_0x4ca2e7,_0x4c32da++%0x4)?_0xe09941+=String['fromCharCode'](0xff&_0x1c3b6c>>(-0x2*_0x4c32da&0x6)):0x0){_0x4ca2e7=_0x48959e['indexOf'](_0x4ca2e7);}for(let _0x40b720=0x0,_0x186f37=_0xe09941['length'];_0x40b720<_0x186f37;_0x40b720++){_0x3cec0f+='%'+('00'+_0xe09941['charCodeAt'](_0x40b720)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3cec0f);};a0_0x4112['HQKFuF']=_0x5e880b,a0_0x4112['EZvkCX']={},a0_0x4112['dYGxUu']=!![];}const _0x5c7403=_0x2c585e[0x0],_0x1081d5=_0x418c1b+_0x5c7403,_0x51e4cb=a0_0x4112['EZvkCX'][_0x1081d5];return!_0x51e4cb?(_0x411289=a0_0x4112['HQKFuF'](_0x411289),a0_0x4112['EZvkCX'][_0x1081d5]=_0x411289):_0x411289=_0x51e4cb,_0x411289;}const a0_0x19877d=a0_0x4112;(function(_0x35305e,_0x5b71a5){const _0x579f53=a0_0x4112,_0x574269=_0x35305e();while(!![]){try{const _0xecd7fa=parseInt(_0x579f53(0x104))/0x1*(parseInt(_0x579f53(0x120))/0x2)+-parseInt(_0x579f53(0xdc))/0x3*(-parseInt(_0x579f53(0x10f))/0x4)+parseInt(_0x579f53(0x138))/0x5+parseInt(_0x579f53(0x102))/0x6*(-parseInt(_0x579f53(0xda))/0x7)+parseInt(_0x579f53(0x12b))/0x8*(-parseInt(_0x579f53(0x114))/0x9)+-parseInt(_0x579f53(0xf8))/0xa*(-parseInt(_0x579f53(0x119))/0xb)+-parseInt(_0x579f53(0x116))/0xc;if(_0xecd7fa===_0x5b71a5)break;else _0x574269['push'](_0x574269['shift']());}catch(_0x47759a){_0x574269['push'](_0x574269['shift']());}}}(a0_0x2c58,0xd3543));const dotenv=require(a0_0x19877d(0xeb)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x19877d(0x12f));dotenv['config']();let MessageHub;try{const messagehubPath=path[a0_0x19877d(0xfc)](__dirname,'../../js/messagehub.js');if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x19877d(0x10b)](a0_0x19877d(0x12a)+messagehubPath);else throw new Error(a0_0x19877d(0x105)+messagehubPath);}catch(a0_0x480f92){console[a0_0x19877d(0xe7)]('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x480f92['message']);throw a0_0x480f92;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x3a4310){const _0x54c415=new Date()['toISOString']();console['log']('['+_0x54c415+']\x20'+_0x3a4310);}async function initMessageHub(){const _0x37f99=a0_0x19877d,_0x5cc3a2={'CwfsC':function(_0x442838,_0x565194){return _0x442838(_0x565194);},'SvaZz':function(_0x8bc566,_0x3f58f7){return _0x8bc566(_0x3f58f7);},'lWryC':'Tidak\x20diketahui','gOZHb':function(_0x144d8d,_0x9bcada){return _0x144d8d===_0x9bcada;},'OGraY':_0x37f99(0xe7),'IOrno':_0x37f99(0xfe),'qjsMW':'message-received','Oervn':function(_0x571f26,_0x1ba402){return _0x571f26(_0x1ba402);},'jorWU':function(_0x400658,_0x48e4bd){return _0x400658(_0x48e4bd);},'lVXcJ':_0x37f99(0xe6),'mILlJ':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','CRrnI':function(_0x23bb51,_0x1474f5){return _0x23bb51(_0x1474f5);},'FUsUH':function(_0x53f062,_0x37aa4a){return _0x53f062(_0x37aa4a);},'tnGIR':'Mode:\x20Koneksi\x20Nyata','OXZVF':'default','aItYQ':'broadcast','ZcIXN':_0x37f99(0x111),'guVPl':function(_0x11e1e4,_0xfc6fed){return _0x11e1e4(_0xfc6fed);},'genKb':function(_0xb8f654,_0x399112){return _0xb8f654(_0x399112);},'EQqUP':function(_0x57c562,_0x25f40d){return _0x57c562(_0x25f40d);},'qruXc':_0x37f99(0x133)};if(messagehub&&isConnected)return _0x5cc3a2['EQqUP'](log,_0x5cc3a2[_0x37f99(0x121)]),!![];if(connectionPromise)return _0x5cc3a2['Oervn'](log,'Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'),connectionPromise;return connectionPromise=new Promise(async(_0x264779,_0x3c09c1)=>{const _0x76369=_0x37f99,_0x2af1fb={'XkxLK':function(_0x50fce8,_0x1a1c34){return _0x50fce8&&_0x1a1c34;},'wNsdQ':function(_0x9ee350,_0x26696c){return _0x5cc3a2['jorWU'](_0x9ee350,_0x26696c);},'WzFgU':_0x5cc3a2['lVXcJ'],'sJlkj':_0x76369(0x10d)};try{log(_0x5cc3a2[_0x76369(0x135)]),_0x5cc3a2[_0x76369(0xe4)](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x76369(0xed)]()),_0x5cc3a2['FUsUH'](log,_0x5cc3a2['tnGIR']);const _0x5ac50e={'publishKey':process[_0x76369(0x10c)][_0x76369(0x112)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x76369(0x10c)]['MSHUB_USER_ID']||_0x76369(0xef)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x5cc3a2[_0x76369(0x130)])+'-'+process['pid'],'communicationType':process[_0x76369(0x10c)]['MSHUB_COMMUNICATION_TYPE']||_0x5cc3a2['aItYQ'],'autoAcknowledge':process['env']['MSHUB_AUTO_ACKNOWLEDGE']===_0x5cc3a2[_0x76369(0x103)],'acknowledgeMessages':process[_0x76369(0x10c)]['MSHUB_ACKNOWLEDGE_MESSAGES']==='true','platform':{'type':process[_0x76369(0x10c)][_0x76369(0xe2)]||_0x76369(0x131),'host':process['env'][_0x76369(0x11d)]||_0x76369(0x12c),'api_port':parseInt(process[_0x76369(0x10c)]['MSHUB_API_PORT']||0xdf8),'service_port':_0x5cc3a2[_0x76369(0x11e)](parseInt,process[_0x76369(0x10c)][_0x76369(0x124)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x5ac50e),_0x5cc3a2['guVPl'](log,_0x76369(0x122)),log('Client\x20ID/UserID:\x20'+messagehub[_0x76369(0x113)]),log('Publish\x20Key:\x20'+messagehub['publishKey']),_0x5cc3a2[_0x76369(0x12d)](log,_0x76369(0xf2)+messagehub['subscribeKey']),log(_0x76369(0x118)+messagehub['communicationType']),log(_0x76369(0xe9)+JSON['stringify'](messagehub[_0x76369(0x132)])),_0x5cc3a2['genKb'](log,_0x76369(0x128)),messagehub[_0x76369(0xe3)]({'status':function(_0x3e0470){const _0x3c43b3=_0x76369;_0x5cc3a2['CwfsC'](log,_0x3c43b3(0x137)+_0x3e0470[_0x3c43b3(0x136)]);if(_0x3e0470[_0x3c43b3(0x136)]===_0x3c43b3(0xe1))log(_0x3c43b3(0x11f)),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x5cc3a2[_0x3c43b3(0x11b)](_0x264779,!![]);else{if(_0x3e0470[_0x3c43b3(0x136)]==='disconnected'){const _0xa80064=_0x3e0470[_0x3c43b3(0x10e)]===!![];!_0xa80064&&(log(_0x3c43b3(0x126)+(_0x3e0470[_0x3c43b3(0x117)]||_0x3c43b3(0xf5))),isConnected=![],connectionPromise&&(_0x3c09c1(new Error(_0x3c43b3(0xdd)+(_0x3e0470[_0x3c43b3(0x117)]||_0x5cc3a2[_0x3c43b3(0xfa)]))),connectionPromise=null));}else{if(_0x5cc3a2[_0x3c43b3(0xf1)](_0x3e0470[_0x3c43b3(0x136)],_0x5cc3a2['OGraY'])){let _0x4139a8=_0x3e0470[_0x3c43b3(0xf4)]||_0x3e0470[_0x3c43b3(0xe7)]||_0x5cc3a2['IOrno'];_0x5cc3a2[_0x3c43b3(0x11b)](log,_0x3c43b3(0xdf)+_0x4139a8),isConnected=![],connectionPromise&&(_0x3c09c1(new Error(_0x4139a8)),connectionPromise=null);}else{if(_0x3e0470[_0x3c43b3(0x136)]==='message-sent')_0x5cc3a2[_0x3c43b3(0xfb)](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0x3e0470['requestId']);else{if(_0x5cc3a2[_0x3c43b3(0xf1)](_0x3e0470[_0x3c43b3(0x136)],_0x5cc3a2[_0x3c43b3(0xfd)])){const _0x1cff0c=_0x3e0470[_0x3c43b3(0xff)]?.['name']||_0x3c43b3(0x134),_0x3d36fa=_0x3e0470['receiverInfo']?.['id']||_0x3e0470[_0x3c43b3(0x107)],_0x26df91=new Date(_0x3e0470['receiverInfo']?.['receivedAt']||_0x3e0470['receivedAt']||new Date())['toLocaleTimeString']();_0x5cc3a2['Oervn'](log,_0x3c43b3(0xf7)+_0x3e0470[_0x3c43b3(0x139)]+_0x3c43b3(0xf3)+_0x1cff0c+'\x20('+_0x3d36fa+_0x3c43b3(0xe8)+_0x26df91+_0x3c43b3(0xd9)+(_0x3e0470[_0x3c43b3(0xe5)]||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x2dae09=_0x76369;_0x2af1fb['XkxLK'](!isConnected,connectionPromise)&&(_0x2af1fb[_0x2dae09(0x123)](log,_0x2af1fb['WzFgU']),_0x3c09c1(new Error(_0x2af1fb[_0x2dae09(0x12e)])),connectionPromise=null);},0x2710);}catch(_0x4d1e1c){log('⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x4d1e1c[_0x76369(0xf9)]),console[_0x76369(0xe7)]('Error\x20inisialisasi\x20MessageHub:',_0x4d1e1c),connectionPromise=null,_0x3c09c1(_0x4d1e1c);}}),connectionPromise;}async function publishMessage(_0x167ed1,_0x198325,_0x565dc1,_0x467e00={}){const _0x298d41=a0_0x19877d,_0x40d691={'IhXFw':function(_0x1b1d7a,_0x276c5c){return _0x1b1d7a(_0x276c5c);},'frczw':'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======','KvKUt':function(_0x13c5ac,_0x3c8d38){return _0x13c5ac!==_0x3c8d38;},'EEyOl':_0x298d41(0x101),'RfTFu':_0x298d41(0x106),'bdyQW':'Failed\x20to\x20send\x20message'};try{!isConnected&&await initMessageHub();const _0x2afcff=messagehub['channel'](_0x167ed1);_0x40d691['IhXFw'](log,_0x40d691['frczw']),log('Channel\x20Target:\x20'+_0x2afcff['topic']),log('Message\x20Type:\x20'+_0x198325),log(_0x298d41(0x11a));const _0x314c8a={'requireAck':_0x40d691['KvKUt'](_0x467e00['requireAck'],undefined)?_0x467e00[_0x298d41(0xdb)]:![],'clearCache':_0x467e00[_0x298d41(0x108)]!==undefined?_0x467e00[_0x298d41(0x108)]:!![],'senderId':messagehub[_0x298d41(0xf6)]?messagehub['socket']['id']:'restforge'};_0x40d691['IhXFw'](log,_0x40d691[_0x298d41(0x127)]);const _0x58defd={'type':_0x198325,'content':_0x565dc1},_0x16dc40=await _0x2afcff[_0x298d41(0x100)](_0x58defd,_0x314c8a);return _0x40d691[_0x298d41(0x129)](log,_0x298d41(0xf0)+_0x167ed1),{'success':!![],'requestId':_0x16dc40['requestId'],'topic':_0x167ed1,'message':_0x40d691['RfTFu']};}catch(_0x485ce4){return _0x40d691['IhXFw'](log,_0x298d41(0x10a)+_0x485ce4[_0x298d41(0xf9)]),{'success':![],'error':_0x485ce4[_0x298d41(0xf9)],'topic':_0x167ed1,'message':_0x40d691['bdyQW']};}}async function closeConnection(){const _0x1b6c92=a0_0x19877d,_0x381eaf={'GChsO':_0x1b6c92(0x115),'SSBTm':_0x1b6c92(0x109),'WZYYC':function(_0x5638b7,_0x407350){return _0x5638b7(_0x407350);},'ZfoOU':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','tvDNE':function(_0x43cdc5,_0x2c1ac0){return _0x43cdc5===_0x2c1ac0;}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub[_0x1b6c92(0xea)]===_0x1b6c92(0x109))await messagehub[_0x1b6c92(0xea)](),log(_0x381eaf['GChsO']);else{if(typeof messagehub['close']===_0x381eaf['SSBTm'])await messagehub[_0x1b6c92(0xee)](),_0x381eaf[_0x1b6c92(0x110)](log,_0x381eaf[_0x1b6c92(0x125)]);else messagehub['socket']&&_0x381eaf[_0x1b6c92(0xec)](typeof messagehub[_0x1b6c92(0xf6)][_0x1b6c92(0xea)],'function')?(messagehub[_0x1b6c92(0xf6)]['disconnect'](),log(_0x1b6c92(0xe0))):_0x381eaf[_0x1b6c92(0x110)](log,_0x1b6c92(0x11c));}isConnected=![],connectionPromise=null;}catch(_0x20034d){_0x381eaf['WZYYC'](log,'Error\x20saat\x20menutup\x20koneksi:\x20'+_0x20034d['message']);}}module[a0_0x19877d(0xde)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x2c58(){const _0x4b227c=['ywrKtgLZDgvUzxi','q1jYBKK','y29UzMLYBwf0Aw9Uq291BNq','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','zxjYB3i','ksbWywrHia','s29UzMLNDxjHC2KGugXHDgzVCM06ia','zgLZy29UBMvJDa','zg90zw52','DhzetKu','Dg9mB2nHBgvtDhjPBMC','y2XVC2u','CMvZDgzVCMDLlq','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','z09Asgi','u3vIC2nYAwjLieTLEtOG','igrPDgvYAw1Hig9SzwGG','zxjYB3jezxrHAwW','vgLKywSGzgLRzxrHAhvP','C29JA2v0','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','mtbQuu1AChe','BwvZC2fNzq','BfDYEum','q3DMC0m','CMvZB2X2zq','CwPZtvC','vw5RBM93BIbLCNjVCG','CMvJzwL2zxjjBMzV','ChvIBgLZAa','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','nMDNvLLnDW','wMnjwe4','mtvUAMTeBxa','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','CMvJzwL2zxjjza','y2XLyxjdywnOzq','zNvUy3rPB24','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','Bg9N','zw52','q29UBMvJDgLVBIb0Aw1LB3v0','AxnfCNjVCLjLBgf0zwq','nZi2mJu2u1PcrMLf','v1Pzwum','Dhj1zq','tvnivujFufvcteLtsf9lrvK','DxnLCKLK','mJKWmtC4Efn1wKvX','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUigrPC2nVBM5Ly3qOkq','otmWoda3nMrMwvHmDG','CMvHC29U','vgLWzsblB211BMLRyxnPoIa','odaYnZK4n0frCwjnvW','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','u3zHwNO','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','tvnivujFse9tva','AM9Yv1u','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','ote2nJznrvvYv2K','Cxj1wgm','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','D05Zzfe','tvnivujFu0vsvKLdrv9qt1ju','wMzVt1u','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','ruv5t2W','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','swHyrNC','twvZC2fNzuH1yIbtreSGzM91BMqGyxqG','nJrmzuTjwvK','Bg9JywXOB3n0','t2vYDM4','C0PSA2O','DxvPza','t1HAvKy','D2vIC29JA2v0','CgXHDgzVCM1dB25MAwC','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','vw5RBM93BG','BuLmBeO','y2f0zwDVCNK','u3rHDhvZieXPC3rLBMvYoIa','ody4nZmWqxDMu0XZ','CMvXDwvZDeLK','lIbuB3rHBcbRB25MAxjTyxnPoIa','odaXmduWnLLgq2HksW','CMvXDwLYzufJAW','mJrmyxfKrgG','s29UzwTZAsb0zxjWDxr1CZOG','zxHWB3j0CW','4PQG77IpievYCM9YoIa','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','y29UBMvJDgvK','tvnivujFq09ntvvosunbveLptL9uwvbf'];a0_0x2c58=function(){return _0x4b227c;};return a0_0x2c58();}
|
|
1
|
+
const a0_0x48e327=a0_0x3b64;(function(_0x22c7e6,_0x130d55){const _0x332282=a0_0x3b64,_0x44c31=_0x22c7e6();while(!![]){try{const _0x45141c=-parseInt(_0x332282(0x1ab))/0x1*(parseInt(_0x332282(0x183))/0x2)+-parseInt(_0x332282(0x187))/0x3*(-parseInt(_0x332282(0x1ba))/0x4)+-parseInt(_0x332282(0x199))/0x5*(-parseInt(_0x332282(0x193))/0x6)+parseInt(_0x332282(0x17f))/0x7+parseInt(_0x332282(0x1b0))/0x8*(-parseInt(_0x332282(0x18f))/0x9)+parseInt(_0x332282(0x1b6))/0xa+-parseInt(_0x332282(0x19b))/0xb*(parseInt(_0x332282(0x1af))/0xc);if(_0x45141c===_0x130d55)break;else _0x44c31['push'](_0x44c31['shift']());}catch(_0x22c09f){_0x44c31['push'](_0x44c31['shift']());}}}(a0_0x36fd,0x609c9));const dotenv=require(a0_0x48e327(0x198)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require('uuid');dotenv[a0_0x48e327(0x174)]();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x48e327(0x184)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x2eeb3c){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x2eeb3c[a0_0x48e327(0x1b2)]);throw a0_0x2eeb3c;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x4d0bc0){const _0x21e493=a0_0x48e327,_0x4ad681=new Date()[_0x21e493(0x1b8)]();console[_0x21e493(0x184)]('['+_0x4ad681+']\x20'+_0x4d0bc0);}function a0_0x3b64(_0x1e582b,_0x9aedeb){_0x1e582b=_0x1e582b-0x168;const _0x36fdec=a0_0x36fd();let _0x3b64d9=_0x36fdec[_0x1e582b];if(a0_0x3b64['wmaHJd']===undefined){var _0x1d9cb1=function(_0x522338){const _0x3ea342='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x476640='',_0x1c87d6='';for(let _0x1e06eb=0x0,_0x349466,_0x28eca7,_0x234df7=0x0;_0x28eca7=_0x522338['charAt'](_0x234df7++);~_0x28eca7&&(_0x349466=_0x1e06eb%0x4?_0x349466*0x40+_0x28eca7:_0x28eca7,_0x1e06eb++%0x4)?_0x476640+=String['fromCharCode'](0xff&_0x349466>>(-0x2*_0x1e06eb&0x6)):0x0){_0x28eca7=_0x3ea342['indexOf'](_0x28eca7);}for(let _0x5f3766=0x0,_0x4b8b91=_0x476640['length'];_0x5f3766<_0x4b8b91;_0x5f3766++){_0x1c87d6+='%'+('00'+_0x476640['charCodeAt'](_0x5f3766)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1c87d6);};a0_0x3b64['anzhuJ']=_0x1d9cb1,a0_0x3b64['efbypl']={},a0_0x3b64['wmaHJd']=!![];}const _0x1d8b42=_0x36fdec[0x0],_0x4c2bd6=_0x1e582b+_0x1d8b42,_0x480d5d=a0_0x3b64['efbypl'][_0x4c2bd6];return!_0x480d5d?(_0x3b64d9=a0_0x3b64['anzhuJ'](_0x3b64d9),a0_0x3b64['efbypl'][_0x4c2bd6]=_0x3b64d9):_0x3b64d9=_0x480d5d,_0x3b64d9;}async function initMessageHub(){const _0x50c597=a0_0x48e327,_0x12b1f1={'wmudz':function(_0x4b836d,_0xa36595){return _0x4b836d(_0xa36595);},'ZhpAD':function(_0x2d66ea,_0x5a96f7){return _0x2d66ea===_0x5a96f7;},'ACoAU':_0x50c597(0x192),'LVazq':'Unknown\x20error','qkuOx':_0x50c597(0x1b1),'FDFCe':_0x50c597(0x171),'ODsqa':_0x50c597(0x1c0),'Hrkau':'⚠️\x20Timeout:\x20Tidak\x20dapat\x20terhubung\x20ke\x20MessageHub\x20server\x20dalam\x20waktu\x20yang\x20ditentukan','gQrsM':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','xcDMo':'Mode:\x20Koneksi\x20Nyata','jREul':_0x50c597(0x1c1),'jlzEZ':'broadcast','EqtPe':function(_0x3f3ab2,_0x3fe54b){return _0x3f3ab2===_0x3fe54b;},'QCkFX':_0x50c597(0x19e),'XRGIV':function(_0x1b8403,_0x39eadf){return _0x1b8403(_0x39eadf);},'yOqMI':function(_0x4a6f05,_0x38756a){return _0x4a6f05(_0x38756a);},'OVKDn':function(_0x4e326c,_0x556d06,_0x2c521e){return _0x4e326c(_0x556d06,_0x2c521e);},'ZJVty':function(_0xa59f22,_0x44b6db){return _0xa59f22(_0x44b6db);},'YsFFN':_0x50c597(0x197),'ckYYD':function(_0x10d761,_0x1187f1){return _0x10d761(_0x1187f1);}};if(messagehub&&isConnected)return _0x12b1f1['XRGIV'](log,_0x50c597(0x1bd)),!![];if(connectionPromise)return log('Koneksi\x20MessageHub\x20sedang\x20berlangsung,\x20menunggu...'),connectionPromise;return connectionPromise=new Promise(async(_0x36b8a3,_0x34b4b8)=>{const _0x5c16e5=_0x50c597,_0x11e8cb={'yVAbs':function(_0x3832eb,_0x327162){return _0x3832eb(_0x327162);},'kEHfs':_0x12b1f1[_0x5c16e5(0x188)]};try{_0x12b1f1['wmudz'](log,_0x12b1f1[_0x5c16e5(0x1b9)]),_0x12b1f1['wmudz'](log,'Waktu\x20Inisialisasi:\x20'+new Date()[_0x5c16e5(0x1a8)]()),log(_0x12b1f1['xcDMo']);const _0x783d12={'publishKey':process['env'][_0x5c16e5(0x178)],'subscribeKey':process[_0x5c16e5(0x176)][_0x5c16e5(0x16e)],'userId':process[_0x5c16e5(0x176)][_0x5c16e5(0x1c7)]||_0x5c16e5(0x1c6)+(process['env'][_0x5c16e5(0x19f)]||_0x12b1f1[_0x5c16e5(0x1a7)])+'-'+process['pid'],'communicationType':process[_0x5c16e5(0x176)]['MSHUB_COMMUNICATION_TYPE']||_0x12b1f1[_0x5c16e5(0x181)],'autoAcknowledge':process['env'][_0x5c16e5(0x17c)]===_0x5c16e5(0x19e),'acknowledgeMessages':_0x12b1f1['EqtPe'](process[_0x5c16e5(0x176)][_0x5c16e5(0x1a4)],_0x12b1f1[_0x5c16e5(0x172)]),'platform':{'type':process[_0x5c16e5(0x176)][_0x5c16e5(0x168)]||'websocket','host':process['env'][_0x5c16e5(0x1aa)]||'localhost','api_port':parseInt(process['env'][_0x5c16e5(0x19c)]||0xdf8),'service_port':parseInt(process[_0x5c16e5(0x176)]['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x783d12),log(_0x5c16e5(0x17b)),_0x12b1f1[_0x5c16e5(0x16c)](log,_0x5c16e5(0x1be)+messagehub['userId']),_0x12b1f1[_0x5c16e5(0x1b3)](log,_0x5c16e5(0x1a1)+messagehub[_0x5c16e5(0x1bc)]),log('Subscribe\x20Key:\x20'+messagehub['subscribeKey']),_0x12b1f1['yOqMI'](log,_0x5c16e5(0x16b)+messagehub[_0x5c16e5(0x179)]),log(_0x5c16e5(0x1a9)+JSON['stringify'](messagehub['platformConfig'])),log(_0x5c16e5(0x1c4)),messagehub['addListener']({'status':function(_0xd0cc02){const _0x3a8378=_0x5c16e5;_0x12b1f1['wmudz'](log,'Status\x20Listener:\x20'+_0xd0cc02[_0x3a8378(0x1ca)]);if(_0xd0cc02[_0x3a8378(0x1ca)]===_0x3a8378(0x19a))log(_0x3a8378(0x1a0)),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x36b8a3(!![]);else{if(_0x12b1f1['ZhpAD'](_0xd0cc02['category'],_0x12b1f1['ACoAU'])){const _0x36d2c2=_0x12b1f1[_0x3a8378(0x18b)](_0xd0cc02['isErrorRelated'],!![]);!_0x36d2c2&&(_0x12b1f1['wmudz'](log,'Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0xd0cc02[_0x3a8378(0x175)]||'Tidak\x20diketahui')),isConnected=![],connectionPromise&&(_0x34b4b8(new Error('Koneksi\x20terputus:\x20'+(_0xd0cc02[_0x3a8378(0x175)]||'Tidak\x20diketahui'))),connectionPromise=null));}else{if(_0xd0cc02[_0x3a8378(0x1ca)]==='error'){let _0x7b45fd=_0xd0cc02[_0x3a8378(0x173)]||_0xd0cc02['error']||_0x12b1f1[_0x3a8378(0x1cd)];log(_0x3a8378(0x18d)+_0x7b45fd),isConnected=![],connectionPromise&&(_0x34b4b8(new Error(_0x7b45fd)),connectionPromise=null);}else{if(_0xd0cc02['category']===_0x12b1f1['qkuOx'])_0x12b1f1[_0x3a8378(0x16c)](log,'📤\x20Pesan\x20berhasil\x20dikirim!\x20RequestID:\x20'+_0xd0cc02['requestId']);else{if(_0xd0cc02['category']===_0x12b1f1['FDFCe']){const _0x4a165f=_0xd0cc02['receiverInfo']?.[_0x3a8378(0x190)]||_0x12b1f1[_0x3a8378(0x195)],_0x175ceb=_0xd0cc02[_0x3a8378(0x17a)]?.['id']||_0xd0cc02[_0x3a8378(0x1a5)],_0x49059a=new Date(_0xd0cc02['receiverInfo']?.['receivedAt']||_0xd0cc02['receivedAt']||new Date())[_0x3a8378(0x1a3)]();log(_0x3a8378(0x18a)+_0xd0cc02['requestId']+_0x3a8378(0x182)+_0x4a165f+'\x20('+_0x175ceb+_0x3a8378(0x177)+_0x49059a+_0x3a8378(0x1ac)+(_0xd0cc02['confirmationCount']||0x1));}}}}}}}),timeoutHandler=_0x12b1f1[_0x5c16e5(0x170)](setTimeout,()=>{const _0x5b7202=_0x5c16e5;!isConnected&&connectionPromise&&(_0x11e8cb[_0x5b7202(0x16a)](log,_0x11e8cb[_0x5b7202(0x186)]),_0x34b4b8(new Error('Connection\x20timeout')),connectionPromise=null);},0x2710);}catch(_0x44ac2f){_0x12b1f1[_0x5c16e5(0x1ae)](log,_0x5c16e5(0x1c8)+_0x44ac2f['message']),console[_0x5c16e5(0x1c9)](_0x12b1f1['YsFFN'],_0x44ac2f),connectionPromise=null,_0x12b1f1[_0x5c16e5(0x1c2)](_0x34b4b8,_0x44ac2f);}}),connectionPromise;}async function publishMessage(_0x1c42e9,_0x58f446,_0x2f5e04,_0x530258={}){const _0x4d4893=a0_0x48e327,_0x5e665e={'owciN':function(_0x21e651,_0x330e2a){return _0x21e651(_0x330e2a);},'UFdes':'================================','KkWMB':function(_0x3c4984,_0x1a0d58){return _0x3c4984!==_0x1a0d58;},'mQqWY':function(_0x38a61d,_0x3c6835){return _0x38a61d(_0x3c6835);},'dwPCS':_0x4d4893(0x17e)};try{!isConnected&&await initMessageHub();const _0x504df5=messagehub[_0x4d4893(0x1c3)](_0x1c42e9);log('======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),_0x5e665e['owciN'](log,_0x4d4893(0x1c5)+_0x504df5['topic']),log(_0x4d4893(0x1cc)+_0x58f446),log(_0x5e665e['UFdes']);const _0x3b90a7={'requireAck':_0x530258['requireAck']!==undefined?_0x530258['requireAck']:![],'clearCache':_0x5e665e[_0x4d4893(0x180)](_0x530258[_0x4d4893(0x1bb)],undefined)?_0x530258[_0x4d4893(0x1bb)]:!![],'senderId':messagehub['socket']?messagehub[_0x4d4893(0x18c)]['id']:'restforge'};_0x5e665e['mQqWY'](log,_0x4d4893(0x1ad));const _0x402a10={'type':_0x58f446,'content':_0x2f5e04},_0x1f2463=await _0x504df5['publish'](_0x402a10,_0x3b90a7);return log('Message\x20sent\x20successfully\x20to\x20topic\x20'+_0x1c42e9),{'success':!![],'requestId':_0x1f2463[_0x4d4893(0x1a2)],'topic':_0x1c42e9,'message':_0x5e665e[_0x4d4893(0x194)]};}catch(_0x532ae4){return _0x5e665e[_0x4d4893(0x18e)](log,_0x4d4893(0x191)+_0x532ae4['message']),{'success':![],'error':_0x532ae4['message'],'topic':_0x1c42e9,'message':'Failed\x20to\x20send\x20message'};}}function a0_0x36fd(){const _0x48d7b9=['B3DJAu4','otiYnZK3qxPbDNrW','BMfTzq','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','zgLZy29UBMvJDgvK','mZa1otKZnfzhCMXlsa','zhDqq1m','t0rZCwe','CffRs3m','rxjYB3iGAw5PC2LHBgLZyxnPie1LC3nHz2viDwi6','zg90zw52','nwvlrwPfwq','y29UBMvJDgvK','mZi4nJqZn2nXAxHRsG','tvnivujFqvbjx1bpuLq','zNvUy3rPB24','Dhj1zq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','uhvIBgLZAcblzxK6ia','CMvXDwvZDeLK','Dg9mB2nHBgvuAw1Lu3rYAw5N','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','CMvJzwL2zxjjza','swH6D2q','ALjfDwW','Dg9mB2nHBgvtDhjPBMC','s29UzMLNDxjHC2KGugXHDgzVCM06ia','tvnivujFse9tva','mJCZourrD0zUrq','lIbuB3rHBcbRB25MAxjTyxnPoIa','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','wKPwDhK','mtjTtgXrqLq','ndbVAenuqwy','BwvZC2fNzs1Zzw50','BwvZC2fNzq','wfjhsvy','vMLosgq','wKX3Ae0','mZi0mJG1mfvHzujhAq','q3nUy2e','Dg9ju09tDhjPBMC','z1fYC00','mJa1ndHuBM9iugy','y2XLyxjdywnOzq','ChvIBgLZAeTLEq','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','q2XPzw50ieLel1vZzxjjrdOG','z252y2W','vw5RBM93BG','zgvMyxvSDa','y2Tzwuq','y2HHBM5LBa','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','q2HHBM5LBcbuyxjNzxq6ia','CMvZDgzVCMDLlq','tvnivujFvvnfuL9jra','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','zxjYB3i','y2f0zwDVCNK','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','twvZC2fNzsbuExbLoIa','tfzHENe','tvnivujFq09ntvvosunbveLptL9uwvbf','zgLZy29UBMvJDa','EvzbyNm','vgLWzsblB211BMLRyxnPoIa','D211zhO','AM5NC1a','tvnivujFu1vcu0nssujfx0Tfwq','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','t1zlrg4','BwvZC2fNzs1YzwnLAxzLza','uunRrLG','zxjYB3jezxrHAwW','y29UzMLN','CMvHC29U','zw52','ksbWywrHia','tvnivujFufvcteLtsf9lrvK','y29TBxvUAwnHDgLVBLr5Cgu','CMvJzwL2zxjjBMzV','pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','tvnivujFqvvut19bq0Tot1Dmrurhrq','zxHWB3j0CW','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','mZG1odqWmfrltufxtG','s2Txtui','AMX6rvO','igrPDgvYAw1Hig9SzwGG','mJG0yvbXuNHN','Bg9N','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','A0vizNm','mtiZCfnhu1bx','shjRyxu','y2XVC2u','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','wMHWquq','C29JA2v0','4PQG77IpievYCM9YoIa'];a0_0x36fd=function(){return _0x48d7b9;};return a0_0x36fd();}async function closeConnection(){const _0x5aec84=a0_0x48e327,_0x3fa8f5={'pQkKs':function(_0x4130e9,_0x5b7e84){return _0x4130e9&&_0x5b7e84;},'jngsP':function(_0x2741a3,_0xd27414){return _0x2741a3===_0xd27414;},'ZLwhM':'function','Csnca':function(_0x3c916a,_0x101382){return _0x3c916a(_0x101382);},'gnvcl':function(_0x7635fe,_0x26ce0c){return _0x7635fe===_0x26ce0c;},'cmhGv':function(_0x37e208,_0x4c9269){return _0x37e208(_0x4c9269);},'Ihzwd':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()','ViNHd':function(_0x5cb21e,_0xf8b8fd){return _0x5cb21e(_0xf8b8fd);}};timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null);if(_0x3fa8f5[_0x5aec84(0x196)](isConnected,messagehub))try{if(_0x3fa8f5[_0x5aec84(0x16d)](typeof messagehub[_0x5aec84(0x169)],_0x3fa8f5['ZLwhM']))await messagehub['disconnect'](),_0x3fa8f5['Csnca'](log,'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(_0x3fa8f5[_0x5aec84(0x1bf)](typeof messagehub[_0x5aec84(0x189)],_0x3fa8f5[_0x5aec84(0x1b5)]))await messagehub['close'](),_0x3fa8f5['cmhGv'](log,_0x5aec84(0x16f));else messagehub['socket']&&typeof messagehub['socket'][_0x5aec84(0x169)]===_0x5aec84(0x19d)?(messagehub[_0x5aec84(0x18c)][_0x5aec84(0x169)](),_0x3fa8f5[_0x5aec84(0x1b7)](log,_0x3fa8f5[_0x5aec84(0x1a6)])):log(_0x5aec84(0x185));}isConnected=![],connectionPromise=null;}catch(_0x5c364e){_0x3fa8f5[_0x5aec84(0x1b4)](log,_0x5aec84(0x1cb)+_0x5c364e[_0x5aec84(0x1b2)]);}}module[a0_0x48e327(0x17d)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|