Skip to content

Commit 67aec0b

Browse files
@W-19784711: add examples for multiplease send/receive (#196)
1 parent 3610b57 commit 67aec0b

File tree

1 file changed

+26
-1
lines changed
  • examples/src/main/java/com/salesforce/multicloudj/pubsub

1 file changed

+26
-1
lines changed

examples/src/main/java/com/salesforce/multicloudj/pubsub/Main.java

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ public static void main(String[] args) {
2525
acknowledgeMessagesBatch();
2626
negativeAcknowledgeMessage();
2727
getSubscriptionAttributes();
28+
sendReceiveMultipleMessages();
2829
}
2930

3031
/**
@@ -68,7 +69,7 @@ public static void publishMessageWithMetadata() {
6869
}
6970

7071
/**
71-
* Publishes multiple messages for batch operations.
72+
* Send and receive multiple messages individually
7273
*/
7374
public static void publishBatchMessages() {
7475
// Get the TopicClient instance
@@ -89,6 +90,30 @@ public static void publishBatchMessages() {
8990
getLogger().info("Published 5 messages for batch acknowledgment");
9091
}
9192

93+
/**
94+
* Publishes multiple messages for batch operations.
95+
*/
96+
public static void sendReceiveMultipleMessages() {
97+
// Get the TopicClient instance
98+
TopicClient topicClient = getTopicClient(provider);
99+
SubscriptionClient subscriptionClient = getSubscriptionClient(provider);
100+
101+
// Publish 5 messages for batch acknowledgment
102+
for (int i = 1; i <= 5; i++) {
103+
Message message = Message.builder()
104+
.withBody("Batch message #" + i)
105+
.withMetadata("batchId", "batch-1")
106+
.withMetadata("messageNumber", String.valueOf(i))
107+
.build();
108+
109+
topicClient.send(message);
110+
Message m = subscriptionClient.receive();
111+
getLogger().info("Received message #{}", m.getAckID());
112+
}
113+
114+
getLogger().info("Published 5 messages for batch acknowledgment");
115+
}
116+
92117
/**
93118
* Receives a message from a subscription.
94119
*/

0 commit comments

Comments
 (0)