From 634a027cb47cac3c2c9c44d90b2c9970b45556a3 Mon Sep 17 00:00:00 2001 From: Wout Scheepers Date: Tue, 12 Feb 2019 16:53:56 +0100 Subject: [PATCH] BeamSql WktWrapper convert fromProto fix Now uses message.hasField(fieldDescriptor) --- .../protobeam/convert/nodes/beamsql/WktWrapperConvert.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/transform/src/main/java/io/anemos/protobeam/convert/nodes/beamsql/WktWrapperConvert.java b/transform/src/main/java/io/anemos/protobeam/convert/nodes/beamsql/WktWrapperConvert.java index 22c0b66..8849234 100644 --- a/transform/src/main/java/io/anemos/protobeam/convert/nodes/beamsql/WktWrapperConvert.java +++ b/transform/src/main/java/io/anemos/protobeam/convert/nodes/beamsql/WktWrapperConvert.java @@ -17,10 +17,9 @@ public WktWrapperConvert(Descriptors.FieldDescriptor descriptor) { @Override public void fromProto(Message message, Row.Builder row) { - Message nullableWrapperMessage = (Message) message.getField(fieldDescriptor); - // TODO is not correct, need hasField - if (!valueFieldDescriptor.getDefaultValue().equals(nullableWrapperMessage.getField(valueFieldDescriptor))) { - Object value = fromProtoValue(nullableWrapperMessage.getField(valueFieldDescriptor)); + if (message.hasField(fieldDescriptor)) { + Message valueMessage = (Message) message.getField(fieldDescriptor); + Object value = fromProtoValue(valueMessage.getField(valueFieldDescriptor)); row.addValue(value); } else { row.addValue(null);