summaryrefslogtreecommitdiffstats
path: root/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java
diff options
context:
space:
mode:
authorvalerijf <valerijf@yahoo-inc.com>2017-05-11 12:54:47 +0200
committervalerijf <valerijf@yahoo-inc.com>2017-05-11 12:54:47 +0200
commit605ae73f3699b35a9071b0736235b5c5cfbc5ad4 (patch)
tree64e10d1129e591575ccc5ed7e99d39e679d62202 /vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java
parent2ffb9f91d8cefb9a83e3018c599445ce1990d251 (diff)
Created helper classes to collect feed metrics
Diffstat (limited to 'vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java')
-rw-r--r--vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java33
1 files changed, 33 insertions, 0 deletions
diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java b/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java
new file mode 100644
index 00000000000..3ed1f42ca14
--- /dev/null
+++ b/vespaclient-container-plugin/src/main/java/com/yahoo/documentapi/metrics/DocumentOperationStatus.java
@@ -0,0 +1,33 @@
+// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.documentapi.metrics;
+
+import com.yahoo.document.restapi.OperationHandlerImpl;
+
+import java.util.Set;
+
+/**
+ * @author freva
+ */
+public enum DocumentOperationStatus {
+ OK, CLIENT_ERROR, SERVER_ERROR;
+
+ public static DocumentOperationStatus fromHttpStatusCode(int httpStatus) {
+ switch (httpStatus / 100) {
+ case 2:
+ return OK;
+
+ case 4:
+ return CLIENT_ERROR;
+
+ case 5:
+ return SERVER_ERROR;
+
+ default:
+ return null;
+ }
+ }
+
+ public static DocumentOperationStatus fromMessageBusErrorCodes(Set<Integer> errorCodes) {
+ return fromHttpStatusCode(OperationHandlerImpl.getHTTPStatusCode(errorCodes));
+ }
+}