< prev index next >

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

Print this page


   1 /*
   2  * Copyright (c) 2008, 2015, 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


 109             return UnixFileStoreAttributes.get(file);
 110         } catch (UnixException x) {
 111             x.rethrowAsIOException(file);
 112             return null;    // keep compile happy
 113         }
 114     }
 115 
 116     @Override
 117     public long getTotalSpace() throws IOException {
 118         UnixFileStoreAttributes attrs = readAttributes();
 119         return attrs.blockSize() * attrs.totalBlocks();
 120     }
 121 
 122     @Override
 123     public long getUsableSpace() throws IOException {
 124        UnixFileStoreAttributes attrs = readAttributes();
 125        return attrs.blockSize() * attrs.availableBlocks();
 126     }
 127 
 128     @Override






 129     public long getUnallocatedSpace() throws IOException {
 130         UnixFileStoreAttributes attrs = readAttributes();
 131         return attrs.blockSize() * attrs.freeBlocks();
 132     }
 133 
 134     @Override
 135     public <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> view)
 136     {
 137         if (view == null)
 138             throw new NullPointerException();
 139         return (V) null;
 140     }
 141 
 142     @Override
 143     public Object getAttribute(String attribute) throws IOException {
 144         if (attribute.equals("totalSpace"))
 145             return getTotalSpace();
 146         if (attribute.equals("usableSpace"))
 147             return getUsableSpace();
 148         if (attribute.equals("unallocatedSpace"))


   1 /*
   2  * Copyright (c) 2008, 2017, 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


 109             return UnixFileStoreAttributes.get(file);
 110         } catch (UnixException x) {
 111             x.rethrowAsIOException(file);
 112             return null;    // keep compile happy
 113         }
 114     }
 115 
 116     @Override
 117     public long getTotalSpace() throws IOException {
 118         UnixFileStoreAttributes attrs = readAttributes();
 119         return attrs.blockSize() * attrs.totalBlocks();
 120     }
 121 
 122     @Override
 123     public long getUsableSpace() throws IOException {
 124        UnixFileStoreAttributes attrs = readAttributes();
 125        return attrs.blockSize() * attrs.availableBlocks();
 126     }
 127 
 128     @Override
 129     public long getBlockSize() throws IOException {
 130        UnixFileStoreAttributes attrs = readAttributes();
 131        return attrs.blockSize();
 132     }
 133 
 134     @Override
 135     public long getUnallocatedSpace() throws IOException {
 136         UnixFileStoreAttributes attrs = readAttributes();
 137         return attrs.blockSize() * attrs.freeBlocks();
 138     }
 139 
 140     @Override
 141     public <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> view)
 142     {
 143         if (view == null)
 144             throw new NullPointerException();
 145         return (V) null;
 146     }
 147 
 148     @Override
 149     public Object getAttribute(String attribute) throws IOException {
 150         if (attribute.equals("totalSpace"))
 151             return getTotalSpace();
 152         if (attribute.equals("usableSpace"))
 153             return getUsableSpace();
 154         if (attribute.equals("unallocatedSpace"))


< prev index next >