From 8019224c8d595fdae3430cd9f22f1027a36d47ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Richard=20Op=C3=A1lka?= Date: Mon, 12 Nov 2018 09:12:50 +0100 Subject: [PATCH] [WFLY-11298] Refactoring - eliminating ServiceBuilder.addDependency(ServiceName) method usages in weld subsystem. --- .../CdiBeanValidationFactoryProcessor.java | 11 ++++++----- .../as/weld/deployment/WeldClassIntrospector.java | 9 +++++---- .../WeldComponentIntegrationProcessor.java | 13 +++++++------ .../processors/WeldDeploymentCleanupProcessor.java | 4 ++-- .../processors/WeldDeploymentProcessor.java | 10 +++++----- .../TransactionsBootstrapDependencyInstaller.java | 9 +++++---- 6 files changed, 30 insertions(+), 26 deletions(-) diff --git a/weld/bean-validation/src/main/java/org/jboss/as/weld/deployment/processor/CdiBeanValidationFactoryProcessor.java b/weld/bean-validation/src/main/java/org/jboss/as/weld/deployment/processor/CdiBeanValidationFactoryProcessor.java index 12ce352a04dd..7cceaa84f5cd 100644 --- a/weld/bean-validation/src/main/java/org/jboss/as/weld/deployment/processor/CdiBeanValidationFactoryProcessor.java +++ b/weld/bean-validation/src/main/java/org/jboss/as/weld/deployment/processor/CdiBeanValidationFactoryProcessor.java @@ -32,6 +32,7 @@ import org.jboss.as.weld.CdiValidatorFactoryService; import org.jboss.as.weld.ServiceNames; import org.jboss.msc.inject.CastingInjector; +import org.jboss.msc.service.ServiceBuilder; import org.jboss.msc.service.ServiceName; import org.jboss.msc.service.ServiceTarget; @@ -57,11 +58,11 @@ public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitPro final ServiceTarget serviceTarget = phaseContext.getServiceTarget(); final ServiceName serviceName = deploymentUnit.getServiceName().append(CdiValidatorFactoryService.SERVICE_NAME); final CdiValidatorFactoryService cdiValidatorFactoryService = new CdiValidatorFactoryService(deploymentUnit); - serviceTarget.addService(serviceName, cdiValidatorFactoryService) - .addDependency(ServiceNames.beanManagerServiceName(deploymentUnit), - new CastingInjector(cdiValidatorFactoryService.getBeanManagerInjector(), BeanManager.class)) - .addDependency(weldStartService) - .install(); + final ServiceBuilder sb = serviceTarget.addService(serviceName, cdiValidatorFactoryService); + sb.addDependency(ServiceNames.beanManagerServiceName(deploymentUnit), + new CastingInjector(cdiValidatorFactoryService.getBeanManagerInjector(), BeanManager.class)); + sb.requires(weldStartService); + sb.install(); } @Override diff --git a/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/WeldClassIntrospector.java b/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/WeldClassIntrospector.java index 17f6e83913f4..555b8d5f2c73 100644 --- a/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/WeldClassIntrospector.java +++ b/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/WeldClassIntrospector.java @@ -21,6 +21,7 @@ import org.jboss.as.weld.services.BeanManagerService; import org.jboss.as.weld.util.Utils; import org.jboss.msc.service.Service; +import org.jboss.msc.service.ServiceBuilder; import org.jboss.msc.service.ServiceName; import org.jboss.msc.service.ServiceTarget; import org.jboss.msc.service.StartContext; @@ -43,10 +44,10 @@ public class WeldClassIntrospector implements EEClassIntrospector, Service componentInt final WeldComponentService weldComponentService = new WeldComponentService(componentClass, beanName, interceptorClasses, classLoader, beanDeploymentArchiveId, description.isCDIInterceptorEnabled(), description, isComponentWithView(description, componentIntegrators)); final ServiceBuilder builder = target.addService(serviceName, weldComponentService) - .addDependency(weldServiceName, WeldBootstrapService.class, weldComponentService.getWeldContainer()).addDependency(weldStartService); + .addDependency(weldServiceName, WeldBootstrapService.class, weldComponentService.getWeldContainer()); + builder.requires(weldStartService); configuration.setInstanceFactory(WeldManagedReferenceFactory.INSTANCE); configuration.getStartDependencies().add(new DependencyConfigurator() { @Override public void configureDependency(final ServiceBuilder serviceBuilder, ComponentStartService service) throws DeploymentUnitProcessingException { - serviceBuilder.addDependency(serviceName); + serviceBuilder.requires(serviceName); } }); @@ -248,10 +249,10 @@ protected void run(Object instance) { private static ServiceName addWeldInterceptorBindingService(final ServiceTarget target, final ComponentConfiguration configuration, final Class componentClass, final String beanName, final ServiceName weldServiceName, final ServiceName weldStartService, final String beanDeploymentArchiveId, final ComponentInterceptorSupport componentInterceptorSupport) { final WeldInterceptorBindingsService weldInterceptorBindingsService = new WeldInterceptorBindingsService(beanDeploymentArchiveId, beanName, componentClass, componentInterceptorSupport); ServiceName bindingServiceName = configuration.getComponentDescription().getServiceName().append(WeldInterceptorBindingsService.SERVICE_NAME); - target.addService(bindingServiceName, weldInterceptorBindingsService) - .addDependency(weldServiceName, WeldBootstrapService.class, weldInterceptorBindingsService.getWeldContainer()) - .addDependency(weldStartService) - .install(); + final ServiceBuilder sb = target.addService(bindingServiceName, weldInterceptorBindingsService); + sb.addDependency(weldServiceName, WeldBootstrapService.class, weldInterceptorBindingsService.getWeldContainer()); + sb.requires(weldStartService); + sb.install(); return bindingServiceName; } diff --git a/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentCleanupProcessor.java b/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentCleanupProcessor.java index 27402d8e7e85..70dfe1cd44bc 100644 --- a/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentCleanupProcessor.java +++ b/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentCleanupProcessor.java @@ -103,8 +103,8 @@ public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitPro ServiceBuilder weldStartCompletionServiceBuilder = serviceTarget .addService(weldStartCompletionServiceName, weldStartCompletionService) .addDependency(weldBootstrapServiceName, WeldBootstrapService.class, weldStartCompletionService.getBootstrap()) - .addDependency(Services.JBOSS_SERVER_EXECUTOR, ExecutorService.class, weldStartCompletionService.getServerExecutor()) - .addDependency(weldStartServiceName); + .addDependency(Services.JBOSS_SERVER_EXECUTOR, ExecutorService.class, weldStartCompletionService.getServerExecutor()); + weldStartCompletionServiceBuilder.requires(weldStartServiceName); weldStartCompletionServiceBuilder.install(); } diff --git a/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentProcessor.java b/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentProcessor.java index 099af46e0c70..55a60666ad7f 100644 --- a/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentProcessor.java +++ b/weld/subsystem/src/main/java/org/jboss/as/weld/deployment/processors/WeldDeploymentProcessor.java @@ -237,7 +237,7 @@ public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitPro // add the weld service final ServiceBuilder weldBootstrapServiceBuilder = serviceTarget.addService(weldBootstrapServiceName, weldBootstrapService); - weldBootstrapServiceBuilder.addDependency(TCCLSingletonService.SERVICE_NAME); + weldBootstrapServiceBuilder.requires(TCCLSingletonService.SERVICE_NAME); weldBootstrapServiceBuilder.addDependency(WeldExecutorServices.SERVICE_NAME, ExecutorServices.class, weldBootstrapService.getExecutorServices()); weldBootstrapServiceBuilder.addDependency(Services.JBOSS_SERVER_EXECUTOR, ExecutorService.class, weldBootstrapService.getServerExecutor()); @@ -267,24 +267,24 @@ public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitPro ServiceBuilder startService = serviceTarget.addService(weldStartServiceName, weldStartService) .addDependency(weldBootstrapServiceName, WeldBootstrapService.class, weldStartService.getBootstrap()); for (final ServiceName dependency : dependencies) { - startService.addDependency(dependency); + startService.requires(dependency); } // make sure JNDI bindings are up - startService.addDependency(JndiNamingDependencyProcessor.serviceName(deploymentUnit)); + startService.requires(JndiNamingDependencyProcessor.serviceName(deploymentUnit)); final CapabilityServiceSupport capabilities = deploymentUnit.getAttachment(Attachments.CAPABILITY_SERVICE_SUPPORT); boolean tx = capabilities.hasCapability("org.wildfly.transactions"); // [WFLY-5232] for (final ServiceName jndiSubsystemDependency : getJNDISubsytemDependencies(tx)) { - startService.addDependency(jndiSubsystemDependency); + startService.requires(jndiSubsystemDependency); } final EarMetaData earConfig = deploymentUnit.getAttachment(org.jboss.as.ee.structure.Attachments.EAR_METADATA); if (earConfig == null || !earConfig.getInitializeInOrder()) { // in-order install of sub-deployments may result in service dependencies deadlocks if the jndi dependency services of subdeployments are added as dependencies for (DeploymentUnit sub : subDeployments) { - startService.addDependency(JndiNamingDependencyProcessor.serviceName(sub)); + startService.requires(JndiNamingDependencyProcessor.serviceName(sub)); } } diff --git a/weld/transactions/src/main/java/org/jboss/as/weld/deployment/processor/TransactionsBootstrapDependencyInstaller.java b/weld/transactions/src/main/java/org/jboss/as/weld/deployment/processor/TransactionsBootstrapDependencyInstaller.java index fffb8174aed1..31fd1d03ec8c 100644 --- a/weld/transactions/src/main/java/org/jboss/as/weld/deployment/processor/TransactionsBootstrapDependencyInstaller.java +++ b/weld/transactions/src/main/java/org/jboss/as/weld/deployment/processor/TransactionsBootstrapDependencyInstaller.java @@ -25,6 +25,7 @@ import org.jboss.as.weld.ServiceNames; import org.jboss.as.weld.services.bootstrap.WeldTransactionServices; import org.jboss.as.weld.spi.BootstrapDependencyInstaller; +import org.jboss.msc.service.ServiceBuilder; import org.jboss.msc.service.ServiceName; import org.jboss.msc.service.ServiceTarget; @@ -40,10 +41,10 @@ public ServiceName install(ServiceTarget serviceTarget, DeploymentUnit deploymen final ServiceName weldTransactionServiceName = deploymentUnit.getServiceName().append(WeldTransactionServices.SERVICE_NAME); - serviceTarget.addService(weldTransactionServiceName, weldTransactionServices) - // Ensure the local transaction provider is started before we start - .addDependency(ServiceNames.capabilityServiceName(deploymentUnit, "org.wildfly.transactions.global-default-local-provider")) - .install(); + final ServiceBuilder sb = serviceTarget.addService(weldTransactionServiceName, weldTransactionServices); + // Ensure the local transaction provider is started before we start + sb.requires(ServiceNames.capabilityServiceName(deploymentUnit, "org.wildfly.transactions.global-default-local-provider")); + sb.install(); return weldTransactionServiceName; }