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

import org.trinitydesktop.qt.TQt;
import org.trinitydesktop.qt.TQMetaObject;
import org.trinitydesktop.qt.QtSupport;

/**

 A TDEIO job that retrieves information about a file or directory.
 See {@link StatJobSignals} for signals emitted by StatJob
		@short    A TDEIO job that retrieves information about a file or directory.
		@see #stat

*/
public class StatJob extends SimpleJob  {
	protected StatJob(Class dummy){super((Class) null);}
	public native TQMetaObject metaObject();
	public native String className();
	/**
		 Do not use this constructor to create a StatJob, use TDEIO.stat() instead.
			@param url the url of the file or directory to check
			@param command the command to issue
			@param packedArgs the arguments
			@param showProgressInfo true to show progress information to the user
			 		@short    Do not use this constructor to create a StatJob, use TDEIO.stat() instead.
	*/
	public StatJob(KURL url, int command, byte[] packedArgs, boolean showProgressInfo) {
		super((Class) null);
		newStatJob(url,command,packedArgs,showProgressInfo);
	}
	private native void newStatJob(KURL url, int command, byte[] packedArgs, boolean showProgressInfo);
	/**
		 A stat() can have two meanings. Either we want to read from this URL,
		 or to check if we can write to it. First case is "source", second is "dest".
		 It is necessary to know what the StatJob is for, to tune the tdeioslave's behavior
		 (e.g. with FTP).
			@param source true for "source" mode, false for "dest" mode
		         		@short    A stat() can have two meanings.
	*/
	public native void setSide(boolean source);
	/**
		 Selects the level of <code>details</code> we want.
		 By default this is 2 (all details wanted, including modification time, size, etc.),
		 setDetails(1) is used when deleting: we don't need all the information if it takes
		 too much time, no need to follow symlinks etc.
		 setDetails(0) is used for very simple probing: we'll only get the answer
		 "it's a file or a directory, or it doesn't exist". This is used by KRun.
			@param details 2 for all details, 1 for simple, 0 for very simple
		         		@short    Selects the level of <code>details</code> we want.
	*/
	public native void setDetails(short details);
	/**
		 Call this in the slot connected to result,
		 and only after making sure no error happened.
				@return the result of the stat

		@short    Call this in the slot connected to result,  and only after making sure no error happened.
	*/
	// const TDEIO::UDSEntry& statResult(); >>>> NOT CONVERTED
	/**
			 Called by the scheduler when a <code>slave</code> gets to
		 work on this job.
			@param slave the slave that starts working on this job
		         		@short
	*/
	public native void start(Slave slave);
	// void slotStatEntry(const TDEIO::UDSEntry& arg1); >>>> NOT CONVERTED
	protected native void slotRedirection(KURL url);
	protected native void slotFinished();
	// void slotMetaData(const TDEIO::MetaData& arg1); >>>> NOT CONVERTED
}
