< prev index next >

src/java.base/unix/classes/sun/nio/fs/DefaultFileSystemProvider.java

Print this page




  27 
  28 import java.nio.file.spi.FileSystemProvider;
  29 import sun.security.action.GetPropertyAction;
  30 
  31 /**
  32  * Creates this platform's default FileSystemProvider.
  33  */
  34 
  35 public class DefaultFileSystemProvider {
  36     private DefaultFileSystemProvider() { }
  37 
  38     @SuppressWarnings("unchecked")
  39     private static FileSystemProvider createProvider(String cn) {
  40         Class<FileSystemProvider> c;
  41         try {
  42             c = (Class<FileSystemProvider>)Class.forName(cn);
  43         } catch (ClassNotFoundException x) {
  44             throw new AssertionError(x);
  45         }
  46         try {
  47             return c.newInstance();


  48         } catch (IllegalAccessException | InstantiationException x) {
  49             throw new AssertionError(x);
  50         }
  51     }
  52 
  53     /**
  54      * Returns the default FileSystemProvider.
  55      */
  56     public static FileSystemProvider create() {
  57         String osname = GetPropertyAction.getProperty("os.name");
  58         if (osname.equals("SunOS"))
  59             return createProvider("sun.nio.fs.SolarisFileSystemProvider");
  60         if (osname.equals("Linux"))
  61             return createProvider("sun.nio.fs.LinuxFileSystemProvider");
  62         if (osname.contains("OS X"))
  63             return createProvider("sun.nio.fs.MacOSXFileSystemProvider");
  64         if (osname.equals("AIX"))
  65             return createProvider("sun.nio.fs.AixFileSystemProvider");
  66         throw new AssertionError("Platform not recognized");
  67     }


  27 
  28 import java.nio.file.spi.FileSystemProvider;
  29 import sun.security.action.GetPropertyAction;
  30 
  31 /**
  32  * Creates this platform's default FileSystemProvider.
  33  */
  34 
  35 public class DefaultFileSystemProvider {
  36     private DefaultFileSystemProvider() { }
  37 
  38     @SuppressWarnings("unchecked")
  39     private static FileSystemProvider createProvider(String cn) {
  40         Class<FileSystemProvider> c;
  41         try {
  42             c = (Class<FileSystemProvider>)Class.forName(cn);
  43         } catch (ClassNotFoundException x) {
  44             throw new AssertionError(x);
  45         }
  46         try {
  47             @SuppressWarnings("deprecation")
  48             FileSystemProvider result = c.newInstance();
  49             return result;
  50         } catch (IllegalAccessException | InstantiationException x) {
  51             throw new AssertionError(x);
  52         }
  53     }
  54 
  55     /**
  56      * Returns the default FileSystemProvider.
  57      */
  58     public static FileSystemProvider create() {
  59         String osname = GetPropertyAction.getProperty("os.name");
  60         if (osname.equals("SunOS"))
  61             return createProvider("sun.nio.fs.SolarisFileSystemProvider");
  62         if (osname.equals("Linux"))
  63             return createProvider("sun.nio.fs.LinuxFileSystemProvider");
  64         if (osname.contains("OS X"))
  65             return createProvider("sun.nio.fs.MacOSXFileSystemProvider");
  66         if (osname.equals("AIX"))
  67             return createProvider("sun.nio.fs.AixFileSystemProvider");
  68         throw new AssertionError("Platform not recognized");
  69     }
< prev index next >