src/share/classes/java/io/FileSystem.java

Print this page


   1 /*
   2  * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


 219 
 220     /**
 221      * Compute the hash code of an abstract pathname.
 222      */
 223     public abstract int hashCode(File f);
 224 
 225     // Flags for enabling/disabling performance optimizations for file
 226     // name canonicalization
 227     static boolean useCanonCaches      = true;
 228     static boolean useCanonPrefixCache = true;
 229 
 230     private static boolean getBooleanProperty(String prop, boolean defaultVal) {
 231         String val = System.getProperty(prop);
 232         if (val == null) return defaultVal;
 233         if (val.equalsIgnoreCase("true")) {
 234             return true;
 235         } else {
 236             return false;
 237         }
 238     }



 239 
 240     static {
 241         useCanonCaches      = getBooleanProperty("sun.io.useCanonCaches",
 242                                                  useCanonCaches);
 243         useCanonPrefixCache = getBooleanProperty("sun.io.useCanonPrefixCache",
 244                                                  useCanonPrefixCache);
 245     }
 246 }
   1 /*
   2  * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


 219 
 220     /**
 221      * Compute the hash code of an abstract pathname.
 222      */
 223     public abstract int hashCode(File f);
 224 
 225     // Flags for enabling/disabling performance optimizations for file
 226     // name canonicalization
 227     static boolean useCanonCaches      = true;
 228     static boolean useCanonPrefixCache = true;
 229 
 230     private static boolean getBooleanProperty(String prop, boolean defaultVal) {
 231         String val = System.getProperty(prop);
 232         if (val == null) return defaultVal;
 233         if (val.equalsIgnoreCase("true")) {
 234             return true;
 235         } else {
 236             return false;
 237         }
 238     }
 239 
 240     // NUL character
 241     static final char CHAR_NUL = '\u0000';
 242 
 243     static {
 244         useCanonCaches      = getBooleanProperty("sun.io.useCanonCaches",
 245                                                  useCanonCaches);
 246         useCanonPrefixCache = getBooleanProperty("sun.io.useCanonPrefixCache",
 247                                                  useCanonPrefixCache);
 248     }
 249 }