/******************************************************************************* * Copyright (c) 2009-2010, G. Weirich and Elexis * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * G. Weirich - initial implementation * *******************************************************************************/ package ch.elexis.core.exceptions; import java.util.logging.Logger; public class ElexisException extends Exception { private static final long serialVersionUID = -4535064606049686854L; private static Logger log = Logger.getLogger(ElexisException.class.getName()); public static final int EE_DUPLICATE_DISPATCHER = 1; public static final int EE_BAD_DISPATCHER = 2; public static final int EE_UNEXPECTED_RESPONSE = 3; public static final int EE_FILE_ERROR = 4; public static final int EE_NOT_SUPPORTED = 5; public static final int EE_NOT_FOUND = 6; Class<?> clazz; int errcode; public ElexisException(Class<?> clazz, String errmsg, int errcode){ this(clazz, errmsg, errcode, false); } public ElexisException(Class<?> clazz, String errmsg, int errcode, boolean doLog){ super(errmsg); this.clazz = clazz; this.errcode = errcode; log.severe(clazz.getName() + ": " + errmsg + " " + Integer.toString(errcode)); } public ElexisException(String errmsg, Throwable throwable){ super(errmsg, throwable); } public Class<?> getThrowingClass(){ return clazz; } public int getErrCode(){ return errcode; } }