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

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


The following commit(s) were added to refs/heads/main by this push:
     new 838eccf83e Add VFS type mapping for new jar mime type (#2683)
838eccf83e is described below

commit 838eccf83ee88d0716b88d021611b1fb85089491
Author: Christopher Tubbs <ctubb...@apache.org>
AuthorDate: Fri May 6 20:44:45 2022 -0400

    Add VFS type mapping for new jar mime type (#2683)
    
    Add VFS type mapping for the new jar mime type added in newer versions
    of Java 17, application/java-archive, to ensure it is associated with
    the "jar" scheme in VFS. This ensures VFS loads jars correctly when run
    on a newer version of Java.
    
    This fixes #2682
    See related: https://issues.apache.org/jira/browse/VFS-819
---
 .../accumulo/start/classloader/vfs/AccumuloVFSClassLoader.java       | 5 ++---
 .../test/java/org/apache/accumulo/start/test/AccumuloDFSBase.java    | 1 +
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git 
a/start/src/main/java/org/apache/accumulo/start/classloader/vfs/AccumuloVFSClassLoader.java
 
b/start/src/main/java/org/apache/accumulo/start/classloader/vfs/AccumuloVFSClassLoader.java
index 6b5a5de522..d797c0cf3b 100644
--- 
a/start/src/main/java/org/apache/accumulo/start/classloader/vfs/AccumuloVFSClassLoader.java
+++ 
b/start/src/main/java/org/apache/accumulo/start/classloader/vfs/AccumuloVFSClassLoader.java
@@ -285,6 +285,7 @@ public class AccumuloVFSClassLoader {
     vfs.addExtensionMap("tbz2", "tar");
     vfs.addExtensionMap("tgz", "tar");
     vfs.addExtensionMap("bz2", "bz2");
+    vfs.addMimeTypeMap("application/java-archive", "jar");
     vfs.addMimeTypeMap("application/x-tar", "tar");
     vfs.addMimeTypeMap("application/x-gzip", "gz");
     vfs.addMimeTypeMap("application/zip", "zip");
@@ -426,9 +427,7 @@ public class AccumuloVFSClassLoader {
   private static synchronized ContextManager getContextManager() throws 
IOException {
     if (contextManager == null) {
       getClassLoader();
-      contextManager = new ContextManager(generateVfs(), () -> {
-        return getClassLoader();
-      });
+      contextManager = new ContextManager(generateVfs(), 
AccumuloVFSClassLoader::getClassLoader);
     }
 
     return contextManager;
diff --git 
a/start/src/test/java/org/apache/accumulo/start/test/AccumuloDFSBase.java 
b/start/src/test/java/org/apache/accumulo/start/test/AccumuloDFSBase.java
index f070badd8e..a4f1e9a919 100644
--- a/start/src/test/java/org/apache/accumulo/start/test/AccumuloDFSBase.java
+++ b/start/src/test/java/org/apache/accumulo/start/test/AccumuloDFSBase.java
@@ -112,6 +112,7 @@ public class AccumuloDFSBase {
       vfs.addExtensionMap("tbz2", "tar");
       vfs.addExtensionMap("tgz", "tar");
       vfs.addExtensionMap("bz2", "bz2");
+      vfs.addMimeTypeMap("application/java-archive", "jar");
       vfs.addMimeTypeMap("application/x-tar", "tar");
       vfs.addMimeTypeMap("application/x-gzip", "gz");
       vfs.addMimeTypeMap("application/zip", "zip");

Reply via email to