This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 96c6635931c CAMEL-22036: Align camel-jackson-avro Avro version with 
Camel
96c6635931c is described below

commit 96c6635931cd09e6c1b611486e4065e0673283c6
Author: James Netherton <[email protected]>
AuthorDate: Wed Apr 30 08:43:55 2025 +0100

    CAMEL-22036: Align camel-jackson-avro Avro version with Camel
---
 components/camel-jackson-avro/pom.xml                        | 12 ++++++++++++
 .../component/jackson/avro/transform/AvroSchemaResolver.java |  5 +++--
 .../jackson/avro/JacksonAvroLookupResolverTest.java          |  3 ++-
 .../avro/JacksonAvroMarshalUnmarshalJsonNodeTest.java        |  5 +++--
 .../avro/JacksonAvroMarshalUnmarshalPojoListTest.java        |  3 ++-
 .../jackson/avro/JacksonAvroMarshalUnmarshalPojoTest.java    |  3 ++-
 .../avro/transform/AvroBinaryDataTypeTransformerTest.java    | 11 ++++++++---
 .../avro/transform/AvroPojoDataTypeTransformerTest.java      |  6 +++++-
 .../jackson/avro/transform/AvroSchemaResolverTest.java       |  4 +++-
 .../avro/transform/AvroStructDataTypeTransformerTest.java    |  6 +++++-
 10 files changed, 45 insertions(+), 13 deletions(-)

diff --git a/components/camel-jackson-avro/pom.xml 
b/components/camel-jackson-avro/pom.xml
index 54cbc18064b..efe05ff0a9d 100644
--- a/components/camel-jackson-avro/pom.xml
+++ b/components/camel-jackson-avro/pom.xml
@@ -49,6 +49,18 @@
         <dependency>
             <groupId>com.fasterxml.jackson.dataformat</groupId>
             <artifactId>jackson-dataformat-avro</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.avro</groupId>
+                    <artifactId>avro</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <!-- Remove avro exclusion and this dependency override after 
jackson-dataformat-avro aligns to avro 1.12.x -->
+        <dependency>
+            <groupId>org.apache.avro</groupId>
+            <artifactId>avro</artifactId>
+            <version>${avro-version}</version>
         </dependency>
 
         <!-- testing -->
diff --git 
a/components/camel-jackson-avro/src/main/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolver.java
 
b/components/camel-jackson-avro/src/main/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolver.java
index d533e5bf307..2e7082f82ad 100644
--- 
a/components/camel-jackson-avro/src/main/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolver.java
+++ 
b/components/camel-jackson-avro/src/main/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolver.java
@@ -24,6 +24,7 @@ import java.util.concurrent.ConcurrentMap;
 import com.fasterxml.jackson.core.FormatSchema;
 import com.fasterxml.jackson.databind.JsonMappingException;
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
 import org.apache.avro.Schema;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
