private ServiceMetaData getParentJaccPolicyBean(DeploymentUnit childDU) { DeploymentUnit parentDU = childDU.getParent(); while (parentDU != null) { ServiceMetaData parentJacc = (ServiceMetaData) parentDU.getAttachment(JACC_ATTACHMENT_NAME); if (parentJacc != null) return parentJacc; parentDU = parentDU.getParent(); } return null; }
public <T> T search(DeploymentUnit unit, String name, Class<T> expectedType) { DeploymentUnit parent = unit.getParent(); return (parent != null) ? parent.getAttachment(name, expectedType) : null; } }
public DeploymentUnit getParent() { DeploymentUnit parent = delegate.getParent(); return wrap(parent); }
protected String getObjectName(DeploymentUnit unit, RARDeploymentMetaData rdmd) { // TODO this is not needed String name = unit.getSimpleName(); unit = unit.getParent(); while (unit != null) { name = unit.getSimpleName() + "#" + name; unit = unit.getParent(); } return "jboss.jca:service=RARDeployment,name='" + name + "'"; }
/** * Get module unit. * * @param unit the current unit * @return unit containing Module, or exception if no such unit exists */ public static DeploymentUnit getModuleUnit(DeploymentUnit unit) { if (unit == null) throw new IllegalArgumentException("Null unit"); // group util per module DeploymentUnit moduleUnit = unit; while(moduleUnit != null && moduleUnit.isAttachmentPresent(Module.class) == false) moduleUnit = moduleUnit.getParent(); if (moduleUnit == null) throw new IllegalArgumentException("No module in unit: " + unit); return moduleUnit; }
/** * Get a named attachment, search ancestors * * @param unit the deployment unit * @param name the name of the attachment * @return the attachment or null if not present * @throws IllegalArgumentException for a null name */ public static Object searchAncestors(DeploymentUnit unit, String name) { Object attachment = null; while (attachment == null && unit != null) { attachment = unit.getAttachment(name); unit = unit.getParent(); } return attachment; }
private Set<U> findHandles(ScanningPlugin<T, U> plugin) { DeploymentUnit top = unit; while(top != null && top.isAttachmentPresent(Module.class) == false) top = top.getParent(); if (top == null) throw new IllegalArgumentException("No CL module: " + unit); Set<U> handles = new HashSet<U>(); recurse(top, plugin, handles, true); return handles; }
@Override protected void attachSwitchBoardBMD(DeploymentUnit deploymentUnit, BeanMetaData switchBoardBMD) { // add BMD to parent, since this is a component DU. and BMDDeployer doesn't pick up BMD from components! DeploymentUnit parentDU = deploymentUnit.getParent(); // add BMD to parent parentDU.addAttachment(BeanMetaData.class + ":" + switchBoardBMD.getName(), switchBoardBMD); }
/** * Qualify the object name with parent name just to avoid conflicts with deployments with the same name in multiple * archives */ private String getObjectName(DeploymentUnit unit) { String deploymentName = unit.getName(); DeploymentUnit parentDU = unit.getParent(); String parentDeploymentName = parentDU != null ? ",parent=\"" + parentDU.getSimpleName() + "\"" : ""; return BASE_OBJECT_NAME + "\"" + deploymentName + "\"" + parentDeploymentName; } }
public static String getGlobalBeanManagerPath(JavaEEModuleInformer moduleInformer, DeploymentUnit unit) { DeploymentUnit deploymentUnit = unit.isComponent() ? unit.getParent() : unit; String subcontexPathForBeanManager = getJndiSubcontexPathForBeanManager(moduleInformer, deploymentUnit); return "java:global/" + BEAN_MANAGER_GLOBAL_SUBCONTEXT + "/" + subcontexPathForBeanManager + "/BeanManager"; } }
/** * For a given DeploymentUnit instance return the shortname of the * parent .ear, if one exists, or null. * * @param di the module * @return .ear parent shortname, or null */ public static String findEarParent(DeploymentUnit di) { DeploymentUnit parent = di.getParent(); if (parent != null && parent.getSimpleName().endsWith(".ear")) { return parent.getSimpleName(); } else { return null; } } }
@Override protected void attachBarrier(DeploymentUnit deploymentUnit, Barrier switchBoard) { if (this.isSharedENC(deploymentUnit)) { DeploymentUnit parentDU = deploymentUnit.getParent(); parentDU.addAttachment(Barrier.class, switchBoard); } else { deploymentUnit.addAttachment(Barrier.class, switchBoard); } }
private String getJsr299InjectorMcBeanName(DeploymentUnit deploymentUnit) { if (!deploymentUnit.isComponent()) { return deploymentUnit.getName() + "_Jsr299BeanInjector"; } else { return deploymentUnit.getParent().getName() + "/" + deploymentUnit.getName() + "_Jsr299Injector"; } }
public void internalDeploy(DeploymentUnit unit) throws org.jboss.deployers.spi.DeploymentException { PolicyConfiguration pc = unit.getAttachment(PolicyConfiguration.class); if (pc == null) return; DeploymentUnit parent = unit.getParent(); if (parent == null) throw new IllegalStateException("Unit has not parent: " + unit); PolicyConfiguration parentPc = parent.getAttachment(PolicyConfiguration.class); try { if (parentPc != null && pc != parentPc) { parentPc.linkConfiguration(pc); } pc.commit(); } catch (PolicyContextException e) { throw new RuntimeException("Failed to commit PolicyConfiguration for unit: " + unit.getName(), e); } }
@Override public void undeploy(DeploymentUnit unit, BeanMetaData deployment) { BeanMetaDataDeployerPlugin plugin = deployedWithPlugin.remove(deployment.getName()); if (plugin == null || plugin.uninstallContext(controller, unit, deployment) == false) { ControllerContext context = controller.uninstall(deployment.getName()); removeContext(context, unit.getParent()); } // Remove any classloader metadata we added (not necessary if we clone above) ClassLoaderMetaData classLoader = deployment.getClassLoader(); if (classLoader instanceof DeploymentClassLoaderMetaData) deployment.setClassLoader(null); }
private void attachManagedConnectionFactories(DeploymentUnit unit, Collection<DataSourceDeploymentMetaData> datasourceDeployments) { DeploymentUnit nonComponentDU = unit.isComponent() ? unit.getParent() : unit; ManagedConnectionFactoryDeploymentGroup managedConnectionFactories = nonComponentDU.getAttachment(ManagedConnectionFactoryDeploymentGroup.class); if (managedConnectionFactories == null) { managedConnectionFactories = new ManagedConnectionFactoryDeploymentGroup(); } for (DataSourceDeploymentMetaData dataSourceDeployment : datasourceDeployments) { managedConnectionFactories.addManagedConnectionFactoryDeployment(dataSourceDeployment); } nonComponentDU.addAttachment(ManagedConnectionFactoryDeploymentGroup.class, managedConnectionFactories); }
public ArchiveDeployment newDeployment(DeploymentUnit unit) { try { DeploymentModelFactory factory = getDeploymentModelFactory(); ArchiveDeployment dep = (ArchiveDeployment)factory.newDeployment(unit.getSimpleName(), unit.getClassLoader()); if (unit.getParent() != null) { DeploymentUnit parentUnit = unit.getParent(); ArchiveDeployment parentDep = (ArchiveDeployment)factory.newDeployment(parentUnit.getSimpleName(), parentUnit.getClassLoader()); dep.setParent(parentDep); } return dep; } catch (Exception ex) { throw new WSFDeploymentException("Cannot load spi.deployment.Deployment class", ex); } }
public ArchiveDeployment newDeployment(DeploymentUnit unit) { try { DeploymentModelFactory factory = getDeploymentModelFactory(); ArchiveDeployment dep = (ArchiveDeployment)factory.newDeployment(unit.getSimpleName(), unit.getClassLoader()); if (unit.getParent() != null) { DeploymentUnit parentUnit = unit.getParent(); ArchiveDeployment parentDep = (ArchiveDeployment)factory.newDeployment(parentUnit.getSimpleName(), parentUnit.getClassLoader()); dep.setParent(parentDep); } return dep; } catch (Exception ex) { throw new WSFDeploymentException("Cannot load spi.deployment.Deployment class", ex); } }
public void undeploy(DeploymentUnit unit, ServiceMetaData deployment) { ObjectName name = deployment.getObjectName(); ControllerContext serviceContext = getControllerContext(name); if (serviceContext != null) removeContext(serviceContext, unit.getParent()); ServiceContext context = controller.getServiceContext(name); if (context != null) { stop(name); destroy(name); remove(name); } }