KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > deployment > deploy > spi > DeploymentManager


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23
24 /*
25  * DeploymentManager.java
26  *
27  * Created on April 21, 2004, 9:44 AM
28  */

29
30 package com.sun.enterprise.deployment.deploy.spi;
31
32 import java.io.IOException JavaDoc;
33 import java.net.URI JavaDoc;
34 import javax.enterprise.deploy.spi.Target JavaDoc;
35 import javax.enterprise.deploy.spi.status.ProgressObject JavaDoc;
36
37 import com.sun.enterprise.deployment.deploy.shared.Archive;
38 import com.sun.enterprise.deployment.deploy.shared.WritableArchive;
39
40 /**
41  *
42  * @author dochez
43  */

44 public interface DeploymentManager
45     extends javax.enterprise.deploy.spi.DeploymentManager JavaDoc {
46     
47    /**
48     * The distribute method performs three tasks; it validates the
49     * deployment configuration data, generates all container specific
50     * classes and interfaces, and moves the fully baked archive to
51     * the designated deployment targets.
52     *
53     * @param targetList A list of server targets the user is specifying
54     * this application be deployed to.
55     * @param moduleArchive The abstraction for the application
56     * archive to be disrtibuted.
57     * @param deploymentPlan The archive containing the deployment
58     * configuration information associated with
59     * this application archive.
60     * @param deploymentOptions is a JavaBeans compliant component
61     * containing all deployment options for this deployable
62     * unit. This object must be created using the
63     * BeanInfo instance returned by
64     * DeploymentConfiguration.getDeploymentOptions
65     * @throws IllegalStateException is thrown when the method is
66     * called when running in disconnected mode.
67     * @return ProgressObject an object that tracks and reports the
68     * status of the distribution process.
69     *
70     */

71
72     public ProgressObject JavaDoc distribute(Target JavaDoc[] targetList,
73            Archive moduleArchive, Archive deploymentPlan,
74            Object JavaDoc deploymentOptions)
75            throws IllegalStateException JavaDoc;
76     
77     /**
78      * Creates a new instance of WritableArchive which can be used to
79      * store application elements in a layout that can be directly used by
80      * the application server. Implementation of this method should carefully
81      * return the appropriate implementation of the interface that suits
82      * the server needs and provide the fastest deployment time.
83      * An archive may already exist at the location and elements may be
84      * read but not changed or added depending on the underlying medium.
85      * @param path the directory in which to create this archive if local
86      * storage is a possibility.
87      * @param name is the desired name for the archive
88      * @return the writable archive instance
89      */

90     public WritableArchive getArchive(java.net.URI JavaDoc path, String JavaDoc name)
91         throws IOException JavaDoc;
92
93 }
94
Popular Tags