You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by mb...@apache.org on 2022/02/11 02:30:05 UTC
[asterixdb] 08/09: [NO ISSUE][MISC] Add ability to write messages to json object, etc.
This is an automated email from the ASF dual-hosted git repository.
mblow pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit 706406d039afb2e4c851148310e3a3d2ddfacb78
Author: Michael Blow <mb...@apache.org>
AuthorDate: Thu Feb 10 09:27:01 2022 -0500
[NO ISSUE][MISC] Add ability to write messages to json object, etc.
- minor cleanup
Change-Id: Ib0a3a0bc2269c3bfa65a08a3c0a77aeb45b16e5d
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/15223
Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
Reviewed-by: Ian Maxon <im...@uci.edu>
Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
---
.../org/apache/asterix/translator/BaseClientRequest.java | 2 +-
.../asterix/app/active/ActiveNotificationHandler.java | 5 ++---
.../app/result/fields/AbstractCodedMessagePrinter.java | 13 +++++++++++++
.../org/apache/asterix/common/api/RequestReference.java | 2 +-
.../src/main/java/org/apache/hyracks/util/JSONUtil.java | 5 +++--
5 files changed, 20 insertions(+), 7 deletions(-)
diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/BaseClientRequest.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/BaseClientRequest.java
index eaca53b..99cda09 100644
--- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/BaseClientRequest.java
+++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/BaseClientRequest.java
@@ -90,7 +90,7 @@ public abstract class BaseClientRequest implements IClientRequest {
@Override
public String toJson() {
- return JSONUtil.convertNodeOrThrow(asJson());
+ return JSONUtil.convertNodeUnchecked(asJson());
}
protected ObjectNode asJson() {
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java
index 6b5cae2..284929f 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveNotificationHandler.java
@@ -181,10 +181,9 @@ public class ActiveNotificationHandler extends SingleThreadEventProcessor<Active
@Override
public synchronized IActiveEntityEventsListener[] getEventListeners() {
if (LOGGER.isTraceEnabled()) {
- LOGGER.trace("getEventListeners() was called");
- LOGGER.trace("returning " + entityEventListeners.size() + " Listeners");
+ LOGGER.trace("getEventListeners() returning {} listeners", entityEventListeners.size());
}
- return entityEventListeners.values().toArray(new IActiveEntityEventsListener[entityEventListeners.size()]);
+ return entityEventListeners.values().toArray(IActiveEntityEventsListener[]::new);
}
@Override
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/result/fields/AbstractCodedMessagePrinter.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/result/fields/AbstractCodedMessagePrinter.java
index 6270c4c..f1eb315 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/result/fields/AbstractCodedMessagePrinter.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/result/fields/AbstractCodedMessagePrinter.java
@@ -26,6 +26,9 @@ import org.apache.asterix.common.api.ICodedMessage;
import org.apache.asterix.common.api.IResponseFieldPrinter;
import org.apache.hyracks.util.JSONUtil;
+import com.fasterxml.jackson.databind.node.ArrayNode;
+import com.fasterxml.jackson.databind.node.ObjectNode;
+
public abstract class AbstractCodedMessagePrinter implements IResponseFieldPrinter {
private enum CodedMessageField {
@@ -68,4 +71,14 @@ public abstract class AbstractCodedMessagePrinter implements IResponseFieldPrint
}
pw.print("]");
}
+
+ public ObjectNode appendTo(ObjectNode objectNode) {
+ ArrayNode array = objectNode.putArray(getName());
+ messages.forEach(codedMessage -> {
+ ObjectNode error = array.addObject();
+ error.put(CodedMessageField.CODE.str(), codedMessage.getCode());
+ error.put(CodedMessageField.MSG.str(), codedMessage.getMessage());
+ });
+ return objectNode;
+ }
}
diff --git a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/RequestReference.java b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/RequestReference.java
index eb08c09..78b6b3b 100644
--- a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/RequestReference.java
+++ b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/api/RequestReference.java
@@ -79,6 +79,6 @@ public class RequestReference implements IRequestReference {
object.put("time", time);
object.put("userAgent", userAgent);
object.put("remoteAddr", remoteAddr);
- return JSONUtil.convertNodeOrThrow(object);
+ return JSONUtil.convertNodeUnchecked(object);
}
}
diff --git a/hyracks-fullstack/hyracks/hyracks-util/src/main/java/org/apache/hyracks/util/JSONUtil.java b/hyracks-fullstack/hyracks/hyracks-util/src/main/java/org/apache/hyracks/util/JSONUtil.java
index 5c1b292..f937e97 100644
--- a/hyracks-fullstack/hyracks/hyracks-util/src/main/java/org/apache/hyracks/util/JSONUtil.java
+++ b/hyracks-fullstack/hyracks/hyracks-util/src/main/java/org/apache/hyracks/util/JSONUtil.java
@@ -35,6 +35,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.google.common.util.concurrent.UncheckedExecutionException;
public class JSONUtil {
@@ -53,11 +54,11 @@ public class JSONUtil {
return SORTED_MAPPER.writeValueAsString(SORTED_MAPPER.treeToValue(node, Object.class));
}
- public static String convertNodeOrThrow(final JsonNode node) {
+ public static String convertNodeUnchecked(final JsonNode node) throws UncheckedExecutionException {
try {
return convertNode(node);
} catch (JsonProcessingException e) {
- throw new IllegalStateException(e);
+ throw new UncheckedExecutionException(e);
}
}