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 <[email protected]> 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: [email protected] For additional commands, e-mail: [email protected]
