summaryrefslogtreecommitdiff
path: root/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2014-03-28 22:11:29 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2014-03-28 22:11:29 +0000
commitaa8f38c3b67bc647eb1082c28adbf84a577ec664 (patch)
tree1b5de55f915e26fa07bf8ea7645eecd4f2478dd2 /java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java
parent- Update to 0.9.11 (diff)
Add a port of OpenJDK8.
Submitted by: Brian Gardner <openjdk@getsnappy.com> (preliminary version)
Notes
Notes: svn path=/head/; revision=349468
Diffstat (limited to 'java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java')
-rw-r--r--java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java b/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java
new file mode 100644
index 000000000000..ddb2a3d1fa0f
--- /dev/null
+++ b/java/openjdk8/files/patch-jdk-src-solaris-classes-sun-nio-fs-DefaultFileSystemProvider.java
@@ -0,0 +1,38 @@
+--- jdk/src/solaris/classes/sun/nio/fs/DefaultFileSystemProvider.java
++++ jdk/src/solaris/classes/sun/nio/fs/DefaultFileSystemProvider.java
+@@ -27,6 +27,8 @@
+
+ import java.nio.file.spi.FileSystemProvider;
+ import java.security.AccessController;
++import java.util.Set;
++import java.util.HashSet;
+ import sun.security.action.GetPropertyAction;
+
+ /**
+@@ -36,6 +38,15 @@
+ public class DefaultFileSystemProvider {
+ private DefaultFileSystemProvider() { }
+
++ private static final Set<String> validFileSystemProviders
++ = new HashSet<String>();
++ static {
++ validFileSystemProviders.add("sun.nio.fs.SolarisFileSystemProvider");
++ validFileSystemProviders.add("sun.nio.fs.LinuxFileSystemProvider");
++ validFileSystemProviders.add("sun.nio.fs.BsdFileSystemProvider");
++ validFileSystemProviders.add("sun.nio.fs.MacOSXFileSystemProvider");
++ }
++
+ @SuppressWarnings("unchecked")
+ private static FileSystemProvider createProvider(String cn) {
+ Class<FileSystemProvider> c;
+@@ -57,6 +68,10 @@
+ public static FileSystemProvider create() {
+ String osname = AccessController
+ .doPrivileged(new GetPropertyAction("os.name"));
++ String fileSystemProvider = System
++ .getProperty("java.nio.file.spi.DefaultFileSystemProvider");
++ if (validFileSystemProviders.contains(fileSystemProvider))
++ return createProvider(fileSystemProvider);
+ if (osname.equals("SunOS"))
+ return createProvider("sun.nio.fs.SolarisFileSystemProvider");
+ if (osname.equals("Linux"))