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.ftp.core.file; 21 22 import org.waarp.common.command.exception.CommandAbstractException; 23 import org.waarp.common.file.DirInterface; 24 25 /** 26 * 27 */ 28 public interface FtpDir extends DirInterface { 29 /** 30 * Create a new FtpFile 31 * 32 * @param path 33 * @param append 34 * 35 * @return the new Ftp FileInterface 36 * 37 * @throws CommandAbstractException 38 */ 39 @Override 40 FtpFile newFile(String path, boolean append) throws CommandAbstractException; 41 42 /** 43 * Set a path as the current FileInterface 44 * 45 * @param path 46 * @param append True if this file is supposed to be in append mode 47 * (APPE), False in any other cases 48 * 49 * @return the Ftp FileInterface if it is correctly initiate 50 * 51 * @throws CommandAbstractException 52 */ 53 @Override 54 FtpFile setFile(String path, boolean append) throws CommandAbstractException; 55 56 /** 57 * Set a new unique path as the current FileInterface from the current 58 * Directory (STOU) 59 * 60 * @return the Ftp FileInterface if it is correctly initiate 61 * 62 * @throws CommandAbstractException 63 */ 64 @Override 65 FtpFile setUniqueFile() throws CommandAbstractException; 66 67 }