public void addDeploymentUnit(DeploymentUnit deploymentUnit)
{
if (deploymentUnit == null)
throw new IllegalArgumentException("Null deployment unit");
ClassLoaderMetaData metadata = deploymentUnit.getAttachment(ClassLoaderMetaData.class);
if (metadata == null)
{
// REVIEW: There should probably be a warning here?
metadata = new ClassLoaderMetaData();
metadata.setName(deploymentUnit.getName());
metadata.setExportAll(ExportAll.NON_EMPTY);
metadata.setImportAll(true);
metadata.setVersion(Version.DEFAULT_VERSION);
deploymentUnit.addAttachment(ClassLoaderMetaData.class, metadata);
}
String domainName = metadata.getDomain();
if (domainName == null)
{
domainName = ClassLoaderSystem.DEFAULT_DOMAIN_NAME;
metadata.setDomain(domainName);
}
Domain domain;
synchronized (domains)
{