From 1c50451caf289596c56e6570b14b2eaca2837fd6 Mon Sep 17 00:00:00 2001 From: Barry Nouwt Date: Fri, 11 Apr 2025 17:18:40 +0200 Subject: [PATCH] Improved error handling. --- .../knowledge/engine/smartconnector/api/AnswerHandler.java | 3 ++- .../eu/knowledge/engine/smartconnector/api/ReactHandler.java | 3 ++- .../engine/smartconnector/impl/KnowledgeBaseStoreImpl.java | 5 +++-- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/AnswerHandler.java b/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/AnswerHandler.java index e9cc99436..a00040c24 100644 --- a/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/AnswerHandler.java +++ b/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/AnswerHandler.java @@ -38,7 +38,8 @@ public default CompletableFuture answerAsync(AnswerKnowledgeInteract BindingSet bs = this.answer(anAKI, anAnswerExchangeInfo); future.complete(bs); } catch (Exception e) { - LoggerFactory.getLogger(AnswerHandler.class).error("{}", e); + LoggerFactory.getLogger(AnswerHandler.class) + .error("Answering should not result in the following exception.", e); future.completeExceptionally(e); } return future; diff --git a/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/ReactHandler.java b/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/ReactHandler.java index 534a1ebd4..d2d951b52 100644 --- a/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/ReactHandler.java +++ b/smart-connector-api/src/main/java/eu/knowledge/engine/smartconnector/api/ReactHandler.java @@ -39,7 +39,8 @@ public default CompletableFuture reactAsync(ReactKnowledgeInteractio BindingSet bs = this.react(anRKI, aReactExchangeInfo); future.complete(bs); } catch (Exception e) { - LoggerFactory.getLogger(ReactHandler.class).error("{}", e); + LoggerFactory.getLogger(ReactHandler.class) + .error("Reacting should not result in the following exception.", e); future.completeExceptionally(e); } diff --git a/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/impl/KnowledgeBaseStoreImpl.java b/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/impl/KnowledgeBaseStoreImpl.java index 0a44d968a..222dde8f0 100644 --- a/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/impl/KnowledgeBaseStoreImpl.java +++ b/smart-connector/src/main/java/eu/knowledge/engine/smartconnector/impl/KnowledgeBaseStoreImpl.java @@ -209,7 +209,8 @@ public void unregister(ReactKnowledgeInteraction anReactKI) { private void tryPut(MyKnowledgeInteractionInfo kii) throws IllegalArgumentException { var existing = this.kiis.putIfAbsent(kii.id, kii); if (existing != null) { - throw new IllegalArgumentException("A Knowledge Interaction with that URI was already registered."); + throw new IllegalArgumentException( + "The Knowledge Interaction with URI '" + kii.getId() + "' should not be already registered."); } } @@ -243,7 +244,7 @@ private URI generateId(KnowledgeInteraction aKI, boolean isMeta) { return new URI(this.getKnowledgeBaseId().toString() + "/interaction/" + aKI.getName()); } else { return new URI(this.knowledgeBase.getKnowledgeBaseId().toString() + "/interaction/" - + UUID.randomUUID().toString()); + + UUID.randomUUID().toString()); } } } catch (URISyntaxException e) {