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: *
17: */
18:
19: package org.apache.tools.ant.taskdefs.optional.ejb;
20:
21: import javax.xml.parsers.SAXParser;
22: import org.apache.tools.ant.BuildException;
23: import org.apache.tools.ant.Task;
24:
25: /**
26: * The interface to implement for deployment tools.
27: */
28: public interface EJBDeploymentTool {
29: /**
30: * Process a deployment descriptor, generating the necessary vendor specific
31: * deployment files.
32: *
33: * @param descriptorFilename the name of the deployment descriptor
34: * @param saxParser a SAX parser which can be used to parse the deployment descriptor.
35: * @throws BuildException if there is an error.
36: */
37: void processDescriptor(String descriptorFilename,
38: SAXParser saxParser) throws BuildException;
39:
40: /**
41: * Called to validate that the tool parameters have been configured.
42: * @throws BuildException if there is an error.
43: */
44: void validateConfigured() throws BuildException;
45:
46: /**
47: * Set the task which owns this tool
48: * @param task the task.
49: */
50: void setTask(Task task);
51:
52: /**
53: * Configure this tool for use in the ejbjar task.
54: * @param config contains configuration state.
55: */
56: void configure(EjbJar.Config config);
57: }
|