1 /* 2 * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package jdk.security.jarsigner; 27 28 /** 29 * This exception is thrown when {@link JarSigner#sign} fails. 30 * 31 * @since 1.9 32 */ 33 @jdk.Exported 34 public class JarSignerException extends Exception { 35 36 public static enum ErrorCode { 37 /** An I/O error occurs. */ 38 IO_ERROR, 39 /** An invalid name is set. */ 40 NAME_ERROR, 41 /** An unspecified error. */ 42 OTHER_ERROR, 43 /** The signer's key or certificate chain is invalid. */ 44 SIGNER_ERROR, 45 /** The signing process fails. */ 46 SIGNING_ERROR, 47 /** The TSA signing process fails. */ 48 TSA_ERROR, 49 } 50 51 private static final long serialVersionUID = 4299579086960598534L; 52 53 private final ErrorCode code; 54 55 /** 56 * Returns the error code. 57 * 58 * @return the error code. 59 */ 60 public ErrorCode getCode() { 61 return code; 62 } 63 64 /** 65 * Creates a {@code JarSignerException} object. 66 * 67 * @param code the error code. 68 * @param cause the cause, if exists. 69 */ 70 public JarSignerException(ErrorCode code, Throwable cause) { 71 this.code = code; 72 initCause(cause); 73 } 74 } 75