@@ -64,7 +65,7 @@ public class AvroSchemaResolver implements SchemaResolver, 
Processor {
 
     public void setSchema(String schema) {
         if (ObjectHelper.isNotEmpty(schema)) {
-            this.schema = new AvroSchema(new 
Schema.Parser().setValidate(validate).parse(schema));
+            this.schema = new AvroSchema(new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(schema));
         } else {
             this.schema = null;
         }
@@ -125,7 +126,7 @@ public class AvroSchemaResolver implements SchemaResolver, 
Processor {
 
         if (answer == null && 
exchange.getProperties().containsKey(SchemaHelper.SCHEMA)) {
             String schemaJson = exchange.getProperty(SchemaHelper.SCHEMA, 
String.class);
-            Schema raw = new 
Schema.Parser().setValidate(validate).parse(schemaJson);
+            Schema raw = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(schemaJson);
             answer = new AvroSchema(raw);
         }
 
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroLookupResolverTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroLookupResolverTest.java
index ba09dedbe07..5f4bfe2f009 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroLookupResolverTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroLookupResolverTest.java
@@ -17,6 +17,7 @@
 package org.apache.camel.component.jackson.avro;
 
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
 import org.apache.avro.Schema;
 import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.builder.RouteBuilder;
@@ -65,7 +66,7 @@ public class JacksonAvroLookupResolverTest extends 
CamelTestSupport {
                             + "\"fields\": [\n"
                             + " {\"name\": \"text\", \"type\": \"string\"}\n"
                             + "]}";
-        Schema raw = new Schema.Parser().setValidate(true).parse(schemaJson);
+        Schema raw = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(schemaJson);
         AvroSchema schema = new AvroSchema(raw);
         SchemaResolver resolver = ex -> schema;
         registry.bind("schema-resolver-1", SchemaResolver.class, resolver);
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalJsonNodeTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalJsonNodeTest.java
index e3ba316097a..23f57a395de 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalJsonNodeTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalJsonNodeTest.java
@@ -21,6 +21,7 @@ import java.util.List;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
 import org.apache.avro.Schema;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.jackson.SchemaResolver;
@@ -112,10 +113,10 @@ public class JacksonAvroMarshalUnmarshalJsonNodeTest 
extends CamelTestSupport {
                                 "  }\n" +
                                 "}";
 
-        Schema raw = new Schema.Parser().setValidate(true).parse(schemaJson);
+        Schema raw = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(schemaJson);
         AvroSchema schema = new AvroSchema(raw);
 
-        Schema rawList = new 
Schema.Parser().setValidate(true).parse(listSchemaJson);
+        Schema rawList = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(listSchemaJson);
         AvroSchema schemaList = new AvroSchema(rawList);
 
         SchemaResolver resolver = ex -> {
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoListTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoListTest.java
index 544005da201..6c332fe44b3 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoListTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoListTest.java
@@ -20,6 +20,7 @@ import java.util.ArrayList;
 import java.util.List;
 
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
 import org.apache.avro.Schema;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.jackson.SchemaResolver;
@@ -78,7 +79,7 @@ public class JacksonAvroMarshalUnmarshalPojoListTest extends 
CamelTestSupport {
                             "    ]\n" +
                             "  }\n" +
                             "}";
-        Schema raw = new Schema.Parser().setValidate(true).parse(schemaJson);
+        Schema raw = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(schemaJson);
         AvroSchema schema = new AvroSchema(raw);
         SchemaResolver resolver = ex -> schema;
         registry.bind("schema-resolver", SchemaResolver.class, resolver);
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoTest.java
index 7c1d5b93ed9..a44cf8f647d 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/JacksonAvroMarshalUnmarshalPojoTest.java
@@ -17,6 +17,7 @@
 package org.apache.camel.component.jackson.avro;
 
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
 import org.apache.avro.Schema;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.jackson.SchemaResolver;
@@ -64,7 +65,7 @@ public class JacksonAvroMarshalUnmarshalPojoTest extends 
CamelTestSupport {
                             + "\"fields\": [\n"
                             + " {\"name\": \"text\", \"type\": \"string\"}\n"
                             + "]}";
-        Schema raw = new Schema.Parser().setValidate(true).parse(schemaJson);
+        Schema raw = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(schemaJson);
         AvroSchema schema = new AvroSchema(raw);
         SchemaResolver resolver = ex -> schema;
         registry.bind("schema-resolver", SchemaResolver.class, resolver);
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroBinaryDataTypeTransformerTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroBinaryDataTypeTransformerTest.java
index c6a60b695d7..9b1ccd1d0be 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroBinaryDataTypeTransformerTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroBinaryDataTypeTransformerTest.java
@@ -21,6 +21,8 @@ import java.io.IOException;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
+import org.apache.avro.Schema;
 import org.apache.camel.Exchange;
 import org.apache.camel.component.jackson.SchemaHelper;
 import org.apache.camel.component.jackson.transform.Json;
@@ -60,8 +62,9 @@ class AvroBinaryDataTypeTransformerTest {
     void shouldHandlePojo() throws Exception {
         Exchange exchange = new DefaultExchange(camelContext);
 
-        AvroSchema avroSchema
-                = 
Avro.mapper().schemaFrom(AvroBinaryDataTypeTransformerTest.class.getResourceAsStream("Person.avsc"));
+        AvroSchema avroSchema = new AvroSchema(
+                new Schema.Parser(NameValidator.UTF_VALIDATOR)
+                        
.parse(AvroBinaryDataTypeTransformerTest.class.getResourceAsStream("Person.avsc")));
         exchange.setProperty(SchemaHelper.CONTENT_SCHEMA, avroSchema);
         exchange.getMessage().setBody(new Person("Mickey", 20));
         transformer.transform(exchange.getMessage(), DataType.ANY, 
DataType.ANY);
@@ -114,6 +117,8 @@ class AvroBinaryDataTypeTransformerTest {
     }
 
     private AvroSchema getSchema() throws IOException {
-        return 
Avro.mapper().schemaFrom(AvroBinaryDataTypeTransformerTest.class.getResourceAsStream("Person.avsc"));
+        return new AvroSchema(
+                new Schema.Parser(NameValidator.UTF_VALIDATOR)
+                        
.parse(AvroBinaryDataTypeTransformerTest.class.getResourceAsStream("Person.avsc")));
     }
 }
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroPojoDataTypeTransformerTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroPojoDataTypeTransformerTest.java
index 1b7240ba1c1..b659d1432a6 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroPojoDataTypeTransformerTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroPojoDataTypeTransformerTest.java
@@ -21,6 +21,8 @@ import java.io.IOException;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
+import org.apache.avro.Schema;
 import org.apache.camel.Exchange;
 import org.apache.camel.component.jackson.SchemaHelper;
 import org.apache.camel.component.jackson.transform.Json;
@@ -133,6 +135,8 @@ class AvroPojoDataTypeTransformerTest {
     }
 
     private AvroSchema getSchema() throws IOException {
-        return 
Avro.mapper().schemaFrom(AvroPojoDataTypeTransformerTest.class.getResourceAsStream("Person.avsc"));
+        return new AvroSchema(
+                new Schema.Parser(NameValidator.UTF_VALIDATOR)
+                        
.parse(AvroPojoDataTypeTransformerTest.class.getResourceAsStream("Person.avsc")));
     }
 }
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolverTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolverTest.java
index ac91e256115..4ef630a3b13 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolverTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroSchemaResolverTest.java
@@ -18,6 +18,7 @@
 package org.apache.camel.component.jackson.avro.transform;
 
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
 import org.apache.avro.Schema;
 import org.apache.camel.Exchange;
 import org.apache.camel.component.jackson.SchemaHelper;
@@ -40,7 +41,8 @@ class AvroSchemaResolverTest {
 
         exchange.setProperty(SchemaHelper.CONTENT_CLASS, 
Person.class.getName());
 
-        Schema raw = new 
Schema.Parser().setValidate(true).parse(this.getClass().getResourceAsStream("Person.avsc"));
+        Schema raw
+                = new 
Schema.Parser(NameValidator.UTF_VALIDATOR).parse(this.getClass().getResourceAsStream("Person.avsc"));
         AvroSchema avroSchema = new AvroSchema(raw);
         exchange.setProperty(SchemaHelper.CONTENT_SCHEMA, avroSchema);
         exchange.getMessage().setBody(person);
diff --git 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroStructDataTypeTransformerTest.java
 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroStructDataTypeTransformerTest.java
index 2917235f86d..1bf032f2501 100644
--- 
a/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroStructDataTypeTransformerTest.java
+++ 
b/components/camel-jackson-avro/src/test/java/org/apache/camel/component/jackson/avro/transform/AvroStructDataTypeTransformerTest.java
@@ -22,6 +22,8 @@ import java.io.IOException;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.fasterxml.jackson.dataformat.avro.AvroSchema;
+import org.apache.avro.NameValidator;
+import org.apache.avro.Schema;
 import org.apache.camel.Exchange;
 import org.apache.camel.component.jackson.SchemaHelper;
 import org.apache.camel.component.jackson.transform.Json;
@@ -112,6 +114,8 @@ class AvroStructDataTypeTransformerTest {
     }
 
     private AvroSchema getSchema() throws IOException {
-        return 
Avro.mapper().schemaFrom(AvroStructDataTypeTransformerTest.class.getResourceAsStream("Person.avsc"));
+        return new AvroSchema(
+                new Schema.Parser(NameValidator.UTF_VALIDATOR)
+                        
.parse(AvroStructDataTypeTransformerTest.class.getResourceAsStream("Person.avsc")));
     }
 }

Reply via email to