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

import org.trinitydesktop.qt.Qt;
import org.trinitydesktop.qt.QtSupport;
import java.util.Calendar;

/**

 A base class for entries in an KArchive.
		@short Base class for the archive-file's directory structure.
		@see KArchiveFile
		@see KArchiveDirectory

*/
public class KArchiveEntry implements QtSupport {
	private long _qt;
	private boolean _allocatedInJavaWorld = true;
	protected KArchiveEntry(Class dummy){}

	/**
		 Creates a new entry.
			@param archive the entries archive
			@param name the name of the entry
			@param access the permissions in unix format
			@param date the date (in seconds since 1970)
			@param user the user that owns the entry
			@param group the group that owns the entry
			@param symlink the symlink, or null
		     		@short    Creates a new entry.
	*/
	public KArchiveEntry(KArchive archive, String name, int access, int date, String user, String group, String symlink) {
		newKArchiveEntry(archive,name,access,date,user,group,symlink);
	}
	private native void newKArchiveEntry(KArchive archive, String name, int access, int date, String user, String group, String symlink);
	/**
		 Creation date of the file.
				@return the creation date

		@short    Creation date of the file.
	*/
	public native Calendar datetime();
	/**
		 Creation date of the file.
				@return the creation date in seconds since 1970

		@short    Creation date of the file.
	*/
	public native int date();
	/**
		 Name of the file without path.
				@return the file name without path

		@short    Name of the file without path.
	*/
	public native String name();
	/**
		 The permissions and mode flags as returned by the stat() function
		 in st_mode.
				@return the permissions

		@short    The permissions and mode flags as returned by the stat() function  in st_mode.
	*/
	public native long permissions();
	/**
		 User who created the file.
				@return the owner of the file

		@short    User who created the file.
	*/
	public native String user();
	/**
		 Group of the user who created the file.
				@return the group of the file

		@short    Group of the user who created the file.
	*/
	public native String group();
	/**
		 Symlink if there is one.
				@return the symlink, or null

		@short    Symlink if there is one.
	*/
	public native String symlink();
	/**
		 Checks whether the entry is a file.
				@return true if this entry is a file

		@short    Checks whether the entry is a file.
	*/
	public native boolean isFile();
	/**
		 Checks whether the entry is a directory.
				@return true if this entry is a directory

		@short    Checks whether the entry is a directory.
	*/
	public native boolean isDirectory();
	protected native KArchive archive();
	/** Deletes the wrapped C++ instance */
	protected native void finalize() throws InternalError;
	/** Delete the wrapped C++ instance ahead of finalize() */
	public native void dispose();
	/** Has the wrapped C++ instance been deleted? */
	public native boolean isDisposed();
}
