1 /* 2 * This file is part of Waarp Project (named also Waarp or GG). 3 * 4 * Copyright (c) 2019, Waarp SAS, 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 Waarp Project is free software: you can redistribute it and/or 9 * modify it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation, either version 3 of the License, or (at your 11 * option) any later version. 12 * 13 * Waarp is distributed in the hope that it will be useful, but WITHOUT ANY 14 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 15 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License along with 18 * Waarp . If not, see <http://www.gnu.org/licenses/>. 19 */ 20 package org.waarp.common.file.filesystembased.specific; 21 22 import java.io.File; 23 24 /** 25 * Abstract class to allow specific function depending on the underlying JDK to 26 * used. 27 */ 28 public abstract class FilesystemBasedDirJdkAbstract { 29 /** 30 * Should the Ftp Server use the Apache Commons Io or not: if not wildcard 31 * and 32 * freespace (ALLO) will not be 33 * supported. 34 */ 35 public static boolean ueApacheCommonsIo = true; 36 37 /** 38 * @param directory 39 * 40 * @return the free space of the given Directory 41 */ 42 public abstract long getFreeSpace(File directory); 43 44 /** 45 * Result of ls on FileInterface 46 * 47 * @param file 48 * 49 * @return True if the file is executable 50 */ 51 public abstract boolean canExecute(File file); 52 }