1*876b9d75SXin Li -------------------------------------------------- 2*876b9d75SXin Li StubFtpServer Features and Limitations 3*876b9d75SXin Li -------------------------------------------------- 4*876b9d75SXin Li 5*876b9d75SXin LiStubFtpServer Features 6*876b9d75SXin Li 7*876b9d75SXin Li * Standalone dummy FTP server. Run either within the same JVM as test code or in a different JVM. 8*876b9d75SXin Li 9*876b9d75SXin Li * Implements common FTP server commands. See {{{./stubftpserver-commandhandlers.html}FTP Commands and CommandHandlers}}. 10*876b9d75SXin Li 11*876b9d75SXin Li * Supports active and passive mode data transfers. 12*876b9d75SXin Li 13*876b9d75SXin Li * Works out of the box with reasonable defaults: success reply codes and empty data. 14*876b9d75SXin Li 15*876b9d75SXin Li * Easy to configure command handlers for individual FTP server commands to return success/failure reply codes and custom data. 16*876b9d75SXin Li 17*876b9d75SXin Li * Can verify expected FTP server command invocations. 18*876b9d75SXin Li 19*876b9d75SXin Li * Easy to implement command handlers for other commands or replace existing command handlers. 20*876b9d75SXin Li 21*876b9d75SXin Li * Use a dynamically chosen free port number for the server control port instead of using the default (21) 22*876b9d75SXin Li or hard-coding some other value (set the serverControlPort property of the server to 0). 23*876b9d75SXin Li 24*876b9d75SXin Li * Fully supports configuration within the <<Spring Framework>>. 25*876b9d75SXin Li 26*876b9d75SXin Li * Can be used to test FTP client code written in any language 27*876b9d75SXin Li 28*876b9d75SXin Li 29*876b9d75SXin LiStubFtpServer Limitations 30*876b9d75SXin Li 31*876b9d75SXin Li * Using <<StubFtpServer>> for testing and simulation of non-default scenarios requires 32*876b9d75SXin Li some understanding of the FTP Specification and a configuration of the low-level 33*876b9d75SXin Li FTP Server commands. 34*876b9d75SXin Li 35*876b9d75SXin Li