All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.enterprise.deploy.spi.TargetModuleID Maven / Gradle / Ivy

There is a newer version: 8.0-6
Show newest version
/*
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *  http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 */

//
// This source code implements specifications defined by the Java
// Community Process. In order to remain compliant with the specification
// DO NOT add / change / or delete method signatures!
//

package javax.enterprise.deploy.spi;

/**
 * A TargetModuleID interface represents a unique identifier for a deployed
 * application module.  A deployable application module can be an EAR, JAR, WAR or
 * RAR file.  A TargetModuleID can represent a root module or a child module.  A
 * root module TargetModuleID has no parent.  It represents a deployed EAR file or
 * standalone module.  A child module TargetModuleID represents a deployed sub
 * module of a J2EE application.  A child TargetModuleID has only one parent, the
 * super module it was bundled and deployed with.  The identifier consists of the
 * target name and the unique identifier for the deployed application module.
 *
 * @version $Rev: 467553 $ $Date: 2006-10-24 21:01:51 -0700 (Tue, 24 Oct 2006) $
 */
public interface TargetModuleID {
    /**
     * Retrieve the target server that this module was deployed to.
     *
     * @return an object representing a server target.
     */
    public Target getTarget();

    /**
     * Retrieve the id assigned to represent the deployed module.
     */
    public String getModuleID();

    /**
     * If this TargetModulID represents a web module retrieve the URL for it.
     *
     * @return the URL of a web module or null if the module is not a web module.
     */
    public String getWebURL();

    /**
     * Retrieve the identifier representing the deployed module.
     */
    public String toString();

    /**
     * Retrieve the identifier of the parent object of this deployed module.  If
     * there is no parent then this is the root object deployed.  The root could
     * represent an EAR file or it could be a stand alone module that was deployed.
     *
     * @return the TargetModuleID of the parent of this object. A null
     *         value means this module is the root object deployed.
     */
    public TargetModuleID getParentTargetModuleID();

    /**
     * Retrieve a list of identifiers of the children of this deployed module.
     *
     * @return a list of TargetModuleIDs identifying the childern of this object.
     *         A null value means this module has no children
     */
    public TargetModuleID[] getChildTargetModuleID();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy