summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne Juul <arnej@yahoo-inc.com>2018-11-20 13:00:37 +0000
committergjoranv <gv@oath.com>2019-01-21 15:09:28 +0100
commit174a95739376c4a26ebf29ae05b1c01102d61790 (patch)
tree3c4fb412b4457b88347566e35a3bd704a84fdb1a
parent8a71a052623356b4f9370ea2774c5e612d3ff51f (diff)
wire in new Serializer6
-rw-r--r--document/src/main/java/com/yahoo/document/fieldpathupdate/AddFieldPathUpdate.java4
-rw-r--r--document/src/main/java/com/yahoo/document/fieldpathupdate/AssignFieldPathUpdate.java4
-rw-r--r--document/src/main/java/com/yahoo/document/fieldpathupdate/FieldPathUpdate.java4
-rw-r--r--document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializer6.java8
-rw-r--r--document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializerHead.java65
5 files changed, 13 insertions, 72 deletions
diff --git a/document/src/main/java/com/yahoo/document/fieldpathupdate/AddFieldPathUpdate.java b/document/src/main/java/com/yahoo/document/fieldpathupdate/AddFieldPathUpdate.java
index 9fac025c15e..74b94b8135e 100644
--- a/document/src/main/java/com/yahoo/document/fieldpathupdate/AddFieldPathUpdate.java
+++ b/document/src/main/java/com/yahoo/document/fieldpathupdate/AddFieldPathUpdate.java
@@ -8,7 +8,7 @@ import com.yahoo.document.datatypes.CollectionFieldValue;
import com.yahoo.document.datatypes.FieldPathIteratorHandler;
import com.yahoo.document.datatypes.FieldValue;
import com.yahoo.document.serialization.DocumentUpdateReader;
-import com.yahoo.document.serialization.VespaDocumentSerializerHead;
+import com.yahoo.document.serialization.VespaDocumentSerializer6;
/**
* @author <a href="mailto:thomasg@yahoo-inc.com">Thomas Gundersen</a>
@@ -96,7 +96,7 @@ public class AddFieldPathUpdate extends FieldPathUpdate {
}
@Override
- public void serialize(VespaDocumentSerializerHead data) {
+ public void serialize(VespaDocumentSerializer6 data) {
data.write(this);
}
diff --git a/document/src/main/java/com/yahoo/document/fieldpathupdate/AssignFieldPathUpdate.java b/document/src/main/java/com/yahoo/document/fieldpathupdate/AssignFieldPathUpdate.java
index e31eefa2c00..b01742018a2 100644
--- a/document/src/main/java/com/yahoo/document/fieldpathupdate/AssignFieldPathUpdate.java
+++ b/document/src/main/java/com/yahoo/document/fieldpathupdate/AssignFieldPathUpdate.java
@@ -9,7 +9,7 @@ import com.yahoo.document.datatypes.FieldValue;
import com.yahoo.document.datatypes.NumericFieldValue;
import com.yahoo.document.select.parser.ParseException;
import com.yahoo.document.serialization.DocumentUpdateReader;
-import com.yahoo.document.serialization.VespaDocumentSerializerHead;
+import com.yahoo.document.serialization.VespaDocumentSerializer6;
import java.util.HashMap;
import java.util.Map;
@@ -237,7 +237,7 @@ public class AssignFieldPathUpdate extends FieldPathUpdate {
}
@Override
- public void serialize(VespaDocumentSerializerHead data) {
+ public void serialize(VespaDocumentSerializer6 data) {
data.write(this);
}
diff --git a/document/src/main/java/com/yahoo/document/fieldpathupdate/FieldPathUpdate.java b/document/src/main/java/com/yahoo/document/fieldpathupdate/FieldPathUpdate.java
index 29c876b85fe..d4144116a03 100644
--- a/document/src/main/java/com/yahoo/document/fieldpathupdate/FieldPathUpdate.java
+++ b/document/src/main/java/com/yahoo/document/fieldpathupdate/FieldPathUpdate.java
@@ -11,7 +11,7 @@ import com.yahoo.document.select.Result;
import com.yahoo.document.select.ResultList;
import com.yahoo.document.select.parser.ParseException;
import com.yahoo.document.serialization.DocumentUpdateReader;
-import com.yahoo.document.serialization.VespaDocumentSerializerHead;
+import com.yahoo.document.serialization.VespaDocumentSerializer6;
import java.util.ListIterator;
/**
@@ -130,7 +130,7 @@ public abstract class FieldPathUpdate {
}
}
- public void serialize(VespaDocumentSerializerHead data) {
+ public void serialize(VespaDocumentSerializer6 data) {
data.write(this);
}
diff --git a/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializer6.java b/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializer6.java
index a4de7a807e9..2d381c23916 100644
--- a/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializer6.java
+++ b/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializer6.java
@@ -36,6 +36,9 @@ import com.yahoo.document.datatypes.Struct;
import com.yahoo.document.datatypes.StructuredFieldValue;
import com.yahoo.document.datatypes.TensorFieldValue;
import com.yahoo.document.datatypes.WeightedSet;
+import com.yahoo.document.fieldpathupdate.AddFieldPathUpdate;
+import com.yahoo.document.fieldpathupdate.AssignFieldPathUpdate;
+import com.yahoo.document.fieldpathupdate.FieldPathUpdate;
import com.yahoo.document.predicate.BinaryFormat;
import com.yahoo.document.update.AddValueUpdate;
import com.yahoo.document.update.ArithmeticValueUpdate;
@@ -79,6 +82,7 @@ public class VespaDocumentSerializer6 extends BufferSerializer implements Docume
write(new Field(doc.getDataType().getName(), 0, doc.getDataType(), true), doc);
}
+ @SuppressWarnings("deprecation")
public void write(FieldBase field, Document doc) {
buf.putShort(Document.SERIALIZED_VERSION);
@@ -680,12 +684,12 @@ public class VespaDocumentSerializer6 extends BufferSerializer implements Docume
* @return The size in bytes.
*/
public static long getSerializedSize(Document doc) {
- DocumentSerializer serializer = new VespaDocumentSerializerHead(new GrowableByteBuffer());
+ DocumentSerializer serializer = new VespaDocumentSerializer6(new GrowableByteBuffer());
serializer.write(doc);
return serializer.getBuf().position();
}
- private static void writeValue(VespaDocumentSerializer42 serializer, DataType dataType, Object value) {
+ private static void writeValue(VespaDocumentSerializer6 serializer, DataType dataType, Object value) {
FieldValue fieldValue;
if (value instanceof FieldValue) {
fieldValue = (FieldValue)value;
diff --git a/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializerHead.java b/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializerHead.java
index 92bce41ba8c..bfa746a02b1 100644
--- a/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializerHead.java
+++ b/document/src/main/java/com/yahoo/document/serialization/VespaDocumentSerializerHead.java
@@ -1,80 +1,17 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.document.serialization;
-import com.yahoo.document.DocumentUpdate;
-import com.yahoo.document.datatypes.ByteFieldValue;
-import com.yahoo.document.fieldpathupdate.AddFieldPathUpdate;
-import com.yahoo.document.fieldpathupdate.AssignFieldPathUpdate;
-import com.yahoo.document.fieldpathupdate.FieldPathUpdate;
-import com.yahoo.document.update.FieldUpdate;
import com.yahoo.io.GrowableByteBuffer;
-import com.yahoo.vespa.objects.FieldBase;
/**
* Class used for serializing documents on the current head document format.
*
* @author baldersheim
*/
-@SuppressWarnings("deprecation")
-public class VespaDocumentSerializerHead extends VespaDocumentSerializer42 {
+public class VespaDocumentSerializerHead extends VespaDocumentSerializer6 {
public VespaDocumentSerializerHead(GrowableByteBuffer buf) {
super(buf);
}
- @Override
- public void write(DocumentUpdate update) {
- update.getId().serialize(this);
-
- update.getDocumentType().serialize(this);
-
- putInt(null, update.fieldUpdates().size());
-
- for (FieldUpdate up : update.fieldUpdates()) {
- up.serialize(this);
- }
-
- DocumentUpdateFlags flags = new DocumentUpdateFlags();
- flags.setCreateIfNonExistent(update.getCreateIfNonExistent());
- putInt(null, flags.injectInto(update.fieldPathUpdates().size()));
-
- for (FieldPathUpdate up : update.fieldPathUpdates()) {
- up.serialize(this);
- }
- }
-
- public void write(FieldPathUpdate update) {
- putByte(null, (byte)update.getUpdateType().getCode());
- put(null, update.getOriginalFieldPath());
- put(null, update.getOriginalWhereClause());
- }
-
- public void write(AssignFieldPathUpdate update) {
- write((FieldPathUpdate)update);
- byte flags = 0;
- if (update.getRemoveIfZero()) {
- flags |= AssignFieldPathUpdate.REMOVE_IF_ZERO;
- }
- if (update.getCreateMissingPath()) {
- flags |= AssignFieldPathUpdate.CREATE_MISSING_PATH;
- }
- if (update.isArithmetic()) {
- flags |= AssignFieldPathUpdate.ARITHMETIC_EXPRESSION;
- putByte(null, flags);
- put(null, update.getExpression());
- } else {
- putByte(null, flags);
- update.getFieldValue().serialize(this);
- }
- }
-
- public void write(AddFieldPathUpdate update) {
- write((FieldPathUpdate)update);
- update.getNewValues().serialize(this);
- }
-
- @Override
- public void write(FieldBase field, ByteFieldValue value) {
- buf.put(value.getByte());
- }
}