Package org.jboss.as.clustering.impl

Examples of org.jboss.as.clustering.impl.CoreGroupCommunicationService$ClusterNodeFactoryImpl


    @Override
    public void addDependencies(ServiceTarget target, ServiceBuilder<?> builder) {
        ServiceName groupCacheServiceName = CacheService.getServiceName(this.cacheContainerName, this.beanCacheName);
        // AS7-3906 Ensure that the cache manager's rpc dispatcher starts before GroupCommunicationService's
        new CoreGroupCommunicationService(SCOPE_ID).build(target, this.cacheContainerName).addDependency(groupCacheServiceName).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
        new SharedLocalYieldingClusterLockManagerService(this.cacheContainerName).build(target).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
        builder.addDependency(groupCacheServiceName, Cache.class, this.groupCache);
        builder.addDependency(SharedLocalYieldingClusterLockManagerService.getServiceName(this.cacheContainerName), SharedLocalYieldingClusterLockManager.class, this.lockManager);

        ServiceName registryServiceName = ClusteredBackingCacheEntryStoreSourceService.getClientMappingRegistryServiceName(this.cacheContainerName);
View Full Code Here


        ExtendedCacheManager(EmbeddedCacheManager container) {
            super(container, CacheContainer.DEFAULT_CACHE_NAME);
            Transport transport = container.getCache().getCacheManager().getTransport();
            if (transport != null) {
                Channel channel = ((org.infinispan.remoting.transport.jgroups.JGroupsTransport) transport).getChannel();
                this.service = new CoreGroupCommunicationService(Integer.valueOf(0).shortValue());
                service.setChannel(channel);
                this.lockManager = new SharedLocalYieldingClusterLockManager("lock", service, service);
            } else {
                this.service = null;
                this.lockManager = null;
View Full Code Here

    private volatile GroupMembershipNotifier notifier;
    private volatile Cache<String, Map<ClusterNode, Void>> cache;

    public ServiceBuilder<ServiceProviderRegistry> build(ServiceTarget target, String container) {
        new CoreGroupCommunicationService(SCOPE_ID).build(target, container).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
        return target.addService(getServiceName(container), this)
            .addDependency(CacheService.getServiceName(container, null), Cache.class, this.cacheRef)
            .addDependency(CoreGroupCommunicationService.getServiceName(container), GroupMembershipNotifier.class, this.notifierRef)
        ;
    }
View Full Code Here

    ServiceController<?> installGroupCommunicationService(ServiceTarget target, String containerName, ServiceVerificationHandler verificationHandler) {
        final InjectedValue<Channel> channel = new InjectedValue<Channel>();
        final InjectedValue<ModuleLoader> loader = new InjectedValue<ModuleLoader>();

        return target.addService(CoreGroupCommunicationService.getServiceName(containerName), new CoreGroupCommunicationService(GROUP_COMMUNICATION_SERVICE_SCOPE, channel, loader))
                // AS7-3906 Ensure that the cache manager's rpc dispatcher starts before GroupCommunicationService's (since channel doesn't start until 1st cache starts)
                .addDependency(CacheService.getServiceName(containerName, null))
                .addDependency(ChannelService.getServiceName(containerName), Channel.class, channel)
                .addDependency(Services.JBOSS_SERVICE_MODULE_LOADER, ModuleLoader.class, loader)
                .setInitialMode(ServiceController.Mode.ON_DEMAND)
View Full Code Here

        return this.lockManager;
    }

    @Override
    public void start(StartContext context) throws StartException {
        CoreGroupCommunicationService service = this.service.getValue();
        this.lockManager = new SharedLocalYieldingClusterLockManager(this.name, service, service);
        try {
            this.lockManager.start();
        } catch (Exception e) {
            throw new StartException(e);
View Full Code Here

    private final InjectedValue<Registry> registry = new InjectedValue<Registry>();

    @Override
    public void addDependencies(ServiceTarget target, ServiceBuilder<?> builder) {
        // install the GroupCommunicationService
        final CoreGroupCommunicationService groupCommunicationService = new CoreGroupCommunicationService(SCOPE_ID);
        groupCommunicationService.build(target, this.cacheContainerName).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
        new SharedLocalYieldingClusterLockManagerService(this.cacheContainerName).build(target).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
        builder.addDependency(CacheService.getServiceName(this.cacheContainerName, this.beanCacheName), Cache.class, this.groupCache);
        builder.addDependency(SharedLocalYieldingClusterLockManagerService.getServiceName(this.cacheContainerName), SharedLocalYieldingClusterLockManager.class, this.lockManager);

        ServiceName registryServiceName = ClusteredBackingCacheEntryStoreSourceService.getClientMappingRegistryServiceName(this.cacheContainerName);
View Full Code Here

        return this.lockManager;
    }

    @Override
    protected void start() throws Exception {
        CoreGroupCommunicationService service = this.service.getValue();
        this.lockManager = new SharedLocalYieldingClusterLockManager(this.name, service, service);
        this.lockManager.start();
    }
View Full Code Here

        String container = containerServiceName.getSimpleName();
        ServiceName lockManagerServiceName = SharedLocalYieldingClusterLockManagerService.getServiceName(container);
        ServiceName registryServiceName = cacheServiceName.append("registry");
        synchronized (this) {
            if (serviceContainer.getService(lockManagerServiceName) == null) {
                new CoreGroupCommunicationService(SCOPE_ID).build(target, container).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
                new SharedLocalYieldingClusterLockManagerService(container).build(target).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
            }
            if (serviceContainer.getService(registryServiceName) == null) {
                new RegistryService<String, Void>(this.registryEntryProvider).build(target, registryServiceName, cacheServiceName).install();
            }
View Full Code Here

        ServiceName lockManagerServiceName = SharedLocalYieldingClusterLockManagerService.getServiceName(container);
        ServiceName registryServiceName = cacheServiceName.append("registry");
        synchronized (this) {
            if (registry.getService(lockManagerServiceName) == null) {
                // AS7-3906 Ensure that the cache manager's rpc dispatcher starts before GroupCommunicationService's
                new CoreGroupCommunicationService(SCOPE_ID).build(target, container).addDependency(cacheServiceName).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
                new SharedLocalYieldingClusterLockManagerService(container).build(target).setInitialMode(ServiceController.Mode.ON_DEMAND).install();
            }
            if (registry.getService(registryServiceName) == null) {
                new RegistryService<String, Void>(this.registryEntryProvider).build(target, registryServiceName, cacheServiceName).install();
            }
View Full Code Here

        return this.lockManager;
    }

    @Override
    protected void start() throws Exception {
        CoreGroupCommunicationService service = this.service.getValue();
        this.lockManager = new SharedLocalYieldingClusterLockManager(this.name, service, service);
        this.lockManager.start();
    }
View Full Code Here

TOP

Related Classes of org.jboss.as.clustering.impl.CoreGroupCommunicationService$ClusterNodeFactoryImpl

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.