/*******************************************************************************
* Copyright 2014 by E-Government Innovation Center EGIZ, Graz, Austria
* PDF-AS has been contracted by the E-Government Innovation Center EGIZ, a
* joint initiative of the Federal Chancellery Austria and Graz University of
* Technology.
*
* Licensed under the EUPL, Version 1.1 or - as soon they will be approved by
* the European Commission - subsequent versions of the EUPL (the "Licence");
* You may not use this work except in compliance with the Licence.
* You may obtain a copy of the Licence at:
* http://www.osor.eu/eupl/
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the Licence is distributed on an "AS IS" basis,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the Licence for the specific language governing permissions and
* limitations under the Licence.
*
* This product combines work with different licenses. See the "NOTICE" text
* file for details on the various modules and licenses.
* The "NOTICE" text file is part of the distribution. Any derivative works
* that you distribute must include a readable copy of the "NOTICE" text file.
******************************************************************************/
package at.gv.egiz.pdfas.common.exceptions;
import java.util.Arrays;
import java.util.List;
public class SLPdfAsException extends PdfAsException {
private static final List ERRORCODES_ON_INFO_LEVEL = Arrays.asList(6000, 6001, 6002);
/**
*
*/
private static final long serialVersionUID = -1261346424827136327L;
private int code;
private String info;
public SLPdfAsException(int code, String info) {
super();
this.code = code;
this.info = info;
}
public int getCode() {
return code;
}
public String getInfo() {
return info;
}
/**
* Classify SL error between critical and non-critical types.
*
* @return true
in case of a critical error, otherwise false
*/
public boolean isCriticalError() {
return !ERRORCODES_ON_INFO_LEVEL.contains(code);
}
protected String localizeMessage(String msgId) {
return String.format("%d : %s", code, info);
}
}