org.mockftpserver.fake.command
Class AppeCommandHandler

java.lang.Object
  extended by org.mockftpserver.core.command.AbstractCommandHandler
      extended by org.mockftpserver.fake.command.AbstractFakeCommandHandler
          extended by org.mockftpserver.fake.command.AbstractStoreFileCommandHandler
              extended by org.mockftpserver.fake.command.AppeCommandHandler
All Implemented Interfaces:
CommandHandler, ReplyTextBundleAware, ServerConfigurationAware

public class AppeCommandHandler
extends AbstractStoreFileCommandHandler

CommandHandler for the APPE command. Handler logic:

  1. If the user has not logged in, then reply with 530 and terminate
  2. If the required pathname parameter is missing, then reply with 501 and terminate
  3. If the pathname parameter does not specify a valid filename, then reply with 553 and terminate
  4. If the current user does not have write access to the named file, if it already exists, or else to its parent directory, then reply with 553 and terminate
  5. If the current user does not have execute access to the parent directory, then reply with 553 and terminate
  6. Send an initial reply of 150
  7. Read all available bytes from the data connection and append to the named file in the server file system
  8. If file write/store fails, then reply with 553 and terminate
  9. Send a final reply with 226

Version:
$Revision: 201 $ - $Date: 2008-12-11 19:39:48 -0500 (Thu, 11 Dec 2008) $
Author:
Chris Mair

Field Summary
 
Fields inherited from class org.mockftpserver.fake.command.AbstractFakeCommandHandler
INTERNAL_ERROR_KEY, replyCodeForFileSystemException
 
Fields inherited from class org.mockftpserver.core.command.AbstractCommandHandler
LOG
 
Constructor Summary
AppeCommandHandler()
           
 
Method Summary
protected  boolean appendToOutputFile()
           
protected  String getMessageKey()
           
 
Methods inherited from class org.mockftpserver.fake.command.AbstractStoreFileCommandHandler
getOutputFile, handle
 
Methods inherited from class org.mockftpserver.fake.command.AbstractFakeCommandHandler
defaultIfNullOrEmpty, endOfLine, getFileSystem, getRealPath, getRequiredSessionAttribute, getServerConfiguration, getUserAccount, handleCommand, list, list, login, notNullOrEmpty, sendReply, sendReply, sendReply, sendReply, setServerConfiguration, validateUserAccount, verifyExecutePermission, verifyFileSystemCondition, verifyLoggedIn, verifyReadPermission, verifyWritePermission
 
Methods inherited from class org.mockftpserver.core.command.AbstractCommandHandler
assertValidReplyCode, getReplyTextBundle, quotes, setReplyTextBundle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AppeCommandHandler

public AppeCommandHandler()
Method Detail

getMessageKey

protected String getMessageKey()
Specified by:
getMessageKey in class AbstractStoreFileCommandHandler
Returns:
the message key for the reply message sent with the final (226) reply

appendToOutputFile

protected boolean appendToOutputFile()
Overrides:
appendToOutputFile in class AbstractStoreFileCommandHandler
Returns:
true if this command should append the transferred contents to the output file; false means overwrite an existing file.


Copyright © 2014. All rights reserved.