Hi all,
When I use the IncomingFileTransfer#recieveFile(File file) method everything is ok: file is transfered.
But I cannot manage to monitor the transfer as it is described in the javadoc:
The javadoc says:
/******************************************************************************* *********************
This method will return immedialtly, file transfer progress can be monitored through several methods:
FileTransfer.getStatus()
FileTransfer.getProgress()
FileTransfer.isDone()
Here’‘s a code snippet I’'ve written to show you my problem:
/**
- Code snippet example.
*/
package fr.elh.im;
import java.io.File;
import org.jivesoftware.smack.XMPPConnection;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smackx.filetransfer.FileTransferListener;
import org.jivesoftware.smackx.filetransfer.FileTransferManager;
import org.jivesoftware.smackx.filetransfer.FileTransferRequest;
import org.jivesoftware.smackx.filetransfer.IncomingFileTransfer;
/**
- @author me
*/
public class FileTransferHandler {
/**
- The FileTransferManager object
*/
private FileTransferManager ftm;
/**
-
Public constructor
-
@param connection
*/
public FileTransferHandler(XMPPConnection connection) {
ftm = new FileTransferManager(connection);
ftm.addFileTransferListener(ftl);
}
/**
-
The FileTransferListener (for the example: file transfer is always
-
accepted)
*/
FileTransferListener ftl = new FileTransferListener() {
public void fileTransferRequest(FileTransferRequest ftr) {
IncomingFileTransfer ift = ftr.accept();
String incomingFileName = ftr.getFileName();
// the file that incoming
File incomingFile = new File(“C:
” + incomingFileName);
try {
// use of IncomingFileTransfer#recieveFile(File)
ift.recieveFile(incomingFile);
// TODO: how to monitor transfer as described in javadoc???
} catch (XMPPException e) {
System.out.println(“Error: could not receive file!”);
e.printStackTrace();
}
}
};
}
Could someone show me, using this code snippet, how to monitor the transfer in this case?
Thanks a lot
JTecks.