com.mindbright.net.ftp
Class FTPServer

java.lang.Object
  extended by com.mindbright.net.ftp.FTPServer
All Implemented Interfaces:
java.lang.Runnable

public class FTPServer
extends java.lang.Object
implements java.lang.Runnable


Field Summary
static int CMD_ABOR
           
static int CMD_ACCT
           
static int CMD_ALLO
           
static int CMD_APPE
           
static int CMD_CDUP
           
static int CMD_CWD
           
static int CMD_DELE
           
static int CMD_FEAT
           
static int CMD_HELP
           
static int CMD_LIST
           
static int CMD_MDTM
           
static int CMD_MKD
           
static int CMD_MODE
           
static int CMD_NLST
           
static int CMD_NOOP
           
static int CMD_PASS
           
static int CMD_PASV
           
static int CMD_PORT
           
static int CMD_PWD
           
static int CMD_QUIT
           
static int CMD_REIN
           
static int CMD_REST
           
static int CMD_RETR
           
static int CMD_RMD
           
static int CMD_RNFR
           
static int CMD_RNTO
           
static int CMD_SITE
           
static int CMD_SIZE
           
static int CMD_SMNT
           
static int CMD_STAT
           
static int CMD_STOR
           
static int CMD_STOU
           
static int CMD_STRU
           
static int CMD_SYST
           
static int CMD_TYPE
           
static int CMD_UNKN
           
static int CMD_USER
           
static java.util.Hashtable commands
           
protected  boolean dataConnected
           
protected  java.io.InputStream dataIn
           
protected  java.io.OutputStream dataOut
           
protected  java.net.ServerSocket dataPasvAccept
           
protected  int[] dataPortAddr
           
protected  java.net.Socket dataSocket
           
protected  java.net.InetAddress localHost
           
 
Constructor Summary
FTPServer(java.lang.String identity, FTPServerEventHandler eventHandler, java.net.InetAddress localHost, java.io.InputStream cmdInput, java.io.OutputStream cmdOutput, boolean needPassword)
           
FTPServer(java.lang.String identity, FTPServerEventHandler eventHandler, java.io.InputStream cmdInput, java.io.OutputStream cmdOutput, boolean needPassword)
           
 
Method Summary
protected  void dataComplete()
           
protected  void dataConnect()
           
protected  java.lang.String dataPassive()
           
protected  int[] dataPort(java.lang.String arg)
           
protected  void dataReset()
           
protected  void dataStart(java.lang.String obj)
           
protected  java.io.InputStream getDataInput()
           
protected  java.io.OutputStream getDataOutput()
           
 void readLogin()
           
 void reply(int code, java.lang.String text)
           
 void run()
           
 void terminate()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

localHost

protected java.net.InetAddress localHost

dataSocket

protected java.net.Socket dataSocket

dataPasvAccept

protected java.net.ServerSocket dataPasvAccept

dataPortAddr

protected int[] dataPortAddr

dataConnected

protected boolean dataConnected

dataIn

protected java.io.InputStream dataIn

dataOut

protected java.io.OutputStream dataOut

CMD_UNKN

public static final int CMD_UNKN
See Also:
Constant Field Values

CMD_USER

public static final int CMD_USER
See Also:
Constant Field Values

CMD_PASS

public static final int CMD_PASS
See Also:
Constant Field Values

CMD_ACCT

public static final int CMD_ACCT
See Also:
Constant Field Values

CMD_CWD

public static final int CMD_CWD
See Also:
Constant Field Values

CMD_CDUP

public static final int CMD_CDUP
See Also:
Constant Field Values

CMD_SMNT

public static final int CMD_SMNT
See Also:
Constant Field Values

CMD_QUIT

public static final int CMD_QUIT
See Also:
Constant Field Values

CMD_REIN

public static final int CMD_REIN
See Also:
Constant Field Values

CMD_PORT

public static final int CMD_PORT
See Also:
Constant Field Values

