01: /**
02: * Copyright 2002-2004 The Apache Software Foundation
03: *
04: * Licensed under the Apache License, Version 2.0 (the "License");
05: * you may not use this file except in compliance with the License.
06: * You may obtain a copy of the License at
07: *
08: * http://www.apache.org/licenses/LICENSE-2.0
09: *
10: * Unless required by applicable law or agreed to in writing, software
11: * distributed under the License is distributed on an "AS IS" BASIS,
12: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13: * See the License for the specific language governing permissions and
14: * limitations under the License.
15: *
16: */package org.objectweb.jonas.ant;
17:
18: import org.apache.tools.ant.BuildException;
19:
20: /**
21: * An interface for vendor-specific "hot" deployment tools.
22: * @see org.apache.tools.ant.taskdefs.optional.j2ee.AbstractHotDeploymentTool
23: * @see org.apache.tools.ant.taskdefs.optional.j2ee.ServerDeploy
24: */
25: public interface HotDeploymentTool {
26:
27: /**
28: * The delete action String
29: */
30: String ACTION_DELETE = "delete";
31:
32: /**
33: * The deploy action String
34: */
35: String ACTION_DEPLOY = "deploy";
36:
37: /**
38: * The list action String
39: */
40: String ACTION_LIST = "list";
41:
42: /**
43: * The undeploy action String
44: */
45: String ACTION_UNDEPLOY = "undeploy";
46:
47: /**
48: * The update action String
49: */
50: String ACTION_UPDATE = "update";
51:
52: /**
53: * Validates the passed in attributes.
54: * @exception org.apache.tools.ant.BuildException if the attributes are
55: * invalid or incomplete.
56: */
57: void validateAttributes() throws BuildException;
58:
59: /**
60: * Perform the actual deployment.
61: * @exception org.apache.tools.ant.BuildException if the attributes are
62: * invalid or incomplete.
63: */
64: void deploy() throws BuildException;
65:
66: /**
67: * Sets the parent task.
68: * @param task A ServerDeploy object representing the parent task.
69: */
70: void setTask(ServerDeploy task);
71: }
|