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

mgrigorov pushed a commit to branch branch-1.11
in repository https://gitbox.apache.org/repos/asf/avro.git


The following commit(s) were added to refs/heads/branch-1.11 by this push:
     new 9a67bbef3 AVRO-3706: accept space in folder name (#2064)
9a67bbef3 is described below

commit 9a67bbef3bf2bf3514dba12f105aab4acf0224a0
Author: clesaec <[email protected]>
AuthorDate: Wed Feb 8 13:46:05 2023 +0100

    AVRO-3706: accept space in folder name (#2064)
    
    (cherry picked from commit b576f46fb8696f2dbe5bfb056d6ab2ed80ab4967)
---
 .../compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj   | 2 +-
 lang/java/compiler/src/test/idl/work space/level1.avdl             | 3 +++
 lang/java/compiler/src/test/idl/work space/level2.avdl             | 2 ++
 lang/java/compiler/src/test/idl/work space/root.avdl               | 3 +++
 lang/java/compiler/src/test/idl/work space/root.avpr               | 1 +
 .../src/test/java/org/apache/avro/compiler/idl/TestIdl.java        | 7 +++++++
 6 files changed, 17 insertions(+), 1 deletion(-)

diff --git 
a/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj 
b/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj
index 1f931a640..4deaa68a5 100644
--- a/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj
+++ b/lang/java/compiler/src/main/javacc/org/apache/avro/compiler/idl/idl.jj
@@ -174,7 +174,7 @@ public class Idl implements Closeable {
     File file = "file".equals(uri.getScheme()) ? new File(uri.getPath()) : 
null;
     URL result = null;
     if (file != null && file.exists())
-      result = file.toURI().toURL();
+      result = new URL("file:" + file.getPath());
     else if (this.resourceLoader != null)
       if ("classpath".equals(uri.getScheme()))
         result = this.resourceLoader.getResource(uri.getPath().substring(1));
diff --git a/lang/java/compiler/src/test/idl/work space/level1.avdl 
b/lang/java/compiler/src/test/idl/work space/level1.avdl
new file mode 100644
index 000000000..a2eaa862f
--- /dev/null
+++ b/lang/java/compiler/src/test/idl/work space/level1.avdl    
@@ -0,0 +1,3 @@
+protocol Level1 {
+    import idl "level2.avdl";
+} 
diff --git a/lang/java/compiler/src/test/idl/work space/level2.avdl 
b/lang/java/compiler/src/test/idl/work space/level2.avdl
new file mode 100644
index 000000000..4adb17700
--- /dev/null
+++ b/lang/java/compiler/src/test/idl/work space/level2.avdl    
@@ -0,0 +1,2 @@
+protocol Level2 {
+} 
diff --git a/lang/java/compiler/src/test/idl/work space/root.avdl 
b/lang/java/compiler/src/test/idl/work space/root.avdl
new file mode 100644
index 000000000..9a1b5e907
--- /dev/null
+++ b/lang/java/compiler/src/test/idl/work space/root.avdl      
@@ -0,0 +1,3 @@
+protocol Root { 
+    import idl "level1.avdl"; 
+}
diff --git a/lang/java/compiler/src/test/idl/work space/root.avpr 
b/lang/java/compiler/src/test/idl/work space/root.avpr
new file mode 100644
index 000000000..6d4337022
--- /dev/null
+++ b/lang/java/compiler/src/test/idl/work space/root.avpr      
@@ -0,0 +1 @@
+{"protocol":"Root","types":[],"messages":{}}
diff --git 
a/lang/java/compiler/src/test/java/org/apache/avro/compiler/idl/TestIdl.java 
b/lang/java/compiler/src/test/java/org/apache/avro/compiler/idl/TestIdl.java
index 37e6b2bb2..2ce714fb9 100644
--- a/lang/java/compiler/src/test/java/org/apache/avro/compiler/idl/TestIdl.java
+++ b/lang/java/compiler/src/test/java/org/apache/avro/compiler/idl/TestIdl.java
@@ -82,6 +82,13 @@ public class TestIdl {
       File outF = new File(TEST_OUTPUT_DIR, 
inF.getName().replaceFirst("\\.avdl$", ".avpr"));
       tests.add(new GenTest(inF, outF));
     }
+
+    // AVRO-3706 : test folder with space in name.
+    File inputWorkSpace = new File(TEST_DIR, "work space");
+    File root = new File(inputWorkSpace, "root.avdl");
+    File rootResult = new File(inputWorkSpace, "root.avpr");
+    tests.add(new GenTest(root, rootResult));
+
   }
 
   @Test

Reply via email to