DecoderException.java

  1. /*
  2.  * Licensed to the Apache Software Foundation (ASF) under one or more
  3.  * contributor license agreements.  See the NOTICE file distributed with
  4.  * this work for additional information regarding copyright ownership.
  5.  * The ASF licenses this file to You under the Apache License, Version 2.0
  6.  * (the "License"); you may not use this file except in compliance with
  7.  * the License.  You may obtain a copy of the License at
  8.  *
  9.  *      https://www.apache.org/licenses/LICENSE-2.0
  10.  *
  11.  * Unless required by applicable law or agreed to in writing, software
  12.  * distributed under the License is distributed on an "AS IS" BASIS,
  13.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14.  * See the License for the specific language governing permissions and
  15.  * limitations under the License.
  16.  */

  17. package org.apache.commons.codec;

  18. /**
  19.  * Thrown when there is a failure condition during the decoding process. This exception is thrown when a {@link Decoder}
  20.  * encounters a decoding specific exception such as invalid data, or characters outside of the expected range.
  21.  */
  22. public class DecoderException extends Exception {

  23.     /**
  24.      * Declares the Serial Version Uid.
  25.      *
  26.      * @see <a href="https://c2.com/cgi/wiki?AlwaysDeclareSerialVersionUid">Always Declare Serial Version Uid</a>
  27.      */
  28.     private static final long serialVersionUID = 1L;

  29.     /**
  30.      * Constructs a new exception with {@code null} as its detail message. The cause is not initialized, and may
  31.      * subsequently be initialized by a call to {@link #initCause}.
  32.      *
  33.      * @since 1.4
  34.      */
  35.     public DecoderException() {
  36.     }

  37.     /**
  38.      * Constructs a new exception with the specified detail message. The cause is not initialized, and may subsequently
  39.      * be initialized by a call to {@link #initCause}.
  40.      *
  41.      * @param message
  42.      *            The detail message which is saved for later retrieval by the {@link #getMessage()} method.
  43.      */
  44.     public DecoderException(final String message) {
  45.         super(message);
  46.     }

  47.     /**
  48.      * Constructs a new exception with the specified detail message and cause.
  49.      * <p>
  50.      * Note that the detail message associated with {@code cause} is not automatically incorporated into this
  51.      * exception's detail message.
  52.      * </p>
  53.      *
  54.      * @param message
  55.      *            The detail message which is saved for later retrieval by the {@link #getMessage()} method.
  56.      * @param cause
  57.      *            The cause which is saved for later retrieval by the {@link #getCause()} method. A {@code null}
  58.      *            value is permitted, and indicates that the cause is nonexistent or unknown.
  59.      * @since 1.4
  60.      */
  61.     public DecoderException(final String message, final Throwable cause) {
  62.         super(message, cause);
  63.     }

  64.     /**
  65.      * Constructs a new exception with the specified cause and a detail message of {@code (cause==null ?
  66.      * null : cause.toString())} (which typically contains the class and detail message of {@code cause}).
  67.      * This constructor is useful for exceptions that are little more than wrappers for other throwables.
  68.      *
  69.      * @param cause
  70.      *            The cause which is saved for later retrieval by the {@link #getCause()} method. A {@code null}
  71.      *            value is permitted, and indicates that the cause is nonexistent or unknown.
  72.      * @since 1.4
  73.      */
  74.     public DecoderException(final Throwable cause) {
  75.         super(cause);
  76.     }
  77. }