CMD_PASV

public static final int CMD_PASV
See Also:
Constant Field Values

CMD_TYPE

public static final int CMD_TYPE
See Also:
Constant Field Values

CMD_STRU

public static final int CMD_STRU
See Also:
Constant Field Values

CMD_MODE

public static final int CMD_MODE
See Also:
Constant Field Values

CMD_RETR

public static final int CMD_RETR
See Also:
Constant Field Values

CMD_STOR

public static final int CMD_STOR
See Also:
Constant Field Values

CMD_STOU

public static final int CMD_STOU
See Also:
Constant Field Values

CMD_APPE

public static final int CMD_APPE
See Also:
Constant Field Values

CMD_ALLO

public static final int CMD_ALLO
See Also:
Constant Field Values

CMD_REST

public static final int CMD_REST
See Also:
Constant Field Values

CMD_RNFR

public static final int CMD_RNFR
See Also:
Constant Field Values

CMD_RNTO

public static final int CMD_RNTO
See Also:
Constant Field Values

CMD_ABOR

public static final int CMD_ABOR
See Also:
Constant Field Values

CMD_DELE

public static final int CMD_DELE
See Also:
Constant Field Values

CMD_RMD

public static final int CMD_RMD
See Also:
Constant Field Values

CMD_MKD

public static final int CMD_MKD
See Also:
Constant Field Values

CMD_PWD

public static final int CMD_PWD
See Also:
Constant Field Values

CMD_LIST

public static final int CMD_LIST
See Also:
Constant Field Values

CMD_NLST

public static final int CMD_NLST
See Also:
Constant Field Values

CMD_SITE

public static final int CMD_SITE
See Also:
Constant Field Values

CMD_SYST

public static final int CMD_SYST
See Also:
Constant Field Values

CMD_STAT

public static final int CMD_STAT
See Also:
Constant Field Values

CMD_HELP

public static final int CMD_HELP
See Also:
Constant Field Values

CMD_NOOP

public static final int CMD_NOOP
See Also:
Constant Field Values

CMD_FEAT

public static final int CMD_FEAT
See Also:
Constant Field Values

CMD_MDTM

public static final int CMD_MDTM
See Also:
Constant Field Values

CMD_SIZE

public static final int CMD_SIZE
See Also:
Constant Field Values

commands

public static java.util.Hashtable commands
Constructor Detail

FTPServer

public FTPServer(java.lang.String identity,
                 FTPServerEventHandler eventHandler,
                 java.io.InputStream cmdInput,
                 java.io.OutputStream cmdOutput,
                 boolean needPassword)

FTPServer

public FTPServer(java.lang.String identity,
                 FTPServerEventHandler eventHandler,
                 java.net.InetAddress localHost,
                 java.io.InputStream cmdInput,
                 java.io.OutputStream cmdOutput,
                 boolean needPassword)
Method Detail

run

public void run()
Specified by:
run in interface java.lang.Runnable

terminate

public void terminate()

reply

public void reply(int code,
                  java.lang.String text)
           throws java.io.IOException
Throws:
java.io.IOException

readLogin

public void readLogin()
               throws java.io.IOException
Throws:
java.io.IOException

dataPort

protected int[] dataPort(java.lang.String arg)
                  throws FTPException
Throws:
FTPException

dataPassive

protected java.lang.String dataPassive()
                                throws FTPException
Throws:
FTPException

getDataOutput

protected java.io.OutputStream getDataOutput()
                                      throws FTPException
Throws:
FTPException

getDataInput

protected java.io.InputStream getDataInput()
                                    throws FTPException
Throws:
FTPException

dataConnect

protected void dataConnect()
                    throws FTPException
Throws:
FTPException

dataStart

protected void dataStart(java.lang.String obj)
                  throws java.io.IOException
Throws:
java.io.IOException

dataComplete

protected void dataComplete()
                     throws java.io.IOException
Throws:
java.io.IOException

dataReset

protected void dataReset()