@aerokit/sdk 12.44.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/LICENSE +277 -0
- package/README.md +170 -0
- package/dist/cjs/bpm/deployer.js +57 -0
- package/dist/cjs/bpm/index.js +35 -0
- package/dist/cjs/bpm/process.js +636 -0
- package/dist/cjs/bpm/tasks.js +973 -0
- package/dist/cjs/bpm/values.js +82 -0
- package/dist/cjs/cache/cache.js +64 -0
- package/dist/cjs/cache/index.js +26 -0
- package/dist/cjs/cms/cmis.js +689 -0
- package/dist/cjs/cms/index.js +26 -0
- package/dist/cjs/component/decorators.js +126 -0
- package/dist/cjs/component/index.js +36 -0
- package/dist/cjs/core/configurations.js +110 -0
- package/dist/cjs/core/context.js +47 -0
- package/dist/cjs/core/env.js +45 -0
- package/dist/cjs/core/globals.js +54 -0
- package/dist/cjs/core/index.js +35 -0
- package/dist/cjs/db/dao.js +795 -0
- package/dist/cjs/db/database.js +904 -0
- package/dist/cjs/db/decorators.js +167 -0
- package/dist/cjs/db/index.js +72 -0
- package/dist/cjs/db/insert.js +51 -0
- package/dist/cjs/db/orm.js +245 -0
- package/dist/cjs/db/ormstatements.js +243 -0
- package/dist/cjs/db/procedure.js +112 -0
- package/dist/cjs/db/query.js +57 -0
- package/dist/cjs/db/repository.js +148 -0
- package/dist/cjs/db/sequence.js +59 -0
- package/dist/cjs/db/sql.js +516 -0
- package/dist/cjs/db/store.js +172 -0
- package/dist/cjs/db/translator.js +100 -0
- package/dist/cjs/db/update.js +43 -0
- package/dist/cjs/etcd/client.js +174 -0
- package/dist/cjs/etcd/index.js +26 -0
- package/dist/cjs/extensions/decorators.js +40 -0
- package/dist/cjs/extensions/extensions.js +108 -0
- package/dist/cjs/extensions/index.js +39 -0
- package/dist/cjs/git/client.js +277 -0
- package/dist/cjs/git/index.js +26 -0
- package/dist/cjs/http/client-async.js +224 -0
- package/dist/cjs/http/client.js +145 -0
- package/dist/cjs/http/decorators.js +76 -0
- package/dist/cjs/http/errors/ForbiddenError.js +41 -0
- package/dist/cjs/http/errors/ValidationError.js +41 -0
- package/dist/cjs/http/errors.js +26 -0
- package/dist/cjs/http/index.js +59 -0
- package/dist/cjs/http/request.js +281 -0
- package/dist/cjs/http/response.js +452 -0
- package/dist/cjs/http/rs/resource-common.js +32 -0
- package/dist/cjs/http/rs/resource-http-controller.js +306 -0
- package/dist/cjs/http/rs/resource-mappings.js +130 -0
- package/dist/cjs/http/rs/resource-method.js +218 -0
- package/dist/cjs/http/rs/resource.js +232 -0
- package/dist/cjs/http/rs.js +31 -0
- package/dist/cjs/http/session.js +124 -0
- package/dist/cjs/http/upload.js +144 -0
- package/dist/cjs/http/utils.js +106 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/indexing/index.js +29 -0
- package/dist/cjs/indexing/searcher.js +70 -0
- package/dist/cjs/indexing/writer.js +45 -0
- package/dist/cjs/integrations/index.js +26 -0
- package/dist/cjs/integrations/integrations.js +55 -0
- package/dist/cjs/io/bytes.js +101 -0
- package/dist/cjs/io/files.js +344 -0
- package/dist/cjs/io/image.js +43 -0
- package/dist/cjs/io/index.js +38 -0
- package/dist/cjs/io/streams.js +243 -0
- package/dist/cjs/io/zip.js +251 -0
- package/dist/cjs/job/decorators.js +40 -0
- package/dist/cjs/job/index.js +39 -0
- package/dist/cjs/job/scheduler.js +347 -0
- package/dist/cjs/junit/index.js +18 -0
- package/dist/cjs/junit/junit.js +67 -0
- package/dist/cjs/kafka/consumer.js +70 -0
- package/dist/cjs/kafka/index.js +29 -0
- package/dist/cjs/kafka/producer.js +70 -0
- package/dist/cjs/log/index.js +26 -0
- package/dist/cjs/log/logging.js +174 -0
- package/dist/cjs/mail/client.js +153 -0
- package/dist/cjs/mail/index.js +26 -0
- package/dist/cjs/messaging/consumer.js +83 -0
- package/dist/cjs/messaging/decorators.js +40 -0
- package/dist/cjs/messaging/index.js +42 -0
- package/dist/cjs/messaging/producer.js +81 -0
- package/dist/cjs/mongodb/client.js +627 -0
- package/dist/cjs/mongodb/dao.js +390 -0
- package/dist/cjs/mongodb/index.js +36 -0
- package/dist/cjs/net/decorators.js +40 -0
- package/dist/cjs/net/index.js +42 -0
- package/dist/cjs/net/soap.js +228 -0
- package/dist/cjs/net/websockets.js +151 -0
- package/dist/cjs/net/wrappers/onClose.js +2 -0
- package/dist/cjs/net/wrappers/onError.js +2 -0
- package/dist/cjs/net/wrappers/onMessage.js +2 -0
- package/dist/cjs/net/wrappers/onOpen.js +2 -0
- package/dist/cjs/pdf/index.js +26 -0
- package/dist/cjs/pdf/pdf.js +160 -0
- package/dist/cjs/platform/command.js +47 -0
- package/dist/cjs/platform/engines.js +70 -0
- package/dist/cjs/platform/index.js +47 -0
- package/dist/cjs/platform/lifecycle.js +49 -0
- package/dist/cjs/platform/os.js +51 -0
- package/dist/cjs/platform/problems.js +127 -0
- package/dist/cjs/platform/registry.js +319 -0
- package/dist/cjs/platform/repository.js +498 -0
- package/dist/cjs/platform/workspace.js +574 -0
- package/dist/cjs/qldb/index.js +26 -0
- package/dist/cjs/qldb/qldb.js +24 -0
- package/dist/cjs/rabbitmq/consumer.js +50 -0
- package/dist/cjs/rabbitmq/index.js +29 -0
- package/dist/cjs/rabbitmq/producer.js +38 -0
- package/dist/cjs/redis/client.js +190 -0
- package/dist/cjs/redis/index.js +26 -0
- package/dist/cjs/security/decorators.js +48 -0
- package/dist/cjs/security/index.js +40 -0
- package/dist/cjs/security/oauth.js +75 -0
- package/dist/cjs/security/user.js +88 -0
- package/dist/cjs/template/engines.js +139 -0
- package/dist/cjs/template/index.js +26 -0
- package/dist/cjs/utils/alphanumeric.js +107 -0
- package/dist/cjs/utils/base64.js +104 -0
- package/dist/cjs/utils/converter.js +78 -0
- package/dist/cjs/utils/digest.js +167 -0
- package/dist/cjs/utils/escape.js +160 -0
- package/dist/cjs/utils/hex.js +104 -0
- package/dist/cjs/utils/index.js +68 -0
- package/dist/cjs/utils/jsonpath.js +489 -0
- package/dist/cjs/utils/qrcode.js +41 -0
- package/dist/cjs/utils/url.js +82 -0
- package/dist/cjs/utils/utf8.js +61 -0
- package/dist/cjs/utils/uuid.js +48 -0
- package/dist/cjs/utils/xml.js +57 -0
- package/dist/dts/bpm/deployer.d.ts +29 -0
- package/dist/dts/bpm/index.d.ts +8 -0
- package/dist/dts/bpm/process.d.ts +433 -0
- package/dist/dts/bpm/tasks.d.ts +2022 -0
- package/dist/dts/bpm/values.d.ts +38 -0
- package/dist/dts/cache/cache.d.ts +30 -0
- package/dist/dts/cache/index.d.ts +2 -0
- package/dist/dts/cms/cmis.d.ts +413 -0
- package/dist/dts/cms/index.d.ts +2 -0
- package/dist/dts/component/decorators.d.ts +52 -0
- package/dist/dts/component/index.d.ts +2 -0
- package/dist/dts/core/configurations.d.ts +65 -0
- package/dist/dts/core/context.d.ts +19 -0
- package/dist/dts/core/env.d.ts +23 -0
- package/dist/dts/core/globals.d.ts +30 -0
- package/dist/dts/core/index.d.ts +8 -0
- package/dist/dts/db/dao.d.ts +8 -0
- package/dist/dts/db/database.d.ts +507 -0
- package/dist/dts/db/decorators.d.ts +89 -0
- package/dist/dts/db/index.d.ts +25 -0
- package/dist/dts/db/insert.d.ts +32 -0
- package/dist/dts/db/orm.d.ts +44 -0
- package/dist/dts/db/ormstatements.d.ts +4 -0
- package/dist/dts/db/procedure.d.ts +25 -0
- package/dist/dts/db/query.d.ts +48 -0
- package/dist/dts/db/repository.d.ts +64 -0
- package/dist/dts/db/sequence.d.ts +34 -0
- package/dist/dts/db/sql.d.ts +267 -0
- package/dist/dts/db/store.d.ts +138 -0
- package/dist/dts/db/translator.d.ts +26 -0
- package/dist/dts/db/update.d.ts +21 -0
- package/dist/dts/etcd/client.d.ts +92 -0
- package/dist/dts/etcd/index.d.ts +2 -0
- package/dist/dts/extensions/decorators.d.ts +11 -0
- package/dist/dts/extensions/extensions.d.ts +41 -0
- package/dist/dts/extensions/index.d.ts +4 -0
- package/dist/dts/git/client.d.ts +478 -0
- package/dist/dts/git/index.d.ts +2 -0
- package/dist/dts/http/client-async.d.ts +158 -0
- package/dist/dts/http/client.d.ts +180 -0
- package/dist/dts/http/decorators.d.ts +11 -0
- package/dist/dts/http/errors/ForbiddenError.d.ts +20 -0
- package/dist/dts/http/errors/ValidationError.d.ts +20 -0
- package/dist/dts/http/errors.d.ts +2 -0
- package/dist/dts/http/index.d.ts +16 -0
- package/dist/dts/http/request.d.ts +158 -0
- package/dist/dts/http/response.d.ts +281 -0
- package/dist/dts/http/rs/resource-common.d.ts +11 -0
- package/dist/dts/http/rs/resource-http-controller.d.ts +43 -0
- package/dist/dts/http/rs/resource-mappings.d.ts +70 -0
- package/dist/dts/http/rs/resource-method.d.ts +206 -0
- package/dist/dts/http/rs/resource.d.ts +126 -0
- package/dist/dts/http/rs.d.ts +4 -0
- package/dist/dts/http/session.d.ts +81 -0
- package/dist/dts/http/upload.d.ts +100 -0
- package/dist/dts/http/utils.d.ts +54 -0
- package/dist/dts/index.d.ts +0 -0
- package/dist/dts/indexing/index.d.ts +4 -0
- package/dist/dts/indexing/searcher.d.ts +47 -0
- package/dist/dts/indexing/writer.d.ts +22 -0
- package/dist/dts/integrations/index.d.ts +2 -0
- package/dist/dts/integrations/integrations.d.ts +118 -0
- package/dist/dts/io/bytes.d.ts +56 -0
- package/dist/dts/io/files.d.ts +261 -0
- package/dist/dts/io/image.d.ts +22 -0
- package/dist/dts/io/index.d.ts +10 -0
- package/dist/dts/io/streams.d.ts +172 -0
- package/dist/dts/io/zip.d.ts +178 -0
- package/dist/dts/job/decorators.d.ts +11 -0
- package/dist/dts/job/index.d.ts +4 -0
- package/dist/dts/job/scheduler.d.ts +250 -0
- package/dist/dts/junit/index.d.ts +1 -0
- package/dist/dts/junit/junit.d.ts +50 -0
- package/dist/dts/kafka/consumer.d.ts +48 -0
- package/dist/dts/kafka/index.d.ts +4 -0
- package/dist/dts/kafka/producer.d.ts +50 -0
- package/dist/dts/log/index.d.ts +2 -0
- package/dist/dts/log/logging.d.ts +102 -0
- package/dist/dts/mail/client.d.ts +90 -0
- package/dist/dts/mail/index.d.ts +2 -0
- package/dist/dts/messaging/consumer.d.ts +61 -0
- package/dist/dts/messaging/decorators.d.ts +11 -0
- package/dist/dts/messaging/index.d.ts +6 -0
- package/dist/dts/messaging/producer.d.ts +59 -0
- package/dist/dts/mongodb/client.d.ts +367 -0
- package/dist/dts/mongodb/dao.d.ts +24 -0
- package/dist/dts/mongodb/index.d.ts +2 -0
- package/dist/dts/net/decorators.d.ts +11 -0
- package/dist/dts/net/index.d.ts +6 -0
- package/dist/dts/net/soap.d.ts +115 -0
- package/dist/dts/net/websockets.d.ts +100 -0
- package/dist/dts/net/wrappers/onClose.d.ts +0 -0
- package/dist/dts/net/wrappers/onError.d.ts +0 -0
- package/dist/dts/net/wrappers/onMessage.d.ts +0 -0
- package/dist/dts/net/wrappers/onOpen.d.ts +0 -0
- package/dist/dts/pdf/index.d.ts +2 -0
- package/dist/dts/pdf/pdf.d.ts +72 -0
- package/dist/dts/platform/command.d.ts +41 -0
- package/dist/dts/platform/engines.d.ts +35 -0
- package/dist/dts/platform/index.d.ts +16 -0
- package/dist/dts/platform/lifecycle.d.ts +22 -0
- package/dist/dts/platform/os.d.ts +23 -0
- package/dist/dts/platform/problems.d.ts +114 -0
- package/dist/dts/platform/registry.d.ts +227 -0
- package/dist/dts/platform/repository.d.ts +354 -0
- package/dist/dts/platform/workspace.d.ts +421 -0
- package/dist/dts/qldb/index.d.ts +2 -0
- package/dist/dts/qldb/qldb.d.ts +1 -0
- package/dist/dts/rabbitmq/consumer.d.ts +25 -0
- package/dist/dts/rabbitmq/index.d.ts +4 -0
- package/dist/dts/rabbitmq/producer.d.ts +15 -0
- package/dist/dts/redis/client.d.ts +134 -0
- package/dist/dts/redis/index.d.ts +2 -0
- package/dist/dts/security/decorators.d.ts +4 -0
- package/dist/dts/security/index.d.ts +5 -0
- package/dist/dts/security/oauth.d.ts +39 -0
- package/dist/dts/security/user.d.ts +51 -0
- package/dist/dts/template/engines.d.ts +98 -0
- package/dist/dts/template/index.d.ts +2 -0
- package/dist/dts/utils/alphanumeric.d.ts +39 -0
- package/dist/dts/utils/base64.d.ts +48 -0
- package/dist/dts/utils/converter.d.ts +44 -0
- package/dist/dts/utils/digest.d.ts +50 -0
- package/dist/dts/utils/escape.d.ts +110 -0
- package/dist/dts/utils/hex.d.ts +48 -0
- package/dist/dts/utils/index.d.ts +23 -0
- package/dist/dts/utils/jsonpath.d.ts +22 -0
- package/dist/dts/utils/qrcode.d.ts +16 -0
- package/dist/dts/utils/url.d.ts +50 -0
- package/dist/dts/utils/utf8.d.ts +33 -0
- package/dist/dts/utils/uuid.d.ts +21 -0
- package/dist/dts/utils/xml.d.ts +22 -0
- package/dist/esm/bpm/deployer.mjs +38 -0
- package/dist/esm/bpm/index.mjs +15 -0
- package/dist/esm/bpm/process.mjs +617 -0
- package/dist/esm/bpm/tasks.mjs +954 -0
- package/dist/esm/bpm/values.mjs +63 -0
- package/dist/esm/cache/cache.mjs +45 -0
- package/dist/esm/cache/index.mjs +6 -0
- package/dist/esm/cms/cmis.mjs +660 -0
- package/dist/esm/cms/index.mjs +6 -0
- package/dist/esm/component/decorators.mjs +107 -0
- package/dist/esm/component/index.mjs +6 -0
- package/dist/esm/core/configurations.mjs +91 -0
- package/dist/esm/core/context.mjs +28 -0
- package/dist/esm/core/env.mjs +26 -0
- package/dist/esm/core/globals.mjs +35 -0
- package/dist/esm/core/index.mjs +15 -0
- package/dist/esm/db/dao.mjs +775 -0
- package/dist/esm/db/database.mjs +885 -0
- package/dist/esm/db/decorators.mjs +148 -0
- package/dist/esm/db/index.mjs +42 -0
- package/dist/esm/db/insert.mjs +32 -0
- package/dist/esm/db/orm.mjs +225 -0
- package/dist/esm/db/ormstatements.mjs +223 -0
- package/dist/esm/db/procedure.mjs +93 -0
- package/dist/esm/db/query.mjs +38 -0
- package/dist/esm/db/repository.mjs +129 -0
- package/dist/esm/db/sequence.mjs +40 -0
- package/dist/esm/db/sql.mjs +497 -0
- package/dist/esm/db/store.mjs +153 -0
- package/dist/esm/db/translator.mjs +81 -0
- package/dist/esm/db/update.mjs +24 -0
- package/dist/esm/etcd/client.mjs +155 -0
- package/dist/esm/etcd/index.mjs +6 -0
- package/dist/esm/extensions/decorators.mjs +21 -0
- package/dist/esm/extensions/extensions.mjs +89 -0
- package/dist/esm/extensions/index.mjs +9 -0
- package/dist/esm/git/client.mjs +258 -0
- package/dist/esm/git/index.mjs +6 -0
- package/dist/esm/http/client-async.mjs +205 -0
- package/dist/esm/http/client.mjs +126 -0
- package/dist/esm/http/decorators.mjs +47 -0
- package/dist/esm/http/errors/ForbiddenError.mjs +22 -0
- package/dist/esm/http/errors/ValidationError.mjs +22 -0
- package/dist/esm/http/errors.mjs +7 -0
- package/dist/esm/http/index.mjs +29 -0
- package/dist/esm/http/request.mjs +262 -0
- package/dist/esm/http/response.mjs +433 -0
- package/dist/esm/http/rs/resource-common.mjs +13 -0
- package/dist/esm/http/rs/resource-http-controller.mjs +287 -0
- package/dist/esm/http/rs/resource-mappings.mjs +111 -0
- package/dist/esm/http/rs/resource-method.mjs +199 -0
- package/dist/esm/http/rs/resource.mjs +213 -0
- package/dist/esm/http/rs.mjs +12 -0
- package/dist/esm/http/session.mjs +105 -0
- package/dist/esm/http/upload.mjs +125 -0
- package/dist/esm/http/utils.mjs +87 -0
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/indexing/index.mjs +9 -0
- package/dist/esm/indexing/searcher.mjs +51 -0
- package/dist/esm/indexing/writer.mjs +26 -0
- package/dist/esm/integrations/index.mjs +6 -0
- package/dist/esm/integrations/integrations.mjs +36 -0
- package/dist/esm/io/bytes.mjs +82 -0
- package/dist/esm/io/files.mjs +325 -0
- package/dist/esm/io/image.mjs +24 -0
- package/dist/esm/io/index.mjs +18 -0
- package/dist/esm/io/streams.mjs +224 -0
- package/dist/esm/io/zip.mjs +232 -0
- package/dist/esm/job/decorators.mjs +21 -0
- package/dist/esm/job/index.mjs +9 -0
- package/dist/esm/job/scheduler.mjs +328 -0
- package/dist/esm/junit/index.mjs +2 -0
- package/dist/esm/junit/junit.mjs +48 -0
- package/dist/esm/kafka/consumer.mjs +51 -0
- package/dist/esm/kafka/index.mjs +9 -0
- package/dist/esm/kafka/producer.mjs +51 -0
- package/dist/esm/log/index.mjs +6 -0
- package/dist/esm/log/logging.mjs +155 -0
- package/dist/esm/mail/client.mjs +134 -0
- package/dist/esm/mail/index.mjs +6 -0
- package/dist/esm/messaging/consumer.mjs +64 -0
- package/dist/esm/messaging/decorators.mjs +21 -0
- package/dist/esm/messaging/index.mjs +12 -0
- package/dist/esm/messaging/producer.mjs +62 -0
- package/dist/esm/mongodb/client.mjs +608 -0
- package/dist/esm/mongodb/dao.mjs +360 -0
- package/dist/esm/mongodb/index.mjs +7 -0
- package/dist/esm/net/decorators.mjs +21 -0
- package/dist/esm/net/index.mjs +12 -0
- package/dist/esm/net/soap.mjs +209 -0
- package/dist/esm/net/websockets.mjs +132 -0
- package/dist/esm/net/wrappers/onClose.mjs +2 -0
- package/dist/esm/net/wrappers/onError.mjs +2 -0
- package/dist/esm/net/wrappers/onMessage.mjs +2 -0
- package/dist/esm/net/wrappers/onOpen.mjs +2 -0
- package/dist/esm/pdf/index.mjs +6 -0
- package/dist/esm/pdf/pdf.mjs +141 -0
- package/dist/esm/platform/command.mjs +28 -0
- package/dist/esm/platform/engines.mjs +51 -0
- package/dist/esm/platform/index.mjs +27 -0
- package/dist/esm/platform/lifecycle.mjs +30 -0
- package/dist/esm/platform/os.mjs +32 -0
- package/dist/esm/platform/problems.mjs +108 -0
- package/dist/esm/platform/registry.mjs +300 -0
- package/dist/esm/platform/repository.mjs +479 -0
- package/dist/esm/platform/workspace.mjs +555 -0
- package/dist/esm/qldb/index.mjs +6 -0
- package/dist/esm/qldb/qldb.mjs +5 -0
- package/dist/esm/rabbitmq/consumer.mjs +31 -0
- package/dist/esm/rabbitmq/index.mjs +9 -0
- package/dist/esm/rabbitmq/producer.mjs +19 -0
- package/dist/esm/redis/client.mjs +171 -0
- package/dist/esm/redis/index.mjs +6 -0
- package/dist/esm/security/decorators.mjs +29 -0
- package/dist/esm/security/index.mjs +10 -0
- package/dist/esm/security/oauth.mjs +56 -0
- package/dist/esm/security/user.mjs +69 -0
- package/dist/esm/template/engines.mjs +120 -0
- package/dist/esm/template/index.mjs +6 -0
- package/dist/esm/utils/alphanumeric.mjs +88 -0
- package/dist/esm/utils/base64.mjs +85 -0
- package/dist/esm/utils/converter.mjs +59 -0
- package/dist/esm/utils/digest.mjs +148 -0
- package/dist/esm/utils/escape.mjs +141 -0
- package/dist/esm/utils/hex.mjs +85 -0
- package/dist/esm/utils/index.mjs +38 -0
- package/dist/esm/utils/jsonpath.mjs +470 -0
- package/dist/esm/utils/qrcode.mjs +22 -0
- package/dist/esm/utils/url.mjs +63 -0
- package/dist/esm/utils/utf8.mjs +42 -0
- package/dist/esm/utils/uuid.mjs +29 -0
- package/dist/esm/utils/xml.mjs +38 -0
- package/package.json +58 -0
|
@@ -0,0 +1,347 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var scheduler_exports = {};
|
|
19
|
+
__export(scheduler_exports, {
|
|
20
|
+
Scheduler: () => Scheduler
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(scheduler_exports);
|
|
23
|
+
var import_core = require("@aerokit/sdk/core");
|
|
24
|
+
const JobFacade = Java.type("org.eclipse.dirigible.components.api.job.JobFacade");
|
|
25
|
+
class Scheduler {
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves all job definitions currently configured in the system.
|
|
28
|
+
*
|
|
29
|
+
* @returns An array of {@link Job} objects.
|
|
30
|
+
*/
|
|
31
|
+
static getJobs() {
|
|
32
|
+
const jobs = new Array();
|
|
33
|
+
const jobDefinitions = JSON.parse(JobFacade.getJobs());
|
|
34
|
+
for (const definition of jobDefinitions) {
|
|
35
|
+
jobs.push(new Job(definition));
|
|
36
|
+
}
|
|
37
|
+
return jobs;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Retrieves a specific job definition by its unique name.
|
|
41
|
+
*
|
|
42
|
+
* @param name The name of the job.
|
|
43
|
+
* @returns A {@link Job} object corresponding to the provided name.
|
|
44
|
+
*/
|
|
45
|
+
static getJob(name) {
|
|
46
|
+
const jobDefinition = JSON.parse(JobFacade.getJob(name));
|
|
47
|
+
return new Job(jobDefinition);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Enables a job, allowing it to be executed according to its schedule (cron expression).
|
|
51
|
+
*
|
|
52
|
+
* @param name The name of the job to enable.
|
|
53
|
+
*/
|
|
54
|
+
static enable(name) {
|
|
55
|
+
JobFacade.enable(name);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Disables a job, preventing it from executing on its schedule.
|
|
59
|
+
*
|
|
60
|
+
* @param name The name of the job to disable.
|
|
61
|
+
*/
|
|
62
|
+
static disable(name) {
|
|
63
|
+
JobFacade.disable(name);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Triggers the immediate execution of a job.
|
|
67
|
+
*
|
|
68
|
+
* @param name The name of the job to trigger.
|
|
69
|
+
* @param parameters Optional key-value object of parameters to pass to the job execution.
|
|
70
|
+
*/
|
|
71
|
+
static trigger(name, parameters = {}) {
|
|
72
|
+
JobFacade.trigger(name, JSON.stringify(parameters));
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Logs a message at the standard log level for a specific job instance.
|
|
76
|
+
* This is useful when the log context needs to be associated with a running job.
|
|
77
|
+
*
|
|
78
|
+
* @param name The name of the job to associate the log with.
|
|
79
|
+
* @param message The log message content.
|
|
80
|
+
*/
|
|
81
|
+
static log(name, message) {
|
|
82
|
+
JobFacade.log(name, message);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Logs an error message for a specific job instance.
|
|
86
|
+
*
|
|
87
|
+
* @param name The name of the job.
|
|
88
|
+
* @param message The error message content.
|
|
89
|
+
*/
|
|
90
|
+
static error(name, message) {
|
|
91
|
+
JobFacade.error(name, message);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Logs a warning message for a specific job instance.
|
|
95
|
+
*
|
|
96
|
+
* @param name The name of the job.
|
|
97
|
+
* @param message The warning message content.
|
|
98
|
+
*/
|
|
99
|
+
static warn(name, message) {
|
|
100
|
+
JobFacade.warn(name, message);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Logs an informational message for a specific job instance.
|
|
104
|
+
*
|
|
105
|
+
* @param name The name of the job.
|
|
106
|
+
* @param message The information message content.
|
|
107
|
+
*/
|
|
108
|
+
static info(name, message) {
|
|
109
|
+
JobFacade.info(name, message);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
class Job {
|
|
113
|
+
/**
|
|
114
|
+
* @param data The raw data object containing job properties.
|
|
115
|
+
*/
|
|
116
|
+
constructor(data) {
|
|
117
|
+
this.data = data;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Gets the unique name of the job.
|
|
121
|
+
* @returns The job name.
|
|
122
|
+
*/
|
|
123
|
+
getName() {
|
|
124
|
+
return this.data.name;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Gets the logical grouping for the job.
|
|
128
|
+
* @returns The job group name.
|
|
129
|
+
*/
|
|
130
|
+
getGroup() {
|
|
131
|
+
return this.data.group;
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Gets the Java class name (for Java-based jobs) or script file name (for script-based jobs).
|
|
135
|
+
* @returns The job implementation class/file name.
|
|
136
|
+
*/
|
|
137
|
+
getClazz() {
|
|
138
|
+
return this.data.clazz;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Gets the description of the job's purpose.
|
|
142
|
+
* @returns The job description.
|
|
143
|
+
*/
|
|
144
|
+
getDescription() {
|
|
145
|
+
return this.data.description;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Gets the cron expression defining the job's schedule.
|
|
149
|
+
* @returns The cron expression string.
|
|
150
|
+
*/
|
|
151
|
+
getExpression() {
|
|
152
|
+
return this.data.expression;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Gets the handler file path or resource name for script-based jobs.
|
|
156
|
+
* @returns The handler path.
|
|
157
|
+
*/
|
|
158
|
+
getHandler() {
|
|
159
|
+
return this.data.handler;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Gets the execution engine type (e.g., 'JavaScript', 'Java').
|
|
163
|
+
* @returns The engine type.
|
|
164
|
+
*/
|
|
165
|
+
getEngine() {
|
|
166
|
+
return this.data.engine;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Checks if the job is configured as a singleton (only one instance runs at a time).
|
|
170
|
+
* @returns True if the job is a singleton.
|
|
171
|
+
*/
|
|
172
|
+
getSingleton() {
|
|
173
|
+
return this.data.singleton;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Checks if the job is currently enabled for scheduled execution.
|
|
177
|
+
* @returns True if the job is enabled.
|
|
178
|
+
*/
|
|
179
|
+
getEnabled() {
|
|
180
|
+
return this.data.enabled;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Gets the user ID who created the job definition.
|
|
184
|
+
* @returns The creator's user ID.
|
|
185
|
+
*/
|
|
186
|
+
getCreatedBy() {
|
|
187
|
+
return this.data.createdBy;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Gets the timestamp when the job definition was created.
|
|
191
|
+
* @returns The creation time as a numerical timestamp.
|
|
192
|
+
*/
|
|
193
|
+
getCreatedAt() {
|
|
194
|
+
return this.data.createdAt;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Gets the parameters associated with this job definition.
|
|
198
|
+
* @returns A {@link JobParameters} object containing all parameters.
|
|
199
|
+
*/
|
|
200
|
+
getParameters() {
|
|
201
|
+
return new JobParameters(this.data.parameters);
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Retrieves the value for a specific parameter of this job.
|
|
205
|
+
* It checks for an overriding value in the global configurations first,
|
|
206
|
+
* and falls back to the defined default value if the configuration is not set.
|
|
207
|
+
*
|
|
208
|
+
* @param name The name of the parameter to retrieve.
|
|
209
|
+
* @returns The parameter's configured or default value, or null if not found.
|
|
210
|
+
*/
|
|
211
|
+
getParameter(name) {
|
|
212
|
+
if (this.data) {
|
|
213
|
+
for (let i in this.data.parameters) {
|
|
214
|
+
if (this.data.parameters[i].name === name) {
|
|
215
|
+
let value = import_core.configurations.get(name);
|
|
216
|
+
return value && value !== null ? value : this.data.parameters[i].defaultValue;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
} else {
|
|
220
|
+
console.error("Job is not valid");
|
|
221
|
+
}
|
|
222
|
+
return null;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Enables this specific job instance.
|
|
226
|
+
*/
|
|
227
|
+
enable() {
|
|
228
|
+
JobFacade.enable(this.getName());
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Disables this specific job instance.
|
|
232
|
+
*/
|
|
233
|
+
disable() {
|
|
234
|
+
JobFacade.disable(this.getName());
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Triggers the immediate execution of this job instance.
|
|
238
|
+
*
|
|
239
|
+
* @param parameters Optional key-value object of parameters to pass to the job execution.
|
|
240
|
+
*/
|
|
241
|
+
trigger(parameters = {}) {
|
|
242
|
+
JobFacade.trigger(this.getName(), JSON.stringify(parameters));
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Logs a message at the standard log level for this job instance.
|
|
246
|
+
*
|
|
247
|
+
* @param message The log message content.
|
|
248
|
+
*/
|
|
249
|
+
log(message) {
|
|
250
|
+
JobFacade.log(this.getName(), message);
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Logs an error message for this job instance.
|
|
254
|
+
*
|
|
255
|
+
* @param message The error message content.
|
|
256
|
+
*/
|
|
257
|
+
error(message) {
|
|
258
|
+
JobFacade.error(this.getName(), message);
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Logs a warning message for this job instance.
|
|
262
|
+
*
|
|
263
|
+
* @param message The warning message content.
|
|
264
|
+
*/
|
|
265
|
+
warn(message) {
|
|
266
|
+
JobFacade.warn(this.getName(), message);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Logs an informational message for this job instance.
|
|
270
|
+
*
|
|
271
|
+
* @param message The information message content.
|
|
272
|
+
*/
|
|
273
|
+
info(message) {
|
|
274
|
+
JobFacade.info(this.getName(), message);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
class JobParameters {
|
|
278
|
+
/**
|
|
279
|
+
* @param data The array of raw job parameter objects.
|
|
280
|
+
*/
|
|
281
|
+
constructor(data) {
|
|
282
|
+
this.data = data;
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Retrieves a specific job parameter by its index.
|
|
286
|
+
*
|
|
287
|
+
* @param i The index of the parameter in the array.
|
|
288
|
+
* @returns A {@link JobParameter} object.
|
|
289
|
+
*/
|
|
290
|
+
get(i) {
|
|
291
|
+
return new JobParameter(this.data[i]);
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Gets the total number of parameters defined for the job.
|
|
295
|
+
* @returns The count of parameters.
|
|
296
|
+
*/
|
|
297
|
+
count() {
|
|
298
|
+
return this.data.length;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
class JobParameter {
|
|
302
|
+
/**
|
|
303
|
+
* @param data The raw data object containing parameter properties.
|
|
304
|
+
*/
|
|
305
|
+
constructor(data) {
|
|
306
|
+
this.data = data;
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Gets the name of the parameter.
|
|
310
|
+
* @returns The parameter name.
|
|
311
|
+
*/
|
|
312
|
+
getName() {
|
|
313
|
+
return this.data.name;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Gets the description of the parameter.
|
|
317
|
+
* @returns The parameter description.
|
|
318
|
+
*/
|
|
319
|
+
getDescription() {
|
|
320
|
+
return this.data.description;
|
|
321
|
+
}
|
|
322
|
+
/**
|
|
323
|
+
* Gets the expected data type of the parameter (e.g., 'String', 'Integer', 'Boolean').
|
|
324
|
+
* @returns The parameter type.
|
|
325
|
+
*/
|
|
326
|
+
getType() {
|
|
327
|
+
return this.data.type;
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Gets the default value for the parameter.
|
|
331
|
+
* @returns The default value string.
|
|
332
|
+
*/
|
|
333
|
+
getDefaultValue() {
|
|
334
|
+
return this.data.defaultValue;
|
|
335
|
+
}
|
|
336
|
+
/**
|
|
337
|
+
* Gets a list of predefined choices for the parameter, if applicable.
|
|
338
|
+
* @returns An array of choice strings.
|
|
339
|
+
*/
|
|
340
|
+
getChoices() {
|
|
341
|
+
return this.data.choices;
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
if (typeof module !== "undefined") {
|
|
345
|
+
module.exports = Scheduler;
|
|
346
|
+
}
|
|
347
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2pvYi9zY2hlZHVsZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogUHJvdmlkZXMgdGhlIEFQSSBmb3IgbWFuYWdpbmcgc2NoZWR1bGVkIGpvYnMgYW5kIHRhc2tzIHdpdGhpbiB0aGUgcGxhdGZvcm0sXG4gKiBhbGxvd2luZyB1c2VycyB0byByZXRyaWV2ZSwgZW5hYmxlLCBkaXNhYmxlLCBhbmQgdHJpZ2dlciBqb2JzLCBhcyB3ZWxsIGFzIGxvZyBvdXRwdXQuXG4gKi9cblxuaW1wb3J0IHsgY29uZmlndXJhdGlvbnMgfSBmcm9tIFwiQGFlcm9raXQvc2RrL2NvcmVcIjtcblxuY29uc3QgSm9iRmFjYWRlID0gSmF2YS50eXBlKFwib3JnLmVjbGlwc2UuZGlyaWdpYmxlLmNvbXBvbmVudHMuYXBpLmpvYi5Kb2JGYWNhZGVcIik7XG5cbi8qKlxuICogVGhlIFNjaGVkdWxlciBjbGFzcyBwcm92aWRlcyBzdGF0aWMgbWV0aG9kcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgam9iIHNjaGVkdWxlcixcbiAqIG9mZmVyaW5nIGdsb2JhbCBjb250cm9sIG92ZXIgdGhlIHN5c3RlbSdzIGRlZmluZWQgam9icy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNjaGVkdWxlciB7XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYWxsIGpvYiBkZWZpbml0aW9ucyBjdXJyZW50bHkgY29uZmlndXJlZCBpbiB0aGUgc3lzdGVtLlxuICAgICAqXG4gICAgICogQHJldHVybnMgQW4gYXJyYXkgb2Yge0BsaW5rIEpvYn0gb2JqZWN0cy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldEpvYnMoKTogSm9iW10ge1xuICAgICAgICBjb25zdCBqb2JzID0gbmV3IEFycmF5PEpvYj4oKTtcbiAgICAgICAgY29uc3Qgam9iRGVmaW5pdGlvbnMgPSBKU09OLnBhcnNlKEpvYkZhY2FkZS5nZXRKb2JzKCkpO1xuICAgICAgICBmb3IgKGNvbnN0IGRlZmluaXRpb24gb2Ygam9iRGVmaW5pdGlvbnMpIHtcbiAgICAgICAgICAgIGpvYnMucHVzaChuZXcgSm9iKGRlZmluaXRpb24pKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gam9icztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBqb2IgZGVmaW5pdGlvbiBieSBpdHMgdW5pcXVlIG5hbWUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgam9iLlxuICAgICAqIEByZXR1cm5zIEEge0BsaW5rIEpvYn0gb2JqZWN0IGNvcnJlc3BvbmRpbmcgdG8gdGhlIHByb3ZpZGVkIG5hbWUuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBnZXRKb2IobmFtZTogc3RyaW5nKTogSm9iIHtcbiAgICAgICAgY29uc3Qgam9iRGVmaW5pdGlvbiA9IEpTT04ucGFyc2UoSm9iRmFjYWRlLmdldEpvYihuYW1lKSk7XG4gICAgICAgIHJldHVybiBuZXcgSm9iKGpvYkRlZmluaXRpb24pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVuYWJsZXMgYSBqb2IsIGFsbG93aW5nIGl0IHRvIGJlIGV4ZWN1dGVkIGFjY29yZGluZyB0byBpdHMgc2NoZWR1bGUgKGNyb24gZXhwcmVzc2lvbikuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgam9iIHRvIGVuYWJsZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGVuYWJsZShuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgSm9iRmFjYWRlLmVuYWJsZShuYW1lKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEaXNhYmxlcyBhIGpvYiwgcHJldmVudGluZyBpdCBmcm9tIGV4ZWN1dGluZyBvbiBpdHMgc2NoZWR1bGUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgam9iIHRvIGRpc2FibGUuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBkaXNhYmxlKG5hbWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBKb2JGYWNhZGUuZGlzYWJsZShuYW1lKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VycyB0aGUgaW1tZWRpYXRlIGV4ZWN1dGlvbiBvZiBhIGpvYi5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBqb2IgdG8gdHJpZ2dlci5cbiAgICAgKiBAcGFyYW0gcGFyYW1ldGVycyBPcHRpb25hbCBrZXktdmFsdWUgb2JqZWN0IG9mIHBhcmFtZXRlcnMgdG8gcGFzcyB0byB0aGUgam9iIGV4ZWN1dGlvbi5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHRyaWdnZXIobmFtZTogc3RyaW5nLCBwYXJhbWV0ZXJzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiB2b2lkIHtcbiAgICAgICAgSm9iRmFjYWRlLnRyaWdnZXIobmFtZSwgSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgYSBtZXNzYWdlIGF0IHRoZSBzdGFuZGFyZCBsb2cgbGV2ZWwgZm9yIGEgc3BlY2lmaWMgam9iIGluc3RhbmNlLlxuICAgICAqIFRoaXMgaXMgdXNlZnVsIHdoZW4gdGhlIGxvZyBjb250ZXh0IG5lZWRzIHRvIGJlIGFzc29jaWF0ZWQgd2l0aCBhIHJ1bm5pbmcgam9iLlxuICAgICAqXG4gICAgICogQHBhcmFtIG5hbWUgVGhlIG5hbWUgb2YgdGhlIGpvYiB0byBhc3NvY2lhdGUgdGhlIGxvZyB3aXRoLlxuICAgICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBsb2cgbWVzc2FnZSBjb250ZW50LlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgbG9nKG5hbWU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIEpvYkZhY2FkZS5sb2cobmFtZSwgbWVzc2FnZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9ncyBhbiBlcnJvciBtZXNzYWdlIGZvciBhIHNwZWNpZmljIGpvYiBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBqb2IuXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGVycm9yIG1lc3NhZ2UgY29udGVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGVycm9yKG5hbWU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIEpvYkZhY2FkZS5lcnJvcihuYW1lLCBtZXNzYWdlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2dzIGEgd2FybmluZyBtZXNzYWdlIGZvciBhIHNwZWNpZmljIGpvYiBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBqb2IuXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIHdhcm5pbmcgbWVzc2FnZSBjb250ZW50LlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgd2FybihuYW1lOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBKb2JGYWNhZGUud2FybihuYW1lLCBtZXNzYWdlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2dzIGFuIGluZm9ybWF0aW9uYWwgbWVzc2FnZSBmb3IgYSBzcGVjaWZpYyBqb2IgaW5zdGFuY2UuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgam9iLlxuICAgICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBpbmZvcm1hdGlvbiBtZXNzYWdlIGNvbnRlbnQuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbmZvKG5hbWU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIEpvYkZhY2FkZS5pbmZvKG5hbWUsIG1lc3NhZ2UpO1xuICAgIH1cblxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgc2NoZWR1bGVkIGpvYiBkZWZpbml0aW9uLlxuICovXG5jbGFzcyBKb2Ige1xuXG4gICAgcHJpdmF0ZSBkYXRhOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gZGF0YSBUaGUgcmF3IGRhdGEgb2JqZWN0IGNvbnRhaW5pbmcgam9iIHByb3BlcnRpZXMuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoZGF0YTogYW55KSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgdW5pcXVlIG5hbWUgb2YgdGhlIGpvYi5cbiAgICAgKiBAcmV0dXJucyBUaGUgam9iIG5hbWUuXG4gICAgICovXG4gICAgcHVibGljIGdldE5hbWUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5uYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGxvZ2ljYWwgZ3JvdXBpbmcgZm9yIHRoZSBqb2IuXG4gICAgICogQHJldHVybnMgVGhlIGpvYiBncm91cCBuYW1lLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRHcm91cCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmdyb3VwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIEphdmEgY2xhc3MgbmFtZSAoZm9yIEphdmEtYmFzZWQgam9icykgb3Igc2NyaXB0IGZpbGUgbmFtZSAoZm9yIHNjcmlwdC1iYXNlZCBqb2JzKS5cbiAgICAgKiBAcmV0dXJucyBUaGUgam9iIGltcGxlbWVudGF0aW9uIGNsYXNzL2ZpbGUgbmFtZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0Q2xhenooKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5jbGF6ejtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgam9iJ3MgcHVycG9zZS5cbiAgICAgKiBAcmV0dXJucyBUaGUgam9iIGRlc2NyaXB0aW9uLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXREZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmRlc2NyaXB0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGNyb24gZXhwcmVzc2lvbiBkZWZpbmluZyB0aGUgam9iJ3Mgc2NoZWR1bGUuXG4gICAgICogQHJldHVybnMgVGhlIGNyb24gZXhwcmVzc2lvbiBzdHJpbmcuXG4gICAgICovXG4gICAgcHVibGljIGdldEV4cHJlc3Npb24oKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5leHByZXNzaW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGhhbmRsZXIgZmlsZSBwYXRoIG9yIHJlc291cmNlIG5hbWUgZm9yIHNjcmlwdC1iYXNlZCBqb2JzLlxuICAgICAqIEByZXR1cm5zIFRoZSBoYW5kbGVyIHBhdGguXG4gICAgICovXG4gICAgcHVibGljIGdldEhhbmRsZXIoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5oYW5kbGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGV4ZWN1dGlvbiBlbmdpbmUgdHlwZSAoZS5nLiwgJ0phdmFTY3JpcHQnLCAnSmF2YScpLlxuICAgICAqIEByZXR1cm5zIFRoZSBlbmdpbmUgdHlwZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0RW5naW5lKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGEuZW5naW5lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGUgam9iIGlzIGNvbmZpZ3VyZWQgYXMgYSBzaW5nbGV0b24gKG9ubHkgb25lIGluc3RhbmNlIHJ1bnMgYXQgYSB0aW1lKS5cbiAgICAgKiBAcmV0dXJucyBUcnVlIGlmIHRoZSBqb2IgaXMgYSBzaW5nbGV0b24uXG4gICAgICovXG4gICAgcHVibGljIGdldFNpbmdsZXRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5zaW5nbGV0b247XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZSBqb2IgaXMgY3VycmVudGx5IGVuYWJsZWQgZm9yIHNjaGVkdWxlZCBleGVjdXRpb24uXG4gICAgICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgam9iIGlzIGVuYWJsZWQuXG4gICAgICovXG4gICAgcHVibGljIGdldEVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGEuZW5hYmxlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB1c2VyIElEIHdobyBjcmVhdGVkIHRoZSBqb2IgZGVmaW5pdGlvbi5cbiAgICAgKiBAcmV0dXJucyBUaGUgY3JlYXRvcidzIHVzZXIgSUQuXG4gICAgICovXG4gICAgcHVibGljIGdldENyZWF0ZWRCeSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmNyZWF0ZWRCeTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB0aW1lc3RhbXAgd2hlbiB0aGUgam9iIGRlZmluaXRpb24gd2FzIGNyZWF0ZWQuXG4gICAgICogQHJldHVybnMgVGhlIGNyZWF0aW9uIHRpbWUgYXMgYSBudW1lcmljYWwgdGltZXN0YW1wLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRDcmVhdGVkQXQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5jcmVhdGVkQXQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgcGFyYW1ldGVycyBhc3NvY2lhdGVkIHdpdGggdGhpcyBqb2IgZGVmaW5pdGlvbi5cbiAgICAgKiBAcmV0dXJucyBBIHtAbGluayBKb2JQYXJhbWV0ZXJzfSBvYmplY3QgY29udGFpbmluZyBhbGwgcGFyYW1ldGVycy5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0UGFyYW1ldGVycygpOiBKb2JQYXJhbWV0ZXJzIHtcbiAgICAgICAgcmV0dXJuIG5ldyBKb2JQYXJhbWV0ZXJzKHRoaXMuZGF0YS5wYXJhbWV0ZXJzKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgdGhlIHZhbHVlIGZvciBhIHNwZWNpZmljIHBhcmFtZXRlciBvZiB0aGlzIGpvYi5cbiAgICAgKiBJdCBjaGVja3MgZm9yIGFuIG92ZXJyaWRpbmcgdmFsdWUgaW4gdGhlIGdsb2JhbCBjb25maWd1cmF0aW9ucyBmaXJzdCxcbiAgICAgKiBhbmQgZmFsbHMgYmFjayB0byB0aGUgZGVmaW5lZCBkZWZhdWx0IHZhbHVlIGlmIHRoZSBjb25maWd1cmF0aW9uIGlzIG5vdCBzZXQuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgcGFyYW1ldGVyIHRvIHJldHJpZXZlLlxuICAgICAqIEByZXR1cm5zIFRoZSBwYXJhbWV0ZXIncyBjb25maWd1cmVkIG9yIGRlZmF1bHQgdmFsdWUsIG9yIG51bGwgaWYgbm90IGZvdW5kLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXRQYXJhbWV0ZXIobmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YSkge1xuICAgICAgICAgICAgZm9yIChsZXQgaSBpbiB0aGlzLmRhdGEucGFyYW1ldGVycykge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmRhdGEucGFyYW1ldGVyc1tpXS5uYW1lID09PSBuYW1lKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIENoZWNrIGdsb2JhbCBjb25maWd1cmF0aW9uIGZvciBvdmVycmlkZVxuICAgICAgICAgICAgICAgICAgICBsZXQgdmFsdWUgPSBjb25maWd1cmF0aW9ucy5nZXQobmFtZSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZSAmJiB2YWx1ZSAhPT0gbnVsbCA/IHZhbHVlIDogdGhpcy5kYXRhLnBhcmFtZXRlcnNbaV0uZGVmYXVsdFZhbHVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJKb2IgaXMgbm90IHZhbGlkXCIpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVuYWJsZXMgdGhpcyBzcGVjaWZpYyBqb2IgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcHVibGljIGVuYWJsZSgpOiB2b2lkIHtcbiAgICAgICAgSm9iRmFjYWRlLmVuYWJsZSh0aGlzLmdldE5hbWUoKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGlzYWJsZXMgdGhpcyBzcGVjaWZpYyBqb2IgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcHVibGljIGRpc2FibGUoKTogdm9pZCB7XG4gICAgICAgIEpvYkZhY2FkZS5kaXNhYmxlKHRoaXMuZ2V0TmFtZSgpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VycyB0aGUgaW1tZWRpYXRlIGV4ZWN1dGlvbiBvZiB0aGlzIGpvYiBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBwYXJhbWV0ZXJzIE9wdGlvbmFsIGtleS12YWx1ZSBvYmplY3Qgb2YgcGFyYW1ldGVycyB0byBwYXNzIHRvIHRoZSBqb2IgZXhlY3V0aW9uLlxuICAgICAqL1xuICAgIHB1YmxpYyB0cmlnZ2VyKHBhcmFtZXRlcnM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fSk6IHZvaWQge1xuICAgICAgICBKb2JGYWNhZGUudHJpZ2dlcih0aGlzLmdldE5hbWUoKSwgSlNPTi5zdHJpbmdpZnkocGFyYW1ldGVycykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgYSBtZXNzYWdlIGF0IHRoZSBzdGFuZGFyZCBsb2cgbGV2ZWwgZm9yIHRoaXMgam9iIGluc3RhbmNlLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGxvZyBtZXNzYWdlIGNvbnRlbnQuXG4gICAgICovXG4gICAgcHVibGljIGxvZyhtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgSm9iRmFjYWRlLmxvZyh0aGlzLmdldE5hbWUoKSwgbWVzc2FnZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9ncyBhbiBlcnJvciBtZXNzYWdlIGZvciB0aGlzIGpvYiBpbnN0YW5jZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBtZXNzYWdlIFRoZSBlcnJvciBtZXNzYWdlIGNvbnRlbnQuXG4gICAgICovXG4gICAgcHVibGljIGVycm9yKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBKb2JGYWNhZGUuZXJyb3IodGhpcy5nZXROYW1lKCksIG1lc3NhZ2UpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIExvZ3MgYSB3YXJuaW5nIG1lc3NhZ2UgZm9yIHRoaXMgam9iIGluc3RhbmNlLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIHdhcm5pbmcgbWVzc2FnZSBjb250ZW50LlxuICAgICAqL1xuICAgIHB1YmxpYyB3YXJuKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBKb2JGYWNhZGUud2Fybih0aGlzLmdldE5hbWUoKSwgbWVzc2FnZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9ncyBhbiBpbmZvcm1hdGlvbmFsIG1lc3NhZ2UgZm9yIHRoaXMgam9iIGluc3RhbmNlLlxuICAgICAqXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIGluZm9ybWF0aW9uIG1lc3NhZ2UgY29udGVudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgaW5mbyhtZXNzYWdlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgSm9iRmFjYWRlLmluZm8odGhpcy5nZXROYW1lKCksIG1lc3NhZ2UpO1xuICAgIH1cbn1cblxuLyoqXG4gKiBBIGNvbnRhaW5lciBvYmplY3QgcmVwcmVzZW50aW5nIHRoZSBjb2xsZWN0aW9uIG9mIHBhcmFtZXRlcnMgZm9yIGEge0BsaW5rIEpvYn0uXG4gKi9cbmNsYXNzIEpvYlBhcmFtZXRlcnMge1xuXG4gICAgcHJpdmF0ZSBkYXRhOiBhbnlbXVxuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIGRhdGEgVGhlIGFycmF5IG9mIHJhdyBqb2IgcGFyYW1ldGVyIG9iamVjdHMuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoZGF0YTogYW55W10pIHtcbiAgICAgICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXRyaWV2ZXMgYSBzcGVjaWZpYyBqb2IgcGFyYW1ldGVyIGJ5IGl0cyBpbmRleC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBpIFRoZSBpbmRleCBvZiB0aGUgcGFyYW1ldGVyIGluIHRoZSBhcnJheS5cbiAgICAgKiBAcmV0dXJucyBBIHtAbGluayBKb2JQYXJhbWV0ZXJ9IG9iamVjdC5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0KGk6IG51bWJlcik6IEpvYlBhcmFtZXRlciB7XG4gICAgICAgIHJldHVybiBuZXcgSm9iUGFyYW1ldGVyKHRoaXMuZGF0YVtpXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgdG90YWwgbnVtYmVyIG9mIHBhcmFtZXRlcnMgZGVmaW5lZCBmb3IgdGhlIGpvYi5cbiAgICAgKiBAcmV0dXJucyBUaGUgY291bnQgb2YgcGFyYW1ldGVycy5cbiAgICAgKi9cbiAgICBwdWJsaWMgY291bnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YS5sZW5ndGg7XG4gICAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzaW5nbGUgcGFyYW1ldGVyIGRlZmluaXRpb24gZm9yIGEgam9iLlxuICovXG5jbGFzcyBKb2JQYXJhbWV0ZXIge1xuXG4gICAgcHJpdmF0ZSBkYXRhOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gZGF0YSBUaGUgcmF3IGRhdGEgb2JqZWN0IGNvbnRhaW5pbmcgcGFyYW1ldGVyIHByb3BlcnRpZXMuXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoZGF0YTogYW55KSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IGRhdGE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgbmFtZSBvZiB0aGUgcGFyYW1ldGVyLlxuICAgICAqIEByZXR1cm5zIFRoZSBwYXJhbWV0ZXIgbmFtZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0TmFtZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLm5hbWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIHBhcmFtZXRlci5cbiAgICAgKiBAcmV0dXJucyBUaGUgcGFyYW1ldGVyIGRlc2NyaXB0aW9uLlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXREZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmRlc2NyaXB0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGV4cGVjdGVkIGRhdGEgdHlwZSBvZiB0aGUgcGFyYW1ldGVyIChlLmcuLCAnU3RyaW5nJywgJ0ludGVnZXInLCAnQm9vbGVhbicpLlxuICAgICAqIEByZXR1cm5zIFRoZSBwYXJhbWV0ZXIgdHlwZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0VHlwZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLnR5cGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgZGVmYXVsdCB2YWx1ZSBmb3IgdGhlIHBhcmFtZXRlci5cbiAgICAgKiBAcmV0dXJucyBUaGUgZGVmYXVsdCB2YWx1ZSBzdHJpbmcuXG4gICAgICovXG4gICAgcHVibGljIGdldERlZmF1bHRWYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmRlZmF1bHRWYWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGEgbGlzdCBvZiBwcmVkZWZpbmVkIGNob2ljZXMgZm9yIHRoZSBwYXJhbWV0ZXIsIGlmIGFwcGxpY2FibGUuXG4gICAgICogQHJldHVybnMgQW4gYXJyYXkgb2YgY2hvaWNlIHN0cmluZ3MuXG4gICAgICovXG4gICAgcHVibGljIGdldENob2ljZXMoKTogc3RyaW5nW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmNob2ljZXM7XG4gICAgfVxuXG59XG5cbi8vIEB0cy1pZ25vcmVcbmlmICh0eXBlb2YgbW9kdWxlICE9PSAndW5kZWZpbmVkJykge1xuXHQvLyBAdHMtaWdub3JlXG5cdG1vZHVsZS5leHBvcnRzID0gU2NoZWR1bGVyO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0Esa0JBQStCO0FBRS9CLE1BQU0sWUFBWSxLQUFLLEtBQUssb0RBQW9EO0FBTXpFLE1BQU0sVUFBVTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9uQixPQUFjLFVBQWlCO0FBQzNCLFVBQU0sT0FBTyxJQUFJLE1BQVc7QUFDNUIsVUFBTSxpQkFBaUIsS0FBSyxNQUFNLFVBQVUsUUFBUSxDQUFDO0FBQ3JELGVBQVcsY0FBYyxnQkFBZ0I7QUFDckMsV0FBSyxLQUFLLElBQUksSUFBSSxVQUFVLENBQUM7QUFBQSxJQUNqQztBQUNBLFdBQU87QUFBQSxFQUNYO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxPQUFjLE9BQU8sTUFBbUI7QUFDcEMsVUFBTSxnQkFBZ0IsS0FBSyxNQUFNLFVBQVUsT0FBTyxJQUFJLENBQUM7QUFDdkQsV0FBTyxJQUFJLElBQUksYUFBYTtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsT0FBYyxPQUFPLE1BQW9CO0FBQ3JDLGNBQVUsT0FBTyxJQUFJO0FBQUEsRUFDekI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxPQUFjLFFBQVEs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
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __copyProps = (to, from, except, desc) => {
|
|
6
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
|
+
for (let key of __getOwnPropNames(from))
|
|
8
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
9
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
10
|
+
}
|
|
11
|
+
return to;
|
|
12
|
+
};
|
|
13
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var junit_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(junit_exports);
|
|
17
|
+
__reExport(junit_exports, require("./junit"), module.exports);
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2p1bml0L2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJleHBvcnQgKiBmcm9tIFwiLi9qdW5pdFwiO1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUEsMEJBQWMsb0JBQWQ7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var junit_exports = {};
|
|
19
|
+
__export(junit_exports, {
|
|
20
|
+
assertEquals: () => assertEquals,
|
|
21
|
+
assertFalse: () => assertFalse,
|
|
22
|
+
assertNotEquals: () => assertNotEquals,
|
|
23
|
+
assertTrue: () => assertTrue,
|
|
24
|
+
fail: () => fail,
|
|
25
|
+
test: () => test
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(junit_exports);
|
|
28
|
+
const Assert = Java.type("org.junit.Assert");
|
|
29
|
+
function test(name, testFn) {
|
|
30
|
+
globalThis.test(name, testFn);
|
|
31
|
+
}
|
|
32
|
+
function assertEquals(messageOrExpected, expectedOrActual, actualOrUndefined) {
|
|
33
|
+
if (arguments.length === 3) {
|
|
34
|
+
Assert.assertEquals(messageOrExpected, expectedOrActual, actualOrUndefined);
|
|
35
|
+
} else {
|
|
36
|
+
Assert.assertEquals(messageOrExpected, expectedOrActual);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
function assertNotEquals(messageOrUnexpected, unexpectedOrActual, actualOrUndefined) {
|
|
40
|
+
if (arguments.length === 3) {
|
|
41
|
+
Assert.assertNotEquals(messageOrUnexpected, unexpectedOrActual, actualOrUndefined);
|
|
42
|
+
} else {
|
|
43
|
+
Assert.assertNotEquals(messageOrUnexpected, unexpectedOrActual);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
function assertTrue(messageOrCondition, conditionOrUndefined) {
|
|
47
|
+
if (arguments.length === 2) {
|
|
48
|
+
Assert.assertTrue(messageOrCondition, conditionOrUndefined);
|
|
49
|
+
} else {
|
|
50
|
+
Assert.assertTrue(messageOrCondition);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
function assertFalse(messageOrCondition, conditionOrUndefined) {
|
|
54
|
+
if (arguments.length === 2) {
|
|
55
|
+
Assert.assertFalse(messageOrCondition, conditionOrUndefined);
|
|
56
|
+
} else {
|
|
57
|
+
Assert.assertFalse(messageOrCondition);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function fail(message) {
|
|
61
|
+
if (message) {
|
|
62
|
+
Assert.fail(message);
|
|
63
|
+
} else {
|
|
64
|
+
Assert.fail();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2p1bml0L2p1bml0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIGEgc2V0IG9mIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBkZWZpbmluZyB0ZXN0cyBhbmQgcGVyZm9ybWluZyBhc3NlcnRpb25zLFxuICogd3JhcHBpbmcgdGhlIG5hdGl2ZSBKVW5pdCBBc3NlcnRpb25zIGZvciB1c2UgaW4gVHlwZVNjcmlwdC9KYXZhU2NyaXB0IHRlc3RzLlxuICovXG5jb25zdCBBc3NlcnQgPSBKYXZhLnR5cGUoJ29yZy5qdW5pdC5Bc3NlcnQnKTtcblxuLyoqXG4gKiBEZWZpbmVzIGEgdGVzdCBjYXNlLlxuICpcbiAqIEBwYXJhbSBuYW1lIFRoZSBuYW1lIG9mIHRoZSB0ZXN0IGNhc2UuXG4gKiBAcGFyYW0gdGVzdEZuIFRoZSBmdW5jdGlvbiBjb250YWluaW5nIHRoZSB0ZXN0IGxvZ2ljIGFuZCBhc3NlcnRpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdGVzdChuYW1lOiBzdHJpbmcsIHRlc3RGbjogKCkgPT4gdm9pZCkge1xuICAgIC8vIENhbGxzIHRoZSBnbG9iYWwgdGVzdCBydW5uZXIgZnVuY3Rpb24gcHJvdmlkZWQgYnkgdGhlIFNESyBlbnZpcm9ubWVudC5cbiAgICAoZ2xvYmFsVGhpcyBhcyBhbnkpLnRlc3QobmFtZSwgdGVzdEZuKTtcbn1cblxuLyoqXG4gKiBBc3NlcnRzIHRoYXQgdHdvIG9iamVjdHMgb3IgcHJpbWl0aXZlIHZhbHVlcyBhcmUgZXF1YWwuXG4gKlxuICogQHRlbXBsYXRlIFQgVGhlIHR5cGUgb2YgdGhlIHZhbHVlcyBiZWluZyBjb21wYXJlZC5cbiAqIEBwYXJhbSBleHBlY3RlZCBUaGUgZXhwZWN0ZWQgdmFsdWUuXG4gKiBAcGFyYW0gYWN0dWFsIFRoZSBhY3R1YWwgdmFsdWUuXG4gKiBAcGFyYW0gbWVzc2FnZSBPcHRpb25hbCBtZXNzYWdlIHRvIGRpc3BsYXkgaWYgdGhlIGFzc2VydGlvbiBmYWlscy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydEVxdWFsczxUPihleHBlY3RlZDogVCwgYWN0dWFsOiBUKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydEVxdWFsczxUPihtZXNzYWdlOiBzdHJpbmcsIGV4cGVjdGVkOiBULCBhY3R1YWw6IFQpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RXF1YWxzPFQ+KG1lc3NhZ2VPckV4cGVjdGVkPzogc3RyaW5nIHwgVCwgZXhwZWN0ZWRPckFjdHVhbD86IFQsIGFjdHVhbE9yVW5kZWZpbmVkPzogVCk6IHZvaWQge1xuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAzKSB7XG4gICAgICAgIEFzc2VydC5hc3NlcnRFcXVhbHMobWVzc2FnZU9yRXhwZWN0ZWQsIGV4cGVjdGVkT3JBY3R1YWwsIGFjdHVhbE9yVW5kZWZpbmVkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBBc3NlcnQuYXNzZXJ0RXF1YWxzKG1lc3NhZ2VPckV4cGVjdGVkLCBleHBlY3RlZE9yQWN0dWFsKTtcbiAgICB9XG59XG5cbi8qKlxuICogQXNzZXJ0cyB0aGF0IHR3byBvYmplY3RzIG9yIHByaW1pdGl2ZSB2YWx1ZXMgYXJlIG5vdCBlcXVhbC5cbiAqXG4gKiBAdGVtcGxhdGUgVCBUaGUgdHlwZSBvZiB0aGUgdmFsdWVzIGJlaW5nIGNvbXBhcmVkLlxuICogQHBhcmFtIHVuZXhwZWN0ZWQgVGhlIHVuZXhwZWN0ZWQgdmFsdWUuXG4gKiBAcGFyYW0gYWN0dWFsIFRoZSBhY3R1YWwgdmFsdWUuXG4gKiBAcGFyYW0gbWVzc2FnZSBPcHRpb25hbCBtZXNzYWdlIHRvIGRpc3BsYXkgaWYgdGhlIGFzc2VydGlvbiBmYWlscy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydE5vdEVxdWFsczxUPih1bmV4cGVjdGVkOiBULCBhY3R1YWw6IFQpOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0Tm90RXF1YWxzPFQ+KG1lc3NhZ2U6IHN0cmluZywgdW5leHBlY3RlZDogVCwgYWN0dWFsOiBUKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydE5vdEVxdWFsczxUPihtZXNzYWdlT3JVbmV4cGVjdGVkPzogc3RyaW5nIHwgVCwgdW5leHBlY3RlZE9yQWN0dWFsPzogVCwgYWN0dWFsT3JVbmRlZmluZWQ/OiBUKTogdm9pZCB7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDMpIHtcbiAgICAgICAgQXNzZXJ0LmFzc2VydE5vdEVxdWFscyhtZXNzYWdlT3JVbmV4cGVjdGVkLCB1bmV4cGVjdGVkT3JBY3R1YWwsIGFjdHVhbE9yVW5kZWZpbmVkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBBc3NlcnQuYXNzZXJ0Tm90RXF1YWxzKG1lc3NhZ2VPclVuZXhwZWN0ZWQsIHVuZXhwZWN0ZWRPckFjdHVhbCk7XG4gICAgfVxufVxuXG4vKipcbiAqIEFzc2VydHMgdGhhdCBhIGNvbmRpdGlvbiBpcyB0cnVlLlxuICpcbiAqIEBwYXJhbSBjb25kaXRpb24gVGhlIGNvbmRpdGlvbiB0byB0ZXN0LlxuICogQHBhcmFtIG1lc3NhZ2UgT3B0aW9uYWwgbWVzc2FnZSB0byBkaXNwbGF5IGlmIHRoZSBhc3NlcnRpb24gZmFpbHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRUcnVlKGNvbmRpdGlvbjogYm9vbGVhbik6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRUcnVlKG1lc3NhZ2U6IHN0cmluZywgY29uZGl0aW9uOiBib29sZWFuKTogdm9pZFxuZXhwb3J0IGZ1bmN0aW9uIGFzc2VydFRydWUobWVzc2FnZU9yQ29uZGl0aW9uPzogc3RyaW5nIHwgYm9vbGVhbiwgY29uZGl0aW9uT3JVbmRlZmluZWQ/OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgQXNzZXJ0LmFzc2VydFRydWUobWVzc2FnZU9yQ29uZGl0aW9uLCBjb25kaXRpb25PclVuZGVmaW5lZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgQXNzZXJ0LmFzc2VydFRydWUobWVzc2FnZU9yQ29uZGl0aW9uKTtcbiAgICB9XG59XG5cbi8qKlxuICogQXNzZXJ0cyB0aGF0IGEgY29uZGl0aW9uIGlzIGZhbHNlLlxuICpcbiAqIEBwYXJhbSBjb25kaXRpb24gVGhlIGNvbmRpdGlvbiB0byB0ZXN0LlxuICogQHBhcmFtIG1lc3NhZ2UgT3B0aW9uYWwgbWVzc2FnZSB0byBkaXNwbGF5IGlmIHRoZSBhc3NlcnRpb24gZmFpbHMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRGYWxzZShjb25kaXRpb246IGJvb2xlYW4pOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RmFsc2UobWVzc2FnZTogc3RyaW5nLCBjb25kaXRpb246IGJvb2xlYW4pOiB2b2lkXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RmFsc2UobWVzc2FnZU9yQ29uZGl0aW9uPzogc3RyaW5nIHwgYm9vbGVhbiwgY29uZGl0aW9uT3JVbmRlZmluZWQ/OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgQXNzZXJ0LmFzc2VydEZhbHNlKG1lc3NhZ2VPckNvbmRpdGlvbiwgY29uZGl0aW9uT3JVbmRlZmluZWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIEFzc2VydC5hc3NlcnRGYWxzZShtZXNzYWdlT3JDb25kaXRpb24pO1xuICAgIH1cbn1cblxuLyoqXG4gKiBGYWlscyBhIHRlc3QgaW1tZWRpYXRlbHkuXG4gKlxuICogQHBhcmFtIG1lc3NhZ2UgT3B0aW9uYWwgbWVzc2FnZSB0byBkaXNwbGF5IGluZGljYXRpbmcgdGhlIHJlYXNvbiBmb3IgdGhlIGZhaWx1cmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmYWlsKCk6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBmYWlsKG1lc3NhZ2U6IHN0cmluZyk6IHZvaWRcbmV4cG9ydCBmdW5jdGlvbiBmYWlsKG1lc3NhZ2U/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAobWVzc2FnZSkge1xuICAgICAgICBBc3NlcnQuZmFpbChtZXNzYWdlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICBBc3NlcnQuZmFpbCgpO1xuICAgIH1cbn0iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsTUFBTSxTQUFTLEtBQUssS0FBSyxrQkFBa0I7QUFRcEMsU0FBUyxLQUFLLE1BQWMsUUFBb0I7QUFFbkQsRUFBQyxXQUFtQixLQUFLLE1BQU0sTUFBTTtBQUN6QztBQVlPLFNBQVMsYUFBZ0IsbUJBQWdDLGtCQUFzQixtQkFBNkI7QUFDL0csTUFBSSxVQUFVLFdBQVcsR0FBRztBQUN4QixXQUFPLGFBQWEsbUJBQW1CLGtCQUFrQixpQkFBaUI7QUFBQSxFQUM5RSxPQUFPO0FBQ0gsV0FBTyxhQUFhLG1CQUFtQixnQkFBZ0I7QUFBQSxFQUMzRDtBQUNKO0FBWU8sU0FBUyxnQkFBbUIscUJBQWtDLG9CQUF3QixtQkFBNkI7QUFDdEgsTUFBSSxVQUFVLFdBQVcsR0FBRztBQUN4QixXQUFPLGdCQUFnQixxQkFBcUIsb0JBQW9CLGlCQUFpQjtBQUFBLEVBQ3JGLE9BQU87QUFDSCxXQUFPLGdCQUFnQixxQkFBcUIsa0JBQWtCO0FBQUEsRUFDbEU7QUFDSjtBQVVPLFNBQVMsV0FBVyxvQkFBdUMsc0JBQXNDO0FBQ3BHLE1BQUksVUFBVSxXQUFXLEdBQUc7QUFDeEIsV0FBTyxXQUFXLG9CQUFvQixvQkFBb0I7QUFBQSxFQUM5RCxPQUFPO0FBQ0gsV0FBTyxXQUFXLGtCQUFrQjtBQUFBLEVBQ3hDO0FBQ0o7QUFVTyxTQUFTLFlBQVksb0JBQXVDLHNCQUFzQztBQUNyRyxNQUFJLFVBQVUsV0FBVyxHQUFHO0FBQ3hCLFdBQU8sWUFBWSxvQkFBb0Isb0JBQW9CO0FBQUEsRUFDL0QsT0FBTztBQUNILFdBQU8sWUFBWSxrQkFBa0I7QUFBQSxFQUN6QztBQUNKO0FBU08sU0FBUyxLQUFLLFNBQXdCO0FBQ3pDLE1BQUksU0FBUztBQUNULFdBQU8sS0FBSyxPQUFPO0FBQUEsRUFDdkIsT0FBTztBQUNILFdBQU8sS0FBSztBQUFBLEVBQ2hCO0FBQ0o7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var consumer_exports = {};
|
|
19
|
+
__export(consumer_exports, {
|
|
20
|
+
Consumer: () => Consumer
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(consumer_exports);
|
|
23
|
+
const KafkaFacade = Java.type("org.eclipse.dirigible.components.api.kafka.KafkaFacade");
|
|
24
|
+
class Consumer {
|
|
25
|
+
/**
|
|
26
|
+
* Creates a new topic configuration wrapper that can be used to start or
|
|
27
|
+
* stop listening for messages on a Kafka topic.
|
|
28
|
+
*
|
|
29
|
+
* @param destination The name of the Kafka topic to consume messages from.
|
|
30
|
+
* @param configuration Optional key-value object containing Kafka consumer properties
|
|
31
|
+
* (e.g., 'group.id', 'auto.offset.reset').
|
|
32
|
+
* @returns A {@link Topic} instance configured for the specified destination and properties.
|
|
33
|
+
*/
|
|
34
|
+
static topic(destination, configuration = {}) {
|
|
35
|
+
return new Topic(destination, configuration);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
class Topic {
|
|
39
|
+
/**
|
|
40
|
+
* @param destination The name of the Kafka topic.
|
|
41
|
+
* @param configuration Optional key-value object for consumer properties.
|
|
42
|
+
*/
|
|
43
|
+
constructor(destination, configuration = {}) {
|
|
44
|
+
this.configuration = {};
|
|
45
|
+
this.destination = destination;
|
|
46
|
+
this.configuration = configuration;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Starts listening to the configured topic in a background process.
|
|
50
|
+
*
|
|
51
|
+
* @param handler The path to the script or function name that will handle the incoming Kafka messages.
|
|
52
|
+
* This function should accept two arguments: `message` (string) and `headers` (object).
|
|
53
|
+
* @param timeout The maximum amount of time (in milliseconds) the consumer should wait for messages.
|
|
54
|
+
*/
|
|
55
|
+
startListening(handler, timeout) {
|
|
56
|
+
KafkaFacade.startListening(this.destination, handler, timeout, JSON.stringify(this.configuration));
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Stops the background process that is listening to the configured topic.
|
|
60
|
+
* Note: Stopping is based on matching the topic and configuration, so the same
|
|
61
|
+
* configuration object used in `startListening` should be used here.
|
|
62
|
+
*/
|
|
63
|
+
stopListening() {
|
|
64
|
+
KafkaFacade.stopListening(this.destination, JSON.stringify(this.configuration));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if (typeof module !== "undefined") {
|
|
68
|
+
module.exports = Consumer;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2thZmthL2NvbnN1bWVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIGFuIEFQSSBmb3IgY29uZmlndXJpbmcgYW5kIG1hbmFnaW5nIEthZmthIGNvbnN1bWVycyxcbiAqIGFsbG93aW5nIHNjcmlwdHMgdG8gc3RhcnQgYW5kIHN0b3AgbGlzdGVuaW5nIHRvIHNwZWNpZmljIHRvcGljcy5cbiAqL1xuY29uc3QgS2Fma2FGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkua2Fma2EuS2Fma2FGYWNhZGVcIik7XG5cbi8qKlxuICogVGhlIENvbnN1bWVyIGNsYXNzIGFjdHMgYXMgdGhlIG1haW4gZW50cnkgcG9pbnQgZm9yIGNyZWF0aW5nIGFuZCBjb25maWd1cmluZ1xuICogS2Fma2EgdG9waWMgY29uc3VtZXJzLlxuICovXG5leHBvcnQgY2xhc3MgQ29uc3VtZXIge1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIG5ldyB0b3BpYyBjb25maWd1cmF0aW9uIHdyYXBwZXIgdGhhdCBjYW4gYmUgdXNlZCB0byBzdGFydCBvclxuICAgICAqIHN0b3AgbGlzdGVuaW5nIGZvciBtZXNzYWdlcyBvbiBhIEthZmthIHRvcGljLlxuICAgICAqXG4gICAgICogQHBhcmFtIGRlc3RpbmF0aW9uIFRoZSBuYW1lIG9mIHRoZSBLYWZrYSB0b3BpYyB0byBjb25zdW1lIG1lc3NhZ2VzIGZyb20uXG4gICAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb24gT3B0aW9uYWwga2V5LXZhbHVlIG9iamVjdCBjb250YWluaW5nIEthZmthIGNvbnN1bWVyIHByb3BlcnRpZXNcbiAgICAgKiAoZS5nLiwgJ2dyb3VwLmlkJywgJ2F1dG8ub2Zmc2V0LnJlc2V0JykuXG4gICAgICogQHJldHVybnMgQSB7QGxpbmsgVG9waWN9IGluc3RhbmNlIGNvbmZpZ3VyZWQgZm9yIHRoZSBzcGVjaWZpZWQgZGVzdGluYXRpb24gYW5kIHByb3BlcnRpZXMuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0b3BpYyhkZXN0aW5hdGlvbjogc3RyaW5nLCBjb25maWd1cmF0aW9uOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiBUb3BpYyB7XG4gICAgICAgIHJldHVybiBuZXcgVG9waWMoZGVzdGluYXRpb24sIGNvbmZpZ3VyYXRpb24pO1xuICAgIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgY29uZmlndXJlZCBLYWZrYSB0b3BpYyBjb25zdW1lciBjYXBhYmxlIG9mIHN0YXJ0aW5nIGFuZCBzdG9wcGluZ1xuICogYmFja2dyb3VuZCBtZXNzYWdlIGxpc3RlbmluZy5cbiAqL1xuY2xhc3MgVG9waWMge1xuICAgIHByaXZhdGUgZGVzdGluYXRpb246IHN0cmluZztcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb246IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBkZXN0aW5hdGlvbiBUaGUgbmFtZSBvZiB0aGUgS2Fma2EgdG9waWMuXG4gICAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb24gT3B0aW9uYWwga2V5LXZhbHVlIG9iamVjdCBmb3IgY29uc3VtZXIgcHJvcGVydGllcy5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihkZXN0aW5hdGlvbjogc3RyaW5nLCBjb25maWd1cmF0aW9uOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pIHtcbiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN0YXJ0cyBsaXN0ZW5pbmcgdG8gdGhlIGNvbmZpZ3VyZWQgdG9waWMgaW4gYSBiYWNrZ3JvdW5kIHByb2Nlc3MuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaGFuZGxlciBUaGUgcGF0aCB0byB0aGUgc2NyaXB0IG9yIGZ1bmN0aW9uIG5hbWUgdGhhdCB3aWxsIGhhbmRsZSB0aGUgaW5jb21pbmcgS2Fma2EgbWVzc2FnZXMuXG4gICAgICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYWNjZXB0IHR3byBhcmd1bWVudHM6IGBtZXNzYWdlYCAoc3RyaW5nKSBhbmQgYGhlYWRlcnNgIChvYmplY3QpLlxuICAgICAqIEBwYXJhbSB0aW1lb3V0IFRoZSBtYXhpbXVtIGFtb3VudCBvZiB0aW1lIChpbiBtaWxsaXNlY29uZHMpIHRoZSBjb25zdW1lciBzaG91bGQgd2FpdCBmb3IgbWVzc2FnZXMuXG4gICAgICovXG4gICAgcHVibGljIHN0YXJ0TGlzdGVuaW5nKGhhbmRsZXI6IHN0cmluZywgdGltZW91dDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIEthZmthRmFjYWRlLnN0YXJ0TGlzdGVuaW5nKHRoaXMuZGVzdGluYXRpb24sIGhhbmRsZXIsIHRpbWVvdXQsIEpTT04uc3RyaW5naWZ5KHRoaXMuY29uZmlndXJhdGlvbikpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFN0b3BzIHRoZSBiYWNrZ3JvdW5kIHByb2Nlc3MgdGhhdCBpcyBsaXN0ZW5pbmcgdG8gdGhlIGNvbmZpZ3VyZWQgdG9waWMuXG4gICAgICogTm90ZTogU3RvcHBpbmcgaXMgYmFzZWQgb24gbWF0Y2hpbmcgdGhlIHRvcGljIGFuZCBjb25maWd1cmF0aW9uLCBzbyB0aGUgc2FtZVxuICAgICAqIGNvbmZpZ3VyYXRpb24gb2JqZWN0IHVzZWQgaW4gYHN0YXJ0TGlzdGVuaW5nYCBzaG91bGQgYmUgdXNlZCBoZXJlLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdG9wTGlzdGVuaW5nKCk6IHZvaWQge1xuICAgICAgICBLYWZrYUZhY2FkZS5zdG9wTGlzdGVuaW5nKHRoaXMuZGVzdGluYXRpb24sIEpTT04uc3RyaW5naWZ5KHRoaXMuY29uZmlndXJhdGlvbikpO1xuICAgIH1cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIG1vZHVsZS5leHBvcnRzID0gQ29uc3VtZXI7XG59Il0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsTUFBTSxjQUFjLEtBQUssS0FBSyx3REFBd0Q7QUFNL0UsTUFBTSxTQUFTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXbEIsT0FBYyxNQUFNLGFBQXFCLGdCQUEyQyxDQUFDLEdBQVU7QUFDM0YsV0FBTyxJQUFJLE1BQU0sYUFBYSxhQUFhO0FBQUEsRUFDL0M7QUFDSjtBQU1BLE1BQU0sTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRUixZQUFZLGFBQXFCLGdCQUEyQyxDQUFDLEdBQUc7QUFOaEYsU0FBUSxnQkFBMkMsQ0FBQztBQU9oRCxTQUFLLGNBQWM7QUFDbkIsU0FBSyxnQkFBZ0I7QUFBQSxFQUN6QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTTyxlQUFlLFNBQWlCLFNBQXVCO0FBQzFELGdCQUFZLGVBQWUsS0FBSyxhQUFhLFNBQVMsU0FBUyxLQUFLLFVBQVUsS0FBSyxhQUFhLENBQUM7QUFBQSxFQUNyRztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLGdCQUFzQjtBQUN6QixnQkFBWSxjQUFjLEtBQUssYUFBYSxLQUFLLFVBQVUsS0FBSyxhQUFhLENBQUM7QUFBQSxFQUNsRjtBQUNKO0FBR0EsSUFBSSxPQUFPLFdBQVcsYUFBYTtBQUUvQixTQUFPLFVBQVU7QUFDckI7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var kafka_exports = {};
|
|
20
|
+
__export(kafka_exports, {
|
|
21
|
+
consumer: () => import_consumer.Consumer,
|
|
22
|
+
producer: () => import_producer.Producer
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(kafka_exports);
|
|
25
|
+
var import_consumer = require("./consumer");
|
|
26
|
+
__reExport(kafka_exports, require("./consumer"), module.exports);
|
|
27
|
+
var import_producer = require("./producer");
|
|
28
|
+
__reExport(kafka_exports, require("./producer"), module.exports);
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2thZmthL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJleHBvcnQgeyBDb25zdW1lciBhcyBjb25zdW1lciB9IGZyb20gXCIuL2NvbnN1bWVyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9jb25zdW1lclwiO1xuZXhwb3J0IHsgUHJvZHVjZXIgYXMgcHJvZHVjZXIgfSBmcm9tIFwiLi9wcm9kdWNlclwiO1xuZXhwb3J0ICogZnJvbSBcIi4vcHJvZHVjZXJcIjsiXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxzQkFBcUM7QUFDckMsMEJBQWMsdUJBRGQ7QUFFQSxzQkFBcUM7QUFDckMsMEJBQWMsdUJBSGQ7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var producer_exports = {};
|
|
19
|
+
__export(producer_exports, {
|
|
20
|
+
Producer: () => Producer
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(producer_exports);
|
|
23
|
+
const KafkaFacade = Java.type("org.eclipse.dirigible.components.api.kafka.KafkaFacade");
|
|
24
|
+
class Producer {
|
|
25
|
+
/**
|
|
26
|
+
* Creates a new topic configuration wrapper that can be used to send messages
|
|
27
|
+
* to a specific Kafka topic.
|
|
28
|
+
*
|
|
29
|
+
* @param destination The name of the Kafka topic to send messages to.
|
|
30
|
+
* @param configuration Optional key-value object containing Kafka producer properties
|
|
31
|
+
* (e.g., 'bootstrap.servers', 'acks').
|
|
32
|
+
* @returns A {@link Topic} instance configured for the specified destination and properties.
|
|
33
|
+
*/
|
|
34
|
+
static topic(destination, configuration = {}) {
|
|
35
|
+
return new Topic(destination, configuration);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Closes the Kafka producer connection pool, releasing associated resources.
|
|
39
|
+
* This should be called when message sending is complete to ensure proper cleanup.
|
|
40
|
+
*
|
|
41
|
+
* @param configuration Optional key-value object containing the configuration
|
|
42
|
+
* used to initialize the producer to be closed.
|
|
43
|
+
*/
|
|
44
|
+
static close(configuration = {}) {
|
|
45
|
+
KafkaFacade.closeProducer(configuration);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
class Topic {
|
|
49
|
+
/**
|
|
50
|
+
* @param destination The name of the Kafka topic.
|
|
51
|
+
* @param configuration Key-value object for producer properties.
|
|
52
|
+
*/
|
|
53
|
+
constructor(destination, configuration) {
|
|
54
|
+
this.destination = destination;
|
|
55
|
+
this.configuration = configuration;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Sends a message with an optional key to the configured Kafka topic.
|
|
59
|
+
*
|
|
60
|
+
* @param key The key of the message. Messages with the same key go to the same partition.
|
|
61
|
+
* @param value The content of the message to be sent.
|
|
62
|
+
*/
|
|
63
|
+
send(key, value) {
|
|
64
|
+
KafkaFacade.send(this.destination, key, value, JSON.stringify(this.configuration));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if (typeof module !== "undefined") {
|
|
68
|
+
module.exports = Producer;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2thZmthL3Byb2R1Y2VyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIFByb3ZpZGVzIGFuIEFQSSBmb3IgY29uZmlndXJpbmcgYW5kIG1hbmFnaW5nIEthZmthIHByb2R1Y2VycyxcbiAqIGFsbG93aW5nIHNjcmlwdHMgdG8gY3JlYXRlIHRvcGljcywgc2VuZCBtZXNzYWdlcywgYW5kIGNsb3NlIHRoZSBwcm9kdWNlciBjb25uZWN0aW9uLlxuICovXG5jb25zdCBLYWZrYUZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS5rYWZrYS5LYWZrYUZhY2FkZVwiKTtcblxuLyoqXG4gKiBUaGUgUHJvZHVjZXIgY2xhc3Mgc2VydmVzIGFzIHRoZSBtYWluIGVudHJ5IHBvaW50IGZvciBjcmVhdGluZyBhbmQgY29uZmlndXJpbmdcbiAqIEthZmthIHRvcGljIHByb2R1Y2Vycy5cbiAqL1xuZXhwb3J0IGNsYXNzIFByb2R1Y2VyIHtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBuZXcgdG9waWMgY29uZmlndXJhdGlvbiB3cmFwcGVyIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VuZCBtZXNzYWdlc1xuICAgICAqIHRvIGEgc3BlY2lmaWMgS2Fma2EgdG9waWMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGVzdGluYXRpb24gVGhlIG5hbWUgb2YgdGhlIEthZmthIHRvcGljIHRvIHNlbmQgbWVzc2FnZXMgdG8uXG4gICAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb24gT3B0aW9uYWwga2V5LXZhbHVlIG9iamVjdCBjb250YWluaW5nIEthZmthIHByb2R1Y2VyIHByb3BlcnRpZXNcbiAgICAgKiAoZS5nLiwgJ2Jvb3RzdHJhcC5zZXJ2ZXJzJywgJ2Fja3MnKS5cbiAgICAgKiBAcmV0dXJucyBBIHtAbGluayBUb3BpY30gaW5zdGFuY2UgY29uZmlndXJlZCBmb3IgdGhlIHNwZWNpZmllZCBkZXN0aW5hdGlvbiBhbmQgcHJvcGVydGllcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHRvcGljKGRlc3RpbmF0aW9uOiBzdHJpbmcsIGNvbmZpZ3VyYXRpb246IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fSk6IFRvcGljIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUb3BpYyhkZXN0aW5hdGlvbiwgY29uZmlndXJhdGlvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xvc2VzIHRoZSBLYWZrYSBwcm9kdWNlciBjb25uZWN0aW9uIHBvb2wsIHJlbGVhc2luZyBhc3NvY2lhdGVkIHJlc291cmNlcy5cbiAgICAgKiBUaGlzIHNob3VsZCBiZSBjYWxsZWQgd2hlbiBtZXNzYWdlIHNlbmRpbmcgaXMgY29tcGxldGUgdG8gZW5zdXJlIHByb3BlciBjbGVhbnVwLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb24gT3B0aW9uYWwga2V5LXZhbHVlIG9iamVjdCBjb250YWluaW5nIHRoZSBjb25maWd1cmF0aW9uXG4gICAgICogdXNlZCB0byBpbml0aWFsaXplIHRoZSBwcm9kdWNlciB0byBiZSBjbG9zZWQuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBjbG9zZShjb25maWd1cmF0aW9uOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiB2b2lkIHtcbiAgICAgICAgS2Fma2FGYWNhZGUuY2xvc2VQcm9kdWNlcihjb25maWd1cmF0aW9uKTtcbiAgICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNvbmZpZ3VyZWQgS2Fma2EgdG9waWMgdGhhdCBjYW4gYmUgdXNlZCB0byBzZW5kIG1lc3NhZ2VzLlxuICovXG5jbGFzcyBUb3BpYyB7XG5cbiAgICBwcml2YXRlIGRlc3RpbmF0aW9uOiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIGRlc3RpbmF0aW9uIFRoZSBuYW1lIG9mIHRoZSBLYWZrYSB0b3BpYy5cbiAgICAgKiBAcGFyYW0gY29uZmlndXJhdGlvbiBLZXktdmFsdWUgb2JqZWN0IGZvciBwcm9kdWNlciBwcm9wZXJ0aWVzLlxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKGRlc3RpbmF0aW9uOiBzdHJpbmcsIGNvbmZpZ3VyYXRpb246IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0pIHtcbiAgICAgICAgdGhpcy5kZXN0aW5hdGlvbiA9IGRlc3RpbmF0aW9uO1xuICAgICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBjb25maWd1cmF0aW9uO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlbmRzIGEgbWVzc2FnZSB3aXRoIGFuIG9wdGlvbmFsIGtleSB0byB0aGUgY29uZmlndXJlZCBLYWZrYSB0b3BpYy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBrZXkgVGhlIGtleSBvZiB0aGUgbWVzc2FnZS4gTWVzc2FnZXMgd2l0aCB0aGUgc2FtZSBrZXkgZ28gdG8gdGhlIHNhbWUgcGFydGl0aW9uLlxuICAgICAqIEBwYXJhbSB2YWx1ZSBUaGUgY29udGVudCBvZiB0aGUgbWVzc2FnZSB0byBiZSBzZW50LlxuICAgICAqL1xuICAgIHB1YmxpYyBzZW5kKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIEthZmthRmFjYWRlLnNlbmQodGhpcy5kZXN0aW5hdGlvbiwga2V5LCB2YWx1ZSwgSlNPTi5zdHJpbmdpZnkodGhpcy5jb25maWd1cmF0aW9uKSk7XG4gICAgfVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0Ly8gQHRzLWlnbm9yZVxuXHRtb2R1bGUuZXhwb3J0cyA9IFByb2R1Y2VyO1xufSJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLE1BQU0sY0FBYyxLQUFLLEtBQUssd0RBQXdEO0FBTS9FLE1BQU0sU0FBUztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBV2xCLE9BQWMsTUFBTSxhQUFxQixnQkFBMkMsQ0FBQyxHQUFVO0FBQzNGLFdBQU8sSUFBSSxNQUFNLGFBQWEsYUFBYTtBQUFBLEVBQy9DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNBLE9BQWMsTUFBTSxnQkFBMkMsQ0FBQyxHQUFTO0FBQ3JFLGdCQUFZLGNBQWMsYUFBYTtBQUFBLEVBQzNDO0FBQ0o7QUFLQSxNQUFNLE1BQU07QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU1IsWUFBWSxhQUFxQixlQUEwQztBQUN2RSxTQUFLLGNBQWM7QUFDbkIsU0FBSyxnQkFBZ0I7QUFBQSxFQUN6QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sS0FBSyxLQUFhLE9BQXFCO0FBQzFDLGdCQUFZLEtBQUssS0FBSyxhQUFhLEtBQUssT0FBTyxLQUFLLFVBQVUsS0FBSyxhQUFhLENBQUM7QUFBQSxFQUNyRjtBQUNKO0FBR0EsSUFBSSxPQUFPLFdBQVcsYUFBYTtBQUVsQyxTQUFPLFVBQVU7QUFDbEI7IiwKICAibmFtZXMiOiBbXQp9Cg==
|