Java
Chilkat2 Java
Bandwidth Throttled Asynchronous HTTP Upload
See more Upload Examples
Demonstrates how to do an HTTP upload asynchronously in a background thread with limiting the rate to an approximate number of bytes/second. The only difference between this example and one without bandwidth throttling is that the BandwidthThrottleUp property is set.Chilkat Java Downloads
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Upload;
public class ChilkatExample {
public static void main(String[] args) {
Upload upload = new Upload();
// Specify the page (ASP, ASP.NET, Perl, Python, Ruby, CGI, etc)
// that will process the HTTP Upload.
upload.setHostname("www.mywebserver.com");
upload.setPath("/receiveUpload.aspx");
// Add one or more files to be uploaded.
upload.addFileReference("file1", "dude.gif");
upload.addFileReference("file2", "pigs.xml");
upload.addFileReference("file3", "sample.doc");
// Set the BandwidthThrottleUp property to throttle to approx 64K/second
upload.setBandwidthThrottleUp(65536);
// Begin the HTTP upload in a background thread:
try {
upload.beginUpload();
System.out.println("Upload started...");
} catch (ChilkatException e) {
System.out.println(e.getLastErrorText());
}
// Wait for the upload to finish.
// Print the progress as we wait...
while (upload.getUploadInProgress()) {
// We can abort the upload at any point by calling:
// upload.AbortUpload();
// Display the percentage complete and the number of bytes uploaded so far..
// The total upload size will become set after the upload begins:
System.out.println(upload.getPercentUploaded() + "% " + upload.getNumBytesSent() + "/" + upload.getTotalUploadSize());
// Sleep 2/10ths of a second.
upload.sleepMs(200);
}
// Did the upload succeed?
if (upload.getUploadSuccess()) {
System.out.println("Files uploaded!");
} else {
System.out.println(upload.getLastErrorText());
}
}
}