01: /**
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * 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: */package org.apache.geronimo.deployment.cli;
17:
18: import java.io.File;
19: import java.io.PrintWriter;
20:
21: import javax.enterprise.deploy.spi.DeploymentManager;
22: import javax.enterprise.deploy.spi.Target;
23: import javax.enterprise.deploy.spi.status.ProgressObject;
24:
25: import org.apache.geronimo.common.DeploymentException;
26: import jline.ConsoleReader;
27:
28: /**
29: * The CLI deployer logic to deploy (distribute plus start).
30: *
31: * @version $Rev: 595732 $ $Date: 2007-11-16 08:46:15 -0800 (Fri, 16 Nov 2007) $
32: */
33: public class CommandDeploy extends CommandDistribute {
34:
35: protected String getAction() {
36: return "Deployed";
37: }
38:
39: protected ProgressObject runCommand(DeploymentManager mgr,
40: ConsoleReader out, boolean inPlace, Target[] tlist,
41: File module, File plan) throws DeploymentException {
42: ProgressObject po = super .runCommand(mgr, out, inPlace, tlist,
43: module, plan);
44: waitForProgress(out, po);
45: if (po.getDeploymentStatus().isFailed()) {
46: throw new DeploymentException("Unable to distribute "
47: + (module == null ? plan.getName() : module
48: .getName()) + ": "
49: + po.getDeploymentStatus().getMessage());
50: }
51: return mgr.start(po.getResultTargetModuleIDs());
52: }
53:
54: }
|