1 /** 2 * 3 * Copyright 2005 The Apache Software Foundation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://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.geronimo.kernel.config; 18 19 import org.apache.geronimo.kernel.repository.Artifact; 20 21 /** 22 * @version $Rev: 410741 $ $Date: 2006-05-31 21:35:48 -0700 (Wed, 31 May 2006) $ 23 */ 24 public class LifecycleException extends Exception { 25 private final String command; 26 private final Artifact configurationId; 27 private final LifecycleResults lifecycleResults; 28 29 public LifecycleException(String command, Artifact configurationId, Throwable cause) { 30 this(command, configurationId, new LifecycleResults(), cause); 31 lifecycleResults.addFailed(configurationId, cause); 32 } 33 34 public LifecycleException(String command, Artifact configurationId, LifecycleResults lifecycleResults) { 35 this(command, configurationId, lifecycleResults, lifecycleResults.getFailedCause(configurationId)); 36 } 37 38 public LifecycleException(String command, Artifact configurationId, LifecycleResults lifecycleResults, Throwable cause) { 39 super(command + " of " + configurationId + " failed", cause); 40 this.command = command; 41 this.configurationId = configurationId; 42 this.lifecycleResults = lifecycleResults; 43 } 44 45 public String getCommand() { 46 return command; 47 } 48 49 public Artifact getConfigurationId() { 50 return configurationId; 51 } 52 53 public LifecycleResults getLifecycleResults() { 54 return lifecycleResults; 55 } 56 }