@restforgejs/platform 5.1.21 → 5.2.0
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/generators/cli/catalog/dashboard.js +1 -1
- package/generators/cli/catalog/dbschema.js +3 -3
- package/generators/cli/catalog/field-validation.js +1 -1
- package/generators/cli/catalog/query-declarative.js +1 -1
- package/generators/cli/config/clear-default.js +1 -1
- package/generators/cli/config/get-default.js +1 -1
- package/generators/cli/config/list.js +1 -1
- package/generators/cli/config/schema.js +1 -1
- package/generators/cli/config/set-default.js +2 -2
- package/generators/cli/config/template.js +1 -1
- package/generators/cli/dashboard/create.js +7 -7
- package/generators/cli/data/pull.js +12 -12
- package/generators/cli/data/push.js +9 -9
- package/generators/cli/endpoint/create.js +11 -11
- package/generators/cli/endpoint/list.js +3 -3
- package/generators/cli/fast-track.js +7 -7
- package/generators/cli/init.js +2 -2
- package/generators/cli/kafka/consumer-create.js +5 -5
- package/generators/cli/key/generate.js +3 -3
- package/generators/cli/key/list.js +2 -2
- package/generators/cli/key/revoke.js +3 -3
- package/generators/cli/payload/diff.js +3 -3
- package/generators/cli/payload/generate.js +5 -5
- package/generators/cli/payload/sync.js +5 -5
- package/generators/cli/payload/validate.js +3 -3
- package/generators/cli/processor/create.js +7 -7
- package/generators/cli/processor/list.js +3 -3
- package/generators/cli/project/delete.js +2 -2
- package/generators/cli/project/list.js +1 -1
- package/generators/cli/query/validate.js +3 -3
- package/generators/cli/schema/apply.js +13 -13
- package/generators/cli/schema/describe.js +6 -6
- package/generators/cli/schema/diff.js +10 -10
- package/generators/cli/schema/generate-ddl.js +11 -11
- package/generators/cli/schema/init.js +95 -95
- package/generators/cli/schema/introspect.js +8 -8
- package/generators/cli/schema/list.js +6 -6
- package/generators/cli/schema/migrate.js +91 -13
- package/generators/cli/schema/models.js +6 -6
- package/generators/cli/schema/template.js +223 -222
- package/generators/cli/schema/validate.js +6 -6
- package/generators/cli/test/generate.js +6 -6
- package/generators/lib/dbschema-kit/introspect-mapper.js +20 -0
- 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 +1 -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';const
|
|
1
|
+
'use strict';const a0_0x324cd0=a0_0x561c;function a0_0x1e0a(){const _0x18fee3=['zxHPC3rZu3LUyW','zxjYB3i','ChjVAMvJDa','rgHeDuS','ChvZAa','x3rLBxbeAxi','DxjS','BxvSDgvY','DgvTCa','AM9PBG','x3bHCNnLrMLSzvnPEMu','mtC2z3HsEgHS','Dw1ezKe','mtyYmtLRrurdBNO','x2rLBgv0zvrLBxbgAwXL','DxbSB2fKlq','vvbmt0fex1rftvbFreLs','mtiZoty5svPLt2jy','yxjYyxK','z2vUzxjHDgvlzxK','B3jPz2LUywXUyw1L','nZznvxHyuxe','BNvTyMvY','zgvMyxvSDa','CMfUzg9TqNL0zxm','mtm4ndLVB1vPuLm','zMLSzxm','mta2nJH2DfjbzMe','DxbSB2fKx3yYx3bYB2nLC3nFzxjYB3i','BwvZC2fNzq','Cgf0Aa','ChjLzML4','D2fYBG','mtaWmKPZAKTqtq','DhjPBq','tu9ICfG','txz6teW','BwTKAxjtEw5J','A2v5','Bw9KDwXL','ndeYnJm5nxbMs3HQvG','zw52','DxbSB2fKx3yYx3rLBxbFzgvSzxrLx3DHCM4','otm4otDdwuPVuwm','y3j5ChrV','ChjVDMLKzxjoyw1L','DKXoANm','nJK3odmWmfzcv1fMtG','rhDrD0i','CKPot0i','svrtqxe','Aw5JBhvKzxm','y3jLyxrLvxbSB2fKtwLKzgXLD2fYzq','DxbSB2fKzwrcEq','lI4VC3rVCMfNzs9MAwXLlw1LDgfKyxrHlwHLBhbLCG','ChjVy2vZC1vWBg9HzgvKrMLSzxm','ntLsywPfD2m','mJu3otbiCM1luMu'];a0_0x1e0a=function(){return _0x18fee3;};return a0_0x1e0a();}(function(_0x4a35c9,_0x30aae6){const _0x583db2=a0_0x561c,_0x45979b=_0x4a35c9();while(!![]){try{const _0x39f393=-parseInt(_0x583db2(0xdb))/0x1*(-parseInt(_0x583db2(0xdc))/0x2)+-parseInt(_0x583db2(0xb4))/0x3*(-parseInt(_0x583db2(0xb8))/0x4)+-parseInt(_0x583db2(0xcb))/0x5+parseInt(_0x583db2(0xc4))/0x6*(parseInt(_0x583db2(0xb0))/0x7)+parseInt(_0x583db2(0xae))/0x8*(-parseInt(_0x583db2(0xce))/0x9)+parseInt(_0x583db2(0xd2))/0xa+parseInt(_0x583db2(0xbc))/0xb*(-parseInt(_0x583db2(0xbe))/0xc);if(_0x39f393===_0x30aae6)break;else _0x45979b['push'](_0x45979b['shift']());}catch(_0x33f4fc){_0x45979b['push'](_0x45979b['shift']());}}}(a0_0x1e0a,0x6f7cf));function a0_0x561c(_0x355548,_0x37d55d){_0x355548=_0x355548-0xa7;const _0x1e0a3e=a0_0x1e0a();let _0x561c19=_0x1e0a3e[_0x355548];if(a0_0x561c['GHRoNo']===undefined){var _0x72a346=function(_0x216574){const _0x3e574e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20230c='',_0x109702='';for(let _0x1d459a=0x0,_0x43db66,_0x1bffaf,_0x3302cf=0x0;_0x1bffaf=_0x216574['charAt'](_0x3302cf++);~_0x1bffaf&&(_0x43db66=_0x1d459a%0x4?_0x43db66*0x40+_0x1bffaf:_0x1bffaf,_0x1d459a++%0x4)?_0x20230c+=String['fromCharCode'](0xff&_0x43db66>>(-0x2*_0x1d459a&0x6)):0x0){_0x1bffaf=_0x3e574e['indexOf'](_0x1bffaf);}for(let _0x1e968b=0x0,_0x25288c=_0x20230c['length'];_0x1e968b<_0x25288c;_0x1e968b++){_0x109702+='%'+('00'+_0x20230c['charCodeAt'](_0x1e968b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x109702);};a0_0x561c['gtOUxd']=_0x72a346,a0_0x561c['EQUwzp']={},a0_0x561c['GHRoNo']=!![];}const _0x3b09a9=_0x1e0a3e[0x0],_0xb18cda=_0x355548+_0x3b09a9,_0x4f50f8=a0_0x561c['EQUwzp'][_0xb18cda];return!_0x4f50f8?(_0x561c19=a0_0x561c['gtOUxd'](_0x561c19),a0_0x561c['EQUwzp'][_0xb18cda]=_0x561c19):_0x561c19=_0x4f50f8,_0x561c19;}const multer=require(a0_0x324cd0(0xaa)),path=require(a0_0x324cd0(0xc1)),crypto=require(a0_0x324cd0(0xcf)),fs=require('fs')['promises'],fsSync=require('fs'),{logger}=require('./logger');class UploadHandlerV2{constructor(){const _0x123ad7=a0_0x324cd0;this[_0x123ad7(0xa8)]=null;}get['tempDir'](){const _0xd0625b=a0_0x324cd0,_0x137b9a={'rJNOB':_0xd0625b(0xba),'MObpX':_0xd0625b(0xab)};if(!this['_tempDir']){const _0x53aeba=process['env']['RESTFORGE_PROJECT_NAME']||_0x137b9a[_0xd0625b(0xd4)];this[_0xd0625b(0xa8)]=process[_0xd0625b(0xcc)][_0xd0625b(0xb3)]||path[_0xd0625b(0xac)](process['cwd'](),_0x137b9a[_0xd0625b(0xc6)],'uploads',_0x53aeba),!fsSync['existsSync'](this['_tempDir'])&&fsSync['mkdirSync'](this['_tempDir'],{'recursive':!![]});}return this[_0xd0625b(0xa8)];}[a0_0x324cd0(0xd7)](_0x1b45c9={}){const _0x5e6219=a0_0x324cd0,_0x162284={'gbEgA':'hex','umDfA':function(_0x321f70,_0xd30b9e,_0x5c8d08){return _0x321f70(_0xd30b9e,_0x5c8d08);},'ZzmjR':function(_0x12ea5b,_0xc56675){return _0x12ea5b===_0xc56675;},'DwQwB':function(_0xfe9dd0,_0x3f5658){return _0xfe9dd0(_0x3f5658);}},_0x2f0385=_0x1b45c9['maxFiles']||0x5,_0x4930d1=this[_0x5e6219(0xad)](_0x1b45c9['maxFileSize']||'10MB'),_0x44c724=_0x1b45c9['allowedTypes']||[],_0x15988f=multer['diskStorage']({'destination':(_0x4f0ed4,_0x26c922,_0x4a3936)=>{const _0x44c5b0=_0x5e6219;!fsSync[_0x44c5b0(0xdd)](this['tempDir'])&&fsSync[_0x44c5b0(0xc8)](this['tempDir'],{'recursive':!![]}),_0x4a3936(null,this['tempDir']);},'filename':(_0x2459fe,_0x15df51,_0x5f524c)=>{const _0x2b888d=_0x5e6219,_0x135bfa=crypto[_0x2b888d(0xbb)](0x8)['toString'](_0x162284['gbEgA']),_0x2570f2=Date['now'](),_0x490b2=path['extname'](_0x15df51['originalname']);_0x162284['umDfA'](_0x5f524c,null,_0x2b888d(0xb2)+_0x2570f2+'-'+_0x135bfa+_0x490b2);}}),_0x18c3f1=(_0x20a0c6,_0x41a2fb,_0x55b1d5)=>{const _0xeca9a4=_0x5e6219;if(_0x162284['ZzmjR'](_0x44c724['length'],0x0))return _0x55b1d5(null,!![]);const _0x1d7e6a=path['extname'](_0x41a2fb['originalname'])['toLowerCase']()['replace']('.','');_0x44c724[_0xeca9a4(0xd6)](_0x1d7e6a)?_0x162284[_0xeca9a4(0xaf)](_0x55b1d5,null,!![]):_0x55b1d5(new Error('File\x20type\x20\x22.'+_0x1d7e6a+'\x22\x20is\x20not\x20allowed.\x20Allowed\x20types:\x20'+_0x44c724['join'](',\x20')));};return _0x162284[_0x5e6219(0xd3)](multer,{'storage':_0x15988f,'limits':{'fileSize':_0x4930d1,'files':_0x2f0385},'fileFilter':_0x18c3f1})[_0x5e6219(0xb5)](_0x5e6219(0xbd),_0x2f0385);}async[a0_0x324cd0(0xda)](_0x274996,_0x43f479,_0x953700={}){const _0x4d9666=a0_0x324cd0,_0x300a09={'DhDuK':_0x4d9666(0xd9)},{createFileMetadata:_0x215c74}=require(_0x300a09[_0x4d9666(0xe0)]),_0x3746d1=[];for(const _0x1cbb70 of _0x274996){try{const _0x38343a=_0x43f479[_0x4d9666(0xb6)](_0x1cbb70['originalname'],{'prefix':_0x953700[_0x4d9666(0xc2)]||'','project':_0x953700[_0x4d9666(0xdf)]||'','module':_0x953700[_0x4d9666(0xca)]||'','endpoint':_0x953700['endpoint']||''}),_0x25aca7=fsSync['createReadStream'](_0x1cbb70['path']),_0x307147=await _0x43f479['upload'](_0x25aca7,_0x38343a,{'contentType':_0x1cbb70['mimetype'],'fileSize':_0x1cbb70['size']}),_0x47af38=_0x215c74({'key':_0x307147[_0x4d9666(0xc9)],'originalName':_0x1cbb70['originalname'],'fileName':path['basename'](_0x38343a),'contentType':_0x1cbb70['mimetype'],'size':_0x1cbb70['size'],'url':_0x307147[_0x4d9666(0xa9)],'provider':_0x43f479[_0x4d9666(0xd0)],'bucket':_0x43f479['bucket']||null,'uploadedBy':_0x953700[_0x4d9666(0xd8)]||null});_0x3746d1[_0x4d9666(0xa7)](_0x47af38);}catch(_0x2e3f30){logger[_0x4d9666(0xde)]({'event':_0x4d9666(0xbf),'file':_0x1cbb70[_0x4d9666(0xb7)],'error':_0x2e3f30['message']},'Failed\x20to\x20process\x20uploaded\x20file:\x20'+_0x1cbb70['originalname']);throw _0x2e3f30;}finally{await this[_0x4d9666(0xb1)](_0x1cbb70['path']);}}return _0x3746d1;}async['_deleteTempFile'](_0x97ef30){const _0x41d70b=a0_0x324cd0,_0x23aa56={'vLNjs':_0x41d70b(0xcd)};try{await fs['unlink'](_0x97ef30);}catch(_0x2079ec){logger[_0x41d70b(0xc3)]({'event':_0x23aa56[_0x41d70b(0xd1)],'filePath':_0x97ef30,'error':_0x2079ec[_0x41d70b(0xc0)]},'Failed\x20to\x20delete\x20temp\x20file');}}[a0_0x324cd0(0xad)](_0x104c55){const _0x572582=a0_0x324cd0,_0x57776d={'ITSAq':_0x572582(0xb9),'TfRHC':function(_0x2bd01d,_0x2d527d){return _0x2bd01d*_0x2d527d;},'akLcF':function(_0x2e7e57,_0x564091){return _0x2e7e57(_0x564091);},'MvzLL':function(_0x33f9cb,_0x1693d1){return _0x33f9cb*_0x1693d1;}};if(typeof _0x104c55===_0x57776d[_0x572582(0xd5)])return _0x104c55;const _0x4d6d44=String(_0x104c55)[_0x572582(0xc5)]()['match'](/^(\d+(?:\.\d+)?)\s*(B|KB|MB|GB)$/i);if(!_0x4d6d44)return _0x57776d['TfRHC'](0xa*0x400,0x400);const _0x1bd1ba=_0x57776d['akLcF'](parseFloat,_0x4d6d44[0x1]),_0x2dc385=_0x4d6d44[0x2]['toUpperCase'](),_0x27b5d8={'B':0x1,'KB':0x400,'MB':0x400*0x400,'GB':_0x57776d[_0x572582(0xc7)](0x400,0x400)*0x400};return Math['floor'](_0x1bd1ba*(_0x27b5d8[_0x2dc385]||0x1));}}module['exports']=new UploadHandlerV2();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x3798ae=a0_0x2f58;(function(_0x3160a1,_0x29ca8b){const _0x36fd52=a0_0x2f58,_0x5874c5=_0x3160a1();while(!![]){try{const _0x36f0fe=parseInt(_0x36fd52(0xcc))/0x1+-parseInt(_0x36fd52(0xd4))/0x2+parseInt(_0x36fd52(0xb9))/0x3+-parseInt(_0x36fd52(0xc2))/0x4*(-parseInt(_0x36fd52(0xa5))/0x5)+-parseInt(_0x36fd52(0xb1))/0x6*(-parseInt(_0x36fd52(0xa3))/0x7)+parseInt(_0x36fd52(0xac))/0x8+-parseInt(_0x36fd52(0xbf))/0x9*(parseInt(_0x36fd52(0xae))/0xa);if(_0x36f0fe===_0x29ca8b)break;else _0x5874c5['push'](_0x5874c5['shift']());}catch(_0x38beff){_0x5874c5['push'](_0x5874c5['shift']());}}}(a0_0x4b07,0x6105b));function a0_0x2f58(_0x32ce01,_0x5af8de){_0x32ce01=_0x32ce01-0xa2;const _0x4b07b3=a0_0x4b07();let _0x2f58b6=_0x4b07b3[_0x32ce01];if(a0_0x2f58['LSdsMP']===undefined){var _0x3f964a=function(_0x13db9d){const _0x41ecc2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x17165d='',_0x3d34dc='';for(let _0x3b3a49=0x0,_0x58cf77,_0x3d9fab,_0x4537d6=0x0;_0x3d9fab=_0x13db9d['charAt'](_0x4537d6++);~_0x3d9fab&&(_0x58cf77=_0x3b3a49%0x4?_0x58cf77*0x40+_0x3d9fab:_0x3d9fab,_0x3b3a49++%0x4)?_0x17165d+=String['fromCharCode'](0xff&_0x58cf77>>(-0x2*_0x3b3a49&0x6)):0x0){_0x3d9fab=_0x41ecc2['indexOf'](_0x3d9fab);}for(let _0x4aec05=0x0,_0x3ab632=_0x17165d['length'];_0x4aec05<_0x3ab632;_0x4aec05++){_0x3d34dc+='%'+('00'+_0x17165d['charCodeAt'](_0x4aec05)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3d34dc);};a0_0x2f58['XfyuGU']=_0x3f964a,a0_0x2f58['tvlMRk']={},a0_0x2f58['LSdsMP']=!![];}const _0x22d1d1=_0x4b07b3[0x0],_0x18efb5=_0x32ce01+_0x22d1d1,_0x3cdac4=a0_0x2f58['tvlMRk'][_0x18efb5];return!_0x3cdac4?(_0x2f58b6=a0_0x2f58['XfyuGU'](_0x2f58b6),a0_0x2f58['tvlMRk'][_0x18efb5]=_0x2f58b6):_0x2f58b6=_0x3cdac4,_0x2f58b6;}const multer=require('multer'),path=require(a0_0x3798ae(0xab)),crypto=require('crypto'),fs=require('fs')[a0_0x3798ae(0xc8)],fsSync=require('fs'),{logger}=require(a0_0x3798ae(0xd3));class UploadHandler{constructor(){const _0xcc6147=a0_0x3798ae;this[_0xcc6147(0xc9)]=null,this[_0xcc6147(0xd0)]=0xa*0x400*0x400;}get[a0_0x3798ae(0xc6)](){const _0x230622=a0_0x3798ae,_0x31582a={'tGAmh':'default','fuLyz':'upload_handler_init','iOawv':_0x230622(0xbe),'qkNQh':_0x230622(0xcb)};if(!this[_0x230622(0xc9)]){const _0x5df595=process['env']['RESTFORGE_PROJECT_NAME']||_0x31582a[_0x230622(0xcf)];this[_0x230622(0xc9)]=process[_0x230622(0xd1)][_0x230622(0xca)]||path['join'](__dirname,_0x230622(0xc7)+_0x5df595);try{!fsSync[_0x230622(0xcd)](this[_0x230622(0xc9)])&&fsSync['mkdirSync'](this['_uploadDir'],{'recursive':!![]}),logger['info']({'event':_0x31582a['fuLyz'],'dir':this[_0x230622(0xc9)]},_0x31582a[_0x230622(0xb0)]);}catch(_0x2fd3e8){logger['error']({'event':_0x230622(0xaa),'error':_0x2fd3e8['message']},_0x31582a['qkNQh']);}}return this['_uploadDir'];}[a0_0x3798ae(0xb5)](){const _0x465a23=a0_0x3798ae,_0x1eb607={'GeHcW':function(_0x123721,_0x5c0b69,_0x46de5a){return _0x123721(_0x5c0b69,_0x46de5a);},'kZdJN':_0x465a23(0xa4)};return multer['diskStorage']({'destination':(_0x37cb7f,_0x197d03,_0x146e4c)=>{const _0x5e0bb0=_0x465a23;!fsSync['existsSync'](this['uploadDir'])&&fsSync[_0x5e0bb0(0xb3)](this[_0x5e0bb0(0xc6)],{'recursive':!![]}),_0x1eb607[_0x5e0bb0(0xbd)](_0x146e4c,null,this[_0x5e0bb0(0xc6)]);},'filename':(_0x11c80a,_0xa87e88,_0x18d7d4)=>{const _0x495077=_0x465a23,_0x44724c=crypto[_0x495077(0xc4)](0x8)['toString'](_0x1eb607['kZdJN']),_0x4634ef=Date['now'](),_0x57bfaf=path[_0x495077(0xce)](_0xa87e88['originalname']);_0x1eb607['GeHcW'](_0x18d7d4,null,_0x495077(0xbb)+_0x4634ef+'-'+_0x44724c+_0x57bfaf);}});}['getUploadMiddleware'](){const _0x2603f3=a0_0x3798ae,_0xc84a65={'EKsVm':'.xlsx','Avdse':_0x2603f3(0xbc),'soOrd':_0x2603f3(0xba),'sMnQe':function(_0xe82537,_0x50d0c9){return _0xe82537(_0x50d0c9);},'yCOAr':_0x2603f3(0xb4)};return _0xc84a65['sMnQe'](multer,{'storage':this[_0x2603f3(0xb5)](),'limits':{'fileSize':this[_0x2603f3(0xd0)],'files':0x1},'fileFilter':(_0x310e91,_0x4e6739,_0x210a91)=>{const _0x141e74=_0x2603f3,_0x143837=[_0x141e74(0xb6),_0x141e74(0xb7)],_0x1dec51=[_0xc84a65[_0x141e74(0xad)],_0xc84a65[_0x141e74(0xa2)]],_0x4764e7=path[_0x141e74(0xce)](_0x4e6739[_0x141e74(0xc5)])[_0x141e74(0xb8)]();_0x143837[_0x141e74(0xc0)](_0x4e6739['mimetype'])&&_0x1dec51[_0x141e74(0xc0)](_0x4764e7)?_0x210a91(null,!![]):_0x210a91(new Error(_0xc84a65[_0x141e74(0xd5)]));}})[_0x2603f3(0xc3)](_0xc84a65[_0x2603f3(0xb2)]);}async[a0_0x3798ae(0xaf)](_0x2206d9){const _0x8e3ce2=a0_0x3798ae,_0x14ffbc={'OnSHD':'upload_file_delete_error','xraml':'Failed\x20to\x20delete\x20uploaded\x20file'};try{await fs[_0x8e3ce2(0xa7)](_0x2206d9),logger[_0x8e3ce2(0xa8)]({'event':_0x8e3ce2(0xd2),'filePath':_0x2206d9},'Uploaded\x20file\x20deleted');}catch(_0xb58c00){logger[_0x8e3ce2(0xa9)]({'event':_0x14ffbc[_0x8e3ce2(0xa6)],'filePath':_0x2206d9,'error':_0xb58c00['message']},_0x14ffbc[_0x8e3ce2(0xc1)]);}}}function a0_0x4b07(){const _0x4845b2=['yxbWBgLJyxrPB24VDM5KlM1Zlwv4y2vS','Dg9mB3DLCKnHC2u','otC3odG2sK1XwvDU','sw52ywXPzcbMAwXLihr5CguUie9UBhKGlNHSC3GGzMLSzxmGyxjLigfSBg93zwq','DxbSB2fKlq','lNHSCW','r2viy1C','vxbSB2fKigHHBMrSzxiGAw5PDgLHBgL6zwq','mJG0nJDNANjttuy','Aw5JBhvKzxm','EhjHBwW','mtjJEw56DNy','C2LUz2XL','CMfUzg9TqNL0zxm','B3jPz2LUywXUyw1L','DxbSB2fKrgLY','lI4VlI4VDgvTCc91CgXVywrZlW','ChjVBwLZzxm','x3vWBg9HzerPCG','vvbmt0fex0rjuG','rMfPBgvKihrVigLUAxrPywXPEMuGDxbSB2fKigHHBMrSzxi','mZK0mZy5EuPYquzt','zxHPC3rZu3LUyW','zxH0BMfTzq','DeDbBwG','Bwf4rMLSzvnPEMu','zw52','DxbSB2fKx2zPBgvFzgvSzxrLza','lI9SB2DNzxi','otmWnda4Cg96qLP3','C29pCMq','qxzKC2u','ndKYodqYCwnOwwLQ','Agv4','ndu5mJe1Duf5B0Lq','t25tseq','Dw5SAw5R','Aw5MBW','zxjYB3i','DxbSB2fKx2HHBMrSzxjFAw5PDf9LCNjVCG','Cgf0Aa','mta3mty5nNjJA0Xkwq','ruTZvM0','mti5mhneB3LntW','zgvSzxrLrMLSzq','Au9HD3y','mtjgDNzlyLO','Eunpqxi','BwTKAxjtEw5J','zMLSzq','z2v0u3rVCMfNzq','yxbWBgLJyxrPB24VDM5KlM9Wzw54BwXMB3jTyxrZlw9MzMLJzwrVy3vTzw50lNnWCMvHzhnOzwv0BwWUC2HLzxq'];a0_0x4b07=function(){return _0x4845b2;};return a0_0x4b07();}module['exports']=new UploadHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x3d4ab5=a0_0x49dc;(function(_0x4d0eba,_0x74ad4){const _0x5a8cb0=a0_0x49dc,_0x3dc979=_0x4d0eba();while(!![]){try{const _0x4dc0b5=parseInt(_0x5a8cb0(0x17e))/0x1+-parseInt(_0x5a8cb0(0x181))/0x2+parseInt(_0x5a8cb0(0x17a))/0x3+-parseInt(_0x5a8cb0(0x190))/0x4*(parseInt(_0x5a8cb0(0x192))/0x5)+parseInt(_0x5a8cb0(0x18c))/0x6*(parseInt(_0x5a8cb0(0x188))/0x7)+-parseInt(_0x5a8cb0(0x17b))/0x8*(parseInt(_0x5a8cb0(0x185))/0x9)+parseInt(_0x5a8cb0(0x18f))/0xa*(parseInt(_0x5a8cb0(0x189))/0xb);if(_0x4dc0b5===_0x74ad4)break;else _0x3dc979['push'](_0x3dc979['shift']());}catch(_0x188f64){_0x3dc979['push'](_0x3dc979['shift']());}}}(a0_0x39aa,0x9bf23));const axios=require('axios');function a0_0x49dc(_0xedc96c,_0x2cda4c){_0xedc96c=_0xedc96c-0x179;const _0x39aa4e=a0_0x39aa();let _0x49dcff=_0x39aa4e[_0xedc96c];if(a0_0x49dc['waFIrR']===undefined){var _0x468a74=function(_0x55763f){const _0x34def7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2e2a17='',_0x3e526a='';for(let _0x21eb84=0x0,_0x4ee8b6,_0x463287,_0x594f76=0x0;_0x463287=_0x55763f['charAt'](_0x594f76++);~_0x463287&&(_0x4ee8b6=_0x21eb84%0x4?_0x4ee8b6*0x40+_0x463287:_0x463287,_0x21eb84++%0x4)?_0x2e2a17+=String['fromCharCode'](0xff&_0x4ee8b6>>(-0x2*_0x21eb84&0x6)):0x0){_0x463287=_0x34def7['indexOf'](_0x463287);}for(let _0x5d356a=0x0,_0x38d883=_0x2e2a17['length'];_0x5d356a<_0x38d883;_0x5d356a++){_0x3e526a+='%'+('00'+_0x2e2a17['charCodeAt'](_0x5d356a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e526a);};a0_0x49dc['tOVrEq']=_0x468a74,a0_0x49dc['pzdWyj']={},a0_0x49dc['waFIrR']=!![];}const _0x15dd53=_0x39aa4e[0x0],_0x4ccbe8=_0xedc96c+_0x15dd53,_0x519ba8=a0_0x49dc['pzdWyj'][_0x4ccbe8];return!_0x519ba8?(_0x49dcff=a0_0x49dc['tOVrEq'](_0x49dcff),a0_0x49dc['pzdWyj'][_0x4ccbe8]=_0x49dcff):_0x49dcff=_0x519ba8,_0x49dcff;}async function sendInsertWebhook(_0xa266b8,_0x4d973d,_0x1ab48c={}){const _0x572121=a0_0x49dc,_0x2909ff={'geSCK':_0x572121(0x186),'grETX':_0x572121(0x187),'bnXQp':_0x572121(0x18e),'ItdXs':'Failed\x20to\x20send\x20insert\x20webhook'};try{const _0x3f4c34={'event':_0x572121(0x18a),'timestamp':new Date()[_0x572121(0x182)](),'data':_0x4d973d},_0x5e4a21=await axios[_0x572121(0x179)](_0xa266b8,_0x3f4c34,{'headers':{'Content-Type':_0x572121(0x184),'User-Agent':_0x2909ff['geSCK'],..._0x1ab48c},'timeout':0x2710});return console['log']('Insert\x20webhook\x20sent\x20to\x20'+_0xa266b8+',\x20Status:\x20'+_0x5e4a21['status']),{'success':!![],'message':_0x2909ff[_0x572121(0x194)],'status':_0x5e4a21['status'],'url':_0xa266b8};}catch(_0x5e9242){return console['error'](_0x2909ff['bnXQp'],_0x5e9242['message']),{'success':![],'message':_0x2909ff[_0x572121(0x17d)],'error':_0x5e9242['message'],'url':_0xa266b8};}}async function sendDeleteWebhook(_0x4aae20,_0x562cc5,_0x5b1e3c={}){const _0xe44c62=a0_0x49dc,_0xcafa90={'JtEpP':_0xe44c62(0x186),'PBAVN':_0xe44c62(0x183)};try{const _0x4cb243={'event':_0xe44c62(0x17f),'timestamp':new Date()['toISOString'](),'deleted_data':_0x562cc5},_0x807b1e=await axios[_0xe44c62(0x179)](_0x4aae20,_0x4cb243,{'headers':{'Content-Type':'application/json','User-Agent':_0xcafa90[_0xe44c62(0x17c)],..._0x5b1e3c},'timeout':0x2710});return console['log']('Delete\x20webhook\x20sent\x20to\x20'+_0x4aae20+_0xe44c62(0x193)+_0x807b1e[_0xe44c62(0x191)]),{'success':!![],'message':_0xcafa90['PBAVN'],'status':_0x807b1e['status'],'url':_0x4aae20};}catch(_0x2a7c56){return console[_0xe44c62(0x18d)]('Error\x20sending\x20delete\x20webhook:',_0x2a7c56[_0xe44c62(0x18b)]),{'success':![],'message':'Failed\x20to\x20send\x20delete\x20webhook','error':_0x2a7c56['message'],'url':_0x4aae20};}}function a0_0x39aa(){const _0x40c48d=['zxjYB3i','rxjYB3iGC2vUzgLUzYbPBNnLCNqGD2vIAg9VAZO','nJeWuevpEwPs','ndK1nduXmM14zxb1rG','C3rHDhvZ','nvvewxLlBG','lcbtDgf0Dxm6ia','z3jfvfG','Cg9ZDa','mJyYnJq3m21Lswvqyq','ndbItNLsvhG','sNrfCfa','sxrKwhm','mZyYodmZugz3EwnW','zgvSzxrL','zxHWB3j0CW','mJi3nZeWmejpv01eCq','Dg9ju09tDhjPBMC','rgvSzxrLihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','yxbWBgLJyxrPB24VANnVBG','mtmXmJC1ofLuA0XXCq','uMvZDezVCMDLlvDLyMHVB2SVms4W','sw5Zzxj0ihDLyMHVB2SGC2vUDcbZDwnJzxnZzNvSBhK','ndK3yLvKBxrh','mJm5nZG5B0r4CMvU','Aw5Zzxj0','BwvZC2fNzq','otK0odboC2Txvvi'];a0_0x39aa=function(){return _0x40c48d;};return a0_0x39aa();}module[a0_0x3d4ab5(0x180)]={'sendInsertWebhook':sendInsertWebhook,'sendDeleteWebhook':sendDeleteWebhook};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a0_0x180fc2=a0_0x1935;(function(_0x3a0b6c,_0x13e53c){const _0x25fe35=a0_0x1935,_0x4e0f77=_0x3a0b6c();while(!![]){try{const _0x27e62f=-parseInt(_0x25fe35(0x1a6))/0x1+-parseInt(_0x25fe35(0x1af))/0x2+parseInt(_0x25fe35(0x1a4))/0x3+parseInt(_0x25fe35(0x194))/0x4*(-parseInt(_0x25fe35(0x19e))/0x5)+parseInt(_0x25fe35(0x1ba))/0x6+parseInt(_0x25fe35(0x1b1))/0x7*(-parseInt(_0x25fe35(0x1ab))/0x8)+-parseInt(_0x25fe35(0x1b6))/0x9*(-parseInt(_0x25fe35(0x1b2))/0xa);if(_0x27e62f===_0x13e53c)break;else _0x4e0f77['push'](_0x4e0f77['shift']());}catch(_0x20b832){_0x4e0f77['push'](_0x4e0f77['shift']());}}}(a0_0x4f62,0xefdf2));const express=require(a0_0x180fc2(0x19f)),{logger}=require('../../utils/logger');function a0_0x4f62(){const _0x1f1d23=['tg9JAYbYzwXLyxnLihjVDxrLigvYCM9YoIa','y1DWEvq','mtyXmxbptu5MBG','tg9JAYbZDgf0DxmGCM91DguGzxjYB3i6ia','C3vJy2vZCW','uM91DgvY','mtm0otmYogPYBezHAW','mJi2otG2mgLVEKDxCq','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSigXVy2TFDg9Rzw4','uxjSvu0','ywnXDwLYzvjLC291CMnLtg9JA3m','zxjYB3i','rg1cEgu','zevwAhG','ANnVBG','lI9YzxnVDxjJzs1SB2nRlw1HBMfNzxi','BwvZC2fNzq','nxLXtu5xwG','zxHWCMvZCW','yM9KEq','v3zhuNO','C3rHDhvZ','CMvSzwfZzvjLC291CMnLtg9JA3m','ndaYnZG2meHYCgT5ua','Cg9ZDa','nZm3odGZBuzozxji','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','sw50zxjUywWGC2vYDMvYigvYCM9Yigr1CMLUzYbSB2nRigfJCxvPC2L0Aw9U','zxHWB3j0CW','yuvQCha','mtC4ntaZmNvnDw5ktq','twLZC2LUzYbYzxf1AxjLzcbMAwvSzhm6ihjLC291CMnLlcbSB2nRx2TLExmSihr0BcWGB3DUzxi','r2jiwui','renJt2O','mZaWnJG3mM1YEuX0vW','l3n0yxr1CW','mJfkuMTpufy','mtyXnJmWy01dA1jb','t1Lor0u'];a0_0x4f62=function(){return _0x1f1d23;};return a0_0x4f62();}function createLockRoutes(){const _0x3b2c87=a0_0x180fc2,_0x3b2d66={'OYNGE':function(_0x2740e1,_0x14efdb){return _0x2740e1(_0x14efdb);},'kGhbb':_0x3b2c87(0x19c),'WvGRz':function(_0x1d8b44,_0x5d3c5d){return _0x1d8b44||_0x5d3c5d;},'dEVhx':function(_0x86dbe6,_0x16a4ce){return _0x86dbe6===_0x16a4ce;},'GbHYB':_0x3b2c87(0x1a7),'QrlUM':'lock_acquire_route_error','jflZU':_0x3b2c87(0x1a8),'DCcOj':function(_0x20c5ec){return _0x20c5ec();},'DmBxe':'Internal\x20server\x20error\x20during\x20lock\x20release','kqGvi':'Missing\x20required\x20fields:\x20resource,\x20lock_keys','pDmim':'Internal\x20server\x20error\x20during\x20lock\x20status\x20check','VzJSQ':'/acquire','aEjpp':'/release','cWpyT':_0x3b2c87(0x1b0)},_0x56dde1=express[_0x3b2c87(0x1b9)]();let _0xe542a0=null;function _0x350e7a(){const _0x28b401=_0x3b2c87;return!_0xe542a0&&(_0xe542a0=_0x3b2d66[_0x28b401(0x1b3)](require,_0x3b2d66['kGhbb'])),_0xe542a0;}return _0x56dde1[_0x3b2c87(0x1a5)](_0x3b2d66['VzJSQ'],async(_0x3c1c0e,_0x419fab)=>{const _0x3e47e1=_0x3b2c87;try{const {resource:_0x1dfb45,lock_keys:_0x1af085,ttl:_0x569963,owner:_0x40b67d}=_0x3c1c0e['body'];if(_0x3b2d66[_0x3e47e1(0x1a1)](!_0x1dfb45,!_0x1af085)||!_0x569963||!_0x40b67d)return _0x419fab['status'](0x190)['json']({'success':![],'error':_0x3e47e1(0x1ac)});const _0x4c5348=_0x350e7a(),_0x5a5752=await _0x4c5348[_0x3e47e1(0x197)]({'resource':_0x1dfb45,'lockKeys':_0x1af085,'ttl':_0x569963,'owner':_0x40b67d});if(_0x5a5752['success'])return _0x419fab['json'](_0x5a5752);const _0x3324e9=_0x3b2d66[_0x3e47e1(0x19a)](_0x5a5752['error'],_0x3b2d66[_0x3e47e1(0x1ad)])?0x199:0x190;return _0x419fab['status'](_0x3324e9)[_0x3e47e1(0x19b)](_0x5a5752);}catch(_0x38e763){logger[_0x3e47e1(0x198)]({'event':_0x3b2d66[_0x3e47e1(0x196)],'error':_0x38e763[_0x3e47e1(0x19d)]},'Lock\x20acquire\x20route\x20error:\x20'+_0x38e763['message']),_0x419fab[_0x3e47e1(0x1a2)](0x1f4)['json']({'success':![],'error':_0x3b2d66['jflZU']});}}),_0x56dde1['post'](_0x3b2d66[_0x3b2c87(0x1aa)],async(_0x142e90,_0xc81575)=>{const _0x3e9e0f=_0x3b2c87;try{const {resource:_0x121c47,lock_keys:_0x36cacb,lock_token:_0x2e05ad}=_0x142e90[_0x3e9e0f(0x1a0)];if(_0x3b2d66['WvGRz'](!_0x121c47,!_0x36cacb)||!_0x2e05ad)return _0xc81575[_0x3e9e0f(0x1a2)](0x190)['json']({'success':![],'error':_0x3e9e0f(0x195)});const _0x244b5c=_0x3b2d66[_0x3e9e0f(0x1ae)](_0x350e7a),_0x260b18=await _0x244b5c[_0x3e9e0f(0x1a3)]({'resource':_0x121c47,'lockKeys':_0x36cacb,'lockToken':_0x2e05ad});if(_0x260b18[_0x3e9e0f(0x1b8)])return _0xc81575['json'](_0x260b18);return _0xc81575['status'](0x190)['json'](_0x260b18);}catch(_0x56cbe4){logger['error']({'event':'lock_release_route_error','error':_0x56cbe4['message']},_0x3e9e0f(0x1b4)+_0x56cbe4['message']),_0xc81575[_0x3e9e0f(0x1a2)](0x1f4)[_0x3e9e0f(0x19b)]({'success':![],'error':_0x3b2d66[_0x3e9e0f(0x199)]});}}),_0x56dde1[_0x3b2c87(0x1a5)](_0x3b2d66[_0x3b2c87(0x1b5)],async(_0x4aa193,_0x550da0)=>{const _0x497ee7=_0x3b2c87;try{const {resource:_0x500e0a,lock_keys:_0x2d9e7f}=_0x4aa193['body'];if(_0x3b2d66['WvGRz'](!_0x500e0a,!_0x2d9e7f))return _0x550da0['status'](0x190)[_0x497ee7(0x19b)]({'success':![],'error':_0x3b2d66['kqGvi']});const _0x54c261=_0x3b2d66[_0x497ee7(0x1ae)](_0x350e7a),_0x19ede0=await _0x54c261['getResourceLockStatus']({'resource':_0x500e0a,'lockKeys':_0x2d9e7f});if(_0x19ede0['success'])return _0x550da0['json'](_0x19ede0);return _0x550da0['status'](0x190)['json'](_0x19ede0);}catch(_0x418122){logger['error']({'event':'lock_status_route_error','error':_0x418122[_0x497ee7(0x19d)]},_0x497ee7(0x1b7)+_0x418122[_0x497ee7(0x19d)]),_0x550da0[_0x497ee7(0x1a2)](0x1f4)['json']({'success':![],'error':_0x3b2d66['pDmim']});}}),_0x56dde1;}function a0_0x1935(_0x23a6d3,_0x5ea61c){_0x23a6d3=_0x23a6d3-0x194;const _0x4f6286=a0_0x4f62();let _0x193514=_0x4f6286[_0x23a6d3];if(a0_0x1935['oHYruq']===undefined){var _0x41f51f=function(_0x271b07){const _0x19a658='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x248810='',_0x1d1475='';for(let _0x8c7489=0x0,_0x401980,_0x2764d8,_0x580d85=0x0;_0x2764d8=_0x271b07['charAt'](_0x580d85++);~_0x2764d8&&(_0x401980=_0x8c7489%0x4?_0x401980*0x40+_0x2764d8:_0x2764d8,_0x8c7489++%0x4)?_0x248810+=String['fromCharCode'](0xff&_0x401980>>(-0x2*_0x8c7489&0x6)):0x0){_0x2764d8=_0x19a658['indexOf'](_0x2764d8);}for(let _0x31e076=0x0,_0xc0b843=_0x248810['length'];_0x31e076<_0xc0b843;_0x31e076++){_0x1d1475+='%'+('00'+_0x248810['charCodeAt'](_0x31e076)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d1475);};a0_0x1935['vOEfqr']=_0x41f51f,a0_0x1935['NLQQvA']={},a0_0x1935['oHYruq']=!![];}const _0x549f69=_0x4f6286[0x0],_0x25b4bd=_0x23a6d3+_0x549f69,_0x32b0ae=a0_0x1935['NLQQvA'][_0x25b4bd];return!_0x32b0ae?(_0x193514=a0_0x1935['vOEfqr'](_0x193514),a0_0x1935['NLQQvA'][_0x25b4bd]=_0x193514):_0x193514=_0x32b0ae,_0x193514;}module[a0_0x180fc2(0x1a9)]=createLockRoutes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x28107a=a0_0xb3a1;(function(_0x100d72,_0x245729){const _0x48a052=a0_0xb3a1,_0x1bc11d=_0x100d72();while(!![]){try{const _0x29b02a=parseInt(_0x48a052(0x99))/0x1+parseInt(_0x48a052(0xae))/0x2*(-parseInt(_0x48a052(0xca))/0x3)+parseInt(_0x48a052(0xbf))/0x4*(-parseInt(_0x48a052(0x95))/0x5)+parseInt(_0x48a052(0xa8))/0x6*(-parseInt(_0x48a052(0x97))/0x7)+parseInt(_0x48a052(0xc5))/0x8+-parseInt(_0x48a052(0xb1))/0x9+parseInt(_0x48a052(0xa6))/0xa;if(_0x29b02a===_0x245729)break;else _0x1bc11d['push'](_0x1bc11d['shift']());}catch(_0x4ecfa4){_0x1bc11d['push'](_0x1bc11d['shift']());}}}(a0_0x533e,0xd7aa9));const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function a0_0x533e(){const _0x41c9d7=['zw52','DMfSAwq','m1vlquP3zq','BNvTyMvY','C3vIC3rYAw5N','Bg9JA19RzxLZwW','DhrSuMvTywLUAw5N','zgHSsM8','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','BwLU','t1Dpyuq','ywnXDwLYzvjLC291CMnLtg9JA3m','BgvUz3rO','BwvZC2fNzq','t3rrCgy','EeTorhe','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','nuLjwxzHDq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','mta4odqWovviDev0Da','ywXS','mti5nJm4owfXqwPSAq','Bunwu3y','AxnbCNjHEq','Bg5tD1G','z2v0twf4vfrmu2vJB25KCW','A2v5','x2DLDenVBMzSAwn0sw5MBW','z2v0','x3jVBgXIywnRs2v5CW','B3DUzxi','BM93','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','D3rgs2W','mtaZotyYmZbWsgPry00','ChvZAa','ndj6zuPkv3a','uMvZB3vYy2uGBg9JAYbYzwXLyxnLzdOG','ENz5zLO','zxHWB3j0CW','uMvZB3vYy2uGBg9JAYbYzwXLyxnLigvYCM9YoIa','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','mtCWmdC5ogT0qKDXAG','tg9JAYbYzwXLyxnLigzHAwXLzdOG','D2fYBG','ntKWmZi4owvbrunYwq','ywfrzNu','zxH0CMfJDe93BMvY','oNjSB2nRoG','u1PNzxi','BwfW','C3rYAw5N','igTLExmSifrutdOG','yNvPBgrlzxK','CMvSzwfZzvjLC291CMnLtg9JA3m','t3Pvu3K','z2v0q2XPzw50','Cgjtvhy','rMfPBgvKihrVihjVBgXIywnRigTLEtOG','mtaZndm0ofnUB2L6rG','z2vUzxjHDgvuB2TLBG','te9ds19srvnpvvjdrv9nqvHFvfrm','zxjYB3i','DMfSDwu','x3zHBgLKyxrLqwnXDwLYzuLUChv0','mteYmduZodr1wunXz1C','s0XLsxa','CMvZB3vYy2vFBg9JA19YzwXLyxnLx2vYCM9Y'];a0_0x533e=function(){return _0x41c9d7;};return a0_0x533e();}function getPrefix(){const _0x47e15c=a0_0xb3a1,_0x26b3a5=process[_0x47e15c(0xc8)][_0x47e15c(0x96)]||'default';return'rf:'+_0x26b3a5+_0x47e15c(0xb4);}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';class ResourceLockManager{[a0_0x28107a(0xb9)](_0x2a0cfc,_0x4b3c92,_0x13c9c0){const _0x55d13b={'lDVae':function(_0x167a43){return _0x167a43();}};return''+_0x55d13b['lDVae'](getPrefix)+_0x2a0cfc+':'+_0x4b3c92+':'+_0x13c9c0;}[a0_0x28107a(0xc0)](_0x11652c){const _0x590222=a0_0x28107a;return _0x11652c+':'+uuidv4()+':'+Date[_0x590222(0xa3)]();}['extractOwner'](_0x5e177a){const _0x52a521=a0_0x28107a;if(!_0x5e177a)return'unknown';const _0x482e92=_0x5e177a['indexOf'](':');return _0x482e92>0x0?_0x5e177a[_0x52a521(0xcc)](0x0,_0x482e92):_0x5e177a;}['getMaxTTLSeconds'](){const _0x2e9690=a0_0x28107a;return parseInt(process[_0x2e9690(0xc8)][_0x2e9690(0xc1)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async[a0_0x28107a(0x8f)]({resource:_0x35a405,lockKeys:_0x44f7b2,ttl:_0x1f585e,owner:_0x551449}){const _0x35d45c=a0_0x28107a,_0x59d2ef={'aaQfu':function(_0x4bed0b,_0x35f993){return _0x4bed0b<_0x35f993;},'KLeIp':function(_0x2f4f7d,_0x5bee1c){return _0x2f4f7d===_0x5bee1c;},'xKNDq':'resource_lock_conflict','mCVSv':'Resource\x20lock\x20conflict','qXATn':'resource_lock_acquired','dEMPp':'resource_lock_rollback_error','QQafv':'resource_lock_acquire_error'},_0x239cef=this[_0x35d45c(0xc4)]({'resource':_0x35a405,'lockKeys':_0x44f7b2,'ttl':_0x1f585e,'owner':_0x551449});if(!_0x239cef[_0x35d45c(0xc9)])return{'success':![],'error':_0x239cef['error']};const _0x231871=this[_0x35d45c(0x9d)](),_0x25b246=Math[_0x35d45c(0x8d)](_0x1f585e,_0x231871),_0x5082dd=this[_0x35d45c(0xc0)](_0x551449),_0x1790d2=[];try{const _0x22abdb=redisClient[_0x35d45c(0xbc)]();for(let _0x9a27d7=0x0;_0x59d2ef[_0x35d45c(0xb2)](_0x9a27d7,_0x44f7b2[_0x35d45c(0x90)]);_0x9a27d7++){const {key:_0x1d5f75,value:_0x184b04}=_0x44f7b2[_0x9a27d7],_0x22e045=this['buildKey'](_0x35a405,_0x1d5f75,_0x184b04),_0x3f4cb1=await _0x22abdb['set'](_0x22e045,_0x5082dd,'EX',_0x25b246,'NX');if(_0x59d2ef[_0x35d45c(0xc6)](_0x3f4cb1,'OK'))_0x1790d2[_0x35d45c(0xa7)](_0x22e045);else{await this[_0x35d45c(0xa1)](_0x22abdb,_0x1790d2,_0x5082dd);const _0x46b44d=await this['_getConflictInfo'](_0x22abdb,_0x22e045);return logger[_0x35d45c(0xb0)]({'event':_0x59d2ef[_0x35d45c(0x93)],'resource':_0x35a405,'conflicting_key':{'key':_0x1d5f75,'value':_0x184b04},'locked_by':_0x46b44d['owner'],'ttl_remaining':_0x46b44d[_0x35d45c(0x89)],'attempted_by':_0x551449},'Resource\x20lock\x20conflict\x20on\x20'+_0x35a405+':'+_0x1d5f75+':'+_0x184b04),{'success':![],'error':_0x59d2ef[_0x35d45c(0x9a)],'data':{'conflicting_key':{'key':_0x1d5f75,'value':_0x184b04},'locked_by':_0x46b44d[_0x35d45c(0xa2)],'ttl_remaining':_0x46b44d[_0x35d45c(0x89)]}};}}const _0x579eac=_0x44f7b2[_0x35d45c(0xb6)](({key:_0x25dd86,value:_0x2f00af})=>({'key':_0x25dd86,'value':_0x2f00af,'lock_key':this[_0x35d45c(0xb9)](_0x35a405,_0x25dd86,_0x2f00af)}));return logger['info']({'event':_0x59d2ef['qXATn'],'resource':_0x35a405,'keys_count':_0x44f7b2[_0x35d45c(0x90)],'ttl':_0x25b246,'owner':_0x551449},'Resource\x20lock\x20acquired:\x20'+_0x35a405+'\x20('+_0x44f7b2[_0x35d45c(0x90)]+_0x35d45c(0xb8)+_0x25b246+'s)'),{'success':!![],'data':{'lock_token':_0x5082dd,'resource':_0x35a405,'locked_keys':_0x579eac,'ttl':_0x25b246,'owner':_0x551449,'acquired_at':new Date()['toISOString']()}};}catch(_0x42ebd6){try{const _0x5a3e6e=redisClient[_0x35d45c(0xbc)]();await this[_0x35d45c(0xa1)](_0x5a3e6e,_0x1790d2,_0x5082dd);}catch(_0x73c22c){logger['error']({'event':_0x59d2ef['dEMPp'],'error':_0x73c22c['message']},_0x35d45c(0xa4));}return logger['error']({'event':_0x59d2ef['QQafv'],'resource':_0x35a405,'owner':_0x551449,'error':_0x42ebd6['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x42ebd6['message']),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x42ebd6['message']};}}async[a0_0x28107a(0xba)]({resource:_0x31f68e,lockKeys:_0x4eff3c,lockToken:_0x42f1da}){const _0x38dcb4=a0_0x28107a,_0x51e94e={'skErc':'resource_lock_released'},_0x40a210=this['_validateReleaseInput']({'resource':_0x31f68e,'lockKeys':_0x4eff3c,'lockToken':_0x42f1da});if(!_0x40a210[_0x38dcb4(0xc9)])return{'success':![],'error':_0x40a210['error']};try{const _0x25c955=redisClient[_0x38dcb4(0xbc)]();let _0x4cfcc7=0x0;for(const {key:_0x1973ab,value:_0x2f1fda}of _0x4eff3c){const _0x5d5498=this[_0x38dcb4(0xb9)](_0x31f68e,_0x1973ab,_0x2f1fda),_0xb66793=await _0x25c955['eval'](RELEASE_LUA_SCRIPT,0x1,_0x5d5498,_0x42f1da);_0xb66793===0x1&&_0x4cfcc7++;}return logger['info']({'event':_0x51e94e['skErc'],'resource':_0x31f68e,'released_keys':_0x4cfcc7,'total_keys':_0x4eff3c['length'],'owner':this[_0x38dcb4(0xb3)](_0x42f1da)},_0x38dcb4(0xa9)+_0x31f68e+'\x20('+_0x4cfcc7+'/'+_0x4eff3c['length']+'\x20keys)'),{'success':!![],'data':{'resource':_0x31f68e,'released_keys':_0x4cfcc7,'total_keys':_0x4eff3c[_0x38dcb4(0x90)]}};}catch(_0x166fbc){return logger[_0x38dcb4(0xc2)]({'event':_0x38dcb4(0xc7),'resource':_0x31f68e,'error':_0x166fbc[_0x38dcb4(0x91)]},_0x38dcb4(0xac)+_0x166fbc['message']),{'success':![],'error':_0x38dcb4(0xaf)+_0x166fbc[_0x38dcb4(0x91)]};}}async['getResourceLockStatus']({resource:_0x2e096e,lockKeys:_0x5ea36a}){const _0x2b7c4c=a0_0x28107a,_0x4f574b={'OWOaD':'resource\x20and\x20lock_keys\x20are\x20required','HsHCM':function(_0x13a2f8,_0x4f14c6){return _0x13a2f8!==_0x4f14c6;},'QKpMT':function(_0x371bff,_0x110e62){return _0x371bff>_0x110e62;},'RQXke':'resource_lock_status_error'};if(!_0x2e096e||!Array['isArray'](_0x5ea36a)||_0x5ea36a[_0x2b7c4c(0x90)]===0x0)return{'success':![],'error':_0x4f574b[_0x2b7c4c(0x8e)]};try{const _0x12dd0d=redisClient['getClient'](),_0x4e4056=[];for(const {key:_0x5bbcb6,value:_0x128fd6}of _0x5ea36a){const _0x3ae2fb=this[_0x2b7c4c(0xb9)](_0x2e096e,_0x5bbcb6,_0x128fd6),[_0x39af6c,_0x49e7d6]=await Promise['all']([_0x12dd0d[_0x2b7c4c(0xa0)](_0x3ae2fb),_0x12dd0d['ttl'](_0x3ae2fb)]),_0x48ed27=_0x4f574b['HsHCM'](_0x39af6c,null);_0x4e4056[_0x2b7c4c(0xa7)]({'key':_0x5bbcb6,'value':_0x128fd6,'locked':_0x48ed27,'owner':_0x48ed27?this[_0x2b7c4c(0xb3)](_0x39af6c):null,'ttl_remaining':_0x48ed27&&_0x4f574b['QKpMT'](_0x49e7d6,0x0)?_0x49e7d6:null});}return{'success':!![],'data':{'resource':_0x2e096e,'keys':_0x4e4056}};}catch(_0x3fa23b){return logger[_0x2b7c4c(0xc2)]({'event':_0x4f574b['RQXke'],'resource':_0x2e096e,'error':_0x3fa23b['message']},_0x2b7c4c(0x94)+_0x3fa23b[_0x2b7c4c(0x91)]),{'success':![],'error':'Lock\x20status\x20check\x20failed:\x20'+_0x3fa23b[_0x2b7c4c(0x91)]};}}async['_rollbackKeys'](_0x3edc78,_0x1f408d,_0x4dce44){const _0x513560=a0_0x28107a;for(const _0x333dda of _0x1f408d){try{await _0x3edc78['eval'](RELEASE_LUA_SCRIPT,0x1,_0x333dda,_0x4dce44);}catch(_0x6f8ac8){logger[_0x513560(0xc2)]({'event':'resource_lock_rollback_key_error','key':_0x333dda,'error':_0x6f8ac8[_0x513560(0x91)]},_0x513560(0xbe)+_0x333dda);}}}async[a0_0x28107a(0x9f)](_0x372a98,_0x592a90){const _0x2a2545=a0_0x28107a,_0x41c039={'SZger':'unknown'};try{const [_0x2b9985,_0x5a7dbe]=await Promise[_0x2a2545(0x98)]([_0x372a98['get'](_0x592a90),_0x372a98['ttl'](_0x592a90)]);return{'owner':_0x2b9985?this[_0x2a2545(0xb3)](_0x2b9985):_0x41c039[_0x2a2545(0xb5)],'ttlRemaining':_0x5a7dbe>0x0?_0x5a7dbe:null};}catch{return{'owner':_0x41c039['SZger'],'ttlRemaining':null};}}[a0_0x28107a(0xc4)]({resource:_0x3d94c4,lockKeys:_0x479004,ttl:_0x171d73,owner:_0x3697e4}){const _0x8440dc=a0_0x28107a,_0x542b7f={'OzUSy':_0x8440dc(0x8c),'wtFKl':function(_0x3feabf,_0x2950ea){return _0x3feabf>_0x2950ea;},'sgRgV':'lock_keys\x20exceeds\x20maximum\x20of\x20100\x20items','BTqBx':function(_0x1b0157,_0x5c5a03){return _0x1b0157<_0x5c5a03;},'zvyfZ':_0x8440dc(0xcb),'OtQpf':function(_0x5def36,_0x21bdb3){return _0x5def36<_0x21bdb3;},'dhlJo':function(_0x5ef30b,_0x223910){return _0x5ef30b!==_0x223910;},'sknuj':_0x8440dc(0xb7),'KGeVV':_0x8440dc(0x8b)};if(!_0x3d94c4||typeof _0x3d94c4!=='string')return{'valid':![],'error':_0x542b7f[_0x8440dc(0xbb)]};if(!Array[_0x8440dc(0x9b)](_0x479004)||_0x479004[_0x8440dc(0x90)]===0x0)return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};if(_0x542b7f[_0x8440dc(0xa5)](_0x479004['length'],0x64))return{'valid':![],'error':_0x542b7f['sgRgV']};for(let _0x18ed9a=0x0;_0x542b7f['BTqBx'](_0x18ed9a,_0x479004['length']);_0x18ed9a++){const _0x7ac4e0=_0x479004[_0x18ed9a];if(!_0x7ac4e0||!_0x7ac4e0[_0x8440dc(0x9e)]||!_0x7ac4e0[_0x8440dc(0xc3)])return{'valid':![],'error':'lock_keys['+_0x18ed9a+_0x8440dc(0xad)};}if(!_0x171d73||typeof _0x171d73!==_0x542b7f[_0x8440dc(0xaa)]||_0x542b7f[_0x8440dc(0x92)](_0x171d73,0x1))return{'valid':![],'error':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)'};const _0x40e459=this[_0x8440dc(0x9d)]();if(_0x171d73>_0x40e459)return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x40e459+'\x20seconds.\x20Configure\x20LOCK_RESOURCE_MAX_TTL\x20to\x20increase.'};if(!_0x3697e4||_0x542b7f[_0x8440dc(0x8a)](typeof _0x3697e4,_0x542b7f['sknuj']))return{'valid':![],'error':_0x542b7f['KGeVV']};return{'valid':!![]};}['_validateReleaseInput']({resource:_0x14cd4d,lockKeys:_0x3e7c62,lockToken:_0x1615c9}){const _0x2cbe7a=a0_0x28107a,_0x417562={'IAYAp':function(_0x3f9202,_0x23f00f){return _0x3f9202!==_0x23f00f;},'lnSwX':_0x2cbe7a(0xb7),'pbSTv':function(_0x47dd34,_0x99ac0a){return _0x47dd34===_0x99ac0a;},'lwDVt':function(_0x186a63,_0x219acb){return _0x186a63<_0x219acb;}};if(!_0x14cd4d||_0x417562['IAYAp'](typeof _0x14cd4d,_0x417562['lnSwX']))return{'valid':![],'error':'resource\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};if(!Array[_0x2cbe7a(0x9b)](_0x3e7c62)||_0x417562[_0x2cbe7a(0xbd)](_0x3e7c62['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x34fa34=0x0;_0x417562['lwDVt'](_0x34fa34,_0x3e7c62['length']);_0x34fa34++){const _0x618a17=_0x3e7c62[_0x34fa34];if(!_0x618a17||!_0x618a17['key']||!_0x618a17[_0x2cbe7a(0xc3)])return{'valid':![],'error':_0x2cbe7a(0xcd)+_0x34fa34+_0x2cbe7a(0xad)};}if(!_0x1615c9||_0x417562['IAYAp'](typeof _0x1615c9,_0x417562[_0x2cbe7a(0x9c)]))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}function a0_0xb3a1(_0x1f392f,_0x2ea5bd){_0x1f392f=_0x1f392f-0x89;const _0x533eeb=a0_0x533e();let _0xb3a123=_0x533eeb[_0x1f392f];if(a0_0xb3a1['kAasdX']===undefined){var _0x44192a=function(_0x1d0092){const _0x4bb980='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xecd9fa='',_0x6ebfac='';for(let _0x201113=0x0,_0x5709f7,_0x5a1cf3,_0x1a39b2=0x0;_0x5a1cf3=_0x1d0092['charAt'](_0x1a39b2++);~_0x5a1cf3&&(_0x5709f7=_0x201113%0x4?_0x5709f7*0x40+_0x5a1cf3:_0x5a1cf3,_0x201113++%0x4)?_0xecd9fa+=String['fromCharCode'](0xff&_0x5709f7>>(-0x2*_0x201113&0x6)):0x0){_0x5a1cf3=_0x4bb980['indexOf'](_0x5a1cf3);}for(let _0x2f0d94=0x0,_0x539fb2=_0xecd9fa['length'];_0x2f0d94<_0x539fb2;_0x2f0d94++){_0x6ebfac+='%'+('00'+_0xecd9fa['charCodeAt'](_0x2f0d94)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6ebfac);};a0_0xb3a1['BreQAp']=_0x44192a,a0_0xb3a1['nTOnVn']={},a0_0xb3a1['kAasdX']=!![];}const _0x146e14=_0x533eeb[0x0],_0x42fc8a=_0x1f392f+_0x146e14,_0x8338f3=a0_0xb3a1['nTOnVn'][_0x42fc8a];return!_0x8338f3?(_0xb3a123=a0_0xb3a1['BreQAp'](_0xb3a123),a0_0xb3a1['nTOnVn'][_0x42fc8a]=_0xb3a123):_0xb3a123=_0x8338f3,_0xb3a123;}module[a0_0x28107a(0xab)]=new ResourceLockManager();
|
|
1
|
+
const a0_0x84cb81=a0_0x1ab2;(function(_0x2450c7,_0x596085){const _0x884e5f=a0_0x1ab2,_0x28ced1=_0x2450c7();while(!![]){try{const _0x532cdb=parseInt(_0x884e5f(0x201))/0x1+-parseInt(_0x884e5f(0x1f9))/0x2+parseInt(_0x884e5f(0x1da))/0x3*(-parseInt(_0x884e5f(0x1c9))/0x4)+-parseInt(_0x884e5f(0x1d1))/0x5*(parseInt(_0x884e5f(0x1e1))/0x6)+-parseInt(_0x884e5f(0x206))/0x7*(parseInt(_0x884e5f(0x1dd))/0x8)+parseInt(_0x884e5f(0x204))/0x9+parseInt(_0x884e5f(0x1d3))/0xa;if(_0x532cdb===_0x596085)break;else _0x28ced1['push'](_0x28ced1['shift']());}catch(_0x2d5674){_0x28ced1['push'](_0x28ced1['shift']());}}}(a0_0x37bb,0xf3dcc));const redisClient=require('../../utils/redis-client'),{logger}=require('../../utils/logger'),{v4:uuidv4}=require('uuid');function getPrefix(){const _0x44bb28=a0_0x1ab2,_0x3fc645={'jmZUp':'default'},_0x36e100=process[_0x44bb28(0x1f5)][_0x44bb28(0x1cc)]||_0x3fc645['jmZUp'];return _0x44bb28(0x1f4)+_0x36e100+_0x44bb28(0x1ed);}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_0x37bb(){const _0x1328e0=['oNjSB2nRoG','B3DUzxiGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','CMvZB3vYy2vFBg9JA19JB25MBgLJDa','revNquK','DMfSAwq','igTLExmP','CMvZB3vYy2vFBg9JA19YzwXLyxnLza','CMy6','zw52','AuXJuu0','ChvZAa','zxjYB3i','mti4nZiYnLH6Ahrprq','uMvZB3vYy2uGBg9JAYbZDgf0DxmGzxjYB3i6ia','xsbTDxn0igHHDMuGA2v5igfUzcb2ywX1zsbWCM9Wzxj0AwvZ','BwvZC2fNzq','ue9wDg8','x3zHBgLKyxrLqwnXDwLYzuLUChv0','C3vIC3rYAw5N','x3zHBgLKyxrLuMvSzwfZzuLUChv0','nJmYnZK1Dhrqquf1','D2fYBG','z2v0twf4vfrmu2vJB25KCW','mte3nJK0otH6ELPXAg4','Aw5KzxHpzG','n2HKzhrTyG','s3bXshu','x3jVBgXIywnRs2v5CW','rMfPBgvKihrVihjVBgXIywnRihjLC291CMnLigXVy2TZigfMDgvYigvYCM9Y','z2v0','z2v0q2XPzw50','D095z1y','yuXXzfO','uer5BNi','BM93','DK92rNq','B3DUzxi','CMvZB3vYy2uGAxmGCMvXDwLYzwqGyw5Kig11C3qGyMuGysbZDhjPBMC','Dg9ju09tDhjPBMC','x2DLDenVBMzSAwn0sw5MBW','CuPsv1y','mtCXnZm4neDLANHYEq','A2v5','CMvZB3vYy2vFBg9JA19YB2XSyMfJA19RzxLFzxjYB3i','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','zgDIr1G','z2v0uMvZB3vYy2vmB2nRu3rHDhvZ','te9ds19srvnpvvjdrv9nqvHFvfrm','tLb3C0y','ndC4meT6CwHAzG','DgHoEgO','mJe5ndKXotbNEuLUCLC','CMvSzwfZzvjLC291CMnLtg9JA3m','yNvPBgrlzxK','igTLExmSifrutdOG','rhntC0q','uMvZB3vYy2uGBg9JAYbJB25MBgLJDa','CMvZB3vYy2uGyw5KigXVy2TFA2v5CYbHCMuGCMvXDwLYzwq','m0fMAev5yW','Dw5RBM93BG','C3rYAw5N','mtuYnJiZmtjpweLxDNq','CMvZB3vYy2vFBg9JA19Hy3f1AxjLx2vYCM9Y','tg9JAYbZDgf0DxmGy2HLy2SGzMfPBgvKoIa','BgvUz3rO','otC4Bwfrr1Ho','DMfSDwu','uxPMy3u','zxHWB3j0CW','zxH0CMfJDe93BMvY','Bg9JA19RzxLZigLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5igfYCMf5','swXuB0y','Aw5MBW','Bg9JA19RzxLZwW','Bg9JA19RzxLZigv4y2vLzhmGBwf4Aw11BsbVzIaXmdaGAxrLBxm','A2vmzMK','ihnLy29UzhmUienVBMzPz3vYzsbmt0nlx1jfu09vuKnfx01bwf9uveWGDg8GAw5JCMvHC2uU'];a0_0x37bb=function(){return _0x1328e0;};return a0_0x37bb();}function a0_0x1ab2(_0x516822,_0x4015c7){_0x516822=_0x516822-0x1bb;const _0x37bb9f=a0_0x37bb();let _0x1ab26d=_0x37bb9f[_0x516822];if(a0_0x1ab2['RGPivR']===undefined){var _0x1f4376=function(_0xd71fc1){const _0x463200='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4268f8='',_0x14024b='';for(let _0x32b8b1=0x0,_0x362f1d,_0x5f17f9,_0x1a64e=0x0;_0x5f17f9=_0xd71fc1['charAt'](_0x1a64e++);~_0x5f17f9&&(_0x362f1d=_0x32b8b1%0x4?_0x362f1d*0x40+_0x5f17f9:_0x5f17f9,_0x32b8b1++%0x4)?_0x4268f8+=String['fromCharCode'](0xff&_0x362f1d>>(-0x2*_0x32b8b1&0x6)):0x0){_0x5f17f9=_0x463200['indexOf'](_0x5f17f9);}for(let _0x2389ec=0x0,_0xbbe8f7=_0x4268f8['length'];_0x2389ec<_0xbbe8f7;_0x2389ec++){_0x14024b+='%'+('00'+_0x4268f8['charCodeAt'](_0x2389ec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x14024b);};a0_0x1ab2['qcHDtY']=_0x1f4376,a0_0x1ab2['MQFsKQ']={},a0_0x1ab2['RGPivR']=!![];}const _0x270ad1=_0x37bb9f[0x0],_0x3de214=_0x516822+_0x270ad1,_0x226a20=a0_0x1ab2['MQFsKQ'][_0x3de214];return!_0x226a20?(_0x1ab26d=a0_0x1ab2['qcHDtY'](_0x1ab26d),a0_0x1ab2['MQFsKQ'][_0x3de214]=_0x1ab26d):_0x1ab26d=_0x226a20,_0x1ab26d;}class ResourceLockManager{[a0_0x84cb81(0x1d5)](_0x1cb9ae,_0x4e661c,_0x336ff9){const _0x2156a0={'JLgRs':function(_0x2fd1ec){return _0x2fd1ec();}};return''+_0x2156a0['JLgRs'](getPrefix)+_0x1cb9ae+':'+_0x4e661c+':'+_0x336ff9;}['generateToken'](_0x1b7fd8){const _0x6f830a=a0_0x84cb81,_0x4e1c76={'aLqdZ':function(_0x10fe5f){return _0x10fe5f();}};return _0x1b7fd8+':'+_0x4e1c76[_0x6f830a(0x1c0)](uuidv4)+':'+Date[_0x6f830a(0x1c2)]();}[a0_0x84cb81(0x1e5)](_0x5c2a4d){const _0x5b0777=a0_0x84cb81,_0x59e45e={'pczzG':'unknown'};if(!_0x5c2a4d)return _0x59e45e['pczzG'];const _0x5a4ccf=_0x5c2a4d[_0x5b0777(0x205)](':');return _0x5a4ccf>0x0?_0x5c2a4d[_0x5b0777(0x1ff)](0x0,_0x5a4ccf):_0x5c2a4d;}[a0_0x84cb81(0x203)](){const _0x29fc8b=a0_0x84cb81,_0x45c509={'Qzfcu':function(_0x55c50b,_0x46a6ab,_0x1343fb){return _0x55c50b(_0x46a6ab,_0x1343fb);}};return _0x45c509[_0x29fc8b(0x1e3)](parseInt,process['env'][_0x29fc8b(0x1cf)],0xa)||DEFAULT_MAX_TTL_SECONDS;}async['acquireResourceLocks']({resource:_0x25da06,lockKeys:_0x21c602,ttl:_0x292533,owner:_0x58fa3d}){const _0x3708b4=a0_0x84cb81,_0x36e800={'PgCxv':function(_0x43e848,_0x48d7f1){return _0x43e848<_0x48d7f1;},'POVto':function(_0x195894,_0x929d72){return _0x195894===_0x929d72;},'PwHqm':_0x3708b4(0x1ef),'keLfi':'resource_lock_acquired','FfALt':'resource_lock_rollback_error','DEgAI':_0x3708b4(0x1bc)},_0x5cd644=this[_0x3708b4(0x1fe)]({'resource':_0x25da06,'lockKeys':_0x21c602,'ttl':_0x292533,'owner':_0x58fa3d});if(!_0x5cd644['valid'])return{'success':![],'error':_0x5cd644['error']};const _0x5b5e35=this[_0x3708b4(0x203)](),_0x533eee=Math['min'](_0x292533,_0x5b5e35),_0x53a18c=this['generateToken'](_0x58fa3d),_0x110325=[];try{const _0x1890f3=redisClient[_0x3708b4(0x1be)]();for(let _0x48ffb9=0x0;_0x36e800['PgCxv'](_0x48ffb9,_0x21c602[_0x3708b4(0x1e0)]);_0x48ffb9++){const {key:_0x20ff1c,value:_0x5ed9e2}=_0x21c602[_0x48ffb9],_0x32e649=this[_0x3708b4(0x1d5)](_0x25da06,_0x20ff1c,_0x5ed9e2),_0x47e08b=await _0x1890f3['set'](_0x32e649,_0x53a18c,'EX',_0x533eee,'NX');if(_0x36e800[_0x3708b4(0x1fd)](_0x47e08b,'OK'))_0x110325[_0x3708b4(0x1f7)](_0x32e649);else{await this['_rollbackKeys'](_0x1890f3,_0x110325,_0x53a18c);const _0x540318=await this[_0x3708b4(0x1c7)](_0x1890f3,_0x32e649);return logger[_0x3708b4(0x202)]({'event':_0x36e800['PwHqm'],'resource':_0x25da06,'conflicting_key':{'key':_0x20ff1c,'value':_0x5ed9e2},'locked_by':_0x540318[_0x3708b4(0x1c4)],'ttl_remaining':_0x540318['ttlRemaining'],'attempted_by':_0x58fa3d},'Resource\x20lock\x20conflict\x20on\x20'+_0x25da06+':'+_0x20ff1c+':'+_0x5ed9e2),{'success':![],'error':_0x3708b4(0x1d8),'data':{'conflicting_key':{'key':_0x20ff1c,'value':_0x5ed9e2},'locked_by':_0x540318[_0x3708b4(0x1c4)],'ttl_remaining':_0x540318['ttlRemaining']}};}}const _0x4bfd4f=_0x21c602['map'](({key:_0x4e98ba,value:_0x3bb084})=>({'key':_0x4e98ba,'value':_0x3bb084,'lock_key':this['buildKey'](_0x25da06,_0x4e98ba,_0x3bb084)}));return logger['info']({'event':_0x36e800[_0x3708b4(0x1eb)],'resource':_0x25da06,'keys_count':_0x21c602[_0x3708b4(0x1e0)],'ttl':_0x533eee,'owner':_0x58fa3d},'Resource\x20lock\x20acquired:\x20'+_0x25da06+'\x20('+_0x21c602[_0x3708b4(0x1e0)]+_0x3708b4(0x1d6)+_0x533eee+'s)'),{'success':!![],'data':{'lock_token':_0x53a18c,'resource':_0x25da06,'locked_keys':_0x4bfd4f,'ttl':_0x533eee,'owner':_0x58fa3d,'acquired_at':new Date()[_0x3708b4(0x1c6)]()}};}catch(_0x2a9f22){try{const _0x575b56=redisClient[_0x3708b4(0x1be)]();await this[_0x3708b4(0x1bb)](_0x575b56,_0x110325,_0x53a18c);}catch(_0x48c8e2){logger[_0x3708b4(0x1f8)]({'event':_0x36e800['FfALt'],'error':_0x48c8e2['message']},_0x36e800[_0x3708b4(0x1f0)]);}return logger[_0x3708b4(0x1f8)]({'event':_0x3708b4(0x1de),'resource':_0x25da06,'owner':_0x58fa3d,'error':_0x2a9f22['message']},'Resource\x20lock\x20acquire\x20error:\x20'+_0x2a9f22[_0x3708b4(0x1fc)]),{'success':![],'error':'Lock\x20acquire\x20failed:\x20'+_0x2a9f22['message']};}}async[a0_0x84cb81(0x1d4)]({resource:_0x51318d,lockKeys:_0x553098,lockToken:_0x3d63a8}){const _0x43bb13=a0_0x84cb81,_0x322131={'PuAnh':_0x43bb13(0x1f3),'LFyon':'resource_lock_release_error'},_0x32068a=this['_validateReleaseInput']({'resource':_0x51318d,'lockKeys':_0x553098,'lockToken':_0x3d63a8});if(!_0x32068a[_0x43bb13(0x1f1)])return{'success':![],'error':_0x32068a[_0x43bb13(0x1f8)]};try{const _0x57e279=redisClient['getClient']();let _0x4eac70=0x0;for(const {key:_0x55e08e,value:_0x4d813b}of _0x553098){const _0x120693=this[_0x43bb13(0x1d5)](_0x51318d,_0x55e08e,_0x4d813b),_0x2ff92a=await _0x57e279['eval'](RELEASE_LUA_SCRIPT,0x1,_0x120693,_0x3d63a8);_0x2ff92a===0x1&&_0x4eac70++;}return logger[_0x43bb13(0x1e8)]({'event':_0x322131['PuAnh'],'resource':_0x51318d,'released_keys':_0x4eac70,'total_keys':_0x553098['length'],'owner':this['extractOwner'](_0x3d63a8)},'Resource\x20lock\x20released:\x20'+_0x51318d+'\x20('+_0x4eac70+'/'+_0x553098[_0x43bb13(0x1e0)]+_0x43bb13(0x1f2)),{'success':!![],'data':{'resource':_0x51318d,'released_keys':_0x4eac70,'total_keys':_0x553098[_0x43bb13(0x1e0)]}};}catch(_0x876f2c){return logger['error']({'event':_0x322131['LFyon'],'resource':_0x51318d,'error':_0x876f2c['message']},'Resource\x20lock\x20release\x20error:\x20'+_0x876f2c['message']),{'success':![],'error':'Lock\x20release\x20failed:\x20'+_0x876f2c['message']};}}async[a0_0x84cb81(0x1ce)]({resource:_0x48fa3c,lockKeys:_0x2c30f3}){const _0x30377b=a0_0x84cb81,_0x59beee={'wMjon':function(_0x220544,_0x53f0d5){return _0x220544===_0x53f0d5;},'VngIK':_0x30377b(0x1d9),'EXusD':function(_0x5396f2,_0x5d5a0b){return _0x5396f2!==_0x5d5a0b;},'kKAdE':function(_0xf4bd26,_0xa028b7){return _0xf4bd26>_0xa028b7;},'CHEzv':'resource_lock_status_error'};if(!_0x48fa3c||!Array['isArray'](_0x2c30f3)||_0x59beee['wMjon'](_0x2c30f3['length'],0x0))return{'success':![],'error':_0x59beee['VngIK']};try{const _0x1d343b=redisClient[_0x30377b(0x1be)](),_0x1245be=[];for(const {key:_0x2d4c02,value:_0x48f0c0}of _0x2c30f3){const _0x44b9c3=this[_0x30377b(0x1d5)](_0x48fa3c,_0x2d4c02,_0x48f0c0),[_0x59f1ec,_0x84afaa]=await Promise['all']([_0x1d343b[_0x30377b(0x1bd)](_0x44b9c3),_0x1d343b['ttl'](_0x44b9c3)]),_0x563da6=_0x59beee['EXusD'](_0x59f1ec,null);_0x1245be['push']({'key':_0x2d4c02,'value':_0x48f0c0,'locked':_0x563da6,'owner':_0x563da6?this['extractOwner'](_0x59f1ec):null,'ttl_remaining':_0x563da6&&_0x59beee['kKAdE'](_0x84afaa,0x0)?_0x84afaa:null});}return{'success':!![],'data':{'resource':_0x48fa3c,'keys':_0x1245be}};}catch(_0x56b3c6){return logger[_0x30377b(0x1f8)]({'event':_0x59beee['CHEzv'],'resource':_0x48fa3c,'error':_0x56b3c6['message']},_0x30377b(0x1fa)+_0x56b3c6[_0x30377b(0x1fc)]),{'success':![],'error':_0x30377b(0x1df)+_0x56b3c6['message']};}}async[a0_0x84cb81(0x1bb)](_0x13a5b9,_0x2f4a76,_0x56a7a4){const _0x50f341=a0_0x84cb81,_0x2ef327={'iGujg':_0x50f341(0x1cb)};for(const _0x57bbf0 of _0x2f4a76){try{await _0x13a5b9['eval'](RELEASE_LUA_SCRIPT,0x1,_0x57bbf0,_0x56a7a4);}catch(_0x4a0b94){logger[_0x50f341(0x1f8)]({'event':_0x2ef327['iGujg'],'key':_0x57bbf0,'error':_0x4a0b94[_0x50f341(0x1fc)]},'Failed\x20to\x20rollback\x20key:\x20'+_0x57bbf0);}}}async[a0_0x84cb81(0x1c7)](_0x2dfb44,_0x2d557a){const _0x1b00f6=a0_0x84cb81,_0x5017a2={'CyjyG':_0x1b00f6(0x1db),'dgbGX':function(_0x36deeb,_0x4e7882){return _0x36deeb>_0x4e7882;}};try{const [_0x4e085f,_0x359719]=await Promise['all']([_0x2dfb44[_0x1b00f6(0x1bd)](_0x2d557a),_0x2dfb44['ttl'](_0x2d557a)]);return{'owner':_0x4e085f?this[_0x1b00f6(0x1e5)](_0x4e085f):_0x5017a2['CyjyG'],'ttlRemaining':_0x5017a2[_0x1b00f6(0x1cd)](_0x359719,0x0)?_0x359719:null};}catch{return{'owner':_0x5017a2['CyjyG'],'ttlRemaining':null};}}[a0_0x84cb81(0x1fe)]({resource:_0x35f97e,lockKeys:_0xb41b6e,ttl:_0x1b2c38,owner:_0x300bcf}){const _0x5155e6=a0_0x84cb81,_0x129471={'avRYn':function(_0x17c0ae,_0x23e687){return _0x17c0ae!==_0x23e687;},'wOygV':'string','thNxj':_0x5155e6(0x1c5),'NPwsF':_0x5155e6(0x1ea),'UlLZy':function(_0x81b7a0,_0x86b046){return _0x81b7a0!==_0x86b046;},'IlToF':function(_0x393e6a,_0x352477){return _0x393e6a<_0x352477;},'waIOP':'ttl\x20is\x20required\x20and\x20must\x20be\x20at\x20least\x201\x20(in\x20seconds)','qJRWV':function(_0x523473,_0x1e633b){return _0x523473!==_0x1e633b;}};if(!_0x35f97e||_0x129471['avRYn'](typeof _0x35f97e,_0x129471[_0x5155e6(0x1bf)]))return{'valid':![],'error':_0x129471[_0x5155e6(0x1d2)]};if(!Array['isArray'](_0xb41b6e)||_0xb41b6e['length']===0x0)return{'valid':![],'error':_0x5155e6(0x1e6)};if(_0xb41b6e[_0x5155e6(0x1e0)]>0x64)return{'valid':![],'error':_0x129471[_0x5155e6(0x1d0)]};for(let _0x5ad7a0=0x0;_0x5ad7a0<_0xb41b6e[_0x5155e6(0x1e0)];_0x5ad7a0++){const _0x23e39e=_0xb41b6e[_0x5ad7a0];if(!_0x23e39e||!_0x23e39e[_0x5155e6(0x1ca)]||!_0x23e39e[_0x5155e6(0x1e2)])return{'valid':![],'error':_0x5155e6(0x1e9)+_0x5ad7a0+_0x5155e6(0x1fb)};}if(!_0x1b2c38||_0x129471['UlLZy'](typeof _0x1b2c38,'number')||_0x129471[_0x5155e6(0x1e7)](_0x1b2c38,0x1))return{'valid':![],'error':_0x129471['waIOP']};const _0x3f438a=this[_0x5155e6(0x203)]();if(_0x1b2c38>_0x3f438a)return{'valid':![],'error':'ttl\x20exceeds\x20maximum\x20of\x20'+_0x3f438a+_0x5155e6(0x1ec)};if(!_0x300bcf||_0x129471[_0x5155e6(0x1c8)](typeof _0x300bcf,'string'))return{'valid':![],'error':_0x5155e6(0x1ee)};return{'valid':!![]};}[a0_0x84cb81(0x200)]({resource:_0x203bee,lockKeys:_0x57d84f,lockToken:_0x3b7999}){const _0x389bdc=a0_0x84cb81,_0x5cde71={'PDynr':_0x389bdc(0x1dc),'vOvFt':_0x389bdc(0x1c5),'KpqHu':function(_0x5dc845,_0x260691){return _0x5dc845===_0x260691;},'iLcQM':function(_0x50c107,_0x127dd5){return _0x50c107<_0x127dd5;},'DsSsD':function(_0x176d83,_0x47aba3){return _0x176d83!==_0x47aba3;}};if(!_0x203bee||typeof _0x203bee!==_0x5cde71[_0x389bdc(0x1c1)])return{'valid':![],'error':_0x5cde71[_0x389bdc(0x1c3)]};if(!Array['isArray'](_0x57d84f)||_0x5cde71[_0x389bdc(0x207)](_0x57d84f['length'],0x0))return{'valid':![],'error':'lock_keys\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20array'};for(let _0x1a387d=0x0;_0x5cde71[_0x389bdc(0x1f6)](_0x1a387d,_0x57d84f[_0x389bdc(0x1e0)]);_0x1a387d++){const _0xd08774=_0x57d84f[_0x1a387d];if(!_0xd08774||!_0xd08774['key']||!_0xd08774['value'])return{'valid':![],'error':'lock_keys['+_0x1a387d+']\x20must\x20have\x20key\x20and\x20value\x20properties'};}if(!_0x3b7999||_0x5cde71[_0x389bdc(0x1d7)](typeof _0x3b7999,_0x389bdc(0x1dc)))return{'valid':![],'error':'lock_token\x20is\x20required\x20and\x20must\x20be\x20a\x20string'};return{'valid':!![]};}}module[a0_0x84cb81(0x1e4)]=new ResourceLockManager();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x4106cb=a0_0x4b8f;(function(_0x2112a6,_0x28c576){const _0xfa038e=a0_0x4b8f,_0xf78a50=_0x2112a6();while(!![]){try{const _0x5df741=-parseInt(_0xfa038e(0x155))/0x1*(-parseInt(_0xfa038e(0x135))/0x2)+-parseInt(_0xfa038e(0x13e))/0x3*(parseInt(_0xfa038e(0x16b))/0x4)+parseInt(_0xfa038e(0x10d))/0x5+parseInt(_0xfa038e(0x154))/0x6+-parseInt(_0xfa038e(0x144))/0x7*(parseInt(_0xfa038e(0x121))/0x8)+-parseInt(_0xfa038e(0x11a))/0x9*(-parseInt(_0xfa038e(0x15d))/0xa)+parseInt(_0xfa038e(0x110))/0xb*(-parseInt(_0xfa038e(0x14c))/0xc);if(_0x5df741===_0x28c576)break;else _0xf78a50['push'](_0xf78a50['shift']());}catch(_0x4a080c){_0xf78a50['push'](_0xf78a50['shift']());}}}(a0_0x38fe,0xa7116));const {Kafka,logLevel}=require(a0_0x4106cb(0x150)),{v7:uuidv7}=require(a0_0x4106cb(0x169));class KafkaConsumerService{constructor(){const _0x180707=a0_0x4106cb;this['kafka']=null,this[_0x180707(0x10e)]=null,this['isConnected']=![],this[_0x180707(0x167)]=![],this['isRunning']=![],this['isPaused']=![],this['connectionPromise']=null,this[_0x180707(0x15e)]=[],this[_0x180707(0x161)]=null,this['messageHandler']=null,this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x4106cb(0x14d)](){const _0x157704=a0_0x4106cb,_0x87d603={'RTEgI':_0x157704(0x11f),'lCpwB':function(_0x1ae5fe,_0x20b5a4){return _0x1ae5fe(_0x20b5a4);},'PYPNM':'3000','reXFf':function(_0x288faf,_0x57ee0f){return _0x288faf(_0x57ee0f);},'yljyF':'25000','vquda':function(_0x40315b,_0x455d6f){return _0x40315b(_0x455d6f);},'vwwmk':_0x157704(0x123),'jRAZK':'1048576','FwciY':function(_0x1acfb3,_0x1c247d){return _0x1acfb3===_0x1c247d;},'OkdsU':_0x157704(0x15c),'RDGBW':_0x157704(0x142),'jiLrF':'1000','HzDQc':function(_0x52b881,_0x39a0ce){return _0x52b881(_0x39a0ce);},'FrUuk':'warn'};return{'enabled':process['env']['KAFKA_ENABLED']===_0x157704(0x15c),'brokers':(process[_0x157704(0x156)][_0x157704(0x171)]||'localhost:9092')[_0x157704(0x127)](','),'clientId':process['env']['KAFKA_CLIENT_ID']||_0x157704(0x16a)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x87d603[_0x157704(0x114)])+'-consumer','connectionTimeout':_0x87d603[_0x157704(0x10f)](parseInt,process[_0x157704(0x156)]['KAFKA_CONNECTION_TIMEOUT']||_0x87d603[_0x157704(0x151)]),'requestTimeout':_0x87d603[_0x157704(0x120)](parseInt,process['env'][_0x157704(0x148)]||_0x87d603[_0x157704(0x134)]),'sessionTimeout':_0x87d603[_0x157704(0x172)](parseInt,process['env'][_0x157704(0x17b)]||_0x87d603['vwwmk']),'heartbeatInterval':_0x87d603['vquda'](parseInt,process[_0x157704(0x156)][_0x157704(0x13a)]||_0x157704(0x115)),'maxBytesPerPartition':_0x87d603[_0x157704(0x10f)](parseInt,process['env']['KAFKA_MAX_BYTES_PER_PARTITION']||_0x87d603[_0x157704(0x157)]),'autoCommit':_0x87d603['FwciY'](process[_0x157704(0x156)][_0x157704(0x112)],_0x87d603[_0x157704(0x140)]),'autoCommitInterval':parseInt(process['env'][_0x157704(0x116)]||_0x87d603[_0x157704(0x131)]),'retryAttempts':_0x87d603['reXFf'](parseInt,process['env'][_0x157704(0x149)]||'3'),'retryDelay':parseInt(process['env'][_0x157704(0x11e)]||_0x87d603['jiLrF']),'retryMaxDelay':_0x87d603['HzDQc'](parseInt,process[_0x157704(0x156)]['KAFKA_RETRY_MAX_DELAY']||_0x87d603[_0x157704(0x162)]),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x87d603['FrUuk']};}['getLogLevel'](_0x3022b1){const _0x527610=a0_0x4106cb,_0x110cc7={'nothing':logLevel['NOTHING'],'error':logLevel[_0x527610(0x176)],'warn':logLevel['WARN'],'info':logLevel['INFO'],'debug':logLevel[_0x527610(0x15b)]};return _0x110cc7[_0x3022b1[_0x527610(0x17f)]()]||logLevel[_0x527610(0x179)];}async['initialize'](_0x2fe71e={}){const _0x1735d8=a0_0x4106cb,_0x5a7f3d={'yPyRY':'default','lvNmc':function(_0x3a87f4,_0x5a0467){return _0x3a87f4(_0x5a0467);}},_0x308772=this['getConfig']();if(!_0x308772[_0x1735d8(0x12b)])return console[_0x1735d8(0x146)](_0x1735d8(0x14a)),![];if(this[_0x1735d8(0x163)])return!![];if(this[_0x1735d8(0x167)]&&this[_0x1735d8(0x178)])return this['connectionPromise'];return this[_0x1735d8(0x167)]=!![],this['connectionPromise']=new Promise(async _0x112409=>{const _0x4acd46=_0x1735d8;try{let _0x1f6aba=undefined;process[_0x4acd46(0x156)]['KAFKA_SSL']===_0x4acd46(0x15c)&&(_0x1f6aba=!![]);let _0x2845d2=undefined;process[_0x4acd46(0x156)][_0x4acd46(0x133)]&&(_0x2845d2={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process[_0x4acd46(0x156)][_0x4acd46(0x13f)]||'','password':process[_0x4acd46(0x156)]['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x2fe71e['clientId']||_0x308772[_0x4acd46(0x15a)],'brokers':_0x308772[_0x4acd46(0x175)],'connectionTimeout':_0x308772['connectionTimeout'],'requestTimeout':_0x308772[_0x4acd46(0x125)],'logLevel':this['getLogLevel'](_0x308772[_0x4acd46(0x117)]),'ssl':_0x1f6aba,'sasl':_0x2845d2,'retry':{'initialRetryTime':_0x308772['retryDelay'],'retries':_0x308772['retryAttempts'],'maxRetryTime':_0x308772['retryMaxDelay']}}),this['groupId']=_0x2fe71e['groupId']||_0x4acd46(0x16a)+(process[_0x4acd46(0x156)][_0x4acd46(0x166)]||_0x5a7f3d[_0x4acd46(0x158)])+_0x4acd46(0x153),this[_0x4acd46(0x10e)]=this['kafka']['consumer']({'groupId':this[_0x4acd46(0x161)],'sessionTimeout':_0x308772['sessionTimeout'],'heartbeatInterval':_0x308772[_0x4acd46(0x118)],'maxBytesPerPartition':_0x308772[_0x4acd46(0x12a)],'allowAutoTopicCreation':![]}),await this[_0x4acd46(0x10e)]['connect'](),this['isConnected']=!![],console[_0x4acd46(0x146)]('[KafkaConsumer]\x20Consumer\x20connected\x20to\x20brokers:\x20'+_0x308772['brokers']['join'](',\x20')+'\x20(groupId:\x20'+this[_0x4acd46(0x161)]+')'),this['setupEventHandlers'](),_0x5a7f3d['lvNmc'](_0x112409,!![]);}catch(_0xb7b235){console['error'](_0x4acd46(0x12c)+_0xb7b235[_0x4acd46(0x160)]),this[_0x4acd46(0x163)]=![],_0x112409(![]);}finally{this['isInitializing']=![];}}),this[_0x1735d8(0x178)];}[a0_0x4106cb(0x122)](){const _0x30efb8=a0_0x4106cb,_0x4a348c={'uBkuZ':'[KafkaConsumer]\x20Consumer\x20disconnected','sxSGh':'[KafkaConsumer]\x20Consumer\x20rebalancing...','dzEwK':_0x30efb8(0x14e)};if(!this[_0x30efb8(0x10e)])return;this[_0x30efb8(0x10e)]['on']('consumer.disconnect',()=>{const _0x3cf985=_0x30efb8;console[_0x3cf985(0x146)](_0x4a348c['uBkuZ']),this[_0x3cf985(0x163)]=![],this[_0x3cf985(0x113)]=![];}),this['consumer']['on'](_0x30efb8(0x173),()=>{const _0x3b4228=_0x30efb8;console[_0x3b4228(0x146)]('[KafkaConsumer]\x20Consumer\x20stopped'),this['isRunning']=![];}),this['consumer']['on']('consumer.crash',_0x5a4f17=>{const _0x40abe0=_0x30efb8;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x5a4f17[_0x40abe0(0x15f)][_0x40abe0(0x12f)]['message']),this['isRunning']=![];}),this[_0x30efb8(0x10e)]['on'](_0x4a348c['dzEwK'],()=>{const _0x32757b=_0x30efb8;console[_0x32757b(0x146)](_0x4a348c['sxSGh']);});}async['subscribe'](_0x285c23,_0x3e0016=![]){const _0x131b57=a0_0x4106cb,_0x461dba={'xUsyk':_0x131b57(0x174)};if(!this['isConnected'])return console[_0x131b57(0x12f)](_0x461dba['xUsyk']),![];try{const _0x4941cf=Array['isArray'](_0x285c23)?_0x285c23:[_0x285c23];for(const _0x2cdac7 of _0x4941cf){await this[_0x131b57(0x10e)]['subscribe']({'topic':_0x2cdac7,'fromBeginning':_0x3e0016}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x2cdac7+_0x131b57(0x159)+_0x3e0016+')');}return this['subscribedTopics']=[...new Set([...this[_0x131b57(0x15e)],..._0x4941cf])],!![];}catch(_0xc9525c){return console[_0x131b57(0x12f)](_0x131b57(0x168)+_0xc9525c['message']),![];}}async['startConsuming'](_0x375041,_0x48f4a7={}){const _0xba2a89=a0_0x4106cb,_0x373f37={'MEHGM':function(_0x548a0a,_0x348d18){return _0x548a0a+_0x348d18;},'wWfaa':function(_0x5077ec,_0x46245b){return _0x5077ec(_0x46245b);},'EHnEB':function(_0x42636f,_0x3ffd62){return _0x42636f-_0x3ffd62;},'EmfVi':function(_0x43c841,_0x4327a1){return _0x43c841>_0x4327a1;},'ZLSnV':'[KafkaConsumer]\x20Cannot\x20start\x20consuming\x20-\x20not\x20connected','RKNCT':'[KafkaConsumer]\x20Consumer\x20already\x20running'};if(!this[_0xba2a89(0x163)])return console[_0xba2a89(0x12f)](_0x373f37['ZLSnV']),![];if(this[_0xba2a89(0x113)])return console['log'](_0x373f37['RKNCT']),!![];const _0x66941d=this['getConfig']();this[_0xba2a89(0x16f)]=_0x375041;try{return this[_0xba2a89(0x16d)][_0xba2a89(0x17c)]=new Date(),await this['consumer']['run']({'autoCommit':_0x48f4a7[_0xba2a89(0x13b)]!==undefined?_0x48f4a7[_0xba2a89(0x13b)]:_0x66941d[_0xba2a89(0x13b)],'autoCommitInterval':_0x66941d[_0xba2a89(0x17a)],'eachMessage':async({topic:_0x5c50ef,partition:_0x31f70f,message:_0x57f001,heartbeat:_0x35300c})=>{const _0x4b8004=_0xba2a89,_0x19bca8=Date[_0x4b8004(0x139)]();this[_0x4b8004(0x16d)][_0x4b8004(0x11b)]++,this[_0x4b8004(0x16d)]['lastMessageTime']=new Date();try{const _0x2bfaea=_0x57f001['value']?_0x57f001[_0x4b8004(0x17e)][_0x4b8004(0x145)]():null;let _0x11acb3=null;try{_0x11acb3=_0x2bfaea?JSON[_0x4b8004(0x12e)](_0x2bfaea):null;}catch(_0x2b6e53){_0x11acb3=_0x2bfaea;}const _0x9080f9={'topic':_0x5c50ef,'partition':_0x31f70f,'offset':_0x57f001[_0x4b8004(0x177)],'key':_0x57f001[_0x4b8004(0x181)]?_0x57f001['key']['toString']():null,'headers':this[_0x4b8004(0x14b)](_0x57f001[_0x4b8004(0x138)]),'timestamp':_0x57f001['timestamp'],'value':_0x11acb3,'raw':_0x2bfaea};this['messageHandler']&&await this[_0x4b8004(0x16f)](_0x9080f9);!_0x66941d[_0x4b8004(0x13b)]&&await this['consumer']['commitOffsets']([{'topic':_0x5c50ef,'partition':_0x31f70f,'offset':_0x373f37['MEHGM'](_0x373f37['wWfaa'](parseInt,_0x57f001[_0x4b8004(0x177)]),0x1)['toString']()}]);this['metrics']['messagesProcessed']++;const _0x1ba9c6=_0x373f37['EHnEB'](Date[_0x4b8004(0x139)](),_0x19bca8);this[_0x4b8004(0x16d)]['processingTimes'][_0x4b8004(0x136)](_0x1ba9c6),_0x373f37[_0x4b8004(0x180)](this[_0x4b8004(0x16d)]['processingTimes']['length'],0x64)&&this[_0x4b8004(0x16d)][_0x4b8004(0x126)]['shift'](),await _0x35300c();}catch(_0x4d86b2){this['metrics'][_0x4b8004(0x119)]++,console['error']('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x4d86b2[_0x4b8004(0x160)]);throw _0x4d86b2;}}}),this[_0xba2a89(0x113)]=!![],console[_0xba2a89(0x146)](_0xba2a89(0x16c)+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x2fdd60){return console['error'](_0xba2a89(0x129)+_0x2fdd60['message']),![];}}['parseHeaders'](_0x13efa6){const _0x1321a0=a0_0x4106cb;if(!_0x13efa6)return{};const _0x2d4e76={};for(const [_0x4b3eb5,_0x52b4c7]of Object[_0x1321a0(0x147)](_0x13efa6)){_0x2d4e76[_0x4b3eb5]=_0x52b4c7?_0x52b4c7[_0x1321a0(0x145)]():null;}return _0x2d4e76;}async['pause'](){const _0x48e235=a0_0x4106cb,_0x31b830={'GjdIA':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running','oFkYS':_0x48e235(0x111)};if(!this['isConnected']||!this[_0x48e235(0x113)])return console['log'](_0x31b830['GjdIA']),![];if(this['isPaused'])return console['log'](_0x31b830[_0x48e235(0x128)]),!![];try{const _0x11a844=this[_0x48e235(0x15e)][_0x48e235(0x124)](_0x45165b=>({'topic':_0x45165b}));return this['consumer']['pause'](_0x11a844),this[_0x48e235(0x164)]=!![],console['log'](_0x48e235(0x137)),!![];}catch(_0x1f327c){return console['error']('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x1f327c[_0x48e235(0x160)]),![];}}async['resume'](){const _0x3a95e2=a0_0x4106cb,_0x145071={'ygVaE':'[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running','btoIo':_0x3a95e2(0x16e)};if(!this['isConnected']||!this['isRunning'])return console['log'](_0x145071[_0x3a95e2(0x152)]),![];if(!this[_0x3a95e2(0x164)])return console['log'](_0x145071['btoIo']),!![];try{const _0x13623a=this['subscribedTopics'][_0x3a95e2(0x124)](_0x2308a4=>({'topic':_0x2308a4}));return this['consumer']['resume'](_0x13623a),this['isPaused']=![],console[_0x3a95e2(0x146)](_0x3a95e2(0x170)),!![];}catch(_0x6d17ff){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x6d17ff[_0x3a95e2(0x160)]),![];}}async['stop'](){const _0x18aedf=a0_0x4106cb,_0x5aa233={'YQWOv':_0x18aedf(0x10c),'wzQAW':_0x18aedf(0x11c)};if(!this[_0x18aedf(0x163)])return console[_0x18aedf(0x146)]('[KafkaConsumer]\x20Consumer\x20not\x20connected'),!![];try{const _0x30be09=_0x5aa233[_0x18aedf(0x13c)][_0x18aedf(0x127)]('|');let _0x5651f6=0x0;while(!![]){switch(_0x30be09[_0x5651f6++]){case'0':console['log'](_0x5aa233[_0x18aedf(0x17d)]);continue;case'1':this[_0x18aedf(0x163)]=![];continue;case'2':this['isPaused']=![];continue;case'3':this[_0x18aedf(0x113)]=![];continue;case'4':this['consumer']&&(await this['consumer'][_0x18aedf(0x143)](),await this[_0x18aedf(0x10e)]['disconnect']());continue;case'5':return!![];}break;}}catch(_0x4e2528){return console['error']('[KafkaConsumer]\x20Stop\x20error:\x20'+_0x4e2528['message']),![];}}async['seekToOffset'](_0x1a4d47,_0x51d3fe,_0x5c4c5f){const _0x37df1e=a0_0x4106cb;if(!this['isConnected'])return console[_0x37df1e(0x12f)]('[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'),![];try{return this['consumer']['seek']({'topic':_0x1a4d47,'partition':_0x51d3fe,'offset':_0x5c4c5f[_0x37df1e(0x145)]()}),console['log']('[KafkaConsumer]\x20Seeked\x20to\x20offset\x20'+_0x5c4c5f+'\x20on\x20'+_0x1a4d47+':'+_0x51d3fe),!![];}catch(_0x550320){return console[_0x37df1e(0x12f)]('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x550320['message']),![];}}['getStatus'](){const _0x5d7243=a0_0x4106cb,_0x39fbea=this[_0x5d7243(0x14d)]();return{'enabled':_0x39fbea[_0x5d7243(0x12b)],'connected':this[_0x5d7243(0x163)],'running':this[_0x5d7243(0x113)],'paused':this['isPaused'],'brokers':_0x39fbea['brokers'],'clientId':_0x39fbea[_0x5d7243(0x15a)],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}[a0_0x4106cb(0x13d)](){const _0x12d739=a0_0x4106cb,_0x543be3={'SJwUW':function(_0x237e28,_0x40ced5){return _0x237e28/_0x40ced5;},'uLiQs':function(_0x2b3038,_0x20eb49){return _0x2b3038>_0x20eb49;},'FNlou':function(_0x444bef,_0x3ab50f){return _0x444bef+_0x3ab50f;},'oIuzg':function(_0x2c4ffd,_0x24911b){return _0x2c4ffd*_0x24911b;},'kKxNi':function(_0x2a6eba,_0x534b4f){return _0x2a6eba/_0x534b4f;},'eAPpS':function(_0xa9c5d7,_0x3afce3){return _0xa9c5d7+_0x3afce3;},'coGhx':function(_0x4b0750,_0x19f052){return _0x4b0750/_0x19f052;},'GIhGZ':function(_0x11f416,_0x2d4495){return _0x11f416-_0x2d4495;}},_0x16e33b=this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']>0x0?_0x543be3['SJwUW'](this['metrics']['processingTimes']['reduce']((_0x28575b,_0x1bbb83)=>_0x28575b+_0x1bbb83,0x0),this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']):0x0,_0x475074=_0x543be3[_0x12d739(0x14f)](this['metrics'][_0x12d739(0x126)]['length'],0x0)?Math[_0x12d739(0x132)](...this[_0x12d739(0x16d)][_0x12d739(0x126)]):0x0,_0xb98d2=this[_0x12d739(0x16d)][_0x12d739(0x126)]['length']>0x0?Math['max'](...this['metrics'][_0x12d739(0x126)]):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this[_0x12d739(0x16d)]['messagesProcessed'],'messagesFailed':this['metrics'][_0x12d739(0x119)],'successRate':this[_0x12d739(0x16d)][_0x12d739(0x11b)]>0x0?_0x543be3['FNlou'](_0x543be3['oIuzg'](_0x543be3['kKxNi'](this['metrics'][_0x12d739(0x165)],this['metrics']['messagesReceived']),0x64)[_0x12d739(0x12d)](0x2),'%'):'0%','lastMessageTime':this[_0x12d739(0x16d)]['lastMessageTime'],'startTime':this['metrics'][_0x12d739(0x17c)],'uptime':this['metrics']['startTime']?_0x543be3[_0x12d739(0x11d)](Math['floor'](_0x543be3[_0x12d739(0x141)](_0x543be3['GIhGZ'](Date[_0x12d739(0x139)](),this[_0x12d739(0x16d)]['startTime'][_0x12d739(0x130)]()),0x3e8)),'s'):'0s','processingTime':{'avg':Math['round'](_0x16e33b)+'ms','min':_0x543be3[_0x12d739(0x11d)](_0x475074,'ms'),'max':_0xb98d2+'ms'}};}['resetMetrics'](){const _0x536ad0=a0_0x4106cb;this[_0x536ad0(0x16d)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console[_0x536ad0(0x146)]('[KafkaConsumer]\x20Metrics\x20reset');}async['close'](){const _0x172fb1=a0_0x4106cb;await this[_0x172fb1(0x143)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function a0_0x38fe(){const _0x3b577c=['BwvZC2fNzuHHBMrSzxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','s0fgs0fFqLjps0vsuW','DNf1zge','y29UC3vTzxiUC3rVCa','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','yNjVA2vYCW','rvjst1i','B2zMC2v0','y29UBMvJDgLVBLbYB21PC2u','v0fstG','yxv0B0nVBw1PDeLUDgvYDMfS','s0fgs0fFu0vtu0LptL9usu1ft1vu','C3rHCNruAw1L','D3PrqvC','DMfSDwu','Dg9mB3DLCKnHC2u','rw1MvMK','A2v5','y2XVC2u','nhWXFdn8mNWWFdu','mJa1ndm5mfnkELDWBG','y29UC3vTzxi','BenWD0i','nJzfuNfvv2q','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','s0fgs0fFqvvut19dt01nsvq','AxnsDw5UAw5N','uLrfz0K','mZaWma','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','Bg9Ntgv2zwW','AgvHCNrIzwf0sw50zxj2ywW','BwvZC2fNzxngywLSzwq','mtGYnZCYvfDTywjQ','BwvZC2fNzxnszwnLAxzLza','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihn0B3bWzwqGyw5KigrPC2nVBM5Ly3rLza','zufqCfm','s0fgs0fFuKvuuLLFrevmqvK','zgvMyxvSDa','CMvyrMy','mtKXmNDrzuXdAG','C2v0DxbfDMvUDeHHBMrSzxjZ','mZaWmda','BwfW','CMvXDwvZDfrPBwvVDxq','ChjVy2vZC2LUz1rPBwvZ','C3bSAxq','B0zRwvm','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','Bwf4qNL0zxnqzxjqyxj0AxrPB24','zw5HyMXLza','w0THzMTHq29UC3vTzxjDienVBM5Ly3rPB24GzMfPBgvKoIa','Dg9gAxHLza','CgfYC2u','zxjYB3i','z2v0vgLTzq','uKrhqLC','BwLU','s0fgs0fFu0fttf9nruniqu5ju00','EwXQEuy','mta2odC0rMzeBeLS','ChvZAa','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','AgvHzgvYCW','BM93','s0fgs0fFsevbuLrcrufux0LovevsvKfm','yxv0B0nVBw1PDa','wvfxt3y','z2v0twv0CMLJCW','nZK1ntC5sg1VyKTb','s0fgs0fFu0fttf9vu0vstKfnrq','t2TKC1u','y29hAhG','ntaWma','C3rVCa','odaWmvjTuuDJCa','Dg9tDhjPBMC','Bg9N','zw50CMLLCW','s0fgs0fFuKvrvuvtvf9usu1ft1vu','s0fgs0fFuKvuuLLFqvruru1qvfm','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24','CgfYC2vizwfKzxjZ','mty2mZy5mKLeseXXua','z2v0q29UzMLN','y29UC3vTzxiUCMvIywXHBMnPBMC','DuXPuxm','A2fMA2fQCW','ufLqtK0','EwDwyuu','lwnVBNn1BwvYlwDYB3vW','mJq0mJy2mfjsyNjTtW','mJj3DfbJsNC','zw52','ALjbwKS','Evb5uLK','icHMCM9TqMvNAw5UAw5NoIa','y2XPzw50swq','revcvuC','Dhj1zq','mZbTy29huhy','C3vIC2nYAwjLzfrVCgLJCW','Cgf5Bg9Hza','BwvZC2fNzq','z3jVDxbjza','DND3BwS','AxndB25Uzwn0zwq','AxnqyxvZzwq','BwvZC2fNzxnqCM9JzxnZzwq','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','AxnjBML0AwfSAxPPBMC','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','DxvPza','CMvZDgzVCMDLlq','nfnTtwTABG','w0THzMTHq29UC3vTzxjDifn0yxj0zwqGy29UC3vTAw5NigzYB20GDg9WAwnZoIa','Bwv0CMLJCW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq'];a0_0x38fe=function(){return _0x3b577c;};return a0_0x38fe();}function resetInstance(){const _0xbab0c5=a0_0x4106cb;instance&&(instance[_0xbab0c5(0x10b)](),instance=null);}function a0_0x4b8f(_0x22884c,_0x3d4351){_0x22884c=_0x22884c-0x10b;const _0x38fe22=a0_0x38fe();let _0x4b8f58=_0x38fe22[_0x22884c];if(a0_0x4b8f['zsLMyb']===undefined){var _0x2e6e0f=function(_0x21e6b1){const _0x3675cc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c7cf5='',_0x29a25c='';for(let _0x4c4559=0x0,_0x3c3608,_0x8fdd07,_0x1fcf27=0x0;_0x8fdd07=_0x21e6b1['charAt'](_0x1fcf27++);~_0x8fdd07&&(_0x3c3608=_0x4c4559%0x4?_0x3c3608*0x40+_0x8fdd07:_0x8fdd07,_0x4c4559++%0x4)?_0x3c7cf5+=String['fromCharCode'](0xff&_0x3c3608>>(-0x2*_0x4c4559&0x6)):0x0){_0x8fdd07=_0x3675cc['indexOf'](_0x8fdd07);}for(let _0x1c6b9d=0x0,_0x1b5845=_0x3c7cf5['length'];_0x1c6b9d<_0x1b5845;_0x1c6b9d++){_0x29a25c+='%'+('00'+_0x3c7cf5['charCodeAt'](_0x1c6b9d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29a25c);};a0_0x4b8f['oCVOsr']=_0x2e6e0f,a0_0x4b8f['yiiPxu']={},a0_0x4b8f['zsLMyb']=!![];}const _0x2d891b=_0x38fe22[0x0],_0x2abeb1=_0x22884c+_0x2d891b,_0xa1df6d=a0_0x4b8f['yiiPxu'][_0x2abeb1];return!_0xa1df6d?(_0x4b8f58=a0_0x4b8f['oCVOsr'](_0x4b8f58),a0_0x4b8f['yiiPxu'][_0x2abeb1]=_0x4b8f58):_0x4b8f58=_0xa1df6d,_0x4b8f58;}function createInstance(){return new KafkaConsumerService();}module['exports']={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
1
|
+
const a0_0x8cc5d6=a0_0x3ec2;(function(_0x3d0363,_0x284dbd){const _0x493cf7=a0_0x3ec2,_0x4e99d2=_0x3d0363();while(!![]){try{const _0x8dfc00=-parseInt(_0x493cf7(0xd3))/0x1*(parseInt(_0x493cf7(0x10d))/0x2)+-parseInt(_0x493cf7(0x13c))/0x3*(parseInt(_0x493cf7(0x107))/0x4)+-parseInt(_0x493cf7(0xf6))/0x5*(-parseInt(_0x493cf7(0xe8))/0x6)+-parseInt(_0x493cf7(0x119))/0x7+-parseInt(_0x493cf7(0xf2))/0x8*(parseInt(_0x493cf7(0x11c))/0x9)+parseInt(_0x493cf7(0x134))/0xa*(parseInt(_0x493cf7(0x10a))/0xb)+-parseInt(_0x493cf7(0x127))/0xc*(-parseInt(_0x493cf7(0x142))/0xd);if(_0x8dfc00===_0x284dbd)break;else _0x4e99d2['push'](_0x4e99d2['shift']());}catch(_0x4e9708){_0x4e99d2['push'](_0x4e99d2['shift']());}}}(a0_0x7b4c,0x267c7));function a0_0x7b4c(){const _0x549fae=['w0THzMTHq29UC3vTzxjDienHBM5VDcbZDwjZy3jPyMuGlsbUB3qGy29UBMvJDgvK','rgTWyxG','tK9useLorW','BwLU','mZuZmuHcv3v4vq','ntaWma','zgvMyxvSDa','AxnsDw5UAw5N','BwvZC2fNzxnszwnLAxzLza','mta0odu3nG','nJK2mda3t25HCeP5','w0THzMTHq29UC3vTzxjDienHBM5VDcbZDgfYDcbJB25ZDw1PBMCGlsbUB3qGy29UBMvJDgvK','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLC3vTzwq','AxnbCNjHEq','ChjVy2vZC2LUz1rPBwvZ','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigrPC2nVBM5Ly3rLza','zw5HyMXLza','zvDqtvu','C3vIC2nYAwjL','lwnVBNn1BwvY','mMXTswXPtW','AxndB25Uzwn0zwq','v0fstG','AxnqyxvZzwq','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCNvUBMLUzW','s0fgs0fFu0fttf9nruniqu5ju00','BwvZC2fNzq','C3rHCNruAw1L','BM93','s0fgs0fFq0Xjru5ux0Le','C2HPzNq','C3rVCa','y29UC3vTzxiUCMvIywXHBMnPBMC','CM1gt28','vMLlA20','zw52','C3vIC2nYAwjLzfrVCgLJCW','C2vLA1rVt2zMC2v0','y29UC3vTzxi','v2zMweu','CgfYC2vizwfKzxjZ','otqZndC2tLbRq2DN','yMziAgC','w0THzMTHq29UC3vTzxjDifn0B3aGzxjYB3i6ia','Dhj1zq','zxHWB3j0CW','CMv0CNLbDhrLBxb0CW','w0THzMTHq29UC3vTzxjDifnLzwTLzcb0BYbVzMzZzxqG','s0fgs0fFuKvuuLLFtufyx0rftefz','yNjVA2vYCW','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbWyxvZzwq','nJq3odG4v05jyNjY','thHQr24','D2fYBG','t3PJsfe','mtbHEKXuv3u','ig9Uia','y29UC3vTzxiUy3jHC2G','s0fgs0fFqvvut19dt01nsvq','CMvKDwnL','AM9PBG','z2v0vgLTzq','AxnjBML0AwfSAxPPBMC','BwvZC2fNzuHHBMrSzxi','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','y2XPzw50swq','rvjst1i','vvDbCxa','zxjYB3i','BwfW','w0THzMTHq29UC3vTzxjDifn0yxj0ignVBNn1BwLUzYbLCNjVCJOG','Dg9tDhjPBMC','ntiWsfbms1L0','yK1tzM8','B2zMC2v0','mJC4mJqZovPJwePHyG','s0fgs0fFsevbuLrcrufux0LovevsvKfm','mZaWma','mtC5ndy0DgX2r3ff','CMvZDgzVCMDLlq','BwvZC2fNzxngywLSzwq','z3jVDxbjza','DgLTzxn0yw1W','w0THzMTHq29UC3vTzxjDienVBNn1BwvYigfSCMvHzhKGCgf1C2vK','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihbHDxnLza','C2vLAW','w0THzMTHq29UC3vTzxjDifn1yNnJCMLIzsbLCNjVCJOG','y29UC3vTzxiUzgLZy29UBMvJDa','y29UBMvJDgLVBLbYB21PC2u','rfPmtK8','mtq2ndaWmxjjr0XQrG','yxv0B0nVBw1PDeLUDgvYDMfS','DMfSDwu','mJDOC1nzCKi','zMXVB3i','s0fgs0fFu0vtu0LptL9usu1ft1vu','s0fgs0fFru5bqKXfra','s0fgs0fFq09otKvdveLptL9usu1ft1vu','s0fgs0fFu1nm','vuTdAui','s0fgs0fFtufyx0jzvevtx1bfuL9qqvjusvrjt04','Bwf4qNL0zxnqzxjqyxj0AxrPB24','w0THzMTHq29UC3vTzxjDienVBNn1BwvYihjLyMfSyw5JAw5NlI4U','BgvUz3rO','odrgAevbueO','z2v0q29UzMLN','yMfgBMO','w0THzMTHq29UC3vTzxjDienVBNn1BwvYig5VDcbJB25Uzwn0zwq','Bwv0CMLJCW','uKPWBxi','w0THzMTHq29UC3vTzxjDienVBNn1BwvYignVBM5Ly3rLzcb0BYbICM9RzxjZoIa','AgvHzgvYCW','Bg9N','A2fMA2e','yxv0B0nVBw1PDa','s0fgs0fFqvvut19dt01nsvrFsu5urvjwquW','Dxn6sKW','mtbpuNv5A0u','s0fgs0fFte9hx0XfvKvm','BgfZDe1LC3nHz2vuAw1L','w0THzMTHq29UC3vTzxjDieTHzMTHignVBNn1BwvYigLZigrPC2fIBgvKigLUignVBMzPz3vYyxrPB24'];a0_0x7b4c=function(){return _0x549fae;};return a0_0x7b4c();}function a0_0x3ec2(_0x111555,_0x2dff7d){_0x111555=_0x111555-0xd1;const _0x7b4c3f=a0_0x7b4c();let _0x3ec27e=_0x7b4c3f[_0x111555];if(a0_0x3ec2['AphZES']===undefined){var _0x170687=function(_0x2237f5){const _0x86af96='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x320f5d='',_0x1e83ef='';for(let _0x13dc1f=0x0,_0x2787b8,_0x14102f,_0x1bb02b=0x0;_0x14102f=_0x2237f5['charAt'](_0x1bb02b++);~_0x14102f&&(_0x2787b8=_0x13dc1f%0x4?_0x2787b8*0x40+_0x14102f:_0x14102f,_0x13dc1f++%0x4)?_0x320f5d+=String['fromCharCode'](0xff&_0x2787b8>>(-0x2*_0x13dc1f&0x6)):0x0){_0x14102f=_0x86af96['indexOf'](_0x14102f);}for(let _0x5b873b=0x0,_0x1f7c79=_0x320f5d['length'];_0x5b873b<_0x1f7c79;_0x5b873b++){_0x1e83ef+='%'+('00'+_0x320f5d['charCodeAt'](_0x5b873b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1e83ef);};a0_0x3ec2['HJLtKO']=_0x170687,a0_0x3ec2['WSjTHE']={},a0_0x3ec2['AphZES']=!![];}const _0x4b6d10=_0x7b4c3f[0x0],_0xe87109=_0x111555+_0x4b6d10,_0x3eb256=a0_0x3ec2['WSjTHE'][_0xe87109];return!_0x3eb256?(_0x3ec27e=a0_0x3ec2['HJLtKO'](_0x3ec27e),a0_0x3ec2['WSjTHE'][_0xe87109]=_0x3ec27e):_0x3ec27e=_0x3eb256,_0x3ec27e;}const {Kafka,logLevel}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaConsumerService{constructor(){const _0x24eebb=a0_0x3ec2;this[_0x24eebb(0x130)]=null,this[_0x24eebb(0xe5)]=null,this['isConnected']=![],this['isInitializing']=![],this['isRunning']=![],this[_0x24eebb(0xd6)]=![],this[_0x24eebb(0x117)]=null,this['subscribedTopics']=[],this[_0x24eebb(0x110)]=null,this['messageHandler']=null,this[_0x24eebb(0x12b)]={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':null,'processingTimes':[]};}[a0_0x8cc5d6(0x128)](){const _0x45f013=a0_0x8cc5d6,_0x56a7bd={'lXgOS':'true','baFnj':_0x45f013(0x13e),'rmFOo':_0x45f013(0x10c),'DZLNO':function(_0x1fdcdd,_0x20d99d){return _0x1fdcdd(_0x20d99d);},'WffXE':function(_0x3d52f8,_0x3b98c1){return _0x3d52f8(_0x3b98c1);},'dPwKe':_0x45f013(0x13d),'wSiJh':function(_0x1aad3b,_0x10bdbb){return _0x1aad3b(_0x10bdbb);},'LxjGn':'1000','LXQku':function(_0x3d299d,_0x55c298){return _0x3d299d(_0x55c298);}};return{'enabled':process[_0x45f013(0xe2)][_0x45f013(0x11f)]===_0x56a7bd['lXgOS'],'brokers':(process[_0x45f013(0xe2)]['KAFKA_BROKERS']||'localhost:9092')['split'](','),'clientId':process[_0x45f013(0xe2)][_0x45f013(0xdc)]||_0x45f013(0x10e)+(process[_0x45f013(0xe2)][_0x45f013(0xff)]||_0x56a7bd[_0x45f013(0x129)])+_0x45f013(0xd2),'connectionTimeout':parseInt(process['env'][_0x45f013(0x120)]||_0x56a7bd[_0x45f013(0xe0)]),'requestTimeout':parseInt(process[_0x45f013(0xe2)]['KAFKA_REQUEST_TIMEOUT']||'25000'),'sessionTimeout':_0x56a7bd[_0x45f013(0x118)](parseInt,process['env'][_0x45f013(0x11e)]||'30000'),'heartbeatInterval':parseInt(process['env'][_0x45f013(0x10b)]||_0x45f013(0x10c)),'maxBytesPerPartition':_0x56a7bd['WffXE'](parseInt,process['env'][_0x45f013(0x123)]||_0x45f013(0x141)),'autoCommit':process[_0x45f013(0xe2)][_0x45f013(0xf9)]===_0x45f013(0xeb),'autoCommitInterval':parseInt(process['env'][_0x45f013(0x132)]||_0x56a7bd['dPwKe']),'retryAttempts':_0x56a7bd[_0x45f013(0xe6)](parseInt,process['env']['KAFKA_RETRY_ATTEMPTS']||'3'),'retryDelay':_0x56a7bd['wSiJh'](parseInt,process[_0x45f013(0xe2)]['KAFKA_RETRY_DELAY']||_0x56a7bd[_0x45f013(0xf3)]),'retryMaxDelay':_0x56a7bd['LXQku'](parseInt,process[_0x45f013(0xe2)][_0x45f013(0xef)]||'30000'),'logLevel':process[_0x45f013(0xe2)][_0x45f013(0x135)]||_0x45f013(0xf4)};}['getLogLevel'](_0x1be1a0){const _0x45f113=a0_0x8cc5d6,_0x24807b={'nothing':logLevel[_0x45f113(0x13a)],'error':logLevel[_0x45f113(0x101)],'warn':logLevel[_0x45f113(0xd5)],'info':logLevel['INFO'],'debug':logLevel['DEBUG']};return _0x24807b[_0x1be1a0['toLowerCase']()]||logLevel[_0x45f113(0xd5)];}async['initialize'](_0xfa2f20={}){const _0x351e01=a0_0x8cc5d6,_0x5adec8={'DgiLR':'true','ViKkm':_0x351e01(0x13e)},_0xb8567f=this[_0x351e01(0x128)]();if(!_0xb8567f[_0x351e01(0x148)])return console['log'](_0x351e01(0x137)),![];if(this[_0x351e01(0xd4)])return!![];if(this[_0x351e01(0xfd)]&&this[_0x351e01(0x117)])return this[_0x351e01(0x117)];return this[_0x351e01(0xfd)]=!![],this[_0x351e01(0x117)]=new Promise(async _0x5ea40b=>{const _0x54c35f=_0x351e01;try{let _0x52e5ae=undefined;process['env'][_0x54c35f(0x121)]===_0x5adec8['DgiLR']&&(_0x52e5ae=!![]);let _0x2f44b8=undefined;process['env'][_0x54c35f(0xd8)]&&(_0x2f44b8={'mechanism':process[_0x54c35f(0xe2)]['KAFKA_SASL_MECHANISM'],'username':process['env']['KAFKA_SASL_USERNAME']||'','password':process[_0x54c35f(0xe2)]['KAFKA_SASL_PASSWORD']||''}),this[_0x54c35f(0x130)]=new Kafka({'clientId':_0xfa2f20[_0x54c35f(0x100)]||_0xb8567f['clientId'],'brokers':_0xb8567f[_0x54c35f(0xf0)],'connectionTimeout':_0xb8567f['connectionTimeout'],'requestTimeout':_0xb8567f['requestTimeout'],'logLevel':this['getLogLevel'](_0xb8567f['logLevel']),'ssl':_0x52e5ae,'sasl':_0x2f44b8,'retry':{'initialRetryTime':_0xb8567f['retryDelay'],'retries':_0xb8567f[_0x54c35f(0xed)],'maxRetryTime':_0xb8567f['retryMaxDelay']}}),this[_0x54c35f(0x110)]=_0xfa2f20['groupId']||_0x54c35f(0x10e)+(process['env'][_0x54c35f(0xff)]||_0x5adec8[_0x54c35f(0xe1)])+'-consumer-group',this['consumer']=this['kafka'][_0x54c35f(0xe5)]({'groupId':this['groupId'],'sessionTimeout':_0xb8567f['sessionTimeout'],'heartbeatInterval':_0xb8567f['heartbeatInterval'],'maxBytesPerPartition':_0xb8567f[_0x54c35f(0x124)],'allowAutoTopicCreation':![]}),await this[_0x54c35f(0xe5)]['connect'](),this[_0x54c35f(0xd4)]=!![],console['log'](_0x54c35f(0x12d)+_0xb8567f['brokers'][_0x54c35f(0xfb)](',\x20')+'\x20(groupId:\x20'+this['groupId']+')'),this['setupEventHandlers'](),_0x5ea40b(!![]);}catch(_0x393b01){console['error']('[KafkaConsumer]\x20Connection\x20failed:\x20'+_0x393b01[_0x54c35f(0xd9)]),this[_0x54c35f(0xd4)]=![],_0x5ea40b(![]);}finally{this[_0x54c35f(0xfd)]=![];}}),this['connectionPromise'];}['setupEventHandlers'](){const _0x5a3a05=a0_0x8cc5d6,_0x23d29d={'hwnNf':'[KafkaConsumer]\x20Consumer\x20stopped','YISBv':_0x5a3a05(0x125),'bMSfo':'consumer.stop','UWAqp':_0x5a3a05(0xdf)};if(!this[_0x5a3a05(0xe5)])return;this[_0x5a3a05(0xe5)]['on'](_0x5a3a05(0x116),()=>{const _0x307aaa=_0x5a3a05;console['log'](_0x307aaa(0x147)),this['isConnected']=![],this['isRunning']=![];}),this['consumer']['on'](_0x23d29d[_0x5a3a05(0x108)],()=>{console['log'](_0x23d29d['hwnNf']),this['isRunning']=![];}),this[_0x5a3a05(0xe5)]['on'](_0x5a3a05(0xf8),_0x427ffc=>{const _0x498eb4=_0x5a3a05;console['error']('[KafkaConsumer]\x20Consumer\x20crashed:\x20'+_0x427ffc['payload'][_0x498eb4(0x103)]['message']),this['isRunning']=![];}),this['consumer']['on'](_0x23d29d[_0x5a3a05(0x102)],()=>{const _0x4154de=_0x5a3a05;console[_0x4154de(0x12f)](_0x23d29d['YISBv']);});}async['subscribe'](_0x4582e2,_0xfa8855=![]){const _0x869604=a0_0x8cc5d6,_0x2d91c9={'vFAiC':_0x869604(0x138)};if(!this[_0x869604(0xd4)])return console[_0x869604(0x103)](_0x2d91c9['vFAiC']),![];try{const _0x589ff8=Array[_0x869604(0x145)](_0x4582e2)?_0x4582e2:[_0x4582e2];for(const _0x4c1b1e of _0x589ff8){await this['consumer'][_0x869604(0xd1)]({'topic':_0x4c1b1e,'fromBeginning':_0xfa8855}),console['log']('[KafkaConsumer]\x20Subscribed\x20to\x20topic:\x20'+_0x4c1b1e+'\x20(fromBeginning:\x20'+_0xfa8855+')');}return this['subscribedTopics']=[...new Set([...this[_0x869604(0xe3)],..._0x589ff8])],!![];}catch(_0x14435a){return console['error'](_0x869604(0x115)+_0x14435a[_0x869604(0xd9)]),![];}}async['startConsuming'](_0x309986,_0x3193fc={}){const _0x24fa76=a0_0x8cc5d6,_0x36d461={'Dkpax':function(_0x2c1d28,_0x58cb19){return _0x2c1d28+_0x58cb19;},'GozDd':function(_0x1b2629,_0x422a18){return _0x1b2629>_0x422a18;}};if(!this[_0x24fa76(0xd4)])return console[_0x24fa76(0x103)](_0x24fa76(0x143)),![];if(this[_0x24fa76(0x13f)])return console['log'](_0x24fa76(0xd7)),!![];const _0x1ebce3=this[_0x24fa76(0x128)]();this[_0x24fa76(0xfe)]=_0x309986;try{return this[_0x24fa76(0x12b)]['startTime']=new Date(),await this[_0x24fa76(0xe5)]['run']({'autoCommit':_0x3193fc[_0x24fa76(0x131)]!==undefined?_0x3193fc['autoCommit']:_0x1ebce3[_0x24fa76(0x131)],'autoCommitInterval':_0x1ebce3[_0x24fa76(0x11a)],'eachMessage':async({topic:_0x46cf8b,partition:_0x45cd9b,message:_0x2a40ac,heartbeat:_0x11f17c})=>{const _0x311e31=_0x24fa76,_0x468996=Date['now']();this['metrics'][_0x311e31(0x140)]++,this['metrics'][_0x311e31(0x136)]=new Date();try{const _0x2ba2b3=_0x2a40ac[_0x311e31(0x11b)]?_0x2a40ac['value']['toString']():null;let _0x3b9adf=null;try{_0x3b9adf=_0x2ba2b3?JSON['parse'](_0x2ba2b3):null;}catch(_0x330622){_0x3b9adf=_0x2ba2b3;}const _0x2fb2b9={'topic':_0x46cf8b,'partition':_0x45cd9b,'offset':_0x2a40ac['offset'],'key':_0x2a40ac['key']?_0x2a40ac['key']['toString']():null,'headers':this['parseHeaders'](_0x2a40ac[_0x311e31(0x12e)]),'timestamp':_0x2a40ac[_0x311e31(0x111)],'value':_0x3b9adf,'raw':_0x2ba2b3};this['messageHandler']&&await this[_0x311e31(0xfe)](_0x2fb2b9);!_0x1ebce3['autoCommit']&&await this[_0x311e31(0xe5)]['commitOffsets']([{'topic':_0x46cf8b,'partition':_0x45cd9b,'offset':_0x36d461[_0x311e31(0x139)](parseInt(_0x2a40ac[_0x311e31(0x109)]),0x1)['toString']()}]);this[_0x311e31(0x12b)]['messagesProcessed']++;const _0x384531=Date['now']()-_0x468996;this[_0x311e31(0x12b)][_0x311e31(0x146)]['push'](_0x384531),_0x36d461['GozDd'](this[_0x311e31(0x12b)]['processingTimes'][_0x311e31(0x126)],0x64)&&this['metrics'][_0x311e31(0x146)][_0x311e31(0xdd)](),await _0x11f17c();}catch(_0x5047bd){this[_0x311e31(0x12b)]['messagesFailed']++,console[_0x311e31(0x103)]('[KafkaConsumer]\x20Message\x20processing\x20error:\x20'+_0x5047bd[_0x311e31(0xd9)]);throw _0x5047bd;}}}),this['isRunning']=!![],console[_0x24fa76(0x12f)]('[KafkaConsumer]\x20Started\x20consuming\x20from\x20topics:\x20'+this['subscribedTopics']['join'](',\x20')),!![];}catch(_0x6691c8){return console[_0x24fa76(0x103)](_0x24fa76(0x105)+_0x6691c8[_0x24fa76(0xd9)]),![];}}[a0_0x8cc5d6(0xe7)](_0x525a1c){if(!_0x525a1c)return{};const _0x37945d={};for(const [_0x33b9ea,_0x1b5e09]of Object['entries'](_0x525a1c)){_0x37945d[_0x33b9ea]=_0x1b5e09?_0x1b5e09['toString']():null;}return _0x37945d;}async['pause'](){const _0x3bd15e=a0_0x8cc5d6,_0x9b0890={'OzcHQ':'[KafkaConsumer]\x20Cannot\x20pause\x20-\x20consumer\x20not\x20running'};if(!this[_0x3bd15e(0xd4)]||!this[_0x3bd15e(0x13f)])return console[_0x3bd15e(0x12f)](_0x9b0890[_0x3bd15e(0xf5)]),![];if(this[_0x3bd15e(0xd6)])return console['log'](_0x3bd15e(0x112)),!![];try{const _0x28c3b8=this[_0x3bd15e(0xe3)][_0x3bd15e(0x104)](_0x380f6e=>({'topic':_0x380f6e}));return this[_0x3bd15e(0xe5)]['pause'](_0x28c3b8),this[_0x3bd15e(0xd6)]=!![],console[_0x3bd15e(0x12f)](_0x3bd15e(0x113)),!![];}catch(_0x5c879f){return console['error']('[KafkaConsumer]\x20Pause\x20error:\x20'+_0x5c879f[_0x3bd15e(0xd9)]),![];}}async['resume'](){const _0x4cf80e=a0_0x8cc5d6;if(!this[_0x4cf80e(0xd4)]||!this[_0x4cf80e(0x13f)])return console['log']('[KafkaConsumer]\x20Cannot\x20resume\x20-\x20consumer\x20not\x20running'),![];if(!this[_0x4cf80e(0xd6)])return console[_0x4cf80e(0x12f)](_0x4cf80e(0xf1)),!![];try{const _0x1e8b71=this[_0x4cf80e(0xe3)][_0x4cf80e(0x104)](_0x50e9ec=>({'topic':_0x50e9ec}));return this[_0x4cf80e(0xe5)]['resume'](_0x1e8b71),this[_0x4cf80e(0xd6)]=![],console['log'](_0x4cf80e(0x144)),!![];}catch(_0x182bef){return console['error']('[KafkaConsumer]\x20Resume\x20error:\x20'+_0x182bef[_0x4cf80e(0xd9)]),![];}}async['stop'](){const _0x48b40c=a0_0x8cc5d6;if(!this['isConnected'])return console['log'](_0x48b40c(0x12a)),!![];try{return this['consumer']&&(await this[_0x48b40c(0xe5)]['stop'](),await this[_0x48b40c(0xe5)]['disconnect']()),this[_0x48b40c(0xd4)]=![],this['isRunning']=![],this[_0x48b40c(0xd6)]=![],console[_0x48b40c(0x12f)]('[KafkaConsumer]\x20Consumer\x20stopped\x20and\x20disconnected'),!![];}catch(_0x24ab86){return console['error'](_0x48b40c(0xea)+_0x24ab86[_0x48b40c(0xd9)]),![];}}async[a0_0x8cc5d6(0xe4)](_0x4edf1e,_0x372893,_0x4879f8){const _0x1bc2a9=a0_0x8cc5d6;if(!this[_0x1bc2a9(0xd4)])return console[_0x1bc2a9(0x103)]('[KafkaConsumer]\x20Cannot\x20seek\x20-\x20not\x20connected'),![];try{return this['consumer'][_0x1bc2a9(0x114)]({'topic':_0x4edf1e,'partition':_0x372893,'offset':_0x4879f8[_0x1bc2a9(0x106)]()}),console['log'](_0x1bc2a9(0xee)+_0x4879f8+_0x1bc2a9(0xf7)+_0x4edf1e+':'+_0x372893),!![];}catch(_0x3c98b3){return console['error']('[KafkaConsumer]\x20Seek\x20error:\x20'+_0x3c98b3[_0x1bc2a9(0xd9)]),![];}}['getStatus'](){const _0x480aed=a0_0x8cc5d6,_0x347d35=this['getConfig']();return{'enabled':_0x347d35[_0x480aed(0x148)],'connected':this[_0x480aed(0xd4)],'running':this['isRunning'],'paused':this[_0x480aed(0xd6)],'brokers':_0x347d35['brokers'],'clientId':_0x347d35['clientId'],'groupId':this['groupId'],'subscribedTopics':this['subscribedTopics']};}['getMetrics'](){const _0x10fe7b=a0_0x8cc5d6,_0x3ad719={'bfHhg':function(_0x2c1b5c,_0x214233){return _0x2c1b5c>_0x214233;},'RJpmr':function(_0x397ef5,_0x4dfa9){return _0x397ef5>_0x4dfa9;},'rhVEo':function(_0x1c2f67,_0x340fc2){return _0x1c2f67+_0x340fc2;},'DjmPr':function(_0x1f7fe1,_0x3ff887){return _0x1f7fe1*_0x3ff887;},'wETyM':function(_0x18de4c,_0x3a5880){return _0x18de4c/_0x3a5880;},'UKCiB':function(_0x3286b4,_0x39660b){return _0x3286b4-_0x39660b;},'MZYkN':function(_0x32d8c2,_0x3a6d04){return _0x32d8c2+_0x3a6d04;},'uszJL':function(_0x2ade55,_0x2ee5f9){return _0x2ade55+_0x2ee5f9;}},_0x593f9d=this[_0x10fe7b(0x12b)][_0x10fe7b(0x146)][_0x10fe7b(0x126)]>0x0?this['metrics'][_0x10fe7b(0x146)][_0x10fe7b(0xfa)]((_0x23b68d,_0x5c9dcf)=>_0x23b68d+_0x5c9dcf,0x0)/this[_0x10fe7b(0x12b)]['processingTimes'][_0x10fe7b(0x126)]:0x0,_0x3b1847=_0x3ad719[_0x10fe7b(0xe9)](this[_0x10fe7b(0x12b)][_0x10fe7b(0x146)]['length'],0x0)?Math[_0x10fe7b(0x13b)](...this['metrics']['processingTimes']):0x0,_0x49d9b5=_0x3ad719[_0x10fe7b(0x12c)](this[_0x10fe7b(0x12b)]['processingTimes'][_0x10fe7b(0x126)],0x0)?Math['max'](...this['metrics']['processingTimes']):0x0;return{'messagesReceived':this['metrics']['messagesReceived'],'messagesProcessed':this['metrics']['messagesProcessed'],'messagesFailed':this[_0x10fe7b(0x12b)][_0x10fe7b(0x10f)],'successRate':_0x3ad719[_0x10fe7b(0xe9)](this['metrics'][_0x10fe7b(0x140)],0x0)?_0x3ad719['rhVEo'](_0x3ad719['DjmPr'](this['metrics']['messagesProcessed']/this[_0x10fe7b(0x12b)][_0x10fe7b(0x140)],0x64)['toFixed'](0x2),'%'):'0%','lastMessageTime':this[_0x10fe7b(0x12b)]['lastMessageTime'],'startTime':this['metrics'][_0x10fe7b(0xda)],'uptime':this['metrics'][_0x10fe7b(0xda)]?Math[_0x10fe7b(0x11d)](_0x3ad719['wETyM'](_0x3ad719[_0x10fe7b(0x122)](Date[_0x10fe7b(0xdb)](),this['metrics']['startTime'][_0x10fe7b(0xfc)]()),0x3e8))+'s':'0s','processingTime':{'avg':_0x3ad719['MZYkN'](Math['round'](_0x593f9d),'ms'),'min':_0x3b1847+'ms','max':_0x3ad719[_0x10fe7b(0x133)](_0x49d9b5,'ms')}};}['resetMetrics'](){const _0x5c7226=a0_0x8cc5d6,_0x23bab5={'eWPMU':'[KafkaConsumer]\x20Metrics\x20reset'};this['metrics']={'messagesReceived':0x0,'messagesProcessed':0x0,'messagesFailed':0x0,'lastMessageTime':null,'startTime':this['isRunning']?new Date():null,'processingTimes':[]},console['log'](_0x23bab5[_0x5c7226(0x149)]);}async['close'](){const _0x22ec98=a0_0x8cc5d6;await this[_0x22ec98(0xde)]();}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaConsumerService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function createInstance(){return new KafkaConsumerService();}module[a0_0x8cc5d6(0xec)]={'getInstance':getInstance,'resetInstance':resetInstance,'createInstance':createInstance,'KafkaConsumerService':KafkaConsumerService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x30c3(){const _0x47c1f5=['AxnjBML0AwfSAxPPBMC','C3bSAxq','A0DPAxa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','z2v0rNvSBfLLyxi','s0fgs0fFu0fttf9vu0vstKfnrq','DgvUyw50swq','y3jLyxrLza','ChjVzhvJzxi','tgvNywn5ugfYDgL0Aw9Uzxi','yNjVA2vYCW','s0fgs0fFu1nm','CMvWBgfJzq','ndmZnJC5mgTlAvHJzG','CgfKu3rHCNq','v0fstG','Dhj1zq','w0THzMTHxsbfCNjVCIbKAxnJB25Uzwn0Aw5NoIa','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','zw52','mtaWma','s2vczfO','ndaYmZzOu3vcsfq','s0fgs0fFuKvuuLLFqvruru1qvfm','s0fgs0fFqLjps0vsuW','s0fgs0fFq0Xjru5ux0Le','ChvIBgLZAeLUC2vYDa','Bg9N','wwXlEuK','s0fgs0fFuKvrvuvtvf9usu1ft1vu','mta0odHewLH2z0i','ntvWsffREwW','AxndB25Uzwn0zwq','mtm1mhHWqNbIza','y29UBMvJDgLVBLbYB21PC2u','mZuZmuvfseDiwa','mZu2BxnesxLg','su5gtW','z2v0u3rHDhvZ','zw5HyMXLza','re10CKK','mtiWndKZmhzxCuP2rG','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','Bg9Ntgv2zwW','DgfIBgvoyw1L','Dg9WAwnqyxr0zxjU','DxbKyxrLza','ru5usvrzx0nsrufuruq','yNvPBgrfDMvUDe1LC3nHz2u','ChvIBgLZAev2zw50','AM9PBG','A2fMA2e','yMfZzu9MzNnLDa','A2fMA2fQCW','A2v5rMLLBgq','ms4W','zgvMyxvSDa','ndq2mtGYAKHuu21u','nKfXyvjKCW','mJu5otaXnvngsfvLqG','BxjZzxm','AxDYsMq','y29YCMvSyxrPB25jza','w0THzMTHxsblywzRysbWCM9KDwnLCIbPCYbKAxnHyMXLzcbPBIbJB25MAwD1CMf0Aw9U','zM9YBwf0rgf0zvrPBwu','B1vKwK4','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','Dg9WAwm','rLfOAgi','E2fJDgLVBN0','E2vUzhbVAw50Fq','revcvuC','ru5usvrzx1vqrefuruq','t0LkDMm','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','Aw5PDgLHBgL6zq','z2v0q29UzMLN','y29UBMvJDgLVBLrPBwvVDxq','DxvPza','z2v0rgf0zq','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','zxjYB3i','CMvZDgzVCMDLlq','z2v0tw9UDgG','u2njt0C','zxHWB3j0CW','C3rYAw5NAwz5','BwvZC2fNzq','s0fgs0fFuKvuuLLFrevmqvK','y2XVC2u','zw5KCg9PBNq','y3jLyxrLzej5'];a0_0x30c3=function(){return _0x47c1f5;};return a0_0x30c3();}const a0_0x3bdb1f=a0_0x1e2a;(function(_0x2b85e9,_0x42e076){const _0x464407=a0_0x1e2a,_0x4e29fe=_0x2b85e9();while(!![]){try{const _0x3282af=-parseInt(_0x464407(0xc5))/0x1+-parseInt(_0x464407(0xb5))/0x2+parseInt(_0x464407(0xaf))/0x3*(-parseInt(_0x464407(0xb0))/0x4)+parseInt(_0x464407(0xc7))/0x5*(-parseInt(_0x464407(0xc6))/0x6)+parseInt(_0x464407(0xa2))/0x7+parseInt(_0x464407(0xaa))/0x8*(-parseInt(_0x464407(0xad))/0x9)+parseInt(_0x464407(0x99))/0xa*(parseInt(_0x464407(0xab))/0xb);if(_0x3282af===_0x42e076)break;else _0x4e29fe['push'](_0x4e29fe['shift']());}catch(_0x5c9e12){_0x4e29fe['push'](_0x4e29fe['shift']());}}}(a0_0x30c3,0x4a4a2));function a0_0x1e2a(_0x1da1c1,_0x2fade5){_0x1da1c1=_0x1da1c1-0x7e;const _0x30c374=a0_0x30c3();let _0x1e2adb=_0x30c374[_0x1da1c1];if(a0_0x1e2a['uwJjFd']===undefined){var _0x36131d=function(_0x21e37a){const _0x2a3d91='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b8998='',_0xdde579='';for(let _0xf4a9fe=0x0,_0x5c7acb,_0x16d14e,_0x331b32=0x0;_0x16d14e=_0x21e37a['charAt'](_0x331b32++);~_0x16d14e&&(_0x5c7acb=_0xf4a9fe%0x4?_0x5c7acb*0x40+_0x16d14e:_0x16d14e,_0xf4a9fe++%0x4)?_0x5b8998+=String['fromCharCode'](0xff&_0x5c7acb>>(-0x2*_0xf4a9fe&0x6)):0x0){_0x16d14e=_0x2a3d91['indexOf'](_0x16d14e);}for(let _0xf9cb05=0x0,_0x44a18a=_0x5b8998['length'];_0xf9cb05<_0x44a18a;_0xf9cb05++){_0xdde579+='%'+('00'+_0x5b8998['charCodeAt'](_0xf9cb05)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdde579);};a0_0x1e2a['VMxNKZ']=_0x36131d,a0_0x1e2a['KayebN']={},a0_0x1e2a['uwJjFd']=!![];}const _0x428cc1=_0x30c374[0x0],_0x40645c=_0x1da1c1+_0x428cc1,_0x54b806=a0_0x1e2a['KayebN'][_0x40645c];return!_0x54b806?(_0x1e2adb=a0_0x1e2a['VMxNKZ'](_0x1e2adb),a0_0x1e2a['KayebN'][_0x40645c]=_0x1e2adb):_0x1e2adb=_0x54b806,_0x1e2adb;}const {Kafka,logLevel,Partitioners}=require(a0_0x3bdb1f(0xc1)),{v7:uuidv7}=require(a0_0x3bdb1f(0x7e));class KafkaService{constructor(){const _0xd68d5c=a0_0x3bdb1f;this['kafka']=null,this['producer']=null,this['isConnected']=![],this['isInitializing']=![],this[_0xd68d5c(0xae)]=null;}['getConfig'](){const _0x134042=a0_0x3bdb1f,_0x489364={'AeXpn':function(_0x448d5c,_0x2d6495){return _0x448d5c===_0x2d6495;},'kGiip':'localhost:9092','iWEMv':'3000','iwrJd':'default','DMtrI':function(_0x21551a,_0x30e521){return _0x21551a(_0x30e521);},'dvnJG':'warn'};return{'enabled':_0x489364['AeXpn'](process[_0x134042(0x9f)]['KAFKA_ENABLED'],_0x134042(0x9c)),'brokers':(process[_0x134042(0x9f)][_0x134042(0xa4)]||_0x489364[_0x134042(0x8e)])[_0x134042(0x8d)](','),'clientId':process['env'][_0x134042(0xa5)]||_0x134042(0x82)+(process['env'][_0x134042(0x8f)]||_0x134042(0xc4))+'-producer','connectionTimeout':parseInt(process[_0x134042(0x9f)]['KAFKA_CONNECTION_TIMEOUT']||_0x489364['iWEMv']),'requestTimeout':parseInt(process['env'][_0x134042(0xa9)]||'25000'),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||'{module}.{endpoint}.events','tenantId':process['env']['KAFKA_TENANT_ID']||_0x489364[_0x134042(0xc9)],'retryAttempts':_0x489364[_0x134042(0xb4)](parseInt,process[_0x134042(0x9f)][_0x134042(0xa3)]||'3'),'retryDelay':parseInt(process['env'][_0x134042(0x88)]||_0x134042(0xa0)),'logLevel':process['env']['KAFKA_LOG_LEVEL']||_0x489364['dvnJG']};}['getLogLevel'](_0x342c19){const _0x25cde8=a0_0x3bdb1f,_0x4427eb={'nothing':logLevel['NOTHING'],'error':logLevel['ERROR'],'warn':logLevel[_0x25cde8(0x9b)],'info':logLevel[_0x25cde8(0xb1)],'debug':logLevel[_0x25cde8(0xd3)]};return _0x4427eb[_0x342c19['toLowerCase']()]||logLevel['WARN'];}async[a0_0x3bdb1f(0xd7)](){const _0x1f81d8=a0_0x3bdb1f,_0x59565b={'iZsmY':'[Kafka]\x20Producer\x20disconnected','upWVf':_0x1f81d8(0x9c),'HYKpj':'producer.disconnect'},_0x5229f8=this[_0x1f81d8(0xd8)]();if(!_0x5229f8['enabled'])return console[_0x1f81d8(0xa7)](_0x1f81d8(0xcb)),![];if(this['isConnected'])return!![];if(this[_0x1f81d8(0x8c)]&&this[_0x1f81d8(0xae)])return this['connectionPromise'];return this[_0x1f81d8(0x8c)]=!![],this['connectionPromise']=new Promise(async _0x4143a0=>{const _0x339e82=_0x1f81d8;try{let _0x4c4ae4=undefined;process[_0x339e82(0x9f)][_0x339e82(0x97)]===_0x59565b['upWVf']&&(_0x4c4ae4=!![]);let _0x5c771c=undefined;process['env']['KAFKA_SASL_MECHANISM']&&(_0x5c771c={'mechanism':process['env']['KAFKA_SASL_MECHANISM'],'username':process['env'][_0x339e82(0x91)]||'','password':process[_0x339e82(0x9f)]['KAFKA_SASL_PASSWORD']||''}),this[_0x339e82(0xbf)]=new Kafka({'clientId':_0x5229f8['clientId'],'brokers':_0x5229f8['brokers'],'connectionTimeout':_0x5229f8[_0x339e82(0xd9)],'requestTimeout':_0x5229f8['requestTimeout'],'logLevel':this['getLogLevel'](_0x5229f8[_0x339e82(0xb7)]),'ssl':_0x4c4ae4,'sasl':_0x5c771c,'retry':{'initialRetryTime':_0x5229f8['retryDelay'],'retries':_0x5229f8['retryAttempts']}}),this['producer']=this[_0x339e82(0xbf)][_0x339e82(0x94)]({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners[_0x339e82(0x95)]}),await this[_0x339e82(0x94)]['connect'](),this['isConnected']=!![],console['log'](_0x339e82(0x9e)+_0x5229f8['brokers'][_0x339e82(0xbe)](',\x20')),this[_0x339e82(0x94)]['on'](_0x59565b['HYKpj'],()=>{const _0x466b94=_0x339e82;console['log'](_0x59565b['iZsmY']),this[_0x466b94(0xac)]=![];}),_0x4143a0(!![]);}catch(_0x407294){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x407294['message']),this['isConnected']=![],_0x4143a0(![]);}finally{this[_0x339e82(0x8c)]=![];}}),this[_0x1f81d8(0xae)];}['formatDateTime'](_0x254d5d){const _0x17d2f1=a0_0x3bdb1f,_0x3b9ace={'ScIOG':function(_0x4c586a,_0x120f33){return _0x4c586a(_0x120f33);},'FQhhb':function(_0x7610a4,_0x5cf719){return _0x7610a4(_0x5cf719);},'CSwGb':function(_0x1c09cd,_0x25e03f){return _0x1c09cd(_0x25e03f);}},_0x23bf03=_0x254d5d||new Date(),_0x41e451=_0x23bf03[_0x17d2f1(0x90)](),_0x4ceddb=_0x3b9ace[_0x17d2f1(0x84)](String,_0x23bf03[_0x17d2f1(0x83)]()+0x1)['padStart'](0x2,'0'),_0x114f2a=_0x3b9ace['ScIOG'](String,_0x23bf03[_0x17d2f1(0x7f)]())[_0x17d2f1(0x9a)](0x2,'0'),_0x1474dc=_0x3b9ace[_0x17d2f1(0xd0)](String,_0x23bf03['getHours']())['padStart'](0x2,'0'),_0x103639=String(_0x23bf03['getMinutes']())[_0x17d2f1(0x9a)](0x2,'0'),_0x380d21=_0x3b9ace['CSwGb'](String,_0x23bf03['getSeconds']())['padStart'](0x2,'0');return _0x41e451+'-'+_0x4ceddb+'-'+_0x114f2a+'\x20'+_0x1474dc+':'+_0x103639+':'+_0x380d21;}['buildTopicName'](_0x75c014,_0x3f3d40,_0x5bf526,_0x1900c8=null){const _0x2e2407=a0_0x3bdb1f,_0x35ee09={'mrses':_0x2e2407(0xd2),'qGDWE':_0x2e2407(0xd1)};if(_0x1900c8)return _0x1900c8;const _0x35d671=this[_0x2e2407(0xd8)]()[_0x2e2407(0xb9)];return _0x35d671[_0x2e2407(0x98)]('{module}',_0x75c014)['replace'](_0x35ee09[_0x2e2407(0xc8)],_0x3f3d40)['replace'](_0x35ee09['qGDWE'],_0x5bf526);}['buildEventMessage'](_0x13a2a9,_0x367958,_0x3a8417,_0x7d416={}){const _0x4c8566=a0_0x3bdb1f,_0x32548e={'KdbHH':function(_0x4aea48){return _0x4aea48();},'OIJvc':_0x4c8566(0xc3)},_0x371a7d=new Date(),_0xc0d965=this[_0x4c8566(0xcc)](_0x371a7d),_0xf07911=_0x7d416['correlationId']||'corr-'+_0x32548e['KdbHH'](uuidv7);return{'eventId':'evt-'+_0x32548e['KdbHH'](uuidv7),'eventType':_0x13a2a9,'eventTime':_0xc0d965,'eventVersion':_0x32548e[_0x4c8566(0xd5)],'source':_0x4c8566(0x82)+(_0x7d416['module']||'unknown'),'correlationId':_0xf07911,'newData':_0x3a8417,'oldData':_0x367958,'metadata':{'createdBy':_0x7d416[_0x4c8566(0x8b)]||'SYSTEM','createdAt':_0xc0d965,'systemId':'RESTFORGE-'+(_0x7d416['module']||'unknown')['toUpperCase'](),'tenantId':this['getConfig']()[_0x4c8566(0x92)],'endpoint':_0x7d416[_0x4c8566(0x8a)]||null,'tableName':_0x7d416['tableName']||null}};}async[a0_0x3bdb1f(0xbd)](_0x210403,_0x45d6b2,_0x43293,_0x15cab5,_0x56e120={}){const _0x4661d2=a0_0x3bdb1f,_0x255235={'KeBdZ':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','oUdZN':function(_0x42b44f){return _0x42b44f();},'rEEbM':function(_0x5a8c1b,_0xf76d3f){return _0x5a8c1b(_0xf76d3f);}},_0x5485f5=this[_0x4661d2(0xd8)]();if(!_0x5485f5[_0x4661d2(0xb3)])return{'success':![],'reason':_0x4661d2(0xb6),'published':![]};if(!this['isConnected']){const _0x14e8ae=await this['initialize']();if(!_0x14e8ae)return{'success':![],'reason':_0x255235[_0x4661d2(0xa1)],'published':![]};}try{const _0x551808=this[_0x4661d2(0xbc)](_0x45d6b2,_0x43293,_0x15cab5,_0x56e120),_0x45b7b4=_0x56e120['keyField']||'id',_0x2292aa=_0x15cab5?.[_0x45b7b4]||_0x43293?.[_0x45b7b4]||_0x255235[_0x4661d2(0xcd)](uuidv7),_0x58d6e6=await this['producer']['send']({'topic':_0x210403,'messages':[{'key':_0x255235['rEEbM'](String,_0x2292aa),'value':JSON[_0x4661d2(0x86)](_0x551808),'headers':{'event-type':_0x45d6b2,'correlation-id':_0x551808[_0x4661d2(0xca)],'source':_0x551808['source']}}]});return console['log'](_0x4661d2(0xce)+_0x210403+':\x20'+_0x45d6b2+'\x20(key:\x20'+_0x2292aa+')'),{'success':!![],'correlationId':_0x551808['correlationId'],'topic':_0x210403,'partition':_0x58d6e6[0x0]?.['partition'],'offset':_0x58d6e6[0x0]?.[_0x4661d2(0xc0)],'published':!![]};}catch(_0x4b9b0e){return console['error'](_0x4661d2(0x80)+_0x210403+':\x20'+_0x4b9b0e[_0x4661d2(0x87)]),{'success':![],'error':_0x4b9b0e['message'],'published':![]};}}async[a0_0x3bdb1f(0xa6)](_0x197071,_0x14d0dc,_0x44f175,_0xb24a27={}){const _0x14c462=a0_0x3bdb1f,_0xa2998f={'RISHu':_0x14c462(0x93),'XVoQO':_0x14c462(0xbb)},_0x59215b=this['buildTopicName'](_0x197071,_0x14d0dc,_0xa2998f['RISHu'],_0xb24a27['topic']);return this[_0x14c462(0xbd)](_0x59215b,_0xa2998f['XVoQO'],null,_0x44f175,{'module':_0x197071,'endpoint':_0x14d0dc,'keyField':_0xb24a27[_0x14c462(0xc2)],'tableName':_0xb24a27['tableName'],'correlationId':_0xb24a27[_0x14c462(0xca)]});}async['publishUpdate'](_0x29ca38,_0xb5d158,_0x6640fc,_0x5b815c,_0x23261f={}){const _0x1c0d6e=a0_0x3bdb1f,_0x5e94ec={'OLWHd':_0x1c0d6e(0xba),'YlKyI':_0x1c0d6e(0xd4)},_0x5201aa=this['buildTopicName'](_0x29ca38,_0xb5d158,_0x5e94ec['OLWHd'],_0x23261f[_0x1c0d6e(0xcf)]);return this['publishEvent'](_0x5201aa,_0x5e94ec[_0x1c0d6e(0xa8)],_0x6640fc,_0x5b815c,{'module':_0x29ca38,'endpoint':_0xb5d158,'keyField':_0x23261f['keyField'],'tableName':_0x23261f['tableName'],'correlationId':_0x23261f['correlationId']});}async['publishDelete'](_0x16edf4,_0x502618,_0x4bb715,_0x1e9238={}){const _0x4d9c21=a0_0x3bdb1f,_0x38d664={'uJXlT':'ENTITY_DELETED'},_0x32e95=this['buildTopicName'](_0x16edf4,_0x502618,'deleted',_0x1e9238['topic']);return this[_0x4d9c21(0xbd)](_0x32e95,_0x38d664['uJXlT'],_0x4bb715,null,{'module':_0x16edf4,'endpoint':_0x502618,'keyField':_0x1e9238['keyField'],'tableName':_0x1e9238[_0x4d9c21(0xb8)],'correlationId':_0x1e9238[_0x4d9c21(0xca)]});}[a0_0x3bdb1f(0xb2)](){const _0x534538=a0_0x3bdb1f,_0x120402=this['getConfig']();return{'enabled':_0x120402['enabled'],'connected':this['isConnected'],'brokers':_0x120402[_0x534538(0x96)],'clientId':_0x120402['clientId'],'topicPattern':_0x120402[_0x534538(0xb9)]};}async['close'](){const _0xfd34a=a0_0x3bdb1f,_0x2be40c={'XnOKC':_0xfd34a(0xd6)};if(this[_0xfd34a(0x94)]&&this[_0xfd34a(0xac)])try{await this['producer']['disconnect'](),this['isConnected']=![],console['log'](_0x2be40c['XnOKC']);}catch(_0x3d60d5){console[_0xfd34a(0x81)](_0xfd34a(0x9d)+_0x3d60d5['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){const _0x270e0d=a0_0x3bdb1f;instance&&(instance[_0x270e0d(0x89)](),instance=null);}module[a0_0x3bdb1f(0x85)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
1
|
+
const a0_0x1c821d=a0_0xdf87;function a0_0x29b2(){const _0x4b581d=['zxjYB3i','wvrzsNO','s0fgs0fFuKvuuLLFrevmqvK','lxbYB2r1y2vY','Aw5PDgLHBgL6zq','zw5KCg9PBNq','yNjVA2vYCW','mJuWmda','ChjVzhvJzxi','mtaWma','DgfIBgvoyw1L','z2v0tg9Ntgv2zwW','s0fgs0fFru5bqKXfra','ChjVzhvJzxiUzgLZy29UBMvJDa','uKvtvezpuKDflq','s0fgs0fFu0fttf9nruniqu5ju00','zxz0lq','C3rYAw5NAwz5','s0fgs0fFu1nm','s29NBvu','Dhj1zq','zw52','Bg9N','s0fgs0fFuKvuuLLFqvruru1qvfm','AMfps2m','w0THzMTHxsbfDMvUDcbWDwjSAxnOzwqGDg8G','B2Xjt3m','y2XVC2u','Dg9vChbLCKnHC2u','z2v0sg91CNm','D2fYBG','zgrcqK0','y29UBMvJDgLVBLbYB21PC2u','Dg9WAwm','ndqWnte1mKDbtKLbBa','z2v0rgf0zq','CgfKu3rHCNq','ndm0mJi3oenlAKztAG','u1Ltvevn','C291CMnL','A2fMA2e','y29UBMvJDgLVBLrPBwvVDxq','mtm1mJy5nxLksvvvwq','z2v0q29UzMLN','z2v0tw9UDgG','AxndB25Uzwn0zwq','E2fJDgLVBN0','yNvPBgrfDMvUDe1LC3nHz2u','ntfOwwXJyMC','mZaWma','sfnWDhC','ntK1mJm0wNz1DxHv','C3bSAxq','D2TnuNO','w0THzMTHxsbqDwjSAxnOigvYCM9YihrVia','CNfpAwy','zxHWB3j0CW','Bg9JywXOB3n0oJKWoti','v0fstG','s0fgs0fFu0fttf9vu0vstKfnrq','s2fMA2eGChjVzhvJzxiGAxmGzgLZywjSzwq','AxnjBML0AwfSAxPPBMC','y2XPzw50swq','ru5usvrzx0nsrufuruq','ChvIBgLZAev2zw50','y29YCMvSyxrPB25jza','E21VzhvSzx0UE2vUzhbVAw50Fs5LDMvUDhm','zgvSzxrLza','zgvMyxvSDa','A2v5rMLLBgq','CMvWBgfJzq','Dw5RBM93BG','w0THzMTHxsbqCM9KDwnLCIbKAxnJB25Uzwn0zwqGz3jHy2vMDwXSEq','zM9YBwf0rgf0zvrPBwu','w0THzMTHxsbqCM9KDwnLCIbJB25Uzwn0zwqGDg8GyNjVA2vYCZOG','CMvXDwvZDfrPBwvVDxq','wgjft3G','BwvZC2fNzq','mZmXmJzJBMnQCfm','zgLZy29UBMvJDa','Dg9WAwnqyxr0zxjU','E2vUzhbVAw50Fq','s0fgs0fFuKvrvuvtvf9usu1ft1vu','su5gtW','yNvPBgruB3bPy05HBwu','zw5HyMXLza','ChvIBgLZAerLBgv0zq','y3jLyxrLzej5','tK9useLorW','ru5usvrzx1vqrefuruq','s0fgs0fFte9hx0XfvKvm','mtiZmZi0mgzzrfn2yW','nJm1ndKZnMrqALDRyq','DgvUyw50swq','z2v0twLUDxrLCW'];a0_0x29b2=function(){return _0x4b581d;};return a0_0x29b2();}(function(_0x2fea31,_0x48bd81){const _0x1cabdb=a0_0xdf87,_0x518971=_0x2fea31();while(!![]){try{const _0x1266a9=parseInt(_0x1cabdb(0x22a))/0x1+parseInt(_0x1cabdb(0x245))/0x2*(-parseInt(_0x1cabdb(0x227))/0x3)+parseInt(_0x1cabdb(0x1f3))/0x4+-parseInt(_0x1cabdb(0x221))/0x5+parseInt(_0x1cabdb(0x21c))/0x6+-parseInt(_0x1cabdb(0x1f4))/0x7+parseInt(_0x1cabdb(0x219))/0x8;if(_0x1266a9===_0x48bd81)break;else _0x518971['push'](_0x518971['shift']());}catch(_0x39ad14){_0x518971['push'](_0x518971['shift']());}}}(a0_0x29b2,0xaf477));const {Kafka,logLevel,Partitioners}=require('kafkajs'),{v7:uuidv7}=require('uuid');class KafkaService{constructor(){const _0x34061b=a0_0xdf87;this[_0x34061b(0x21f)]=null,this['producer']=null,this[_0x34061b(0x224)]=![],this[_0x34061b(0x234)]=![],this['connectionPromise']=null;}[a0_0x1c821d(0x222)](){const _0x1b6f8f=a0_0x1c821d,_0x26663c={'PIwJP':function(_0x1d2f0c,_0x56c3f0){return _0x1d2f0c===_0x56c3f0;},'rqOif':_0x1b6f8f(0x20b),'jaOKc':'default','EInDK':function(_0x3f43f4,_0x3df693){return _0x3f43f4(_0x3df693);},'rWvBH':_0x1b6f8f(0x228),'KogmU':function(_0x1e05b4,_0x241780){return _0x1e05b4(_0x241780);},'itctP':_0x1b6f8f(0x1fe),'xZvZl':_0x1b6f8f(0x239),'UamMs':function(_0x3907a3,_0x1492fe){return _0x3907a3(_0x1492fe);},'PTRTC':function(_0x45a7b4,_0x541bcc){return _0x45a7b4(_0x541bcc);},'olIOs':_0x1b6f8f(0x200)};return{'enabled':_0x26663c['PIwJP'](process[_0x1b6f8f(0x20c)][_0x1b6f8f(0x203)],_0x26663c[_0x1b6f8f(0x22e)]),'brokers':(process['env']['KAFKA_BROKERS']||_0x1b6f8f(0x230))[_0x1b6f8f(0x22b)](','),'clientId':process[_0x1b6f8f(0x20c)]['KAFKA_CLIENT_ID']||'restforge-'+(process[_0x1b6f8f(0x20c)]['RESTFORGE_PROJECT_NAME']||_0x26663c[_0x1b6f8f(0x20f)])+_0x1b6f8f(0x1fa),'connectionTimeout':_0x26663c['EInDK'](parseInt,process['env']['KAFKA_CONNECTION_TIMEOUT']||_0x26663c['rWvBH']),'requestTimeout':_0x26663c[_0x1b6f8f(0x20a)](parseInt,process[_0x1b6f8f(0x20c)][_0x1b6f8f(0x249)]||_0x26663c['itctP']),'topicPattern':process['env']['KAFKA_TOPIC_PATTERN']||_0x26663c['xZvZl'],'tenantId':process[_0x1b6f8f(0x20c)]['KAFKA_TENANT_ID']||_0x1b6f8f(0x23b),'retryAttempts':_0x26663c['UamMs'](parseInt,process[_0x1b6f8f(0x20c)][_0x1b6f8f(0x20e)]||'3'),'retryDelay':_0x26663c['PTRTC'](parseInt,process['env'][_0x1b6f8f(0x1f9)]||_0x26663c[_0x1b6f8f(0x211)]),'logLevel':process[_0x1b6f8f(0x20c)][_0x1b6f8f(0x1f2)]||_0x1b6f8f(0x215)};}['getLogLevel'](_0x5cc12d){const _0x48bb36=a0_0x1c821d,_0x586fa9={'nothing':logLevel[_0x48bb36(0x1f0)],'error':logLevel['ERROR'],'warn':logLevel[_0x48bb36(0x231)],'info':logLevel[_0x48bb36(0x24a)],'debug':logLevel['DEBUG']};return _0x586fa9[_0x5cc12d['toLowerCase']()]||logLevel[_0x48bb36(0x231)];}async[a0_0x1c821d(0x1fb)](){const _0x410d4b=a0_0x1c821d,_0x25c6e8={'wmEko':'[Kafka]\x20Producer\x20disconnected','NJgAX':_0x410d4b(0x204),'atAOS':function(_0x3bce1a,_0x2704c3){return _0x3bce1a(_0x2704c3);},'DPQfu':'[Kafka]\x20Kafka\x20producer\x20is\x20disabled\x20in\x20configuration'},_0x78a2c=this[_0x410d4b(0x222)]();if(!_0x78a2c[_0x410d4b(0x24c)])return console['log'](_0x25c6e8['DPQfu']),![];if(this['isConnected'])return!![];if(this['isInitializing']&&this[_0x410d4b(0x217)])return this[_0x410d4b(0x217)];return this[_0x410d4b(0x234)]=!![],this[_0x410d4b(0x217)]=new Promise(async _0x16f4aa=>{const _0x527b3d=_0x410d4b;try{let _0x5a4e43=undefined;process['env'][_0x527b3d(0x209)]===_0x527b3d(0x20b)&&(_0x5a4e43=!![]);let _0x77d362=undefined;process['env'][_0x527b3d(0x206)]&&(_0x77d362={'mechanism':process['env'][_0x527b3d(0x206)],'username':process[_0x527b3d(0x20c)][_0x527b3d(0x232)]||'','password':process['env']['KAFKA_SASL_PASSWORD']||''}),this['kafka']=new Kafka({'clientId':_0x78a2c[_0x527b3d(0x235)],'brokers':_0x78a2c['brokers'],'connectionTimeout':_0x78a2c[_0x527b3d(0x220)],'requestTimeout':_0x78a2c[_0x527b3d(0x242)],'logLevel':this[_0x527b3d(0x202)](_0x78a2c['logLevel']),'ssl':_0x5a4e43,'sasl':_0x77d362,'retry':{'initialRetryTime':_0x78a2c['retryDelay'],'retries':_0x78a2c['retryAttempts']}}),this['producer']=this['kafka']['producer']({'allowAutoTopicCreation':!![],'transactionTimeout':0x7530,'createPartitioner':Partitioners['LegacyPartitioner']}),await this[_0x527b3d(0x1ff)]['connect'](),this[_0x527b3d(0x224)]=!![],console['log'](_0x527b3d(0x241)+_0x78a2c['brokers']['join'](',\x20')),this[_0x527b3d(0x1ff)]['on'](_0x25c6e8['NJgAX'],()=>{console['log'](_0x25c6e8['wmEko']),this['isConnected']=![];}),_0x16f4aa(!![]);}catch(_0x2c7b7c){console['error']('[Kafka]\x20Connection\x20failed:\x20'+_0x2c7b7c['message']),this['isConnected']=![],_0x25c6e8['atAOS'](_0x16f4aa,![]);}finally{this[_0x527b3d(0x234)]=![];}}),this[_0x410d4b(0x217)];}[a0_0x1c821d(0x240)](_0x223dd4){const _0xb70857=a0_0x1c821d,_0x4a1b4b={'XbEOx':function(_0x4a63ff,_0xbda6be){return _0x4a63ff(_0xbda6be);}},_0xdcfe0b=_0x223dd4||new Date(),_0x442403=_0xdcfe0b['getFullYear'](),_0x158172=_0x4a1b4b[_0xb70857(0x243)](String,_0xdcfe0b[_0xb70857(0x223)]()+0x1)[_0xb70857(0x21b)](0x2,'0'),_0x2ba6a1=_0x4a1b4b['XbEOx'](String,_0xdcfe0b[_0xb70857(0x21a)]())['padStart'](0x2,'0'),_0x7fdfbb=String(_0xdcfe0b[_0xb70857(0x214)]())['padStart'](0x2,'0'),_0x3e1354=_0x4a1b4b[_0xb70857(0x243)](String,_0xdcfe0b[_0xb70857(0x1f6)]())['padStart'](0x2,'0'),_0x52bcbe=String(_0xdcfe0b['getSeconds']())['padStart'](0x2,'0');return _0x442403+'-'+_0x158172+'-'+_0x2ba6a1+'\x20'+_0x7fdfbb+':'+_0x3e1354+':'+_0x52bcbe;}[a0_0x1c821d(0x24b)](_0x4e18cb,_0xc2c052,_0x2501b6,_0x1d73c6=null){const _0x67f544=a0_0x1c821d,_0x1f188c={'aHCKc':'{module}','hHerc':_0x67f544(0x225)};if(_0x1d73c6)return _0x1d73c6;const _0x1a68a2=this['getConfig']()[_0x67f544(0x247)];return _0x1a68a2[_0x67f544(0x23d)](_0x1f188c['aHCKc'],_0x4e18cb)[_0x67f544(0x23d)](_0x67f544(0x248),_0xc2c052)['replace'](_0x1f188c['hHerc'],_0x2501b6);}[a0_0x1c821d(0x226)](_0x20baf6,_0x2e275d,_0x31b8ce,_0x59b52b={}){const _0x623f76=a0_0x1c821d,_0x9efaef={'ddBBM':function(_0x3024a7){return _0x3024a7();},'wkMRz':_0x623f76(0x21d)},_0x3c49c5=new Date(),_0x467c53=this[_0x623f76(0x240)](_0x3c49c5),_0x3eee6c=_0x59b52b['correlationId']||'corr-'+_0x9efaef[_0x623f76(0x216)](uuidv7);return{'eventId':_0x623f76(0x207)+uuidv7(),'eventType':_0x20baf6,'eventTime':_0x467c53,'eventVersion':'1.0','source':'restforge-'+(_0x59b52b['module']||_0x623f76(0x23e)),'correlationId':_0x3eee6c,'newData':_0x31b8ce,'oldData':_0x2e275d,'metadata':{'createdBy':_0x59b52b[_0x623f76(0x1ef)]||_0x9efaef[_0x623f76(0x22c)],'createdAt':_0x467c53,'systemId':_0x623f76(0x205)+(_0x59b52b['module']||'unknown')[_0x623f76(0x213)](),'tenantId':this['getConfig']()[_0x623f76(0x1f5)],'endpoint':_0x59b52b[_0x623f76(0x1fc)]||null,'tableName':_0x59b52b[_0x623f76(0x201)]||null}};}async['publishEvent'](_0x1779e7,_0x194431,_0x2128e3,_0x563518,_0x459e3d={}){const _0x503c9b=a0_0x1c821d,_0x3eb7ae={'HSptw':'Failed\x20to\x20connect\x20to\x20Kafka\x20broker','CxAJd':function(_0x2a39a8,_0x220f2f){return _0x2a39a8(_0x220f2f);}},_0x157375=this[_0x503c9b(0x222)]();if(!_0x157375[_0x503c9b(0x24c)])return{'success':![],'reason':_0x503c9b(0x233),'published':![]};if(!this[_0x503c9b(0x224)]){const _0x3a7da4=await this[_0x503c9b(0x1fb)]();if(!_0x3a7da4)return{'success':![],'reason':_0x3eb7ae[_0x503c9b(0x229)],'published':![]};}try{const _0x107979=this['buildEventMessage'](_0x194431,_0x2128e3,_0x563518,_0x459e3d),_0x2d24ef=_0x459e3d['keyField']||'id',_0x4de1c3=_0x563518?.[_0x2d24ef]||_0x2128e3?.[_0x2d24ef]||uuidv7(),_0x504c9a=await this[_0x503c9b(0x1ff)]['send']({'topic':_0x1779e7,'messages':[{'key':_0x3eb7ae['CxAJd'](String,_0x4de1c3),'value':JSON[_0x503c9b(0x208)](_0x107979),'headers':{'event-type':_0x194431,'correlation-id':_0x107979['correlationId'],'source':_0x107979[_0x503c9b(0x21e)]}}]});return console[_0x503c9b(0x20d)](_0x503c9b(0x210)+_0x1779e7+':\x20'+_0x194431+'\x20(key:\x20'+_0x4de1c3+')'),{'success':!![],'correlationId':_0x107979[_0x503c9b(0x238)],'topic':_0x1779e7,'partition':_0x504c9a[0x0]?.['partition'],'offset':_0x504c9a[0x0]?.['baseOffset'],'published':!![]};}catch(_0x41fb1e){return console['error'](_0x503c9b(0x22d)+_0x1779e7+':\x20'+_0x41fb1e[_0x503c9b(0x244)]),{'success':![],'error':_0x41fb1e[_0x503c9b(0x244)],'published':![]};}}async['publishInsert'](_0x23383f,_0x1cd357,_0xd40ebf,_0x353baa={}){const _0x4c27fe=a0_0x1c821d,_0x5152cb={'aXFIY':'created','XWdhM':_0x4c27fe(0x236)},_0x2adac7=this['buildTopicName'](_0x23383f,_0x1cd357,_0x5152cb['aXFIY'],_0x353baa[_0x4c27fe(0x218)]);return this[_0x4c27fe(0x237)](_0x2adac7,_0x5152cb['XWdhM'],null,_0xd40ebf,{'module':_0x23383f,'endpoint':_0x1cd357,'keyField':_0x353baa[_0x4c27fe(0x23c)],'tableName':_0x353baa[_0x4c27fe(0x201)],'correlationId':_0x353baa[_0x4c27fe(0x238)]});}async['publishUpdate'](_0x43a917,_0x53fd86,_0x4b39ef,_0x2b9dad,_0x6a30ce={}){const _0x5de676=a0_0x1c821d,_0x4e5900=this[_0x5de676(0x24b)](_0x43a917,_0x53fd86,'updated',_0x6a30ce[_0x5de676(0x218)]);return this['publishEvent'](_0x4e5900,_0x5de676(0x1f1),_0x4b39ef,_0x2b9dad,{'module':_0x43a917,'endpoint':_0x53fd86,'keyField':_0x6a30ce[_0x5de676(0x23c)],'tableName':_0x6a30ce[_0x5de676(0x201)],'correlationId':_0x6a30ce[_0x5de676(0x238)]});}async[a0_0x1c821d(0x24d)](_0x1e2ad9,_0xe52561,_0x2f78c4,_0xe33d89={}){const _0x1be77f=a0_0x1c821d,_0x18343c={'YTYJz':'ENTITY_DELETED'},_0x5ebc5f=this['buildTopicName'](_0x1e2ad9,_0xe52561,_0x1be77f(0x23a),_0xe33d89['topic']);return this['publishEvent'](_0x5ebc5f,_0x18343c[_0x1be77f(0x1f8)],_0x2f78c4,null,{'module':_0x1e2ad9,'endpoint':_0xe52561,'keyField':_0xe33d89['keyField'],'tableName':_0xe33d89['tableName'],'correlationId':_0xe33d89[_0x1be77f(0x238)]});}['getStatus'](){const _0x2fea81=a0_0x1c821d,_0x410f14=this[_0x2fea81(0x222)]();return{'enabled':_0x410f14['enabled'],'connected':this[_0x2fea81(0x224)],'brokers':_0x410f14[_0x2fea81(0x1fd)],'clientId':_0x410f14[_0x2fea81(0x235)],'topicPattern':_0x410f14[_0x2fea81(0x247)]};}async[a0_0x1c821d(0x212)](){const _0x109dd1=a0_0x1c821d;if(this[_0x109dd1(0x1ff)]&&this[_0x109dd1(0x224)])try{await this[_0x109dd1(0x1ff)][_0x109dd1(0x246)](),this[_0x109dd1(0x224)]=![],console[_0x109dd1(0x20d)](_0x109dd1(0x23f));}catch(_0x5854c1){console[_0x109dd1(0x1f7)]('[Kafka]\x20Error\x20disconnecting:\x20'+_0x5854c1['message']);}}}let instance=null;function getInstance(){return!instance&&(instance=new KafkaService()),instance;}function resetInstance(){instance&&(instance['close'](),instance=null);}function a0_0xdf87(_0x101a41,_0x2e3e89){_0x101a41=_0x101a41-0x1ef;const _0x29b2fd=a0_0x29b2();let _0xdf87cc=_0x29b2fd[_0x101a41];if(a0_0xdf87['qwnwXk']===undefined){var _0xe34ca3=function(_0x3844f9){const _0x18485a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39b5fd='',_0x356dfa='';for(let _0x312462=0x0,_0x118beb,_0x8ae482,_0x33d58b=0x0;_0x8ae482=_0x3844f9['charAt'](_0x33d58b++);~_0x8ae482&&(_0x118beb=_0x312462%0x4?_0x118beb*0x40+_0x8ae482:_0x8ae482,_0x312462++%0x4)?_0x39b5fd+=String['fromCharCode'](0xff&_0x118beb>>(-0x2*_0x312462&0x6)):0x0){_0x8ae482=_0x18485a['indexOf'](_0x8ae482);}for(let _0x1ef883=0x0,_0x27fe32=_0x39b5fd['length'];_0x1ef883<_0x27fe32;_0x1ef883++){_0x356dfa+='%'+('00'+_0x39b5fd['charCodeAt'](_0x1ef883)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x356dfa);};a0_0xdf87['qgXZpI']=_0xe34ca3,a0_0xdf87['OzlBPW']={},a0_0xdf87['qwnwXk']=!![];}const _0x196a31=_0x29b2fd[0x0],_0x3d85ac=_0x101a41+_0x196a31,_0x1df6d7=a0_0xdf87['OzlBPW'][_0x3d85ac];return!_0x1df6d7?(_0xdf87cc=a0_0xdf87['qgXZpI'](_0xdf87cc),a0_0xdf87['OzlBPW'][_0x3d85ac]=_0xdf87cc):_0xdf87cc=_0x1df6d7,_0xdf87cc;}module[a0_0x1c821d(0x22f)]={'getInstance':getInstance,'resetInstance':resetInstance,'KafkaService':KafkaService};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3fe7c5=a0_0xcf51;(function(_0xd084d6,_0x28942d){const _0x18fed6=a0_0xcf51,_0xcb1522=_0xd084d6();while(!![]){try{const _0x4e4f77=-parseInt(_0x18fed6(0x1d1))/0x1*(parseInt(_0x18fed6(0x1e8))/0x2)+-parseInt(_0x18fed6(0x1fa))/0x3*(-parseInt(_0x18fed6(0x207))/0x4)+-parseInt(_0x18fed6(0x1eb))/0x5*(parseInt(_0x18fed6(0x1cb))/0x6)+-parseInt(_0x18fed6(0x1d4))/0x7+-parseInt(_0x18fed6(0x1e0))/0x8+parseInt(_0x18fed6(0x1c2))/0x9*(-parseInt(_0x18fed6(0x21b))/0xa)+-parseInt(_0x18fed6(0x1e7))/0xb*(-parseInt(_0x18fed6(0x1fe))/0xc);if(_0x4e4f77===_0x28942d)break;else _0xcb1522['push'](_0xcb1522['shift']());}catch(_0x583eb4){_0xcb1522['push'](_0xcb1522['shift']());}}}(a0_0x38fc,0x252a8));const dotenv=require(a0_0x3fe7c5(0x1f8)),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0x3fe7c5(0x1cc));dotenv['config']();function a0_0xcf51(_0x41046c,_0x535505){_0x41046c=_0x41046c-0x1bf;const _0x38fc67=a0_0x38fc();let _0xcf519=_0x38fc67[_0x41046c];if(a0_0xcf51['gyxVZp']===undefined){var _0x3d2042=function(_0x32d111){const _0x21e2ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x37d97b='',_0x57b330='';for(let _0x31ac71=0x0,_0x67d6a8,_0x59aad9,_0x42f40c=0x0;_0x59aad9=_0x32d111['charAt'](_0x42f40c++);~_0x59aad9&&(_0x67d6a8=_0x31ac71%0x4?_0x67d6a8*0x40+_0x59aad9:_0x59aad9,_0x31ac71++%0x4)?_0x37d97b+=String['fromCharCode'](0xff&_0x67d6a8>>(-0x2*_0x31ac71&0x6)):0x0){_0x59aad9=_0x21e2ad['indexOf'](_0x59aad9);}for(let _0x1297d6=0x0,_0x54f368=_0x37d97b['length'];_0x1297d6<_0x54f368;_0x1297d6++){_0x57b330+='%'+('00'+_0x37d97b['charCodeAt'](_0x1297d6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x57b330);};a0_0xcf51['FcPoLq']=_0x3d2042,a0_0xcf51['rGejXq']={},a0_0xcf51['gyxVZp']=!![];}const _0x28f47b=_0x38fc67[0x0],_0x580f60=_0x41046c+_0x28f47b,_0x36f1ea=a0_0xcf51['rGejXq'][_0x580f60];return!_0x36f1ea?(_0xcf519=a0_0xcf51['FcPoLq'](_0xcf519),a0_0xcf51['rGejXq'][_0x580f60]=_0xcf519):_0xcf519=_0x36f1ea,_0xcf519;}let MessageHub;try{const messagehubPath=path[a0_0x3fe7c5(0x20d)](__dirname,'../../js/messagehub.js');if(fs[a0_0x3fe7c5(0x1d0)](messagehubPath))MessageHub=require(messagehubPath),console[a0_0x3fe7c5(0x1cd)]('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error(a0_0x3fe7c5(0x1ca)+messagehubPath);}catch(a0_0x3c19c8){console['error']('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x3c19c8[a0_0x3fe7c5(0x219)]);throw a0_0x3c19c8;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x1ea472){const _0x3f7e69=a0_0x3fe7c5,_0x44d803=new Date()[_0x3f7e69(0x1da)]();console[_0x3f7e69(0x1cd)]('['+_0x44d803+']\x20'+_0x1ea472);}async function initMessageHub(){const _0x5cf785=a0_0x3fe7c5,_0x5b50e5={'vUqxb':'connected','eMRCX':function(_0x1a8fa8,_0x421dde){return _0x1a8fa8(_0x421dde);},'zGhjh':_0x5cf785(0x1c3),'iLhQE':function(_0x423c3f,_0x10a0e1){return _0x423c3f(_0x10a0e1);},'fBTBo':'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======','NZnIj':function(_0x480018,_0x29430f){return _0x480018(_0x29430f);},'umBPY':'Mode:\x20Koneksi\x20Nyata','axnaz':function(_0x291cd8,_0x5c991c){return _0x291cd8===_0x5c991c;},'AWhjh':'true','zpzaP':'websocket','lnTbo':function(_0x2f3236,_0x55dcb0){return _0x2f3236(_0x55dcb0);},'SwHjC':_0x5cf785(0x208),'eMZZp':function(_0x465aea,_0x1317c4){return _0x465aea(_0x1317c4);},'cJlUC':'========================================','rMivO':function(_0x157b26,_0x3c9786){return _0x157b26&&_0x3c9786;},'KrRZK':_0x5cf785(0x1dc),'ncNXU':function(_0x18716d,_0x4cbe21){return _0x18716d(_0x4cbe21);}};if(_0x5b50e5[_0x5cf785(0x1c6)](messagehub,isConnected))return _0x5b50e5[_0x5cf785(0x1c0)](log,_0x5b50e5[_0x5cf785(0x1d8)]),!![];if(connectionPromise)return _0x5b50e5[_0x5cf785(0x1df)](log,_0x5cf785(0x21f)),connectionPromise;return connectionPromise=new Promise(async(_0x26ad28,_0x15029b)=>{const _0x1d5228=_0x5cf785,_0x5e46c8={'YyzkS':function(_0xbb1d43,_0x405b4e){return _0xbb1d43(_0x405b4e);},'ILzzz':function(_0x1b18e0,_0x427094){return _0x1b18e0===_0x427094;},'xqNGP':_0x5b50e5['vUqxb'],'yyCiB':function(_0x2fed1a,_0x143b64){return _0x5b50e5['eMRCX'](_0x2fed1a,_0x143b64);},'NaFzM':function(_0x235dbc,_0x236f77){return _0x5b50e5['eMRCX'](_0x235dbc,_0x236f77);},'hUJZS':function(_0x181801,_0x52eee2){return _0x181801===_0x52eee2;},'qrmpT':_0x1d5228(0x1de),'yJcOd':'Tidak\x20diketahui','jvVaO':function(_0x12197f,_0x41d371){return _0x12197f(_0x41d371);},'UPGLt':function(_0x5e2a34,_0x2b928a){return _0x5e2a34===_0x2b928a;},'oPXJm':_0x1d5228(0x212),'nRNht':function(_0x24859c,_0x5c0a87){return _0x24859c&&_0x5c0a87;},'EhhBT':_0x5b50e5[_0x1d5228(0x1bf)],'CnTZR':_0x1d5228(0x202)};try{_0x5b50e5[_0x1d5228(0x1e4)](log,_0x5b50e5[_0x1d5228(0x1d5)]),_0x5b50e5[_0x1d5228(0x206)](log,_0x1d5228(0x20c)+new Date()['toLocaleString']()),_0x5b50e5[_0x1d5228(0x1e4)](log,_0x5b50e5['umBPY']);const _0xe83efd={'publishKey':process['env'][_0x1d5228(0x21a)],'subscribeKey':process['env']['MSHUB_SUBSCRIBE_KEY'],'userId':process[_0x1d5228(0x1f9)][_0x1d5228(0x20e)]||_0x1d5228(0x1f7)+(process['env']['RESTFORGE_PROJECT_NAME']||_0x1d5228(0x1c9))+'-'+process[_0x1d5228(0x1c4)],'communicationType':process['env']['MSHUB_COMMUNICATION_TYPE']||_0x1d5228(0x1ec),'autoAcknowledge':_0x5b50e5['axnaz'](process['env'][_0x1d5228(0x1f2)],'true'),'acknowledgeMessages':process[_0x1d5228(0x1f9)]['MSHUB_ACKNOWLEDGE_MESSAGES']===_0x5b50e5[_0x1d5228(0x200)],'platform':{'type':process[_0x1d5228(0x1f9)]['MSHUB_COMMUNICATION_TYPE']||_0x5b50e5['zpzaP'],'host':process[_0x1d5228(0x1f9)]['MSHUB_HOST']||'localhost','api_port':_0x5b50e5[_0x1d5228(0x1c0)](parseInt,process['env']['MSHUB_API_PORT']||0xdf8),'service_port':parseInt(process[_0x1d5228(0x1f9)][_0x1d5228(0x210)]||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0xe83efd),log(_0x5b50e5['SwHjC']),log(_0x1d5228(0x204)+messagehub[_0x1d5228(0x1fc)]),_0x5b50e5['eMZZp'](log,_0x1d5228(0x20b)+messagehub[_0x1d5228(0x20a)]),_0x5b50e5[_0x1d5228(0x1d6)](log,_0x1d5228(0x1e1)+messagehub['subscribeKey']),_0x5b50e5['eMZZp'](log,_0x1d5228(0x20f)+messagehub['communicationType']),log(_0x1d5228(0x1f1)+JSON['stringify'](messagehub['platformConfig'])),log(_0x5b50e5['cJlUC']),messagehub['addListener']({'status':function(_0xf9bdbd){const _0x50e9c2=_0x1d5228;_0x5e46c8['YyzkS'](log,'Status\x20Listener:\x20'+_0xf9bdbd[_0x50e9c2(0x1d7)]);if(_0x5e46c8['ILzzz'](_0xf9bdbd['category'],_0x5e46c8[_0x50e9c2(0x1e5)]))_0x5e46c8['YyzkS'](log,_0x50e9c2(0x1d2)),isConnected=!![],timeoutHandler&&(_0x5e46c8['yyCiB'](clearTimeout,timeoutHandler),timeoutHandler=null),_0x5e46c8[_0x50e9c2(0x1e3)](_0x26ad28,!![]);else{if(_0x5e46c8['hUJZS'](_0xf9bdbd['category'],_0x5e46c8[_0x50e9c2(0x1dd)])){const _0x58b8c8=_0xf9bdbd[_0x50e9c2(0x209)]===!![];!_0x58b8c8&&(log('Terputus\x20dari\x20server.\x20Alasan:\x20'+(_0xf9bdbd[_0x50e9c2(0x203)]||_0x5e46c8[_0x50e9c2(0x1ee)])),isConnected=![],connectionPromise&&(_0x15029b(new Error('Koneksi\x20terputus:\x20'+(_0xf9bdbd['reason']||_0x5e46c8['yJcOd']))),connectionPromise=null));}else{if(_0x5e46c8['hUJZS'](_0xf9bdbd['category'],_0x50e9c2(0x1f4))){let _0x3b463d=_0xf9bdbd[_0x50e9c2(0x218)]||_0xf9bdbd['error']||_0x50e9c2(0x1c1);log('⚠️\x20Error:\x20'+_0x3b463d),isConnected=![],connectionPromise&&(_0x5e46c8['jvVaO'](_0x15029b,new Error(_0x3b463d)),connectionPromise=null);}else{if(_0x5e46c8['UPGLt'](_0xf9bdbd[_0x50e9c2(0x1d7)],'message-sent'))log(_0x50e9c2(0x215)+_0xf9bdbd[_0x50e9c2(0x1f6)]);else{if(_0x5e46c8[_0x50e9c2(0x1ef)](_0xf9bdbd['category'],_0x50e9c2(0x1c5))){const _0x360f09=_0xf9bdbd[_0x50e9c2(0x1db)]?.['name']||_0x5e46c8[_0x50e9c2(0x1e9)],_0x50fa4b=_0xf9bdbd['receiverInfo']?.['id']||_0xf9bdbd['receiverId'],_0x5dbebe=new Date(_0xf9bdbd[_0x50e9c2(0x1db)]?.[_0x50e9c2(0x1d9)]||_0xf9bdbd['receivedAt']||new Date())['toLocaleTimeString']();log(_0x50e9c2(0x1fb)+_0xf9bdbd['requestId']+_0x50e9c2(0x21c)+_0x360f09+'\x20('+_0x50fa4b+_0x50e9c2(0x1ce)+_0x5dbebe+'.\x20Total\x20konfirmasi:\x20'+(_0xf9bdbd['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x2dbaac=_0x1d5228;_0x5e46c8['nRNht'](!isConnected,connectionPromise)&&(log(_0x5e46c8[_0x2dbaac(0x1ed)]),_0x5e46c8[_0x2dbaac(0x1e3)](_0x15029b,new Error(_0x5e46c8['CnTZR'])),connectionPromise=null);},0x2710);}catch(_0x567d3e){log(_0x1d5228(0x21e)+_0x567d3e[_0x1d5228(0x219)]),console[_0x1d5228(0x1f4)]('Error\x20inisialisasi\x20MessageHub:',_0x567d3e),connectionPromise=null,_0x5b50e5['eMRCX'](_0x15029b,_0x567d3e);}}),connectionPromise;}async function publishMessage(_0x5d5816,_0x40c586,_0x3db920,_0x1821fb={}){const _0x4f4bb3=a0_0x3fe7c5,_0x473b63={'RGzWA':function(_0x3cd3c9){return _0x3cd3c9();},'bfTaI':function(_0x20dbb6,_0x12c44a){return _0x20dbb6(_0x12c44a);},'LfxEL':_0x4f4bb3(0x216),'RPYHw':function(_0x4524ee,_0x5a8f87){return _0x4524ee!==_0x5a8f87;},'omEaw':_0x4f4bb3(0x213),'bRBSR':function(_0x51e859,_0x4cc96d){return _0x51e859(_0x4cc96d);},'uGQaE':'Message\x20sent\x20successfully'};try{!isConnected&&await _0x473b63[_0x4f4bb3(0x1e6)](initMessageHub);const _0x1d4bd0=messagehub[_0x4f4bb3(0x21d)](_0x5d5816);_0x473b63['bfTaI'](log,'======\x20DATA\x20PUBLISH\x20MESSAGE\x20======'),log(_0x4f4bb3(0x214)+_0x1d4bd0[_0x4f4bb3(0x1d3)]),_0x473b63[_0x4f4bb3(0x1f5)](log,'Message\x20Type:\x20'+_0x40c586),_0x473b63['bfTaI'](log,_0x473b63['LfxEL']);const _0x1b7d31={'requireAck':_0x473b63['RPYHw'](_0x1821fb['requireAck'],undefined)?_0x1821fb[_0x4f4bb3(0x201)]:![],'clearCache':_0x1821fb[_0x4f4bb3(0x1ea)]!==undefined?_0x1821fb[_0x4f4bb3(0x1ea)]:!![],'senderId':messagehub[_0x4f4bb3(0x1ff)]?messagehub[_0x4f4bb3(0x1ff)]['id']:_0x473b63['omEaw']};log('Mengirim\x20pesan\x20ke\x20server...');const _0x37f15e={'type':_0x40c586,'content':_0x3db920},_0x1c0f6f=await _0x1d4bd0[_0x4f4bb3(0x1f3)](_0x37f15e,_0x1b7d31);return _0x473b63['bRBSR'](log,_0x4f4bb3(0x205)+_0x5d5816),{'success':!![],'requestId':_0x1c0f6f['requestId'],'topic':_0x5d5816,'message':_0x473b63['uGQaE']};}catch(_0x49d9bc){return log(_0x4f4bb3(0x211)+_0x49d9bc['message']),{'success':![],'error':_0x49d9bc['message'],'topic':_0x5d5816,'message':'Failed\x20to\x20send\x20message'};}}async function closeConnection(){const _0xdffbb3=a0_0x3fe7c5,_0x29d31b={'BzwGi':function(_0x4e79d7,_0x28ad02){return _0x4e79d7(_0x28ad02);},'WNXNL':_0xdffbb3(0x1c7),'FogVt':function(_0x10ab1e,_0x4fee1f){return _0x10ab1e===_0x4fee1f;},'Rhuew':function(_0x17ecb4,_0x1d5d85){return _0x17ecb4(_0x1d5d85);},'XisTT':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20close()','oMiuU':_0xdffbb3(0x1fd),'TAUwf':'Tidak\x20dapat\x20menemukan\x20metode\x20untuk\x20menutup\x20koneksi\x20MessageHub'};timeoutHandler&&(_0x29d31b['BzwGi'](clearTimeout,timeoutHandler),timeoutHandler=null);if(isConnected&&messagehub)try{if(typeof messagehub['disconnect']===_0x29d31b[_0xdffbb3(0x1c8)])await messagehub['disconnect'](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()');else{if(_0x29d31b['FogVt'](typeof messagehub[_0xdffbb3(0x217)],_0xdffbb3(0x1c7)))await messagehub[_0xdffbb3(0x217)](),_0x29d31b[_0xdffbb3(0x1e2)](log,_0x29d31b['XisTT']);else messagehub[_0xdffbb3(0x1ff)]&&_0x29d31b['FogVt'](typeof messagehub[_0xdffbb3(0x1ff)]['disconnect'],_0xdffbb3(0x1c7))?(messagehub[_0xdffbb3(0x1ff)]['disconnect'](),log(_0x29d31b['oMiuU'])):log(_0x29d31b['TAUwf']);}isConnected=![],connectionPromise=null;}catch(_0x34a47a){log(_0xdffbb3(0x1f0)+_0x34a47a['message']);}}module[a0_0x3fe7c5(0x1cf)]={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};function a0_0x38fc(){const _0x10e68a=['pt09pt09ieLorK9stuftssbdteLftLqGtuvtu0fhruHvqIa9pt09pt0','AxnfCNjVCLjLBgf0zwq','ChvIBgLZAeTLEq','uhvIBgLZAcblzxK6ia','v2fRDhuGsw5PC2LHBgLZyxnPoIa','CMvZB2X2zq','tvnivujFvvnfuL9jra','vgLWzsblB211BMLRyxnPoIa','tvnivujFu0vsvKLdrv9qt1ju','4PQG77IpievYCM9Yihb1yMXPC2HPBMCGBwvZC2fNztOG','vw5RBM93BG','CMvZDgzVCMDL','q2HHBM5LBcbuyxjNzxq6ia','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','y2XVC2u','zxjYB3jezxrHAwW','BwvZC2fNzq','tvnivujFufvcteLtsf9lrvK','mtbTv2PQwM4','igrPDgvYAw1Hig9SzwGG','y2HHBM5LBa','4PQG77IpievYCM9YigLUAxnPywXPC2fZAsbnzxnZywDLshvIoIa','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','EKDOAMG','Bg5uyM8','vw5RBM93BIbLCNjVCG','otC3nZe1AeLdtfvH','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','CgLK','BwvZC2fNzs1YzwnLAxzLza','CK1PDK8','zNvUy3rPB24','v05ytKW','zgvMyxvSDa','twvZC2fNzuH1yIbtreSGBM90igzVDw5Kigf0ia','mtaYCKT4qvHu','DxvPza','Bg9N','ksbWywrHia','zxHWB3j0CW','zxHPC3rZu3LUyW','mwjnzLvKwa','vgvYAhvIDw5NigTLihnLCNzLCIbnzxnZywDLshvI','Dg9WAwm','mtiZmteZmKrnELzita','zKjuqM8','zu1sq1G','y2f0zwDVCNK','s3jswKS','CMvJzwL2zwrbDa','Dg9ju09tDhjPBMC','CMvJzwL2zxjjBMzV','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','CxjTCfq','zgLZy29UBMvJDgvK','BMnowfu','mtuYmdaZmMjJrhHPua','u3vIC2nYAwjLieTLEtOG','uMH1zxC','tMfgEK0','AuXOuuu','Ehfor1a','uKD6v0e','mtmZmJf3sgjWAee','mJuWmteWtur4AeTs','B1bysM0','y2XLyxjdywnOzq','nJi5otbzqKfWww4','yNjVywrJyxn0','rwHOqLq','EuPJt2q','suX6ENO','rxjYB3iGC2fHDcbTzw51DhvWigTVBMvRC2K6ia','s29UzMLNDxjHC2KGugXHDgzVCM06ia','tvnivujFqvvut19bq0Tot1Dmrurhrq','ChvIBgLZAa','zxjYB3i','yMzuyuK','CMvXDwvZDeLK','CMvZDgzVCMDLlq','zg90zw52','zw52','otLgvgvnBvy','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','DxnLCKLK','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUihnVy2TLDc5KAxnJB25Uzwn0kcK','oti3nMPbqLLstW','C29JA2v0','qvDOAMG','CMvXDwLYzufJAW','q29UBMvJDgLVBIb0Aw1LB3v0','CMvHC29U','q2XPzw50ieLel1vZzxjjrdOG','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','tLPUswO','mZyYmhvUrLfQuG'];a0_0x38fc=function(){return _0x10e68a;};return a0_0x38fc();}
|
|
1
|
+
const a0_0xeb6e32=a0_0x5ded;(function(_0x3262d7,_0x187fa2){const _0x5e4c87=a0_0x5ded,_0x30330b=_0x3262d7();while(!![]){try{const _0x27ab70=parseInt(_0x5e4c87(0xe3))/0x1+parseInt(_0x5e4c87(0x11e))/0x2*(-parseInt(_0x5e4c87(0xf1))/0x3)+-parseInt(_0x5e4c87(0xca))/0x4*(parseInt(_0x5e4c87(0xdb))/0x5)+parseInt(_0x5e4c87(0xf0))/0x6*(-parseInt(_0x5e4c87(0x120))/0x7)+parseInt(_0x5e4c87(0xeb))/0x8+-parseInt(_0x5e4c87(0x11d))/0x9+-parseInt(_0x5e4c87(0x112))/0xa*(-parseInt(_0x5e4c87(0x106))/0xb);if(_0x27ab70===_0x187fa2)break;else _0x30330b['push'](_0x30330b['shift']());}catch(_0x5d3bb1){_0x30330b['push'](_0x30330b['shift']());}}}(a0_0x5d99,0x899b0));const dotenv=require('dotenv'),path=require('path'),fs=require('fs'),{v7:uuidv7}=require(a0_0xeb6e32(0x111));dotenv[a0_0xeb6e32(0xce)]();let MessageHub;try{const messagehubPath=path['resolve'](__dirname,'../../js/messagehub.js');if(fs['existsSync'](messagehubPath))MessageHub=require(messagehubPath),console['log']('MessageHub\x20SDK\x20found\x20at\x20'+messagehubPath);else throw new Error('MessageHub\x20SDK\x20not\x20found\x20at\x20'+messagehubPath);}catch(a0_0x42eb6e){console[a0_0xeb6e32(0xd4)]('Error\x20loading\x20MessageHub\x20SDK:\x20'+a0_0x42eb6e['message']);throw a0_0x42eb6e;}let messagehub=null,isConnected=![],connectionPromise=null,timeoutHandler=null;function log(_0x13dfe0){const _0x5d223c=a0_0xeb6e32,_0x2425b2=new Date()[_0x5d223c(0xfc)]();console[_0x5d223c(0x121)]('['+_0x2425b2+']\x20'+_0x13dfe0);}function a0_0x5ded(_0x3cf9dd,_0x26e7ea){_0x3cf9dd=_0x3cf9dd-0xbf;const _0x5d9937=a0_0x5d99();let _0x5ded5b=_0x5d9937[_0x3cf9dd];if(a0_0x5ded['NeOfSb']===undefined){var _0x5a8f23=function(_0x30bf13){const _0x33c38c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c2ca8='',_0x187d80='';for(let _0x26bb85=0x0,_0x588144,_0x4f5d92,_0x1fb170=0x0;_0x4f5d92=_0x30bf13['charAt'](_0x1fb170++);~_0x4f5d92&&(_0x588144=_0x26bb85%0x4?_0x588144*0x40+_0x4f5d92:_0x4f5d92,_0x26bb85++%0x4)?_0x4c2ca8+=String['fromCharCode'](0xff&_0x588144>>(-0x2*_0x26bb85&0x6)):0x0){_0x4f5d92=_0x33c38c['indexOf'](_0x4f5d92);}for(let _0x4f0140=0x0,_0x21111e=_0x4c2ca8['length'];_0x4f0140<_0x21111e;_0x4f0140++){_0x187d80+='%'+('00'+_0x4c2ca8['charCodeAt'](_0x4f0140)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x187d80);};a0_0x5ded['QSLWEv']=_0x5a8f23,a0_0x5ded['kLTXgk']={},a0_0x5ded['NeOfSb']=!![];}const _0x1f779b=_0x5d9937[0x0],_0x48a7d0=_0x3cf9dd+_0x1f779b,_0x16ee33=a0_0x5ded['kLTXgk'][_0x48a7d0];return!_0x16ee33?(_0x5ded5b=a0_0x5ded['QSLWEv'](_0x5ded5b),a0_0x5ded['kLTXgk'][_0x48a7d0]=_0x5ded5b):_0x5ded5b=_0x16ee33,_0x5ded5b;}function a0_0x5d99(){const _0x4bf292=['mJfStNLIvMi','Bg9N','tvnivujFu1vcu0nssujfx0Tfwq','y2f0zwDVCNK','Bvrkyw0','BML3AuW','A05JBhu','C3rYAw5NAwz5','tvnivujFq09ntvvosunbveLptL9uwvbf','8j+tPcbqzxnHBIbIzxjOyxnPBcbKAwTPCMLTisbszxf1zxn0suq6ia','s29UzwTZAsbnzxnZywDLshvIigrPDhv0DxaGzgvUz2fUignSB3nLkcK','8j+tQsblB25MAxjTyxnPoIbqzxnHBIa','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEsb0BYb0B3bPyYa','igrPDgvYAw1Hig9SzwGG','DvLhBLe','mJbLA1nmCLm','zgLZy29UBMvJDgvK','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','vu1Wu0S','y29UzMLN','CNPJs3m','zxDKvxG','pt09pt09ierbveeGufvcteLtscbnrvntquDfid09pt09pq','twvZC2fNzuH1yIbZDwrHAcb0zxjODwj1BMCSig1LBMDNDw5HA2fUigTVBMvRC2KGEwfUzYbHzge','vhD6q3u','zxjYB3i','tvnivujFqvbjx1bpuLq','qw5OC1G','y29TBxvUAwnHDgLVBLr5Cgu','EMDiCfe','BwvZC2fNzs1Zzw50','BvPiEfq','mta5mtG0mhbfsfLKua','tvnivujFse9tva','BMfTzq','vgvYChv0DxmGzgfYAsbZzxj2zxiUiefSyxnHBJOG','s29UzwTZAsbnzxnZywDLshvIihnLzgfUzYbIzxjSyw5NC3vUzYWGBwvUDw5Nz3uUlI4','zNvUy3rPB24','u1HdtxG','zw52','mJiZodK0wKn3yKPN','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pq','s29UzwTZAsb0zxjWDxr1CZOG','uM91wxu','t3DzD1u','AxnfCNjVCLjLBgf0zwq','D2Hdse8','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','nZK4ntC2oej6tMLyrG','s29UzMLNDxjHC2KGugXHDgzVCM06ia','y2XLyxjdywnOzq','zxjYB3jezxrHAwW','twvZC2fNzsbuExbLoIa','mtCZodq1mLvUz2v6Ca','m3rdt2HxuW','y0H0zey','DuPItfK','y2XVC2u','vw5RBM93BG','yNfLEMG','teDdvNi','y29UBMvJDgvK','thrbCfi','CMvJzwL2zxjjBMzV','t3rMrMO','Dg9ju09tDhjPBMC','q2HHBM5LBcbuyxjNzxq6ia','vgLKywSGzgfWyxqGBwvUzw11A2fUig1LDg9Kzsb1BNr1AYbTzw51DhvWigTVBMvRC2KGtwvZC2fNzuH1yG','rejJwxe','4PQG77IpifrPBwvVDxq6ifrPzgfRigrHCgf0ihrLCMH1yNvUzYbRzsbnzxnZywDLshvIihnLCNzLCIbKywXHBsb3ywT0Dsb5yw5NigrPDgvUDhvRyw4','lIbuB3rHBcbRB25MAxjTyxnPoIa','ksbWywrHia','DxnLCKLK','B0TQz0u','CwnNs2e','nZiZodbHAhj1Cxm','tvnivujFvvnfuL9jra','tvnivujFqunltK9xtever0vFtuvtu0fhrvm','CMvJzwL2zwrbDa','ChvIBgLZAeTLEq','uhvIBgLZAcblzxK6ia','yNjVywrJyxn0','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','C29JA2v0','BwvZC2fNzq','thHLtuq','DxvPza','mZu0meTWsuzwCa','zgLZy29UBMvJDa','ywrKtgLZDgvUzxi','vgLWzsblB211BMLRyxnPoIa','twvUz2LYAw0GCgvZyw4GA2uGC2vYDMvYlI4U','y2HHBM5LBa','vgvWuvK','BwvZC2fNzs1YzwnLAxzLza','wfvIBhm','CMvXDwvZDeLK','CMvHC29U','nJiYmtaYnuTJy3brwG','nJCXmdi0wg5HA29i','u3vIC2nYAwjLieTLEtOG'];a0_0x5d99=function(){return _0x4bf292;};return a0_0x5d99();}async function initMessageHub(){const _0x328dd8=a0_0xeb6e32,_0x4bc059={'uJbLY':function(_0x135075,_0x566caa){return _0x135075&&_0x566caa;},'zQaAD':_0x328dd8(0x100),'whCHO':'Connection\x20timeout','OtfFj':function(_0x1263b6,_0x207872){return _0x1263b6(_0x207872);},'LxeMD':_0x328dd8(0xd9),'kNclu':_0x328dd8(0xf5),'qcgKa':'default','cHtdF':function(_0x24b0fd,_0x16ae9c){return _0x24b0fd===_0x16ae9c;},'LtApR':'true','DIpeo':'websocket','gWowi':'======\x20INFORMASI\x20CLIENT\x20MESSAGEHUB\x20======','oPttX':function(_0x46eb0c,_0x429726){return _0x46eb0c(_0x429726);},'bQBtT':function(_0xd37d80,_0x5d768f){return _0xd37d80(_0x5d768f);},'SXCMx':'Error\x20inisialisasi\x20MessageHub:','oKjgE':function(_0x3666b8,_0x357e60){return _0x3666b8(_0x357e60);},'zgHpQ':function(_0xaa9b4e,_0x507a96){return _0xaa9b4e&&_0x507a96;},'OwYwU':_0x328dd8(0xd2),'niwiL':_0x328dd8(0xdf)};if(_0x4bc059[_0x328dd8(0xd8)](messagehub,isConnected))return log(_0x4bc059[_0x328dd8(0xe7)]),!![];if(connectionPromise)return log(_0x4bc059[_0x328dd8(0xc0)]),connectionPromise;return connectionPromise=new Promise(async(_0x182e33,_0x172f86)=>{const _0x247c5c=_0x328dd8,_0x1e3963={'hWGKi':function(_0x1d3e87,_0x55139f){return _0x1d3e87(_0x55139f);},'mZHxT':function(_0x54271a,_0x663016){return _0x54271a===_0x663016;},'ewdUx':function(_0x598801,_0xa775ac){const _0x1878e8=a0_0x5ded;return _0x4bc059[_0x1878e8(0xfb)](_0x598801,_0xa775ac);},'UMpSK':'Tidak\x20diketahui','DBcYq':function(_0x4a2028,_0x49804b){return _0x4a2028===_0x49804b;},'KkpiU':_0x4bc059[_0x247c5c(0x110)],'rEqST':function(_0x370a47,_0x260c14){const _0x1c5491=_0x247c5c;return _0x4bc059[_0x1c5491(0xfb)](_0x370a47,_0x260c14);},'dvqyt':function(_0x4bdd73,_0x20a29f){return _0x4bdd73===_0x20a29f;},'RouYu':_0x4bc059[_0x247c5c(0xc1)],'ocCdP':function(_0x56554d,_0x17b35f){return _0x56554d(_0x17b35f);}};try{_0x4bc059[_0x247c5c(0xfb)](log,'======\x20MULAI\x20INISIALISASI\x20MESSAGEHUB\x20======'),_0x4bc059['OtfFj'](log,'Waktu\x20Inisialisasi:\x20'+new Date()['toLocaleString']()),_0x4bc059['OtfFj'](log,'Mode:\x20Koneksi\x20Nyata');const _0x15480b={'publishKey':process['env']['MSHUB_PUBLISH_KEY'],'subscribeKey':process['env'][_0x247c5c(0x122)],'userId':process[_0x247c5c(0xe2)][_0x247c5c(0x107)]||'restforge-'+(process['env'][_0x247c5c(0x10d)]||_0x4bc059[_0x247c5c(0x105)])+'-'+process['pid'],'communicationType':process['env'][_0x247c5c(0xc3)]||_0x247c5c(0x10c),'autoAcknowledge':process[_0x247c5c(0xe2)]['MSHUB_AUTO_ACKNOWLEDGE']==='true','acknowledgeMessages':_0x4bc059[_0x247c5c(0xf2)](process['env'][_0x247c5c(0x108)],_0x4bc059[_0x247c5c(0xf9)]),'platform':{'type':process[_0x247c5c(0xe2)]['MSHUB_COMMUNICATION_TYPE']||_0x4bc059['DIpeo'],'host':process['env'][_0x247c5c(0xdc)]||'localhost','api_port':parseInt(process[_0x247c5c(0xe2)][_0x247c5c(0xd5)]||0xdf8),'service_port':_0x4bc059[_0x247c5c(0xfb)](parseInt,process[_0x247c5c(0xe2)]['MSHUB_SERVICE_PORT']||0xdf9),'config':{'protocol':'v1'}}};messagehub=new MessageHub(_0x15480b),log(_0x4bc059['gWowi']),_0x4bc059['oPttX'](log,'Client\x20ID/UserID:\x20'+messagehub[_0x247c5c(0x103)]),log(_0x247c5c(0x10b)+messagehub[_0x247c5c(0x10a)]),_0x4bc059['bQBtT'](log,_0x247c5c(0x11f)+messagehub['subscribeKey']),log(_0x247c5c(0x115)+messagehub[_0x247c5c(0xd7)]),_0x4bc059['oPttX'](log,_0x247c5c(0xec)+JSON[_0x247c5c(0xc2)](messagehub['platformConfig'])),log(_0x247c5c(0xe4)),messagehub[_0x247c5c(0x114)]({'status':function(_0x44cdc8){const _0x172bde=_0x247c5c;_0x1e3963['hWGKi'](log,'Status\x20Listener:\x20'+_0x44cdc8['category']);if(_0x1e3963[_0x172bde(0xda)](_0x44cdc8[_0x172bde(0x123)],_0x172bde(0xf8)))log('Terhubung\x20ke\x20server\x20MessageHub'),isConnected=!![],timeoutHandler&&(clearTimeout(timeoutHandler),timeoutHandler=null),_0x182e33(!![]);else{if(_0x44cdc8[_0x172bde(0x123)]===_0x172bde(0xcb)){const _0x3ea28c=_0x1e3963['mZHxT'](_0x44cdc8[_0x172bde(0xe8)],!![]);!_0x3ea28c&&(_0x1e3963[_0x172bde(0xd0)](log,_0x172bde(0xde)+(_0x44cdc8[_0x172bde(0x11c)]||_0x1e3963[_0x172bde(0xcd)])),isConnected=![],connectionPromise&&(_0x172f86(new Error(_0x172bde(0xe5)+(_0x44cdc8['reason']||_0x1e3963['UMpSK']))),connectionPromise=null));}else{if(_0x44cdc8[_0x172bde(0x123)]==='error'){let _0x4d6b78=_0x44cdc8[_0x172bde(0xee)]||_0x44cdc8[_0x172bde(0xd4)]||'Unknown\x20error';_0x1e3963['hWGKi'](log,'⚠️\x20Error:\x20'+_0x4d6b78),isConnected=![],connectionPromise&&(_0x172f86(new Error(_0x4d6b78)),connectionPromise=null);}else{if(_0x1e3963[_0x172bde(0xff)](_0x44cdc8[_0x172bde(0x123)],_0x1e3963['KkpiU']))_0x1e3963['rEqST'](log,_0x172bde(0xc4)+_0x44cdc8[_0x172bde(0x11b)]);else{if(_0x1e3963['dvqyt'](_0x44cdc8[_0x172bde(0x123)],_0x172bde(0x119))){const _0x14b9fd=_0x44cdc8[_0x172bde(0xfa)]?.[_0x172bde(0xdd)]||_0x1e3963[_0x172bde(0xe6)],_0xbcd246=_0x44cdc8[_0x172bde(0xfa)]?.['id']||_0x44cdc8['receiverId'],_0x54c758=new Date(_0x44cdc8[_0x172bde(0xfa)]?.[_0x172bde(0x109)]||_0x44cdc8['receivedAt']||new Date())['toLocaleTimeString']();_0x1e3963['ocCdP'](log,_0x172bde(0xc6)+_0x44cdc8[_0x172bde(0x11b)]+_0x172bde(0xc8)+_0x14b9fd+'\x20('+_0xbcd246+_0x172bde(0x102)+_0x54c758+_0x172bde(0x101)+(_0x44cdc8['confirmationCount']||0x1));}}}}}}}),timeoutHandler=setTimeout(()=>{const _0x3e1b56=_0x247c5c;_0x4bc059[_0x3e1b56(0xf3)](!isConnected,connectionPromise)&&(log(_0x4bc059['zQaAD']),_0x172f86(new Error(_0x4bc059[_0x3e1b56(0xe9)])),connectionPromise=null);},0x2710);}catch(_0x13925d){log('⚠️\x20Error\x20inisialisasi\x20MessageHub:\x20'+_0x13925d['message']),console[_0x247c5c(0xd4)](_0x4bc059[_0x247c5c(0xe1)],_0x13925d),connectionPromise=null,_0x4bc059[_0x247c5c(0x104)](_0x172f86,_0x13925d);}}),connectionPromise;}async function publishMessage(_0x2406be,_0x1be6c4,_0x4a9e1a,_0x3f2b19={}){const _0x10cc48=a0_0xeb6e32,_0x2c16f7={'uYGnQ':function(_0x2ac3f1,_0x51aae3){return _0x2ac3f1(_0x51aae3);},'QFvdd':function(_0xf9b40f,_0x10b7e3){return _0xf9b40f(_0x10b7e3);},'mTJam':_0x10cc48(0xcc),'bqezh':function(_0x3a942f,_0x548aea){return _0x3a942f!==_0x548aea;},'OjDtj':function(_0x5a7a10,_0x31222d){return _0x5a7a10(_0x31222d);},'TepQY':function(_0x5621ee,_0x52e0da){return _0x5621ee(_0x52e0da);},'vkcwD':'Failed\x20to\x20send\x20message'};try{!isConnected&&await initMessageHub();const _0x42a2a8=messagehub[_0x10cc48(0x117)](_0x2406be);_0x2c16f7[_0x10cc48(0xc9)](log,_0x10cc48(0xd1)),log(_0x10cc48(0xfd)+_0x42a2a8['topic']),_0x2c16f7['QFvdd'](log,_0x10cc48(0xef)+_0x1be6c4),_0x2c16f7[_0x10cc48(0xc9)](log,_0x2c16f7[_0x10cc48(0xbf)]);const _0x4652a5={'requireAck':_0x2c16f7['bqezh'](_0x3f2b19['requireAck'],undefined)?_0x3f2b19['requireAck']:![],'clearCache':_0x2c16f7[_0x10cc48(0xf6)](_0x3f2b19[_0x10cc48(0xed)],undefined)?_0x3f2b19['clearCache']:!![],'senderId':messagehub['socket']?messagehub[_0x10cc48(0x10e)]['id']:'restforge'};_0x2c16f7['OjDtj'](log,_0x10cc48(0x116));const _0x57f192={'type':_0x1be6c4,'content':_0x4a9e1a},_0x49b0bb=await _0x42a2a8['publish'](_0x57f192,_0x4652a5);return _0x2c16f7['uYGnQ'](log,_0x10cc48(0xc7)+_0x2406be),{'success':!![],'requestId':_0x49b0bb[_0x10cc48(0x11b)],'topic':_0x2406be,'message':_0x10cc48(0xea)};}catch(_0x303ea3){return _0x2c16f7[_0x10cc48(0x118)](log,'⚠️\x20Error\x20publishing\x20message:\x20'+_0x303ea3[_0x10cc48(0x10f)]),{'success':![],'error':_0x303ea3[_0x10cc48(0x10f)],'topic':_0x2406be,'message':_0x2c16f7['vkcwD']};}}async function closeConnection(){const _0x2772ed=a0_0xeb6e32,_0x519644={'TwzCu':function(_0x45fcc9,_0x1502b0){return _0x45fcc9(_0x1502b0);},'oTtNe':function(_0x3ad676,_0x17b71d){return _0x3ad676&&_0x17b71d;},'LGCVr':_0x2772ed(0xe0),'XUbls':'Koneksi\x20MessageHub\x20ditutup\x20dengan\x20disconnect()','rzcKs':_0x2772ed(0xc5),'AnhsX':_0x2772ed(0xfe)};timeoutHandler&&(_0x519644[_0x2772ed(0xd3)](clearTimeout,timeoutHandler),timeoutHandler=null);if(_0x519644['oTtNe'](isConnected,messagehub))try{if(typeof messagehub[_0x2772ed(0x113)]===_0x519644[_0x2772ed(0xf7)])await messagehub[_0x2772ed(0x113)](),_0x519644[_0x2772ed(0xd3)](log,_0x519644[_0x2772ed(0x11a)]);else{if(typeof messagehub['close']===_0x519644['LGCVr'])await messagehub[_0x2772ed(0xf4)](),log(_0x519644[_0x2772ed(0xcf)]);else messagehub[_0x2772ed(0x10e)]&&typeof messagehub['socket']['disconnect']===_0x2772ed(0xe0)?(messagehub['socket']['disconnect'](),log('Koneksi\x20MessageHub\x20ditutup\x20dengan\x20socket.disconnect()')):log(_0x519644[_0x2772ed(0xd6)]);}isConnected=![],connectionPromise=null;}catch(_0xcf03a3){log('Error\x20saat\x20menutup\x20koneksi:\x20'+_0xcf03a3['message']);}}module['exports']={'initMessageHub':initMessageHub,'publishMessage':publishMessage,'closeConnection':closeConnection};
|