AbstractProtocolResourceDefinition(Parameters parameters, UnaryOperator<ResourceDescriptor> configurator, ResourceServiceConfiguratorFactory serviceConfiguratorFactory, ResourceServiceConfiguratorFactory parentServiceConfiguratorFactory) { super(parameters); this.configurator = configurator; this.handler = new SimpleResourceServiceHandler(serviceConfiguratorFactory); this.parentServiceConfiguratorFactory = parentServiceConfiguratorFactory; }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, Resource.Tools.readModel(context.readResource(PathAddress.EMPTY_ADDRESS))); } }
@Override public void removeServices(OperationContext context, ModelNode model) throws OperationFailedException { String name = context.getCurrentAddressValue(); context.removeService(JGroupsBindingFactory.createChannelFactoryBinding(name).getBinderServiceName()); super.removeServices(context, model); } }
protected StoreResourceDefinition(PathElement path, PathElement legacyPath, ResourceDescriptionResolver resolver, UnaryOperator<ResourceDescriptor> configurator, ResourceServiceConfiguratorFactory serviceConfiguratorFactory) { super(path, resolver); this.legacyPath = legacyPath; this.configurator = configurator; this.handler = new SimpleResourceServiceHandler(serviceConfiguratorFactory); }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, model); String name = context.getCurrentAddressValue(); new BinderServiceConfigurator(JGroupsBindingFactory.createChannelFactoryBinding(name), JGroupsRequirement.CHANNEL_FACTORY.getServiceName(context, name)).build(context.getServiceTarget()).install(); }
@Override public void removeServices(OperationContext context, ModelNode model) throws OperationFailedException { PathAddress address = context.getCurrentAddress(); String name = context.getCurrentAddressValue(); context.removeService(InfinispanBindingFactory.createRemoteCacheContainerBinding(name).getBinderServiceName()); for (RemoteCacheContainerResourceDefinition.Capability component : EnumSet.allOf(RemoteCacheContainerResourceDefinition.Capability.class)) { ServiceName serviceName = component.getServiceName(address); context.removeService(serviceName); } context.removeService(RemoteCacheContainerComponent.MODULE.getServiceName(address)); super.removeServices(context, model); } }
@Override public ManagementResourceRegistration register(ManagementResourceRegistration parent) { ManagementResourceRegistration registration = parent.registerSubModel(this); ResourceDescriptor descriptor = this.configurator.apply(new ResourceDescriptor(this.getResourceDescriptionResolver())) .addAttributes(Attribute.class) .addCapabilities(Capability.class) ; new SimpleResourceRegistration(descriptor, new SimpleResourceServiceHandler(this.serviceConfiguratorFactory)).register(registration); return registration; } }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, model); PathAddress address = context.getCurrentAddress(); String name = context.getCurrentAddressValue(); ServiceTarget target = context.getServiceTarget(); new ModuleServiceConfigurator(RemoteCacheContainerComponent.MODULE.getServiceName(address), MODULE).configure(context, model).build(target).setInitialMode(ServiceController.Mode.PASSIVE).install(); ServiceConfigurator containerBuilder = new RemoteCacheContainerServiceConfigurator(address).configure(context, model); containerBuilder.build(target).install(); new BinderServiceConfigurator(InfinispanBindingFactory.createRemoteCacheContainerBinding(name), containerBuilder.getServiceName()).build(target).install(); }
@Override public void removeServices(OperationContext context, ModelNode model) throws OperationFailedException { PathAddress address = context.getCurrentAddress(); String name = context.getCurrentAddressValue(); String channel = address.getParent().getLastElement().getValue(); ServiceNameRegistry<ClusteringRequirement> registry = new CapabilityServiceNameRegistry<>(CLUSTERING_CAPABILITIES, address); for (IdentityGroupServiceConfiguratorProvider provider : ServiceLoader.load(IdentityGroupServiceConfiguratorProvider.class, IdentityGroupServiceConfiguratorProvider.class.getClassLoader())) { for (ServiceNameProvider configurator : provider.getServiceConfigurators(registry, name, channel)) { context.removeService(configurator.getServiceName()); } } context.removeService(JGroupsBindingFactory.createChannelBinding(name).getBinderServiceName()); context.removeService(JGroupsBindingFactory.createChannelFactoryBinding(name).getBinderServiceName()); // FORK_CHANNEL_FACTORY is removed by super impl for (Capability capability : EnumSet.complementOf(EnumSet.of(FORK_CHANNEL_FACTORY))) { context.removeService(capability.getServiceName(address)); } super.removeServices(context, model); } }
@Override public ManagementResourceRegistration register(ManagementResourceRegistration parent) { ManagementResourceRegistration registration = parent.registerSubModel(this); ResourceDescriptor descriptor = new ResourceDescriptor(this.getResourceDescriptionResolver()); ResourceServiceHandler handler = new SimpleResourceServiceHandler(NoStoreServiceConfigurator::new); new SimpleResourceRegistration(descriptor, handler).register(registration); return registration; } }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, model); PathAddress address = context.getCurrentAddress(); String name = address.getLastElement().getValue(); String channel = address.getParent().getLastElement().getValue(); ServiceTarget target = context.getServiceTarget(); new IdentityServiceConfigurator<>(FORK_CHANNEL_SOURCE.getServiceName(address), JGroupsRequirement.CHANNEL_FACTORY.getServiceName(context, channel)).build(target).install(); new IdentityServiceConfigurator<>(FORK_CHANNEL_MODULE.getServiceName(address), JGroupsRequirement.CHANNEL_MODULE.getServiceName(context, channel)).build(target).install(); new IdentityServiceConfigurator<>(FORK_CHANNEL_CLUSTER.getServiceName(address), JGroupsRequirement.CHANNEL_CLUSTER.getServiceName(context, channel)).build(target).install(); new ChannelServiceConfigurator(FORK_CHANNEL, address).configure(context, model).build(target).install(); new BinderServiceConfigurator(JGroupsBindingFactory.createChannelBinding(name), JGroupsRequirement.CHANNEL.getServiceName(context, name)).build(target).install(); new BinderServiceConfigurator(JGroupsBindingFactory.createChannelFactoryBinding(name), JGroupsRequirement.CHANNEL_FACTORY.getServiceName(context, name)).build(target).install(); ServiceNameRegistry<ClusteringRequirement> registry = new CapabilityServiceNameRegistry<>(CLUSTERING_CAPABILITIES, address); for (IdentityGroupServiceConfiguratorProvider provider : ServiceLoader.load(IdentityGroupServiceConfiguratorProvider.class, IdentityGroupServiceConfiguratorProvider.class.getClassLoader())) { for (CapabilityServiceConfigurator configurator : provider.getServiceConfigurators(registry, name, channel)) { configurator.configure(context).build(target).install(); } } }
@Override public void removeServices(OperationContext context, ModelNode model) throws OperationFailedException { String name = context.getCurrentAddressValue(); context.removeService(JGroupsBindingFactory.createChannelFactoryBinding(name).getBinderServiceName()); super.removeServices(context, model); } }
@Override public ManagementResourceRegistration register(ManagementResourceRegistration parent) { ManagementResourceRegistration registration = parent.registerSubModel(this); ResourceDescriptor descriptor = new ResourceDescriptor(this.getResourceDescriptionResolver()); ResourceServiceHandler handler = new SimpleResourceServiceHandler(StoreWriteThroughServiceConfigurator::new); new SimpleResourceRegistration(descriptor, handler).register(registration); return registration; } }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, Resource.Tools.readModel(context.readResource(PathAddress.EMPTY_ADDRESS))); } }
@Override public void removeServices(OperationContext context, ModelNode model) throws OperationFailedException { PathAddress address = context.getCurrentAddress(); String name = context.getCurrentAddressValue(); context.removeService(InfinispanBindingFactory.createRemoteCacheContainerBinding(name).getBinderServiceName()); for (RemoteCacheContainerResourceDefinition.Capability component : EnumSet.allOf(RemoteCacheContainerResourceDefinition.Capability.class)) { ServiceName serviceName = component.getServiceName(address); context.removeService(serviceName); } context.removeService(RemoteCacheContainerComponent.MODULE.getServiceName(address)); super.removeServices(context, model); } }
@Override public ManagementResourceRegistration register(ManagementResourceRegistration parentRegistration) { ManagementResourceRegistration registration = parentRegistration.registerSubModel(this); ResourceDescriptor descriptor = new ResourceDescriptor(this.getResourceDescriptionResolver()); ResourceServiceHandler handler = new SimpleResourceServiceHandler(NoNearCacheServiceConfigurator::new); new SimpleResourceRegistration(descriptor, handler).register(registration); return registration; } }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, model); String name = context.getCurrentAddressValue(); new BinderServiceConfigurator(JGroupsBindingFactory.createChannelFactoryBinding(name), JGroupsRequirement.CHANNEL_FACTORY.getServiceName(context, name)).build(context.getServiceTarget()).install(); }
@Override public void removeServices(OperationContext context, ModelNode model) throws OperationFailedException { PathAddress address = context.getCurrentAddress(); String name = context.getCurrentAddressValue(); String channel = address.getParent().getLastElement().getValue(); ServiceNameRegistry<ClusteringRequirement> registry = new CapabilityServiceNameRegistry<>(CLUSTERING_CAPABILITIES, address); for (IdentityGroupServiceConfiguratorProvider provider : ServiceLoader.load(IdentityGroupServiceConfiguratorProvider.class, IdentityGroupServiceConfiguratorProvider.class.getClassLoader())) { for (ServiceNameProvider configurator : provider.getServiceConfigurators(registry, name, channel)) { context.removeService(configurator.getServiceName()); } } context.removeService(JGroupsBindingFactory.createChannelBinding(name).getBinderServiceName()); context.removeService(JGroupsBindingFactory.createChannelFactoryBinding(name).getBinderServiceName()); // FORK_CHANNEL_FACTORY is removed by super impl for (Capability capability : EnumSet.complementOf(EnumSet.of(FORK_CHANNEL_FACTORY))) { context.removeService(capability.getServiceName(address)); } super.removeServices(context, model); } }
@Override public ManagementResourceRegistration register(ManagementResourceRegistration parent) { ManagementResourceRegistration registration = parent.registerSubModel(this); ResourceDescriptor descriptor = this.configurator.apply(new ResourceDescriptor(this.getResourceDescriptionResolver())) .addAttributes(ElectionPolicyResourceDefinition.Attribute.class) .addCapabilities(ElectionPolicyResourceDefinition.Capability.class) ; ResourceServiceHandler handler = new SimpleResourceServiceHandler(this.serviceConfiguratorFactory); new SimpleResourceRegistration(descriptor, handler).register(registration); return registration; } }
@Override public void installServices(OperationContext context, ModelNode model) throws OperationFailedException { super.installServices(context, model); PathAddress address = context.getCurrentAddress(); String name = context.getCurrentAddressValue(); ServiceTarget target = context.getServiceTarget(); new ModuleServiceConfigurator(RemoteCacheContainerComponent.MODULE.getServiceName(address), MODULE).configure(context, model).build(target).setInitialMode(ServiceController.Mode.PASSIVE).install(); ServiceConfigurator containerBuilder = new RemoteCacheContainerServiceConfigurator(address).configure(context, model); containerBuilder.build(target).install(); new BinderServiceConfigurator(InfinispanBindingFactory.createRemoteCacheContainerBinding(name), containerBuilder.getServiceName()).build(target).install(); }