finish backward compatibility for FileTransferTask, add unit (integration) test