001/**
002 * Copyright (c) 2015, Lucee Assosication Switzerland. All rights reserved.
003 *
004 * This library is free software; you can redistribute it and/or
005 * modify it under the terms of the GNU Lesser General Public
006 * License as published by the Free Software Foundation; either 
007 * version 2.1 of the License, or (at your option) any later version.
008 * 
009 * This library is distributed in the hope that it will be useful,
010 * but WITHOUT ANY WARRANTY; without even the implied warranty of
011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
012 * Lesser General Public License for more details.
013 * 
014 * You should have received a copy of the GNU Lesser General Public 
015 * License along with this library.  If not, see <http://www.gnu.org/licenses/>.
016 * 
017 */
018package lucee.runtime.net.ftp;
019
020/**
021 * represent a ftp connection
022 */
023public interface FTPConnectionPro extends FTPConnection {
024
025    /**
026     * @return Returns the name.
027     */
028    public abstract String getName();
029
030    /**
031     * @return Returns the password.
032     */
033    public abstract String getPassword();
034
035    /**
036     * @return Returns the server.
037     */
038    public abstract String getServer();
039
040    /**
041     * @return Returns the username.
042     */
043    public abstract String getUsername();
044
045    /**
046     * @return returns if has logindata or not
047     */
048    public abstract boolean hasLoginData();
049
050    /**
051     * @return has name
052     */
053    public abstract boolean hasName();
054
055    /**
056     * @return Returns the port.
057     */
058    public abstract int getPort();
059
060    /**
061     * @return Returns the timeout.
062     */
063    public abstract int getTimeout();
064
065    /**
066     * @return Returns the transferMode.
067     */
068    public abstract short getTransferMode();
069
070    /**
071     * @return Returns the passive.
072     */
073    public abstract boolean isPassive();
074
075    /**
076     * @param conn
077     * @return has equal login
078     */
079    public abstract boolean loginEquals(FTPConnection conn);
080
081    /**
082     * @return Returns the proxyserver.
083     */
084    public String getProxyServer();
085    
086        public int getProxyPort();
087
088        /**
089         * return the proxy username
090         * @return proxy username
091         */
092        public String getProxyUser();
093
094    
095        /**
096         * return the proxy password
097         * @return proxy password
098         */
099        public String getProxyPassword();
100
101        public abstract boolean secure();
102
103        public abstract boolean getStopOnError();
104
105        public abstract String getFingerprint();
106        
107}