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 }