//Auto-generated by kalyptus. DO NOT EDIT.
package org.kde.koala;

import org.kde.qt.Qt;
import org.kde.qt.QMetaObject;
import org.kde.qt.QtSupport;

/**

 StoredTransferJob is a TransferJob (for downloading or uploading data) that
 also stores a byte[] with the data, making it simpler to use than the
 standard TransferJob.
 For KIO.storedGet it puts the data into the member byte[], so the user
 of this class can get hold of the whole data at once by calling data()
 when the result signal is emitted.
 You should only use StoredTransferJob to download data if you cannot
 process the data by chunks while it's being downloaded, since storing
 everything in a byte[] can potentially require a lot of memory.
 For KIO.storedPut the user of this class simply provides the bytearray from
 the start, and the job takes care of uploading it.
 You should only use StoredTransferJob to upload data if you cannot
 provide the in chunks while it's being uploaded, since storing
 everything in a byte[] can potentially require a lot of memory.
		@short    StoredTransferJob is a TransferJob (for downloading or uploading data) that  also stores a QByteArray with the data, making it simpler to use than the  standard TransferJob.

*/
public class StoredTransferJob extends TransferJob  {
	protected StoredTransferJob(Class dummy){super((Class) null);}
	public native QMetaObject metaObject();
	public native String className();
	/**	
		 Do not create a StoredTransferJob. Use storedGet() or storedPut()
		 instead.
			@param url the url to get or put
			@param command the command to issue
			@param packedArgs the arguments
			@param _staticData additional data to transmit (e.g. in a HTTP Post)
			@param showProgressInfo true to show progress information to the user
					@short    Do not create a StoredTransferJob.
	*/
	public StoredTransferJob(KURL url, int command, byte[] packedArgs, byte[] _staticData, boolean showProgressInfo) {
		super((Class) null);
		newStoredTransferJob(url,command,packedArgs,_staticData,showProgressInfo);
	}
	private native void newStoredTransferJob(KURL url, int command, byte[] packedArgs, byte[] _staticData, boolean showProgressInfo);
	/**	
		 Set data to be uploaded. This is for put jobs.
		 Automatically called by KIO.storedPut(const byte[] &, ...),
		 do not call this yourself.
		         		@short    Set data to be uploaded.
	*/
	public native void setData(byte[] arr);
	/**	
		 Get hold of the downloaded data. This is for get jobs.
		 You're supposed to call this only from the slot connected to the result() signal.
		         		@short    Get hold of the downloaded data.
	*/
	public native byte[] data();
}
