makeDirectory(dstDir.toString() + "/" + srcDir.getName());  List files = getDirectoryListing( srcDir.toString() );
destination.makeDirectory(dstDir.toString() + "/" + srcDir.getName());
    public void fxpDirectory(FTPConnection destination, FTPFile srcDir, FTPFile dstDir) throws IOException,FtpWorkflowException,FtpIOException {    	if ( !srcDir.isDirectory() )    		throw new FtpFileNotFoundException("Downloading: " + srcDir.getName() + " is not possible, it's not a directory!");        if (!connectionSSCNActive && getConnectionSSCNType() == FTPConnection.SSCN_ON) {            setSecuredFxp(true);            connectionSSCNActive = true;        }            	makeDirectory(dstDir.toString() + "/" + srcDir.getName());    	List files = getDirectoryListing( srcDir.toString() );    	    	Collections.sort( files );    	    	for(int i=0; i<files.size(); i++) {    		FTPFile file = ((FTPFile) files.get(i));    		file.setPath( srcDir.toString() );    		if ( file.isFile() ) {    			fxpFile(destination, file, new FTPFile(dstDir.toString() + "/" + srcDir.getName(), file.getName()));    		}else {    			fxpDirectory(destination, file, new FTPFile(dstDir  + "/" + srcDir.getName()));    		}    	}                if (connectionSSCNActive && getConnectionSSCNType() == FTPConnection.SSCN_ON) {            setSecuredFxp(false);            connectionSSCNActive = false;        }    }  