Repository: nifi Updated Branches: refs/heads/master 03adaeca2 -> 04745a556
NIFI-5189 Schema name is not available for RecordSchema This closes #2700 Signed-off-by: Mike Thomsen <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/nifi/repo Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/04745a55 Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/04745a55 Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/04745a55 Branch: refs/heads/master Commit: 04745a556a3805597948f672292959e684401ddf Parents: 03adaec Author: JohannesDaniel <[email protected]> Authored: Mon May 14 16:28:46 2018 +0200 Committer: Mike Thomsen <[email protected]> Committed: Mon May 14 14:35:12 2018 -0400 ---------------------------------------------------------------------- .../nifi-record-utils/nifi-avro-record-utils/pom.xml | 1 + .../src/main/java/org/apache/nifi/avro/AvroTypeUtil.java | 4 +++- .../test/java/org/apache/nifi/avro/TestAvroTypeUtil.java | 8 ++++++++ .../resources/org/apache/nifi/avro/simpleSchema.json | 11 +++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/nifi/blob/04745a55/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/pom.xml ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/pom.xml b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/pom.xml old mode 100644 new mode 100755 index 21ab5f3..0f5dc62 --- a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/pom.xml +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/pom.xml @@ -53,6 +53,7 @@ <excludes combine.children="append"> <exclude>src/test/resources/org/apache/nifi/avro/data.avro</exclude> <exclude>src/test/resources/org/apache/nifi/avro/schema.json</exclude> + <exclude>src/test/resources/org/apache/nifi/avro/simpleSchema.json</exclude> <exclude>src/test/resources/org/apache/nifi/avro/defaultArrayValue1.json</exclude> <exclude>src/test/resources/org/apache/nifi/avro/defaultArrayValue2.json</exclude> <exclude>src/test/resources/org/apache/nifi/avro/defaultArrayInRecords1.json</exclude> http://git-wip-us.apache.org/repos/asf/nifi/blob/04745a55/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java old mode 100644 new mode 100755 index 411ca68..c214819 --- a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/main/java/org/apache/nifi/avro/AvroTypeUtil.java @@ -62,6 +62,7 @@ import org.apache.nifi.serialization.record.RecordField; import org.apache.nifi.serialization.record.RecordFieldType; import org.apache.nifi.serialization.record.RecordSchema; import org.apache.nifi.serialization.record.SchemaIdentifier; +import org.apache.nifi.serialization.record.StandardSchemaIdentifier; import org.apache.nifi.serialization.record.type.ArrayDataType; import org.apache.nifi.serialization.record.type.ChoiceDataType; import org.apache.nifi.serialization.record.type.MapDataType; @@ -367,7 +368,8 @@ public class AvroTypeUtil { throw new IllegalArgumentException("Avro Schema cannot be null"); } - return createSchema(avroSchema, avroSchema.toString(), SchemaIdentifier.EMPTY); + SchemaIdentifier identifier = new StandardSchemaIdentifier.Builder().name(avroSchema.getName()).build(); + return createSchema(avroSchema, avroSchema.toString(), identifier); } /** http://git-wip-us.apache.org/repos/asf/nifi/blob/04745a55/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/java/org/apache/nifi/avro/TestAvroTypeUtil.java ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/java/org/apache/nifi/avro/TestAvroTypeUtil.java b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/java/org/apache/nifi/avro/TestAvroTypeUtil.java old mode 100644 new mode 100755 index e4e515b..83d54c6 --- a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/java/org/apache/nifi/avro/TestAvroTypeUtil.java +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/java/org/apache/nifi/avro/TestAvroTypeUtil.java @@ -397,6 +397,14 @@ public class TestAvroTypeUtil { } @Test + public void testSchemaNameNotEmpty() throws IOException { + Schema schema = new Schema.Parser().parse(getClass().getResourceAsStream("simpleSchema.json")); + RecordSchema recordSchema = AvroTypeUtil.createSchema(schema); + Assert.assertTrue(recordSchema.getIdentifier().getName().isPresent()); + Assert.assertEquals(Optional.of("record_name"), recordSchema.getIdentifier().getName()); + } + + @Test public void testStringToBytesConversion() { Object o = AvroTypeUtil.convertToAvroObject("Hello", Schema.create(Type.BYTES), StandardCharsets.UTF_16); assertTrue(o instanceof ByteBuffer); http://git-wip-us.apache.org/repos/asf/nifi/blob/04745a55/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/resources/org/apache/nifi/avro/simpleSchema.json ---------------------------------------------------------------------- diff --git a/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/resources/org/apache/nifi/avro/simpleSchema.json b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/resources/org/apache/nifi/avro/simpleSchema.json new file mode 100755 index 0000000..95ba693 --- /dev/null +++ b/nifi-nar-bundles/nifi-extension-utils/nifi-record-utils/nifi-avro-record-utils/src/test/resources/org/apache/nifi/avro/simpleSchema.json @@ -0,0 +1,11 @@ +{ + "type": "record", + "name": "record_name", + "namespace": "namespace", + "fields": [ + { + "name": "field1", + "type": "string" + } + ] +} \ No newline at end of file
