Search in sources :

Example 1 with ExternalContextsService

use of org.jboss.as.naming.service.ExternalContextsService in project wildfly by wildfly.

the class NamingSubsystemAdd method performBoottime.

@SuppressWarnings("deprecation")
@Override
protected void performBoottime(OperationContext context, ModelNode operation, ModelNode model) {
    ROOT_LOGGER.activatingSubsystem();
    NamingContext.initializeNamingManager();
    final ServiceTarget target = context.getServiceTarget();
    // Create the java: namespace
    target.addService(ContextNames.JAVA_CONTEXT_SERVICE_NAME, new NamingStoreService()).setInitialMode(ServiceController.Mode.ACTIVE).install();
    // Create the Naming Service
    final NamingService namingService = new NamingService();
    target.addService(Capability.NAMING_STORE.getDefinition().getCapabilityServiceName(), namingService).addAliases(NamingService.SERVICE_NAME).addDependency(ContextNames.JAVA_CONTEXT_SERVICE_NAME, NamingStore.class, namingService.getNamingStore()).setInitialMode(ServiceController.Mode.ACTIVE).install();
    // Create the java:global namespace
    target.addService(ContextNames.GLOBAL_CONTEXT_SERVICE_NAME, new NamingStoreService()).setInitialMode(ServiceController.Mode.ACTIVE).install();
    // Create the java:jboss vendor namespace
    target.addService(ContextNames.JBOSS_CONTEXT_SERVICE_NAME, new NamingStoreService()).setInitialMode(ServiceController.Mode.ACTIVE).install();
    // Setup remote naming store
    // we always install the naming store, but we don't install the server unless it has been explicitly enabled
    target.addService(ContextNames.EXPORTED_CONTEXT_SERVICE_NAME, new NamingStoreService()).setInitialMode(ServiceController.Mode.ACTIVE).install();
    // add the default namespace context selector service
    DefaultNamespaceContextSelectorService defaultNamespaceContextSelectorService = new DefaultNamespaceContextSelectorService();
    target.addService(DefaultNamespaceContextSelectorService.SERVICE_NAME, defaultNamespaceContextSelectorService).addDependency(ContextNames.GLOBAL_CONTEXT_SERVICE_NAME, NamingStore.class, defaultNamespaceContextSelectorService.getGlobalNamingStore()).addDependency(ContextNames.JBOSS_CONTEXT_SERVICE_NAME, NamingStore.class, defaultNamespaceContextSelectorService.getJbossNamingStore()).addDependency(ContextNames.EXPORTED_CONTEXT_SERVICE_NAME, NamingStore.class, defaultNamespaceContextSelectorService.getRemoteExposedNamingStore()).setInitialMode(ServiceController.Mode.ACTIVE).install();
    target.addService(JndiViewExtensionRegistry.SERVICE_NAME, new JndiViewExtensionRegistry()).install();
    // create the subsystem's external context instance, and install related Service and DUP
    final ExternalContexts externalContexts = new ExternalContextsNavigableSet();
    target.addService(ExternalContextsService.SERVICE_NAME, new ExternalContextsService(externalContexts)).install();
    context.addStep(new AbstractDeploymentChainStep() {

        @Override
        protected void execute(DeploymentProcessorTarget processorTarget) {
            processorTarget.addDeploymentProcessor(NamingExtension.SUBSYSTEM_NAME, Phase.STRUCTURE, Phase.STRUCTURE_NAMING_EXTERNAL_CONTEXTS, new ExternalContextsProcessor(externalContexts));
            processorTarget.addDeploymentProcessor(NamingExtension.SUBSYSTEM_NAME, Phase.INSTALL, Phase.INSTALL_JNDI_DEPENDENCIES, new JndiNamingDependencyProcessor());
        }
    }, OperationContext.Stage.RUNTIME);
    if (context.hasOptionalCapability(UNDERTOW_HTTP_INVOKER_CAPABILITY_NAME, NamingService.CAPABILITY_NAME, null)) {
        HttpRemoteNamingServerService httpRemoteNamingServerService = new HttpRemoteNamingServerService();
        context.getServiceTarget().addService(HttpRemoteNamingServerService.SERVICE_NAME, httpRemoteNamingServerService).addDependency(context.getCapabilityServiceName(UNDERTOW_HTTP_INVOKER_CAPABILITY_NAME, PathHandler.class), PathHandler.class, httpRemoteNamingServerService.getPathHandlerInjectedValue()).addDependency(ContextNames.EXPORTED_CONTEXT_SERVICE_NAME, NamingStore.class, httpRemoteNamingServerService.getNamingStore()).install();
    }
}
Also used : NamingStore(org.jboss.as.naming.NamingStore) ExternalContextsProcessor(org.jboss.as.naming.deployment.ExternalContextsProcessor) HttpRemoteNamingServerService(org.jboss.as.naming.remote.HttpRemoteNamingServerService) ServiceTarget(org.jboss.msc.service.ServiceTarget) PathHandler(io.undertow.server.handlers.PathHandler) DefaultNamespaceContextSelectorService(org.jboss.as.naming.service.DefaultNamespaceContextSelectorService) ExternalContextsNavigableSet(org.jboss.as.naming.context.external.ExternalContextsNavigableSet) NamingStoreService(org.jboss.as.naming.service.NamingStoreService) JndiViewExtensionRegistry(org.jboss.as.naming.management.JndiViewExtensionRegistry) DeploymentProcessorTarget(org.jboss.as.server.DeploymentProcessorTarget) NamingService(org.jboss.as.naming.service.NamingService) ExternalContexts(org.jboss.as.naming.context.external.ExternalContexts) ExternalContextsService(org.jboss.as.naming.service.ExternalContextsService) AbstractDeploymentChainStep(org.jboss.as.server.AbstractDeploymentChainStep) JndiNamingDependencyProcessor(org.jboss.as.naming.deployment.JndiNamingDependencyProcessor)

Aggregations

PathHandler (io.undertow.server.handlers.PathHandler)1 NamingStore (org.jboss.as.naming.NamingStore)1 ExternalContexts (org.jboss.as.naming.context.external.ExternalContexts)1 ExternalContextsNavigableSet (org.jboss.as.naming.context.external.ExternalContextsNavigableSet)1 ExternalContextsProcessor (org.jboss.as.naming.deployment.ExternalContextsProcessor)1 JndiNamingDependencyProcessor (org.jboss.as.naming.deployment.JndiNamingDependencyProcessor)1 JndiViewExtensionRegistry (org.jboss.as.naming.management.JndiViewExtensionRegistry)1 HttpRemoteNamingServerService (org.jboss.as.naming.remote.HttpRemoteNamingServerService)1 DefaultNamespaceContextSelectorService (org.jboss.as.naming.service.DefaultNamespaceContextSelectorService)1 ExternalContextsService (org.jboss.as.naming.service.ExternalContextsService)1 NamingService (org.jboss.as.naming.service.NamingService)1 NamingStoreService (org.jboss.as.naming.service.NamingStoreService)1 AbstractDeploymentChainStep (org.jboss.as.server.AbstractDeploymentChainStep)1 DeploymentProcessorTarget (org.jboss.as.server.DeploymentProcessorTarget)1 ServiceTarget (org.jboss.msc.service.ServiceTarget)1