summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--container-core/src/main/java/com/yahoo/container/jdisc/RequestHandlerTestDriver.java2
-rw-r--r--document/abi-spec.json4
-rw-r--r--document/src/main/java/com/yahoo/document/DocumentPut.java16
-rw-r--r--document/src/main/java/com/yahoo/document/TestAndSetCondition.java14
-rw-r--r--documentapi/abi-spec.json5
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/DocumentOperationParameters.java27
-rw-r--r--jdisc_core/src/main/java/com/yahoo/jdisc/test/TestDriver.java2
7 files changed, 67 insertions, 3 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/jdisc/RequestHandlerTestDriver.java b/container-core/src/main/java/com/yahoo/container/jdisc/RequestHandlerTestDriver.java
index 8243ad07760..a3e264c16ee 100644
--- a/container-core/src/main/java/com/yahoo/container/jdisc/RequestHandlerTestDriver.java
+++ b/container-core/src/main/java/com/yahoo/container/jdisc/RequestHandlerTestDriver.java
@@ -127,7 +127,7 @@ public class RequestHandlerTestDriver implements AutoCloseable {
public String read() {
ByteBuffer nextBuffer = content.read();
if (nextBuffer == null) return null; // end of transmission
- return Charset.forName("utf-8").decode(nextBuffer).toString();
+ return StandardCharsets.UTF_8.decode(nextBuffer).toString();
}
/** Returns the number of bytes available in the handler right now */
diff --git a/document/abi-spec.json b/document/abi-spec.json
index e53cf09f07e..c9191aa2fdb 100644
--- a/document/abi-spec.json
+++ b/document/abi-spec.json
@@ -399,6 +399,8 @@
"public com.yahoo.document.DocumentId getId()",
"public void <init>(com.yahoo.document.DocumentPut)",
"public void <init>(com.yahoo.document.DocumentPut, com.yahoo.document.Document)",
+ "public boolean equals(java.lang.Object)",
+ "public int hashCode()",
"public java.lang.String toString()"
],
"fields": []
@@ -1929,6 +1931,8 @@
"public java.lang.String getSelection()",
"public boolean isPresent()",
"public static com.yahoo.document.TestAndSetCondition fromConditionString(java.util.Optional)",
+ "public boolean equals(java.lang.Object)",
+ "public int hashCode()",
"public java.lang.String toString()"
],
"fields": [
diff --git a/document/src/main/java/com/yahoo/document/DocumentPut.java b/document/src/main/java/com/yahoo/document/DocumentPut.java
index c5ce2e7e181..e24388cd65f 100644
--- a/document/src/main/java/com/yahoo/document/DocumentPut.java
+++ b/document/src/main/java/com/yahoo/document/DocumentPut.java
@@ -1,6 +1,8 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.document;
+import java.util.Objects;
+
/**
* @author Vegard Sjonfjell
*/
@@ -47,6 +49,20 @@ public class DocumentPut extends DocumentOperation {
}
@Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DocumentPut that = (DocumentPut) o;
+ return document.equals(that.document) &&
+ getCondition().equals(that.getCondition());
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(document, getCondition());
+ }
+
+ @Override
public String toString() {
return "put of document " + getId();
}
diff --git a/document/src/main/java/com/yahoo/document/TestAndSetCondition.java b/document/src/main/java/com/yahoo/document/TestAndSetCondition.java
index 6a189fc2969..a582807e38c 100644
--- a/document/src/main/java/com/yahoo/document/TestAndSetCondition.java
+++ b/document/src/main/java/com/yahoo/document/TestAndSetCondition.java
@@ -1,6 +1,7 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.document;
+import java.util.Objects;
import java.util.Optional;
/**
@@ -43,6 +44,19 @@ public class TestAndSetCondition {
}
@Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ TestAndSetCondition that = (TestAndSetCondition) o;
+ return conditionStr.equals(that.conditionStr);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(conditionStr);
+ }
+
+ @Override
public String toString() {
StringBuilder string = new StringBuilder();
string.append("condition '");
diff --git a/documentapi/abi-spec.json b/documentapi/abi-spec.json
index e531e886dd9..6b44153faca 100644
--- a/documentapi/abi-spec.json
+++ b/documentapi/abi-spec.json
@@ -170,7 +170,10 @@
"public java.util.Optional priority()",
"public java.util.Optional fieldSet()",
"public java.util.Optional route()",
- "public java.util.OptionalInt traceLevel()"
+ "public java.util.OptionalInt traceLevel()",
+ "public boolean equals(java.lang.Object)",
+ "public int hashCode()",
+ "public java.lang.String toString()"
],
"fields": []
},
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/DocumentOperationParameters.java b/documentapi/src/main/java/com/yahoo/documentapi/DocumentOperationParameters.java
index 3258c2f5b2c..05535e540b5 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/DocumentOperationParameters.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/DocumentOperationParameters.java
@@ -5,6 +5,7 @@ import com.yahoo.document.fieldset.FieldSet;
import com.yahoo.document.fieldset.FieldSetRepo;
import com.yahoo.documentapi.messagebus.protocol.DocumentProtocol;
+import java.util.Objects;
import java.util.Optional;
import java.util.OptionalInt;
@@ -68,4 +69,30 @@ public class DocumentOperationParameters {
public Optional<String> route() { return Optional.ofNullable(route); }
public OptionalInt traceLevel() { return traceLevel >= 0 ? OptionalInt.of(traceLevel) : OptionalInt.empty(); }
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DocumentOperationParameters that = (DocumentOperationParameters) o;
+ return traceLevel == that.traceLevel &&
+ priority == that.priority &&
+ Objects.equals(fieldSet, that.fieldSet) &&
+ Objects.equals(route, that.route);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(priority, fieldSet, route, traceLevel);
+ }
+
+ @Override
+ public String toString() {
+ return "DocumentOperationParameters{" +
+ "priority=" + priority +
+ ", fieldSet='" + fieldSet + '\'' +
+ ", route='" + route + '\'' +
+ ", traceLevel=" + traceLevel +
+ '}';
+ }
+
}
diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/test/TestDriver.java b/jdisc_core/src/main/java/com/yahoo/jdisc/test/TestDriver.java
index 35d29fd9e44..eebaf1f579f 100644
--- a/jdisc_core/src/main/java/com/yahoo/jdisc/test/TestDriver.java
+++ b/jdisc_core/src/main/java/com/yahoo/jdisc/test/TestDriver.java
@@ -41,7 +41,7 @@ import java.util.concurrent.atomic.AtomicInteger;
* {@link BootstrapLoader} that provides convenient access to the {@link ContainerActivator} and {@link
* CurrentContainer} interfaces. A typical test case using this class looks as follows:</p>
* <pre>
- * {@literal @}Test
+ *{@literal @}Test
* public void requireThatMyComponentIsWellBehaved() {
* TestDriver driver = TestDriver.newSimpleApplicationInstanceWithoutOsgi();
* ContainerBuilder builder = driver.newContainerBuilder();