001 /***************************************************************************** 002 * Copyright (c) PicoContainer Organization. All rights reserved. * 003 * ------------------------------------------------------------------------- * 004 * The software in this package is published under the terms of the BSD * 005 * style license a copy of which has been included with this distribution in * 006 * the LICENSE.txt file. * 007 * * 008 * Idea by Rachel Davies, Original code by Aslak Hellesoy and Paul Hammant * 009 *****************************************************************************/ 010 011 package org.picocontainer; 012 013 /** 014 * Subclass of {@link PicoException} that is thrown when there is: 015 * - a problem initializing the container 016 * - a cyclic dependency between components occurs. 017 * - problem adding a component 018 * - a request for a component that is ambiguous. 019 * 020 */ 021 @SuppressWarnings("serial") 022 public class PicoCompositionException extends PicoException { 023 /** 024 * Construct a new exception with no cause and the specified detail message. Note modern JVMs may still track the 025 * exception that caused this one. 026 * 027 * @param message the message detailing the exception. 028 */ 029 public PicoCompositionException(final String message) { 030 super(message); 031 } 032 033 /** 034 * Construct a new exception with the specified cause and no detail message. 035 * 036 * @param cause the exception that caused this one. 037 */ 038 public PicoCompositionException(final Throwable cause) { 039 super(cause); 040 } 041 042 /** 043 * Construct a new exception with the specified cause and the specified detail message. 044 * 045 * @param message the message detailing the exception. 046 * @param cause the exception that caused this one. 047 */ 048 public PicoCompositionException(final String message, final Throwable cause) { 049 super(message, cause); 050 } 051 }