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

import org.trinitydesktop.qt.Qt;
import org.trinitydesktop.qt.QtSupport;

/**

 KDE X509v3 Flag Class
 This class is used to track X509v3 flags for
		@author George Staikos <staikos@kde.org>

		@short KDE SSL Class.
		@see KExtendedSocket
		@see TCPSlaveBase

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

	/**
		  Determine if this certificate can be used by a certificate authority
				@return true if it can be used by a certificate authority

		@short     Determine if this certificate can be used by a certificate authority
	*/
	public native boolean certTypeCA();
	/**
		  Determine if this certificate can be used by an SSL signer
				@return true if it can be used by an SSL signer

		@short     Determine if this certificate can be used by an SSL signer
	*/
	public native boolean certTypeSSLCA();
	/**
		  Determine if this certificate can be used by an S/MIME signer
				@return true if it can be used by an S/MIME signer

		@short     Determine if this certificate can be used by an S/MIME signer
	*/
	public native boolean certTypeEmailCA();
	/**
		  Determine if this certificate can be used by a code certificate signer
				@return true if it can be used by a code certificate signer

		@short     Determine if this certificate can be used by a code certificate signer
	*/
	public native boolean certTypeCodeCA();
	/**
		  Determine if this certificate can be used by an SSL client
				@return true if it can be used by an SSL client

		@short     Determine if this certificate can be used by an SSL client
	*/
	public native boolean certTypeSSLClient();
	/**
		  Determine if this certificate can be used by an SSL server
				@return true if it can be used by an SSL server

		@short     Determine if this certificate can be used by an SSL server
	*/
	public native boolean certTypeSSLServer();
	/**
		  Determine if this certificate can be used by a Netscape SSL server
				@return true if it can be used by a Netscape SSL server

		@short     Determine if this certificate can be used by a Netscape SSL server
	*/
	public native boolean certTypeNSSSLServer();
	/**
		  Determine if this certificate can be used for S/MIME
				@return true if it can be used for S/MIME

		@short     Determine if this certificate can be used for S/MIME
	*/
	public native boolean certTypeSMIME();
	/**
		  Determine if this certificate can be used for S/MIME encryption
				@return true if it can be used for S/MIME encryption

		@short     Determine if this certificate can be used for S/MIME encryption
	*/
	public native boolean certTypeSMIMEEncrypt();
	/**
		  Determine if this certificate can be used for S/MIME signing
				@return true if it can be used for S/MIME signing

		@short     Determine if this certificate can be used for S/MIME signing
	*/
	public native boolean certTypeSMIMESign();
	/**
		  Determine if this certificate can be used for revocation signing
				@return true if it can be used for revocation signing

		@short     Determine if this certificate can be used for revocation signing
	*/
	public native boolean certTypeCRLSign();
	public KSSLX509V3() {
		newKSSLX509V3();
	}
	private native void newKSSLX509V3();
	/** 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();
}
