1 /** 2 This file is part of GoldenGate Project (named also GoldenGate or GG). 3 4 Copyright 2009, Frederic Bregier, and individual contributors by the @author 5 tags. See the COPYRIGHT.txt in the distribution for a full listing of 6 individual contributors. 7 8 All GoldenGate Project is free software: you can redistribute it and/or 9 modify it under the terms of the GNU General Public License as published 10 by the Free Software Foundation, either version 3 of the License, or 11 (at your option) any later version. 12 13 GoldenGate is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with GoldenGate . If not, see <http://www.gnu.org/licenses/>. 20 */ 21 package goldengate.common.file.filesystembased.specific; 22 23 import java.io.FileFilter; 24 import java.io.IOException; 25 26 import org.apache.commons.io.FileSystemUtils; 27 import org.apache.commons.io.filefilter.WildcardFileFilter; 28 29 /** 30 * This class enables to not set a dependencies on Apache Commons IO if wanted, 31 * but loosing freespace and wildcard support. 32 * 33 * @author Frederic Bregier 34 * 35 */ 36 public class FilesystemBasedCommonsIo { 37 38 /** 39 * 40 * @param pathname 41 * @return the free space of the given pathname 42 */ 43 public static long freeSpace(String pathname) { 44 try { 45 return FileSystemUtils.freeSpaceKb(pathname) << 10; 46 } catch (IOException e) { 47 return -1; 48 } 49 } 50 51 /** 52 * 53 * @param dir 54 * @return The associated FileFilter 55 */ 56 public static FileFilter getWildcardFileFilter(String dir) { 57 return new WildcardFileFilter(dir); 58 } 59 }