From 7a52fbf100b9fc7072f99f2d906e381c89819ad1 Mon Sep 17 00:00:00 2001 From: Simon Bernard Date: Thu, 12 Sep 2024 11:30:58 +0200 Subject: [PATCH] GH-1650: Fix demo-server about unexpected "Device is not awake" message --- .../leshan/demo/server/servlet/queuemode/QueueHandler.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/leshan-demo-server/src/main/java/org/eclipse/leshan/demo/server/servlet/queuemode/QueueHandler.java b/leshan-demo-server/src/main/java/org/eclipse/leshan/demo/server/servlet/queuemode/QueueHandler.java index 623246d192..336456707f 100644 --- a/leshan-demo-server/src/main/java/org/eclipse/leshan/demo/server/servlet/queuemode/QueueHandler.java +++ b/leshan-demo-server/src/main/java/org/eclipse/leshan/demo/server/servlet/queuemode/QueueHandler.java @@ -101,11 +101,12 @@ public CompletableFuture send(Registration destination, DownlinkD long timeoutInMs) throws InterruptedException { // is client awake ? + boolean useQueueMode = destination.usesQueueMode(); boolean clientAwake = server.getPresenceService().isClientAwake(destination); // client is awake we try to send request now CompletableFuture future = new CompletableFuture<>(); - if (clientAwake) { + if (clientAwake || !useQueueMode) { try { // TODO ideally we should use async way to send request LwM2mResponse response = server.send(destination, request, timeoutInMs); @@ -116,7 +117,7 @@ public CompletableFuture send(Registration destination, DownlinkD } // client is not awake we queue the request for later. - if (!clientAwake) { + if (useQueueMode && !clientAwake) { QueueRequestData data = new QueueRequestData(); data.request = request; data.responseFuture = future;