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

Reply via email to