/*
 * $Id: VKCExternalException.java,v 1.5 2007/01/02 10:43:12 lawern Exp $
 *
 * Copyright (c) Siemens AG 2008 
 *           (c) Universität Paderborn 2008 
 * Licensed under EUPL 1.1. 
 * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
 * THIS SOFTWARE OR ITS DERIVATIVES.
 *
 * $Log: VKCExternalException.java,v $
 * Revision 1.5  2007/01/02 10:43:12  lawern
 * Bugfixing
 *
 * Revision 1.4  2006/12/20 09:28:30  korowa
 * Fehlermeldung zur fehlenden Acländerungsrechten hinzugefügt
 *
 * Revision 1.3  2006/09/22 10:29:56  korowa
 * zusätzliche Fehlermeldungen hinzugefügt
 *
 * Revision 1.2  2006/08/23 18:36:00  marbobo
 * + Einige Exception-Ausgaben eingebaut
 *
 */
package vkc.external;

public class VKCExternalException extends Exception {
	public static final int UNKNOWN = 0;

	public static final int STA_NOT_FOUND = 1;

	public static final int READ_PERMISSION_FAILED = 2;

	public static final int WRITE_PERMISSION_FAILED = 3;

	public static final int ID_MISSED = 4;

	public static final int CREATE_CATEGORY_PERMISSION_FAILED = 5;

	public static final int DOCUMENT_STREAM_MISSED = 6;

	public static final int QUOTA_EXCEEDED = 7;

	public static final int DELETE_PERMISSION_FAILED = 8;
	
	public static final int GROUP_NAME_EXIST = 9;
	
	public static final int ADMIN_PERMISSION_FAILED = 10;
	
	public static final int GROUP_NAME_MISSED = 11;
	
	public static final int ERROR_DATE_RANGE = 12;
	
	public static final int CHANGE_ACL_PERMISSION_FAILED = 13;
    
    public static final int CATEGORY_NAME_VIOLATION = 14;
	
	

	private static String[] messageArray = { "Unbekannte Exception",
			"Strukturtemplatearchiv konnte nicht gefunden werden",
			"Benutzer hat keine Leserechte",
			"Benutzer hat keine Schreibrechte",
			"ID für Kategorie/Dokument ist noch nicht vorhanden",
			"Benutzer hat keine Rechte zum Anlagen dieser Unterkategorie",
			"Dokument-Stream muss vorhanden sein", "Quota wurde überschritten",
			"Benutzer hat keine Löschrechte", 
			"Der Gruppenname ist schon vergeben",
			"Benutzer hat keine Administrationsrechte",
			"Gruppenname muss vorhanden sein",
			"Der Zeitinterval ist falsch angegeben",
			"Benutzer hat keine Rechte zum ändern dieser Acl",
            "Der angegebene Kategoriename ist in der übergeordneten Kategorie bereits vergeben"
	};

	private int excType = UNKNOWN;

	public VKCExternalException(int excType) {
		super(messageArray[excType]);
	}

	public int getExcType() {
		return excType;
	}
}
