/*
 * Copyright (c) 2013, 2014 Sacred Scripture Foundation.
 * "All scripture is given by inspiration of God, and is profitable for
 * doctrine, for reproof, for correction, for instruction in righteousness:
 * That the man of God may be perfect, throughly furnished unto all good
 * works." (2 Tim 3:16-17)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.sacredscripturefoundation.commons.entity;

import org.sacredscripturefoundation.commons.BusinessException;

/**
 * The <code>DuplicateEntityException</code> class is thrown when the system
 * tries to insert a new resource into the system which already exists by the
 * specified identifier.
 *
 * @author Paul Benedict
 * @since 1.0
 */
public class DuplicateEntityException extends BusinessException {

    private Object extraInformation;

    /**
     * Constructs a new exception.
     */
    public DuplicateEntityException() {
        super();
    }

    /**
     * Constructs a new exception and specifies the root cause.
     */
    public DuplicateEntityException(Throwable cause) {
        super(cause);
    }

    /**
     * Retrieves the optional information that further indicates the reason for
     * this exception.
     *
     * @return the extra information or {@code null}
     * @see #setExtraInformation(Object)
     */
    public Object getExtraInformation() {
        return extraInformation;
    }

    /**
     * Stores the new extra information of this exception
     *
     * @param extraInformation the extra information
     * @see #getExtraInformation()
     */
    public void setExtraInformation(Object extraInformation) {
        this.extraInformation = extraInformation;
    }

}

@@ -1408,151 +1408,782 @@
    *
-/%0D%0A    public DuplicateEntityException() %7B%0D%0A        super();%0D%0A    %7D%0D%0A%0D%0A    /**%0D%0A     * Constructs a new exception and specifies the root cause.
+%0D%0A     * @see #DuplicateEntityException(Throwable)%0D%0A     * @see #DuplicateEntityException(String, Object...)%0D%0A     */%0D%0A    public DuplicateEntityException() %7B%0D%0A        super();%0D%0A    %7D%0D%0A%0D%0A    /**%0D%0A     * Constructs a new exception with the specified message template and%0D%0A     * arguments.%0D%0A     *%0D%0A     * @param message the message template%0D%0A     * @param args the message arguments%0D%0A     * @see #DuplicateEntityException()%0D%0A     * @see #DuplicateEntityException(Throwable)%0D%0A     */%0D%0A    public DuplicateEntityException(String message, Object... args) %7B%0D%0A        super(message, args);%0D%0A    %7D%0D%0A%0D%0A    /**%0D%0A     * Constructs a new exception and specifies the root cause.%0D%0A     *%0D%0A     * @see #DuplicateEntityException()%0D%0A     * @see #DuplicateEntityException(String, Object...)
 %0D%0A  

Add message formatting in exception