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"))
|