javax.enterprise.deploy.shared.factories

Class DeploymentFactoryManager


public final class DeploymentFactoryManager
extends java.lang.Object

The DeploymentFactoryManager class is a central registry for J2EE DeploymentFactory objects. The DeploymentFactoryManager retains references to DeploymentFactory objects loaded by a tool. A DeploymentFactory object provides a reference to a DeploymentManager. The DeploymentFactoryManager has been implemented as a singleton. A tool gets a reference to the DeploymentFactoryManager via the getInstance method. The DeploymentFactoryManager can return two types of DeploymentManagers, a connected DeploymentManager and a disconnected DeploymentManager. The connected DeploymentManager provides access to any product resources that may be required for configurations and deployment. The method to retrieve a connected DeploymentManager is getDeploymentManager. This method provides parameters for user name and password that the product may require for user authentication. A disconnected DeploymentManager does not provide access to a running J2EE product. The method to retrieve a disconnected DeploymentManager is getDisconnectedDeploymentManager. A disconnected DeploymentManager does not need user authentication information.

Method Summary

DeploymentFactory[]
getDeploymentFactories()
Retrieve the lists of currently registered DeploymentFactories.
DeploymentManager
getDeploymentManager(String uri, String username, String password)
Retrieves a DeploymentManager instance to use for deployment.
DeploymentManager
getDisconnectedDeploymentManager(String uri)
Return a disconnected DeploymentManager instance.
static DeploymentFactoryManager
getInstance()
Retrieve the Singleton DeploymentFactoryManager
void
registerDeploymentFactory(DeploymentFactory factory)
Registers a DeploymentFactory so it will be able to handle requests.

Method Details

getDeploymentFactories

public DeploymentFactory[] getDeploymentFactories()
Retrieve the lists of currently registered DeploymentFactories.
Returns:
the list of DeploymentFactory objects or an empty array if there are none.

getDeploymentManager

public DeploymentManager getDeploymentManager(String uri,
                                              String username,
                                              String password)
            throws DeploymentManagerCreationException
Retrieves a DeploymentManager instance to use for deployment. The caller provides a URI and optional username and password, and all registered DeploymentFactories will be checked. The first one to understand the URI provided will attempt to initiate a server connection and return a ready DeploymentManager instance.
Parameters:
uri - The uri to check
username - An optional username (may be null if no authentication is required for this platform).
password - An optional password (may be null if no authentication is required for this platform).
Returns:
A ready DeploymentManager instance.
Throws:
DeploymentManagerCreationException - Occurs when the factory appropriate to the specified URI was unable to initialize a DeploymentManager instance (server down, unable to authenticate, etc.).

getDisconnectedDeploymentManager

public DeploymentManager getDisconnectedDeploymentManager(String uri)
            throws DeploymentManagerCreationException
Return a disconnected DeploymentManager instance.
Parameters:
uri - identifier of the disconnected DeploymentManager to return.
Returns:
A DeploymentManager instance.
Throws:
DeploymentManagerCreationException - occurs if the DeploymentManager could not be created.

getInstance

public static DeploymentFactoryManager getInstance()
Retrieve the Singleton DeploymentFactoryManager
Returns:
DeploymentFactoryManager instance

registerDeploymentFactory

public void registerDeploymentFactory(DeploymentFactory factory)
Registers a DeploymentFactory so it will be able to handle requests.