@aerokit/sdk 14.76.0 → 14.82.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/dist/cjs/core/configurations.js +19 -1
- package/dist/cjs/etcd/client.js +1 -1
- package/dist/cjs/http/client-async.js +2 -2
- package/dist/cjs/qldb/qldb.js +1 -1
- package/dist/dts/core/configurations.d.ts +56 -0
- package/dist/dts/etcd/client.d.ts +5 -0
- package/dist/dts/qldb/qldb.d.ts +4 -0
- package/dist/esm/core/configurations.mjs +19 -1
- package/dist/esm/etcd/client.mjs +1 -1
- package/dist/esm/http/client-async.mjs +2 -2
- package/dist/esm/qldb/qldb.mjs +1 -1
- package/package.json +1 -1
- package/test/flows/list.js +35 -2
- package/test/form.js +36 -2
- package/dist/cjs/kafka/consumer.js +0 -71
- package/dist/cjs/kafka/index.js +0 -29
- package/dist/cjs/kafka/producer.js +0 -72
- package/dist/dts/kafka/consumer.d.ts +0 -79
- package/dist/dts/kafka/index.d.ts +0 -15
- package/dist/dts/kafka/producer.d.ts +0 -81
- package/dist/esm/kafka/consumer.mjs +0 -52
- package/dist/esm/kafka/index.mjs +0 -9
- package/dist/esm/kafka/producer.mjs +0 -53
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module kafka/producer
|
|
3
|
-
* @package @aerokit/sdk/kafka
|
|
4
|
-
* @name Producer
|
|
5
|
-
* @overview
|
|
6
|
-
*
|
|
7
|
-
* The Producer module provides an API for configuring and managing Kafka producers, allowing scripts to create topics, send messages, and close the producer connection. It abstracts the complexities of Kafka producer configuration and message sending, enabling developers to easily integrate Kafka message production into their applications.
|
|
8
|
-
*
|
|
9
|
-
* ### Key Features:
|
|
10
|
-
* - **Topic Configuration**: The `Producer.topic` method allows developers to create a topic configuration wrapper with specified destination and properties.
|
|
11
|
-
* - **Message Sending**: The `send` method on the Topic class enables sending messages with optional keys to the configured Kafka topic.
|
|
12
|
-
* - **Connection Management**: The `close` method allows developers to close the Kafka producer connection pool, ensuring proper resource cleanup.
|
|
13
|
-
*
|
|
14
|
-
* ### Use Cases:
|
|
15
|
-
* - **Event Production**: Developers can use this module to produce messages to Kafka topics in real-time, enabling use cases such as event-driven architectures and microservices communication.
|
|
16
|
-
* - **Integration with Other Systems**: By sending Kafka messages, applications can integrate with other systems that consume messages from Kafka, facilitating data flow across different components of an ecosystem.
|
|
17
|
-
*
|
|
18
|
-
* ### Example Usage:
|
|
19
|
-
* ```ts
|
|
20
|
-
* import { Producer } from "@aerokit/sdk/kafka";
|
|
21
|
-
*
|
|
22
|
-
* // Create a producer for the "orders" topic with specific configuration
|
|
23
|
-
* const ordersProducer = Producer.topic("orders", { "bootstrap.servers": "localhost:9092" });
|
|
24
|
-
*
|
|
25
|
-
* // Send a message with a key to the "orders" topic
|
|
26
|
-
* ordersProducer.send("order123", "New order placed");
|
|
27
|
-
*
|
|
28
|
-
* // Later, close the producer connection
|
|
29
|
-
* Producer.close({ "bootstrap.servers": "localhost:9092" });
|
|
30
|
-
* ```
|
|
31
|
-
*/
|
|
32
|
-
/**
|
|
33
|
-
* The Producer class serves as the main entry point for creating and configuring
|
|
34
|
-
* Kafka topic producers.
|
|
35
|
-
*/
|
|
36
|
-
export declare class Producer {
|
|
37
|
-
/**
|
|
38
|
-
* Creates a new topic configuration wrapper that can be used to send messages
|
|
39
|
-
* to a specific Kafka topic.
|
|
40
|
-
*
|
|
41
|
-
* @param destination The name of the Kafka topic to send messages to.
|
|
42
|
-
* @param configuration Optional key-value object containing Kafka producer properties
|
|
43
|
-
* (e.g., 'bootstrap.servers', 'acks').
|
|
44
|
-
* @returns A {@link Topic} instance configured for the specified destination and properties.
|
|
45
|
-
*/
|
|
46
|
-
static topic(destination: string, configuration?: {
|
|
47
|
-
[key: string]: string;
|
|
48
|
-
}): Topic;
|
|
49
|
-
/**
|
|
50
|
-
* Closes the Kafka producer connection pool, releasing associated resources.
|
|
51
|
-
* This should be called when message sending is complete to ensure proper cleanup.
|
|
52
|
-
*
|
|
53
|
-
* @param configuration Optional key-value object containing the configuration
|
|
54
|
-
* used to initialize the producer to be closed.
|
|
55
|
-
*/
|
|
56
|
-
static close(configuration?: {
|
|
57
|
-
[key: string]: string;
|
|
58
|
-
}): void;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Represents a configured Kafka topic that can be used to send messages.
|
|
62
|
-
*/
|
|
63
|
-
declare class Topic {
|
|
64
|
-
private destination;
|
|
65
|
-
private configuration;
|
|
66
|
-
/**
|
|
67
|
-
* @param destination The name of the Kafka topic.
|
|
68
|
-
* @param configuration Key-value object for producer properties.
|
|
69
|
-
*/
|
|
70
|
-
constructor(destination: string, configuration: {
|
|
71
|
-
[key: string]: string;
|
|
72
|
-
});
|
|
73
|
-
/**
|
|
74
|
-
* Sends a message with an optional key to the configured Kafka topic.
|
|
75
|
-
*
|
|
76
|
-
* @param key The key of the message. Messages with the same key go to the same partition.
|
|
77
|
-
* @param value The content of the message to be sent.
|
|
78
|
-
*/
|
|
79
|
-
send(key: string, value: string): void;
|
|
80
|
-
}
|
|
81
|
-
export {};
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
const KafkaFacade = Java.type("org.eclipse.dirigible.components.api.kafka.KafkaFacade");
|
|
2
|
-
class Consumer {
|
|
3
|
-
/**
|
|
4
|
-
* Creates a new topic configuration wrapper that can be used to start or
|
|
5
|
-
* stop listening for messages on a Kafka topic.
|
|
6
|
-
*
|
|
7
|
-
* @param destination The name of the Kafka topic to consume messages from.
|
|
8
|
-
* @param configuration Optional key-value object containing Kafka consumer properties
|
|
9
|
-
* (e.g., 'group.id', 'auto.offset.reset').
|
|
10
|
-
* @returns A {@link Topic} instance configured for the specified destination and properties.
|
|
11
|
-
*/
|
|
12
|
-
static topic(destination, configuration = {}) {
|
|
13
|
-
return new Topic(destination, configuration);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
class Topic {
|
|
17
|
-
destination;
|
|
18
|
-
configuration = {};
|
|
19
|
-
/**
|
|
20
|
-
* @param destination The name of the Kafka topic.
|
|
21
|
-
* @param configuration Optional key-value object for consumer properties.
|
|
22
|
-
*/
|
|
23
|
-
constructor(destination, configuration = {}) {
|
|
24
|
-
this.destination = destination;
|
|
25
|
-
this.configuration = configuration;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Starts listening to the configured topic in a background process.
|
|
29
|
-
*
|
|
30
|
-
* @param handler The path to the script or function name that will handle the incoming Kafka messages.
|
|
31
|
-
* This function should accept two arguments: `message` (string) and `headers` (object).
|
|
32
|
-
* @param timeout The maximum amount of time (in milliseconds) the consumer should wait for messages.
|
|
33
|
-
*/
|
|
34
|
-
startListening(handler, timeout) {
|
|
35
|
-
KafkaFacade.startListening(this.destination, handler, timeout, JSON.stringify(this.configuration));
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Stops the background process that is listening to the configured topic.
|
|
39
|
-
* Note: Stopping is based on matching the topic and configuration, so the same
|
|
40
|
-
* configuration object used in `startListening` should be used here.
|
|
41
|
-
*/
|
|
42
|
-
stopListening() {
|
|
43
|
-
KafkaFacade.stopListening(this.destination, JSON.stringify(this.configuration));
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
if (typeof module !== "undefined") {
|
|
47
|
-
module.exports = Consumer;
|
|
48
|
-
}
|
|
49
|
-
export {
|
|
50
|
-
Consumer
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2thZmthL2NvbnN1bWVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUga2Fma2EvY29uc3VtZXJcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9rYWZrYVxuICogQG5hbWUgQ29uc3VtZXJcbiAqIEBvdmVydmlld1xuICogXG4gKiBUaGUgQ29uc3VtZXIgbW9kdWxlIHByb3ZpZGVzIGFuIEFQSSBmb3IgY29uZmlndXJpbmcgYW5kIG1hbmFnaW5nIEthZmthIGNvbnN1bWVycywgYWxsb3dpbmcgc2NyaXB0cyB0byBzdGFydCBhbmQgc3RvcCBsaXN0ZW5pbmcgdG8gc3BlY2lmaWMgdG9waWNzLiBJdCBhYnN0cmFjdHMgdGhlIGNvbXBsZXhpdGllcyBvZiBLYWZrYSBjb25zdW1lciBjb25maWd1cmF0aW9uIGFuZCBsaWZlY3ljbGUgbWFuYWdlbWVudCwgZW5hYmxpbmcgZGV2ZWxvcGVycyB0byBlYXNpbHkgaW50ZWdyYXRlIEthZmthIG1lc3NhZ2UgY29uc3VtcHRpb24gaW50byB0aGVpciBhcHBsaWNhdGlvbnMuXG4gKiBcbiAqICMjIyBLZXkgRmVhdHVyZXM6XG4gKiAtICoqVG9waWMgQ29uZmlndXJhdGlvbioqOiBUaGUgYENvbnN1bWVyLnRvcGljYCBtZXRob2QgYWxsb3dzIGRldmVsb3BlcnMgdG8gY3JlYXRlIGEgdG9waWMgY29uZmlndXJhdGlvbiB3cmFwcGVyIHdpdGggc3BlY2lmaWVkIGRlc3RpbmF0aW9uIGFuZCBwcm9wZXJ0aWVzLlxuICogLSAqKkJhY2tncm91bmQgTGlzdGVuaW5nKio6IFRoZSBgc3RhcnRMaXN0ZW5pbmdgIG1ldGhvZCBzdGFydHMgYSBiYWNrZ3JvdW5kIHByb2Nlc3MgdGhhdCBsaXN0ZW5zIGZvciBtZXNzYWdlcyBvbiB0aGUgY29uZmlndXJlZCB0b3BpYywgaW52b2tpbmcgYSBzcGVjaWZpZWQgaGFuZGxlciBmdW5jdGlvbiBmb3IgaW5jb21pbmcgbWVzc2FnZXMuXG4gKiAtICoqR3JhY2VmdWwgU2h1dGRvd24qKjogVGhlIGBzdG9wTGlzdGVuaW5nYCBtZXRob2QgYWxsb3dzIGRldmVsb3BlcnMgdG8gc3RvcCB0aGUgYmFja2dyb3VuZCBsaXN0ZW5pbmcgcHJvY2VzcyBiYXNlZCBvbiB0aGUgdG9waWMgYW5kIGNvbmZpZ3VyYXRpb24uXG4gKiBcbiAqICMjIyBVc2UgQ2FzZXM6XG4gKiAtICoqUmVhbC10aW1lIERhdGEgUHJvY2Vzc2luZyoqOiBEZXZlbG9wZXJzIGNhbiB1c2UgdGhpcyBtb2R1bGUgdG8gY29uc3VtZSBtZXNzYWdlcyBmcm9tIEthZmthIHRvcGljcyBpbiByZWFsLXRpbWUsIGVuYWJsaW5nIHVzZSBjYXNlcyBzdWNoIGFzIHN0cmVhbSBwcm9jZXNzaW5nLCBldmVudC1kcml2ZW4gYXJjaGl0ZWN0dXJlcywgYW5kIG1pY3Jvc2VydmljZXMgY29tbXVuaWNhdGlvbi5cbiAqIC0gKipJbnRlZ3JhdGlvbiB3aXRoIE90aGVyIFN5c3RlbXMqKjogQnkgY29uc3VtaW5nIEthZmthIG1lc3NhZ2VzLCBhcHBsaWNhdGlvbnMgY2FuIGludGVncmF0ZSB3aXRoIG90aGVyIHN5c3RlbXMgdGhhdCBwcm9kdWNlIG1lc3NhZ2VzIHRvIEthZmthLCBmYWNpbGl0YXRpbmcgZGF0YSBmbG93IGFjcm9zcyBkaWZmZXJlbnQgY29tcG9uZW50cyBvZiBhbiBlY29zeXN0ZW0uXG4gKiBcbiAqICMjIyBFeGFtcGxlIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IENvbnN1bWVyIH0gZnJvbSBcIkBhZXJva2l0L3Nkay9rYWZrYVwiO1xuICogXG4gKiAvLyBDcmVhdGUgYSBjb25zdW1lciBmb3IgdGhlIFwib3JkZXJzXCIgdG9waWMgd2l0aCBzcGVjaWZpYyBjb25maWd1cmF0aW9uXG4gKiBjb25zdCBvcmRlcnNDb25zdW1lciA9IENvbnN1bWVyLnRvcGljKFwib3JkZXJzXCIsIHsgXCJncm91cC5pZFwiOiBcIm9yZGVyLXByb2Nlc3NvcnNcIiB9KTtcbiAqIFxuICogLy8gU3RhcnQgbGlzdGVuaW5nIHRvIHRoZSBcIm9yZGVyc1wiIHRvcGljIHdpdGggYSBtZXNzYWdlIGhhbmRsZXIgYW5kIHRpbWVvdXRcbiAqIG9yZGVyc0NvbnN1bWVyLnN0YXJ0TGlzdGVuaW5nKFwiaGFuZGxlT3JkZXJNZXNzYWdlXCIsIDMwMDAwKTtcbiAqIFxuICogLy8gTGF0ZXIsIHN0b3AgbGlzdGVuaW5nIHRvIHRoZSBcIm9yZGVyc1wiIHRvcGljXG4gKiBvcmRlcnNDb25zdW1lci5zdG9wTGlzdGVuaW5nKCk7XG4gKiBgYGBcbiAqL1xuXG5jb25zdCBLYWZrYUZhY2FkZSA9IEphdmEudHlwZShcIm9yZy5lY2xpcHNlLmRpcmlnaWJsZS5jb21wb25lbnRzLmFwaS5rYWZrYS5LYWZrYUZhY2FkZVwiKTtcblxuLyoqXG4gKiBUaGUgQ29uc3VtZXIgY2xhc3MgYWN0cyBhcyB0aGUgbWFpbiBlbnRyeSBwb2ludCBmb3IgY3JlYXRpbmcgYW5kIGNvbmZpZ3VyaW5nXG4gKiBLYWZrYSB0b3BpYyBjb25zdW1lcnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25zdW1lciB7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgbmV3IHRvcGljIGNvbmZpZ3VyYXRpb24gd3JhcHBlciB0aGF0IGNhbiBiZSB1c2VkIHRvIHN0YXJ0IG9yXG4gICAgICogc3RvcCBsaXN0ZW5pbmcgZm9yIG1lc3NhZ2VzIG9uIGEgS2Fma2EgdG9waWMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gZGVzdGluYXRpb24gVGhlIG5hbWUgb2YgdGhlIEthZmthIHRvcGljIHRvIGNvbnN1bWUgbWVzc2FnZXMgZnJvbS5cbiAgICAgKiBAcGFyYW0gY29uZmlndXJhdGlvbiBPcHRpb25hbCBrZXktdmFsdWUgb2JqZWN0IGNvbnRhaW5pbmcgS2Fma2EgY29uc3VtZXIgcHJvcGVydGllc1xuICAgICAqIChlLmcuLCAnZ3JvdXAuaWQnLCAnYXV0by5vZmZzZXQucmVzZXQnKS5cbiAgICAgKiBAcmV0dXJucyBBIHtAbGluayBUb3BpY30gaW5zdGFuY2UgY29uZmlndXJlZCBmb3IgdGhlIHNwZWNpZmllZCBkZXN0aW5hdGlvbiBhbmQgcHJvcGVydGllcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHRvcGljKGRlc3RpbmF0aW9uOiBzdHJpbmcsIGNvbmZpZ3VyYXRpb246IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fSk6IFRvcGljIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUb3BpYyhkZXN0aW5hdGlvbiwgY29uZmlndXJhdGlvbik7XG4gICAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb25maWd1cmVkIEthZmthIHRvcGljIGNvbnN1bWVyIGNhcGFibGUgb2Ygc3RhcnRpbmcgYW5kIHN0b3BwaW5nXG4gKiBiYWNrZ3JvdW5kIG1lc3NhZ2UgbGlzdGVuaW5nLlxuICovXG5jbGFzcyBUb3BpYyB7XG4gICAgcHJpdmF0ZSBkZXN0aW5hdGlvbjogc3RyaW5nO1xuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuXG4gICAgLyoqXG4gICAgICogQHBhcmFtIGRlc3RpbmF0aW9uIFRoZSBuYW1lIG9mIHRoZSBLYWZrYSB0b3BpYy5cbiAgICAgKiBAcGFyYW0gY29uZmlndXJhdGlvbiBPcHRpb25hbCBrZXktdmFsdWUgb2JqZWN0IGZvciBjb25zdW1lciBwcm9wZXJ0aWVzLlxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKGRlc3RpbmF0aW9uOiBzdHJpbmcsIGNvbmZpZ3VyYXRpb246IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fSkge1xuICAgICAgICB0aGlzLmRlc3RpbmF0aW9uID0gZGVzdGluYXRpb247XG4gICAgICAgIHRoaXMuY29uZmlndXJhdGlvbiA9IGNvbmZpZ3VyYXRpb247XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RhcnRzIGxpc3RlbmluZyB0byB0aGUgY29uZmlndXJlZCB0b3BpYyBpbiBhIGJhY2tncm91bmQgcHJvY2Vzcy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBoYW5kbGVyIFRoZSBwYXRoIHRvIHRoZSBzY3JpcHQgb3IgZnVuY3Rpb24gbmFtZSB0aGF0IHdpbGwgaGFuZGxlIHRoZSBpbmNvbWluZyBLYWZrYSBtZXNzYWdlcy5cbiAgICAgKiBUaGlzIGZ1bmN0aW9uIHNob3VsZCBhY2NlcHQgdHdvIGFyZ3VtZW50czogYG1lc3NhZ2VgIChzdHJpbmcpIGFuZCBgaGVhZGVyc2AgKG9iamVjdCkuXG4gICAgICogQHBhcmFtIHRpbWVvdXQgVGhlIG1heGltdW0gYW1vdW50IG9mIHRpbWUgKGluIG1pbGxpc2Vjb25kcykgdGhlIGNvbnN1bWVyIHNob3VsZCB3YWl0IGZvciBtZXNzYWdlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhcnRMaXN0ZW5pbmcoaGFuZGxlcjogc3RyaW5nLCB0aW1lb3V0OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgS2Fma2FGYWNhZGUuc3RhcnRMaXN0ZW5pbmcodGhpcy5kZXN0aW5hdGlvbiwgaGFuZGxlciwgdGltZW91dCwgSlNPTi5zdHJpbmdpZnkodGhpcy5jb25maWd1cmF0aW9uKSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RvcHMgdGhlIGJhY2tncm91bmQgcHJvY2VzcyB0aGF0IGlzIGxpc3RlbmluZyB0byB0aGUgY29uZmlndXJlZCB0b3BpYy5cbiAgICAgKiBOb3RlOiBTdG9wcGluZyBpcyBiYXNlZCBvbiBtYXRjaGluZyB0aGUgdG9waWMgYW5kIGNvbmZpZ3VyYXRpb24sIHNvIHRoZSBzYW1lXG4gICAgICogY29uZmlndXJhdGlvbiBvYmplY3QgdXNlZCBpbiBgc3RhcnRMaXN0ZW5pbmdgIHNob3VsZCBiZSB1c2VkIGhlcmUuXG4gICAgICovXG4gICAgcHVibGljIHN0b3BMaXN0ZW5pbmcoKTogdm9pZCB7XG4gICAgICAgIEthZmthRmFjYWRlLnN0b3BMaXN0ZW5pbmcodGhpcy5kZXN0aW5hdGlvbiwgSlNPTi5zdHJpbmdpZnkodGhpcy5jb25maWd1cmF0aW9uKSk7XG4gICAgfVxufVxuXG4vLyBAdHMtaWdub3JlXG5pZiAodHlwZW9mIG1vZHVsZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgbW9kdWxlLmV4cG9ydHMgPSBDb25zdW1lcjtcbn0iXSwKICAibWFwcGluZ3MiOiAiQUFnQ0EsTUFBTSxjQUFjLEtBQUssS0FBSyx3REFBd0Q7QUFNL0UsTUFBTSxTQUFTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXbEIsT0FBYyxNQUFNLGFBQXFCLGdCQUEyQyxDQUFDLEdBQVU7QUFDM0YsV0FBTyxJQUFJLE1BQU0sYUFBYSxhQUFhO0FBQUEsRUFDL0M7QUFDSjtBQU1BLE1BQU0sTUFBTTtBQUFBLEVBQ0E7QUFBQSxFQUNBLGdCQUEyQyxDQUFDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1wRCxZQUFZLGFBQXFCLGdCQUEyQyxDQUFDLEdBQUc7QUFDNUUsU0FBSyxjQUFjO0FBQ25CLFNBQUssZ0JBQWdCO0FBQUEsRUFDekI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sZUFBZSxTQUFpQixTQUF1QjtBQUMxRCxnQkFBWSxlQUFlLEtBQUssYUFBYSxTQUFTLFNBQVMsS0FBSyxVQUFVLEtBQUssYUFBYSxDQUFDO0FBQUEsRUFDckc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxnQkFBc0I7QUFDekIsZ0JBQVksY0FBYyxLQUFLLGFBQWEsS0FBSyxVQUFVLEtBQUssYUFBYSxDQUFDO0FBQUEsRUFDbEY7QUFDSjtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFL0IsU0FBTyxVQUFVO0FBQ3JCOyIsCiAgIm5hbWVzIjogW10KfQo=
|
package/dist/esm/kafka/index.mjs
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Consumer } from "./consumer";
|
|
2
|
-
export * from "./consumer";
|
|
3
|
-
import { Producer } from "./producer";
|
|
4
|
-
export * from "./producer";
|
|
5
|
-
export {
|
|
6
|
-
Consumer as consumer,
|
|
7
|
-
Producer as producer
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2thZmthL2luZGV4LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUga2Fma2EvaW5kZXhcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9rYWZrYVxuICogQG92ZXJ2aWV3XG4gKiBcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGZ1bmN0aW9uYWxpdGllcyBmb3IgS2Fma2EgaW50ZWdyYXRpb24gd2l0aGluIHRoZSBBZXJva2l0IFNESy4gSXQgaW5jbHVkZXMgY2xhc3NlcyBhbmQgbWV0aG9kcyBmb3IgcHJvZHVjaW5nIGFuZCBjb25zdW1pbmcgbWVzc2FnZXMgZnJvbSBLYWZrYSB0b3BpY3MsIGFzIHdlbGwgYXMgbWFuYWdpbmcgS2Fma2EgY29uZmlndXJhdGlvbnMgYW5kIGNvbm5lY3Rpb25zLlxuICogXG4gKiBUaGUgbWFpbiBjb21wb25lbnRzIG9mIHRoaXMgbW9kdWxlIGFyZTpcbiAqIC0gQ29uc3VtZXI6IFJlcHJlc2VudHMgYSBLYWZrYSBjb25zdW1lciB0aGF0IGNhbiBzdWJzY3JpYmUgdG8gdG9waWNzIGFuZCBjb25zdW1lIG1lc3NhZ2VzLlxuICogLSBQcm9kdWNlcjogUmVwcmVzZW50cyBhIEthZmthIHByb2R1Y2VyIHRoYXQgY2FuIHNlbmQgbWVzc2FnZXMgdG8gdG9waWNzLlxuICovXG5cbmV4cG9ydCB7IENvbnN1bWVyIGFzIGNvbnN1bWVyIH0gZnJvbSBcIi4vY29uc3VtZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2NvbnN1bWVyXCI7XG5leHBvcnQgeyBQcm9kdWNlciBhcyBwcm9kdWNlciB9IGZyb20gXCIuL3Byb2R1Y2VyXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9wcm9kdWNlclwiOyJdLAogICJtYXBwaW5ncyI6ICJBQVlBLFNBQXFCLGdCQUFnQjtBQUNyQyxjQUFjO0FBQ2QsU0FBcUIsZ0JBQWdCO0FBQ3JDLGNBQWM7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
const KafkaFacade = Java.type("org.eclipse.dirigible.components.api.kafka.KafkaFacade");
|
|
2
|
-
class Producer {
|
|
3
|
-
/**
|
|
4
|
-
* Creates a new topic configuration wrapper that can be used to send messages
|
|
5
|
-
* to a specific Kafka topic.
|
|
6
|
-
*
|
|
7
|
-
* @param destination The name of the Kafka topic to send messages to.
|
|
8
|
-
* @param configuration Optional key-value object containing Kafka producer properties
|
|
9
|
-
* (e.g., 'bootstrap.servers', 'acks').
|
|
10
|
-
* @returns A {@link Topic} instance configured for the specified destination and properties.
|
|
11
|
-
*/
|
|
12
|
-
static topic(destination, configuration = {}) {
|
|
13
|
-
return new Topic(destination, configuration);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Closes the Kafka producer connection pool, releasing associated resources.
|
|
17
|
-
* This should be called when message sending is complete to ensure proper cleanup.
|
|
18
|
-
*
|
|
19
|
-
* @param configuration Optional key-value object containing the configuration
|
|
20
|
-
* used to initialize the producer to be closed.
|
|
21
|
-
*/
|
|
22
|
-
static close(configuration = {}) {
|
|
23
|
-
KafkaFacade.closeProducer(configuration);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
class Topic {
|
|
27
|
-
destination;
|
|
28
|
-
configuration;
|
|
29
|
-
/**
|
|
30
|
-
* @param destination The name of the Kafka topic.
|
|
31
|
-
* @param configuration Key-value object for producer properties.
|
|
32
|
-
*/
|
|
33
|
-
constructor(destination, configuration) {
|
|
34
|
-
this.destination = destination;
|
|
35
|
-
this.configuration = configuration;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Sends a message with an optional key to the configured Kafka topic.
|
|
39
|
-
*
|
|
40
|
-
* @param key The key of the message. Messages with the same key go to the same partition.
|
|
41
|
-
* @param value The content of the message to be sent.
|
|
42
|
-
*/
|
|
43
|
-
send(key, value) {
|
|
44
|
-
KafkaFacade.send(this.destination, key, value, JSON.stringify(this.configuration));
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
if (typeof module !== "undefined") {
|
|
48
|
-
module.exports = Producer;
|
|
49
|
-
}
|
|
50
|
-
export {
|
|
51
|
-
Producer
|
|
52
|
-
};
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2thZmthL3Byb2R1Y2VyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBtb2R1bGUga2Fma2EvcHJvZHVjZXJcbiAqIEBwYWNrYWdlIEBhZXJva2l0L3Nkay9rYWZrYVxuICogQG5hbWUgUHJvZHVjZXJcbiAqIEBvdmVydmlld1xuICogXG4gKiBUaGUgUHJvZHVjZXIgbW9kdWxlIHByb3ZpZGVzIGFuIEFQSSBmb3IgY29uZmlndXJpbmcgYW5kIG1hbmFnaW5nIEthZmthIHByb2R1Y2VycywgYWxsb3dpbmcgc2NyaXB0cyB0byBjcmVhdGUgdG9waWNzLCBzZW5kIG1lc3NhZ2VzLCBhbmQgY2xvc2UgdGhlIHByb2R1Y2VyIGNvbm5lY3Rpb24uIEl0IGFic3RyYWN0cyB0aGUgY29tcGxleGl0aWVzIG9mIEthZmthIHByb2R1Y2VyIGNvbmZpZ3VyYXRpb24gYW5kIG1lc3NhZ2Ugc2VuZGluZywgZW5hYmxpbmcgZGV2ZWxvcGVycyB0byBlYXNpbHkgaW50ZWdyYXRlIEthZmthIG1lc3NhZ2UgcHJvZHVjdGlvbiBpbnRvIHRoZWlyIGFwcGxpY2F0aW9ucy5cbiAqIFxuICogIyMjIEtleSBGZWF0dXJlczpcbiAqIC0gKipUb3BpYyBDb25maWd1cmF0aW9uKio6IFRoZSBgUHJvZHVjZXIudG9waWNgIG1ldGhvZCBhbGxvd3MgZGV2ZWxvcGVycyB0byBjcmVhdGUgYSB0b3BpYyBjb25maWd1cmF0aW9uIHdyYXBwZXIgd2l0aCBzcGVjaWZpZWQgZGVzdGluYXRpb24gYW5kIHByb3BlcnRpZXMuXG4gKiAtICoqTWVzc2FnZSBTZW5kaW5nKio6IFRoZSBgc2VuZGAgbWV0aG9kIG9uIHRoZSBUb3BpYyBjbGFzcyBlbmFibGVzIHNlbmRpbmcgbWVzc2FnZXMgd2l0aCBvcHRpb25hbCBrZXlzIHRvIHRoZSBjb25maWd1cmVkIEthZmthIHRvcGljLlxuICogLSAqKkNvbm5lY3Rpb24gTWFuYWdlbWVudCoqOiBUaGUgYGNsb3NlYCBtZXRob2QgYWxsb3dzIGRldmVsb3BlcnMgdG8gY2xvc2UgdGhlIEthZmthIHByb2R1Y2VyIGNvbm5lY3Rpb24gcG9vbCwgZW5zdXJpbmcgcHJvcGVyIHJlc291cmNlIGNsZWFudXAuXG4gKiBcbiAqICMjIyBVc2UgQ2FzZXM6XG4gKiAtICoqRXZlbnQgUHJvZHVjdGlvbioqOiBEZXZlbG9wZXJzIGNhbiB1c2UgdGhpcyBtb2R1bGUgdG8gcHJvZHVjZSBtZXNzYWdlcyB0byBLYWZrYSB0b3BpY3MgaW4gcmVhbC10aW1lLCBlbmFibGluZyB1c2UgY2FzZXMgc3VjaCBhcyBldmVudC1kcml2ZW4gYXJjaGl0ZWN0dXJlcyBhbmQgbWljcm9zZXJ2aWNlcyBjb21tdW5pY2F0aW9uLlxuICogLSAqKkludGVncmF0aW9uIHdpdGggT3RoZXIgU3lzdGVtcyoqOiBCeSBzZW5kaW5nIEthZmthIG1lc3NhZ2VzLCBhcHBsaWNhdGlvbnMgY2FuIGludGVncmF0ZSB3aXRoIG90aGVyIHN5c3RlbXMgdGhhdCBjb25zdW1lIG1lc3NhZ2VzIGZyb20gS2Fma2EsIGZhY2lsaXRhdGluZyBkYXRhIGZsb3cgYWNyb3NzIGRpZmZlcmVudCBjb21wb25lbnRzIG9mIGFuIGVjb3N5c3RlbS5cbiAqIFxuICogIyMjIEV4YW1wbGUgVXNhZ2U6XG4gKiBgYGB0c1xuICogaW1wb3J0IHsgUHJvZHVjZXIgfSBmcm9tIFwiQGFlcm9raXQvc2RrL2thZmthXCI7XG4gKiBcbiAqIC8vIENyZWF0ZSBhIHByb2R1Y2VyIGZvciB0aGUgXCJvcmRlcnNcIiB0b3BpYyB3aXRoIHNwZWNpZmljIGNvbmZpZ3VyYXRpb25cbiAqIGNvbnN0IG9yZGVyc1Byb2R1Y2VyID0gUHJvZHVjZXIudG9waWMoXCJvcmRlcnNcIiwgeyBcImJvb3RzdHJhcC5zZXJ2ZXJzXCI6IFwibG9jYWxob3N0OjkwOTJcIiB9KTtcbiAqIFxuICogLy8gU2VuZCBhIG1lc3NhZ2Ugd2l0aCBhIGtleSB0byB0aGUgXCJvcmRlcnNcIiB0b3BpY1xuICogb3JkZXJzUHJvZHVjZXIuc2VuZChcIm9yZGVyMTIzXCIsIFwiTmV3IG9yZGVyIHBsYWNlZFwiKTtcbiAqIFxuICogLy8gTGF0ZXIsIGNsb3NlIHRoZSBwcm9kdWNlciBjb25uZWN0aW9uXG4gKiBQcm9kdWNlci5jbG9zZSh7IFwiYm9vdHN0cmFwLnNlcnZlcnNcIjogXCJsb2NhbGhvc3Q6OTA5MlwiIH0pO1xuICogYGBgXG4gKi9cblxuY29uc3QgS2Fma2FGYWNhZGUgPSBKYXZhLnR5cGUoXCJvcmcuZWNsaXBzZS5kaXJpZ2libGUuY29tcG9uZW50cy5hcGkua2Fma2EuS2Fma2FGYWNhZGVcIik7XG5cbi8qKlxuICogVGhlIFByb2R1Y2VyIGNsYXNzIHNlcnZlcyBhcyB0aGUgbWFpbiBlbnRyeSBwb2ludCBmb3IgY3JlYXRpbmcgYW5kIGNvbmZpZ3VyaW5nXG4gKiBLYWZrYSB0b3BpYyBwcm9kdWNlcnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9kdWNlciB7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgbmV3IHRvcGljIGNvbmZpZ3VyYXRpb24gd3JhcHBlciB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlbmQgbWVzc2FnZXNcbiAgICAgKiB0byBhIHNwZWNpZmljIEthZmthIHRvcGljLlxuICAgICAqXG4gICAgICogQHBhcmFtIGRlc3RpbmF0aW9uIFRoZSBuYW1lIG9mIHRoZSBLYWZrYSB0b3BpYyB0byBzZW5kIG1lc3NhZ2VzIHRvLlxuICAgICAqIEBwYXJhbSBjb25maWd1cmF0aW9uIE9wdGlvbmFsIGtleS12YWx1ZSBvYmplY3QgY29udGFpbmluZyBLYWZrYSBwcm9kdWNlciBwcm9wZXJ0aWVzXG4gICAgICogKGUuZy4sICdib290c3RyYXAuc2VydmVycycsICdhY2tzJykuXG4gICAgICogQHJldHVybnMgQSB7QGxpbmsgVG9waWN9IGluc3RhbmNlIGNvbmZpZ3VyZWQgZm9yIHRoZSBzcGVjaWZpZWQgZGVzdGluYXRpb24gYW5kIHByb3BlcnRpZXMuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0b3BpYyhkZXN0aW5hdGlvbjogc3RyaW5nLCBjb25maWd1cmF0aW9uOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiBUb3BpYyB7XG4gICAgICAgIHJldHVybiBuZXcgVG9waWMoZGVzdGluYXRpb24sIGNvbmZpZ3VyYXRpb24pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENsb3NlcyB0aGUgS2Fma2EgcHJvZHVjZXIgY29ubmVjdGlvbiBwb29sLCByZWxlYXNpbmcgYXNzb2NpYXRlZCByZXNvdXJjZXMuXG4gICAgICogVGhpcyBzaG91bGQgYmUgY2FsbGVkIHdoZW4gbWVzc2FnZSBzZW5kaW5nIGlzIGNvbXBsZXRlIHRvIGVuc3VyZSBwcm9wZXIgY2xlYW51cC5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb25maWd1cmF0aW9uIE9wdGlvbmFsIGtleS12YWx1ZSBvYmplY3QgY29udGFpbmluZyB0aGUgY29uZmlndXJhdGlvblxuICAgICAqIHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgcHJvZHVjZXIgdG8gYmUgY2xvc2VkLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgY2xvc2UoY29uZmlndXJhdGlvbjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9KTogdm9pZCB7XG4gICAgICAgIEthZmthRmFjYWRlLmNsb3NlUHJvZHVjZXIoY29uZmlndXJhdGlvbik7XG4gICAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb25maWd1cmVkIEthZmthIHRvcGljIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VuZCBtZXNzYWdlcy5cbiAqL1xuY2xhc3MgVG9waWMge1xuXG4gICAgcHJpdmF0ZSBkZXN0aW5hdGlvbjogc3RyaW5nO1xuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBkZXN0aW5hdGlvbiBUaGUgbmFtZSBvZiB0aGUgS2Fma2EgdG9waWMuXG4gICAgICogQHBhcmFtIGNvbmZpZ3VyYXRpb24gS2V5LXZhbHVlIG9iamVjdCBmb3IgcHJvZHVjZXIgcHJvcGVydGllcy5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihkZXN0aW5hdGlvbjogc3RyaW5nLCBjb25maWd1cmF0aW9uOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KSB7XG4gICAgICAgIHRoaXMuZGVzdGluYXRpb24gPSBkZXN0aW5hdGlvbjtcbiAgICAgICAgdGhpcy5jb25maWd1cmF0aW9uID0gY29uZmlndXJhdGlvbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZW5kcyBhIG1lc3NhZ2Ugd2l0aCBhbiBvcHRpb25hbCBrZXkgdG8gdGhlIGNvbmZpZ3VyZWQgS2Fma2EgdG9waWMuXG4gICAgICpcbiAgICAgKiBAcGFyYW0ga2V5IFRoZSBrZXkgb2YgdGhlIG1lc3NhZ2UuIE1lc3NhZ2VzIHdpdGggdGhlIHNhbWUga2V5IGdvIHRvIHRoZSBzYW1lIHBhcnRpdGlvbi5cbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIGNvbnRlbnQgb2YgdGhlIG1lc3NhZ2UgdG8gYmUgc2VudC5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2VuZChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBLYWZrYUZhY2FkZS5zZW5kKHRoaXMuZGVzdGluYXRpb24sIGtleSwgdmFsdWUsIEpTT04uc3RyaW5naWZ5KHRoaXMuY29uZmlndXJhdGlvbikpO1xuICAgIH1cbn1cblxuLy8gQHRzLWlnbm9yZVxuaWYgKHR5cGVvZiBtb2R1bGUgIT09ICd1bmRlZmluZWQnKSB7XG5cdC8vIEB0cy1pZ25vcmVcblx0bW9kdWxlLmV4cG9ydHMgPSBQcm9kdWNlcjtcbn0iXSwKICAibWFwcGluZ3MiOiAiQUFnQ0EsTUFBTSxjQUFjLEtBQUssS0FBSyx3REFBd0Q7QUFNL0UsTUFBTSxTQUFTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFXbEIsT0FBYyxNQUFNLGFBQXFCLGdCQUEyQyxDQUFDLEdBQVU7QUFDM0YsV0FBTyxJQUFJLE1BQU0sYUFBYSxhQUFhO0FBQUEsRUFDL0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0EsT0FBYyxNQUFNLGdCQUEyQyxDQUFDLEdBQVM7QUFDckUsZ0JBQVksY0FBYyxhQUFhO0FBQUEsRUFDM0M7QUFDSjtBQUtBLE1BQU0sTUFBTTtBQUFBLEVBRUE7QUFBQSxFQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1SLFlBQVksYUFBcUIsZUFBMEM7QUFDdkUsU0FBSyxjQUFjO0FBQ25CLFNBQUssZ0JBQWdCO0FBQUEsRUFDekI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLEtBQUssS0FBYSxPQUFxQjtBQUMxQyxnQkFBWSxLQUFLLEtBQUssYUFBYSxLQUFLLE9BQU8sS0FBSyxVQUFVLEtBQUssYUFBYSxDQUFDO0FBQUEsRUFDckY7QUFDSjtBQUdBLElBQUksT0FBTyxXQUFXLGFBQWE7QUFFbEMsU0FBTyxVQUFVO0FBQ2xCOyIsCiAgIm5hbWVzIjogW10KfQo=
|