You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pekko.apache.org by fa...@apache.org on 2022/10/31 09:34:46 UTC

[incubator-pekko-samples] 06/09: test ask - java

This is an automated email from the ASF dual-hosted git repository.

fanningpj pushed a commit to branch wip-rolling-update-typed-patriknw
in repository https://gitbox.apache.org/repos/asf/incubator-pekko-samples.git

commit ba48a34466ec1899cb2dd74e7b844bd2eed2dd1f
Author: Patrik Nordwall <pa...@gmail.com>
AuthorDate: Fri Jul 12 07:20:36 2019 +0200

    test ask - java
---
 .../src/main/java/sample/sharding/Devices.java                | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/akka-sample-sharding-java/src/main/java/sample/sharding/Devices.java b/akka-sample-sharding-java/src/main/java/sample/sharding/Devices.java
index aba56b6..2ada983 100644
--- a/akka-sample-sharding-java/src/main/java/sample/sharding/Devices.java
+++ b/akka-sample-sharding-java/src/main/java/sample/sharding/Devices.java
@@ -2,6 +2,7 @@ package sample.sharding;
 
 import java.time.Duration;
 import java.util.Random;
+import java.util.concurrent.CompletionStage;
 
 import akka.actor.AbstractActorWithTimers;
 
@@ -13,6 +14,7 @@ import akka.event.LoggingAdapter;
 import akka.cluster.sharding.ClusterSharding;
 import akka.cluster.sharding.ClusterShardingSettings;
 import akka.cluster.sharding.ShardRegion;
+import akka.pattern.Patterns;
 
 public class Devices extends AbstractActorWithTimers {
 
@@ -84,8 +86,13 @@ public class Devices extends AbstractActorWithTimers {
   }
 
   private void receiveReadTemperatures() {
-    for (int id = 0; id < numberOfDevices; id++) {
-      deviceRegion.tell(new Device.GetTemperature(id), getSelf());
+    for (int deviceId = 0; deviceId < numberOfDevices; deviceId++) {
+      if (deviceId >= 40) {
+        CompletionStage<Object> reply = Patterns.ask(deviceRegion, new Device.GetTemperature(deviceId), Duration.ofSeconds(3));
+        Patterns.pipe(reply, getContext().getDispatcher()).to(getSelf());
+      } else {
+        deviceRegion.tell(new Device.GetTemperature(deviceId), getSelf());
+      }
     }
   }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pekko.apache.org
For additional commands, e-mail: commits-help@pekko.apache.org