diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/AbstractTransportDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/AbstractTransportDefinition.java index 9c737071db0c..218e1aefa438 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/AbstractTransportDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/AbstractTransportDefinition.java @@ -39,7 +39,7 @@ public abstract class AbstractTransportDefinition extends PersistentResourceDefi static final RuntimeCapability CONNECTOR_CAPABILITY = RuntimeCapability.Builder.of(CONNECTOR_CAPABILITY_NAME, true, ConnectorService.class) .setDynamicNameMapper(TransportCapabilityNameMapper.INSTANCE) .build(); - private final boolean registerRuntimeOnly; + private final boolean registerRuntimeOnlyValid; private final AttributeDefinition[] attrs; protected final boolean isAcceptor; @@ -143,7 +143,7 @@ public String[] getRequirementPatternSegments(String dynamicElement, PathAddress } } - protected AbstractTransportDefinition(final boolean isAcceptor, final String specificType, final boolean registerRuntimeOnly, AttributeDefinition... attrs) { + protected AbstractTransportDefinition(final boolean isAcceptor, final String specificType, final boolean registerRuntimeOnlyValid, AttributeDefinition... attrs) { super(new SimpleResourceDefinition.Parameters(PathElement.pathElement(specificType), new StandardResourceDescriptionResolver((isAcceptor ? CommonAttributes.ACCEPTOR : CommonAttributes.CONNECTOR), MessagingExtension.RESOURCE_NAME, MessagingExtension.class.getClassLoader(), true, false) { @@ -158,11 +158,11 @@ public String getResourceDescription(Locale locale, ResourceBundle bundle) { .setAddHandler(isAcceptor ? new ActiveMQReloadRequiredHandlers.AddStepHandler(attrs) : new ConnectorAdd(attrs)) .setRemoveHandler(new ActiveMQReloadRequiredHandlers.RemoveStepHandler())); this.isAcceptor = isAcceptor; - this.registerRuntimeOnly = registerRuntimeOnly; + this.registerRuntimeOnlyValid = registerRuntimeOnlyValid; this.attrs = attrs; } - protected AbstractTransportDefinition(final boolean isAcceptor, final String specificType, final boolean registerRuntimeOnly, ModelVersion deprecatedSince, AttributeDefinition... attrs) { + protected AbstractTransportDefinition(final boolean isAcceptor, final String specificType, final boolean registerRuntimeOnlyValid, ModelVersion deprecatedSince, AttributeDefinition... attrs) { super(new SimpleResourceDefinition.Parameters(PathElement.pathElement(specificType), new StandardResourceDescriptionResolver((isAcceptor ? CommonAttributes.ACCEPTOR : CommonAttributes.CONNECTOR), MessagingExtension.RESOURCE_NAME, MessagingExtension.class.getClassLoader(), true, false) { @@ -175,7 +175,7 @@ public String getResourceDescription(Locale locale, ResourceBundle bundle) { .setRemoveHandler(new ActiveMQReloadRequiredHandlers.RemoveStepHandler()) .setDeprecatedSince(deprecatedSince)); this.isAcceptor = isAcceptor; - this.registerRuntimeOnly = registerRuntimeOnly; + this.registerRuntimeOnlyValid = registerRuntimeOnlyValid; this.attrs = attrs; } @@ -200,7 +200,7 @@ public void registerAttributes(ManagementResourceRegistration registry) { @Override public void registerOperations(ManagementResourceRegistration registry) { - if (isAcceptor && registerRuntimeOnly) { + if (isAcceptor && registerRuntimeOnlyValid) { AcceptorControlHandler.INSTANCE.registerOperations(registry, getResourceDescriptionResolver()); } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/GenericTransportDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/GenericTransportDefinition.java index d7cc034aa46c..f21c93412f7f 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/GenericTransportDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/GenericTransportDefinition.java @@ -27,15 +27,15 @@ public class GenericTransportDefinition extends AbstractTransportDefinition { static AttributeDefinition[] ATTRIBUTES = { CommonAttributes.FACTORY_CLASS, SOCKET_BINDING, CommonAttributes.PARAMS }; - static GenericTransportDefinition createAcceptorDefinition(boolean registerRuntimeOnly) { - return new GenericTransportDefinition(true, registerRuntimeOnly, CommonAttributes.ACCEPTOR); + static GenericTransportDefinition createAcceptorDefinition(boolean registerRuntimeOnlyValid) { + return new GenericTransportDefinition(true, registerRuntimeOnlyValid, CommonAttributes.ACCEPTOR); } - static GenericTransportDefinition createConnectorDefinition(boolean registerRuntimeOnly) { - return new GenericTransportDefinition(false, registerRuntimeOnly, CommonAttributes.CONNECTOR); + static GenericTransportDefinition createConnectorDefinition(boolean registerRuntimeOnlyValid) { + return new GenericTransportDefinition(false, registerRuntimeOnlyValid, CommonAttributes.CONNECTOR); } - private GenericTransportDefinition(boolean isAcceptor, boolean registerRuntimeOnly, String specificType) { - super(isAcceptor, specificType, registerRuntimeOnly, ATTRIBUTES); + private GenericTransportDefinition(boolean isAcceptor, boolean registerRuntimeOnlyValid, String specificType) { + super(isAcceptor, specificType, registerRuntimeOnlyValid, ATTRIBUTES); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/HTTPConnectorDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/HTTPConnectorDefinition.java index 099980bc3988..72f24d037f1f 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/HTTPConnectorDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/HTTPConnectorDefinition.java @@ -49,7 +49,10 @@ public void marshallAsAttribute(AttributeDefinition attribute, ModelNode resourc .setAllowExpression(false) .build(); - public HTTPConnectorDefinition(boolean registerRuntimeOnly) { - super(false, CommonAttributes.HTTP_CONNECTOR, registerRuntimeOnly, SOCKET_BINDING, ENDPOINT, SERVER_NAME, PARAMS, CommonAttributes.SSL_CONTEXT); + /** + * @param registerRuntimeOnlyValid: no effect + */ + public HTTPConnectorDefinition(boolean registerRuntimeOnlyValid) { + super(false, CommonAttributes.HTTP_CONNECTOR, registerRuntimeOnlyValid, SOCKET_BINDING, ENDPOINT, SERVER_NAME, PARAMS, CommonAttributes.SSL_CONTEXT); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/InVMTransportDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/InVMTransportDefinition.java index 22b22dd3e100..97007941f965 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/InVMTransportDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/InVMTransportDefinition.java @@ -38,15 +38,18 @@ public void marshallAsAttribute(AttributeDefinition attribute, ModelNode resourc static AttributeDefinition[] ATTRIBUTES = { SERVER_ID, PARAMS }; - public static InVMTransportDefinition createAcceptorDefinition(final boolean registerRuntimeOnly) { - return new InVMTransportDefinition(registerRuntimeOnly, true, CommonAttributes.IN_VM_ACCEPTOR); + public static InVMTransportDefinition createAcceptorDefinition(final boolean registerRuntimeOnlyValid) { + return new InVMTransportDefinition(registerRuntimeOnlyValid, true, CommonAttributes.IN_VM_ACCEPTOR); } - public static InVMTransportDefinition createConnectorDefinition(final boolean registerRuntimeOnly) { - return new InVMTransportDefinition(registerRuntimeOnly, false, CommonAttributes.IN_VM_CONNECTOR); + /** + * @param registerRuntimeOnlyValid: no effect + */ + public static InVMTransportDefinition createConnectorDefinition(final boolean registerRuntimeOnlyValid) { + return new InVMTransportDefinition(registerRuntimeOnlyValid, false, CommonAttributes.IN_VM_CONNECTOR); } - private InVMTransportDefinition(final boolean registerRuntimeOnly, boolean isAcceptor, String specificType) { - super(isAcceptor, specificType, registerRuntimeOnly, ATTRIBUTES); + private InVMTransportDefinition(final boolean registerRuntimeOnlyValid, boolean isAcceptor, String specificType) { + super(isAcceptor, specificType, registerRuntimeOnlyValid, ATTRIBUTES); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/MessagingExtension.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/MessagingExtension.java index fcad8c2daad1..2b098c456c17 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/MessagingExtension.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/MessagingExtension.java @@ -353,7 +353,7 @@ public void initialize(ExtensionContext context) { final SubsystemRegistration subsystemRegistration = context.registerSubsystem(SUBSYSTEM_NAME, CURRENT_MODEL_VERSION); subsystemRegistration.registerXMLElementWriter(CURRENT_PARSER); - boolean registerRuntimeOnly = context.isRuntimeOnlyRegistrationValid(); + boolean registerRuntimeOnlyValid = context.isRuntimeOnlyRegistrationValid(); BiConsumer broadcastCommandDispatcherFactoryInstaller = new BroadcastCommandDispatcherFactoryInstaller(); @@ -362,20 +362,20 @@ public void initialize(ExtensionContext context) { subsystem.registerOperationHandler(GenericSubsystemDescribeHandler.DEFINITION, GenericSubsystemDescribeHandler.INSTANCE); // WFLY-10518 - register new client resources under subsystem - subsystem.registerSubModel(new DiscoveryGroupDefinition(registerRuntimeOnly, true)); - subsystem.registerSubModel(new JGroupsDiscoveryGroupDefinition(registerRuntimeOnly, true)); - subsystem.registerSubModel(new SocketDiscoveryGroupDefinition(registerRuntimeOnly, true)); - subsystem.registerSubModel(GenericTransportDefinition.createConnectorDefinition(registerRuntimeOnly)); - subsystem.registerSubModel(InVMTransportDefinition.createConnectorDefinition(registerRuntimeOnly)); - subsystem.registerSubModel(RemoteTransportDefinition.createConnectorDefinition(registerRuntimeOnly)); - subsystem.registerSubModel(new HTTPConnectorDefinition(registerRuntimeOnly)); - subsystem.registerSubModel(new ExternalConnectionFactoryDefinition(registerRuntimeOnly)); + subsystem.registerSubModel(new DiscoveryGroupDefinition(false, true)); + subsystem.registerSubModel(new JGroupsDiscoveryGroupDefinition(false, true)); + subsystem.registerSubModel(new SocketDiscoveryGroupDefinition(false, true)); + subsystem.registerSubModel(GenericTransportDefinition.createConnectorDefinition(false)); + subsystem.registerSubModel(InVMTransportDefinition.createConnectorDefinition(false)); + subsystem.registerSubModel(RemoteTransportDefinition.createConnectorDefinition(false)); + subsystem.registerSubModel(new HTTPConnectorDefinition(false)); + subsystem.registerSubModel(new ExternalConnectionFactoryDefinition()); subsystem.registerSubModel(new ExternalPooledConnectionFactoryDefinition(false)); - subsystem.registerSubModel(new ExternalJMSQueueDefinition(registerRuntimeOnly)); - subsystem.registerSubModel(new ExternalJMSTopicDefinition(registerRuntimeOnly)); + subsystem.registerSubModel(new ExternalJMSQueueDefinition(false)); + subsystem.registerSubModel(new ExternalJMSTopicDefinition(false)); // ActiveMQ Servers - final ManagementResourceRegistration server = subsystem.registerSubModel(new ServerDefinition(broadcastCommandDispatcherFactoryInstaller, registerRuntimeOnly)); + final ManagementResourceRegistration server = subsystem.registerSubModel(new ServerDefinition(broadcastCommandDispatcherFactoryInstaller, registerRuntimeOnlyValid)); for (PathElement path : List.of(JOURNAL_DIRECTORY_PATH, BINDINGS_DIRECTORY_PATH, LARGE_MESSAGES_DIRECTORY_PATH, PAGING_DIRECTORY_PATH)) { ManagementResourceRegistration pathRegistry = server.registerSubModel(new PathDefinition(path)); @@ -384,18 +384,18 @@ public void initialize(ExtensionContext context) { subsystem.registerSubModel(new JMSBridgeDefinition()); - if (registerRuntimeOnly) { + if (registerRuntimeOnlyValid) { final ManagementResourceRegistration deployment = subsystemRegistration.registerDeploymentModel(new SimpleResourceDefinition( new Parameters(SUBSYSTEM_PATH, getResourceDescriptionResolver("deployed")).setFeature(false).setRuntime())); - deployment.registerSubModel(new ExternalConnectionFactoryDefinition(registerRuntimeOnly)); + deployment.registerSubModel(new ExternalConnectionFactoryDefinition()); deployment.registerSubModel(new ExternalPooledConnectionFactoryDefinition(true)); - deployment.registerSubModel(new ExternalJMSQueueDefinition(registerRuntimeOnly)); - deployment.registerSubModel(new ExternalJMSTopicDefinition(registerRuntimeOnly)); + deployment.registerSubModel(new ExternalJMSQueueDefinition(true)); + deployment.registerSubModel(new ExternalJMSTopicDefinition(true)); final ManagementResourceRegistration deployedServer = deployment.registerSubModel(new SimpleResourceDefinition( new Parameters(SERVER_PATH, getResourceDescriptionResolver(SERVER)).setFeature(false).setRuntime())); - deployedServer.registerSubModel(new JMSQueueDefinition(true, registerRuntimeOnly)); - deployedServer.registerSubModel(new JMSTopicDefinition(true, registerRuntimeOnly)); - deployedServer.registerSubModel(new PooledConnectionFactoryDefinition(true)); + deployedServer.registerSubModel(new JMSQueueDefinition(true, registerRuntimeOnlyValid)); + deployedServer.registerSubModel(new JMSTopicDefinition(true, registerRuntimeOnlyValid)); + deployedServer.registerSubModel(new PooledConnectionFactoryDefinition(registerRuntimeOnlyValid)); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/RemoteTransportDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/RemoteTransportDefinition.java index 8e9172466fdd..6a9a2e75632d 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/RemoteTransportDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/RemoteTransportDefinition.java @@ -2,7 +2,6 @@ * Copyright The WildFly Authors * SPDX-License-Identifier: Apache-2.0 */ - package org.wildfly.extension.messaging.activemq; import static org.jboss.as.controller.SimpleAttributeDefinitionBuilder.create; @@ -37,15 +36,18 @@ public void marshallAsAttribute(AttributeDefinition attribute, ModelNode resourc static AttributeDefinition[] ATTRIBUTES = {SOCKET_BINDING, CommonAttributes.PARAMS, CommonAttributes.SSL_CONTEXT}; - static RemoteTransportDefinition createAcceptorDefinition(boolean registerRuntimeOnly) { - return new RemoteTransportDefinition(true, CommonAttributes.REMOTE_ACCEPTOR, registerRuntimeOnly); + static RemoteTransportDefinition createAcceptorDefinition(boolean registerRuntimeOnlyValid) { + return new RemoteTransportDefinition(true, CommonAttributes.REMOTE_ACCEPTOR, registerRuntimeOnlyValid); } - static RemoteTransportDefinition createConnectorDefinition(boolean registerRuntimeOnly) { - return new RemoteTransportDefinition(false, CommonAttributes.REMOTE_CONNECTOR, registerRuntimeOnly); + /** + * @param registerRuntimeOnlyValid: no effect + */ + static RemoteTransportDefinition createConnectorDefinition(boolean registerRuntimeOnlyValid) { + return new RemoteTransportDefinition(false, CommonAttributes.REMOTE_CONNECTOR, registerRuntimeOnlyValid); } - private RemoteTransportDefinition(boolean isAcceptor, String specificType, boolean registerRuntimeOnly) { - super(isAcceptor, specificType, registerRuntimeOnly, ATTRIBUTES); + private RemoteTransportDefinition(boolean isAcceptor, String specificType, boolean registerRuntimeOnlyValid) { + super(isAcceptor, specificType, registerRuntimeOnlyValid, ATTRIBUTES); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/ServerDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/ServerDefinition.java index aa9bb9d961bb..ccf8b49a1d7d 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/ServerDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/ServerDefinition.java @@ -939,22 +939,22 @@ public class ServerDefinition extends PersistentResourceDefinition { ADDRESS_QUEUE_SCAN_PERIOD }; - private final boolean registerRuntimeOnly; + private final boolean registerRuntimeOnlyValid; - ServerDefinition(BiConsumer broadcastCommandDispatcherFactoryInstaller, boolean registerRuntimeOnly) { + ServerDefinition(BiConsumer broadcastCommandDispatcherFactoryInstaller, boolean registerRuntimeOnlyValid) { super(new SimpleResourceDefinition.Parameters(MessagingExtension.SERVER_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.SERVER)) .setAddHandler(new ServerAdd(broadcastCommandDispatcherFactoryInstaller)) .setRemoveHandler(ServerRemove.INSTANCE) .addCapabilities(Capabilities.ACTIVEMQ_SERVER_CAPABILITY) .setAdditionalPackages(RuntimePackageDependency.required("org.apache.activemq.artemis"), RuntimePackageDependency.required("org.apache.activemq.artemis.journal"))); - this.registerRuntimeOnly = registerRuntimeOnly; + this.registerRuntimeOnlyValid = registerRuntimeOnlyValid; } @Override public void registerOperations(ManagementResourceRegistration resourceRegistration) { super.registerOperations(resourceRegistration); - if (registerRuntimeOnly) { + if (registerRuntimeOnlyValid) { ExportJournalOperation.registerOperation(resourceRegistration, getResourceDescriptionResolver()); ImportJournalOperation.registerOperation(resourceRegistration, getResourceDescriptionResolver()); PrintDataOperation.INSTANCE.registerOperation(resourceRegistration, getResourceDescriptionResolver()); @@ -968,8 +968,8 @@ public void registerOperations(ManagementResourceRegistration resourceRegistrati @Override public void registerAttributes(ManagementResourceRegistration resourceRegistration) { - ActiveMQServerControlWriteHandler.INSTANCE.registerAttributes(resourceRegistration, registerRuntimeOnly); - if (registerRuntimeOnly) { + ActiveMQServerControlWriteHandler.INSTANCE.registerAttributes(resourceRegistration, registerRuntimeOnlyValid); + if (registerRuntimeOnlyValid) { ActiveMQServerControlHandler.INSTANCE.registerAttributes(resourceRegistration); } } @@ -985,8 +985,8 @@ protected List getChildren() { // Static resources children.addAll(Arrays.asList(// HA policy new LiveOnlyDefinition(), - new ReplicationPrimaryDefinition(MessagingExtension.REPLICATION_PRIMARY_PATH, false, registerRuntimeOnly), - new ReplicationSecondaryDefinition(MessagingExtension.REPLICATION_SECONDARY_PATH, false, registerRuntimeOnly), + new ReplicationPrimaryDefinition(MessagingExtension.REPLICATION_PRIMARY_PATH, false, registerRuntimeOnlyValid), + new ReplicationSecondaryDefinition(MessagingExtension.REPLICATION_SECONDARY_PATH, false, registerRuntimeOnlyValid), new ReplicationColocatedDefinition(), new SharedStorePrimaryDefinition(MessagingExtension.SHARED_STORE_PRIMARY_PATH, false), new SharedStoreSecondaryDefinition(MessagingExtension.SHARED_STORE_SECONDARY_PATH, false), @@ -1008,28 +1008,28 @@ protected List getChildren() { // Dynamic resources (depending on registerRuntimeOnly) // acceptors - children.add(GenericTransportDefinition.createAcceptorDefinition(registerRuntimeOnly)); - children.add(InVMTransportDefinition.createAcceptorDefinition(registerRuntimeOnly)); - children.add(RemoteTransportDefinition.createAcceptorDefinition(registerRuntimeOnly)); + children.add(GenericTransportDefinition.createAcceptorDefinition(registerRuntimeOnlyValid)); + children.add(InVMTransportDefinition.createAcceptorDefinition(registerRuntimeOnlyValid)); + children.add(RemoteTransportDefinition.createAcceptorDefinition(registerRuntimeOnlyValid)); // connectors - children.add(GenericTransportDefinition.createConnectorDefinition(registerRuntimeOnly)); - children.add(InVMTransportDefinition.createConnectorDefinition(registerRuntimeOnly)); - children.add(RemoteTransportDefinition.createConnectorDefinition(registerRuntimeOnly)); - children.add(new HTTPConnectorDefinition(registerRuntimeOnly)); + children.add(GenericTransportDefinition.createConnectorDefinition(registerRuntimeOnlyValid)); + children.add(InVMTransportDefinition.createConnectorDefinition(registerRuntimeOnlyValid)); + children.add(RemoteTransportDefinition.createConnectorDefinition(registerRuntimeOnlyValid)); + children.add(new HTTPConnectorDefinition(registerRuntimeOnlyValid)); - children.add(new BridgeDefinition(registerRuntimeOnly)); - children.add(new BroadcastGroupDefinition(registerRuntimeOnly)); - children.add(new SocketBroadcastGroupDefinition(registerRuntimeOnly)); - children.add(new JGroupsBroadcastGroupDefinition(registerRuntimeOnly)); + children.add(new BridgeDefinition(registerRuntimeOnlyValid)); + children.add(new BroadcastGroupDefinition(registerRuntimeOnlyValid)); + children.add(new SocketBroadcastGroupDefinition(registerRuntimeOnlyValid)); + children.add(new JGroupsBroadcastGroupDefinition(registerRuntimeOnlyValid)); // WFLY-10518 - keep discovery-group resource under server - children.add(new DiscoveryGroupDefinition(registerRuntimeOnly, false)); - children.add(new JGroupsDiscoveryGroupDefinition(registerRuntimeOnly, false)); - children.add(new SocketDiscoveryGroupDefinition(registerRuntimeOnly, false)); - children.add(new ClusterConnectionDefinition(registerRuntimeOnly)); - children.add(new QueueDefinition(registerRuntimeOnly, MessagingExtension.QUEUE_PATH)); - children.add(new JMSQueueDefinition(false, registerRuntimeOnly)); - children.add(new JMSTopicDefinition(false, registerRuntimeOnly)); - children.add(new ConnectionFactoryDefinition(registerRuntimeOnly)); + children.add(new DiscoveryGroupDefinition(registerRuntimeOnlyValid, false)); + children.add(new JGroupsDiscoveryGroupDefinition(registerRuntimeOnlyValid, false)); + children.add(new SocketDiscoveryGroupDefinition(registerRuntimeOnlyValid, false)); + children.add(new ClusterConnectionDefinition(registerRuntimeOnlyValid)); + children.add(new QueueDefinition(registerRuntimeOnlyValid, MessagingExtension.QUEUE_PATH)); + children.add(new JMSQueueDefinition(false, registerRuntimeOnlyValid)); + children.add(new JMSTopicDefinition(false, registerRuntimeOnlyValid)); + children.add(new ConnectionFactoryDefinition(registerRuntimeOnlyValid)); return children; } @@ -1042,8 +1042,8 @@ public void registerChildren(ManagementResourceRegistration resourceRegistration resourceRegistration.registerAlias(MessagingExtension.SHARED_STORE_MASTER_PATH, createAlias(resourceRegistration, MessagingExtension.SHARED_STORE_PRIMARY_PATH)); resourceRegistration.registerAlias(MessagingExtension.SHARED_STORE_SLAVE_PATH, createAlias(resourceRegistration, MessagingExtension.SHARED_STORE_SECONDARY_PATH)); // runtime queues and core-address are only registered when it is ok to register runtime resource (ie they are not registered on HC). - if (registerRuntimeOnly) { - resourceRegistration.registerSubModel(new QueueDefinition(registerRuntimeOnly, MessagingExtension.RUNTIME_QUEUE_PATH)); + if (registerRuntimeOnlyValid) { + resourceRegistration.registerSubModel(new QueueDefinition(registerRuntimeOnlyValid, MessagingExtension.RUNTIME_QUEUE_PATH)); resourceRegistration.registerSubModel(new CoreAddressDefinition()); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ConnectionFactoryDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ConnectionFactoryDefinition.java index 6e962fce7197..9fa3c9429be6 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ConnectionFactoryDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ConnectionFactoryDefinition.java @@ -48,15 +48,15 @@ static final AttributeDefinition[] concat(AttributeDefinition[] common, Attribut public static final AttributeDefinition[] ATTRIBUTES = concat(Regular.ATTRIBUTES, getDefinitions(Common.ATTRIBUTES)); - private final boolean registerRuntimeOnly; + private final boolean registerRuntimeOnlyValid; - public ConnectionFactoryDefinition(final boolean registerRuntimeOnly) { + public ConnectionFactoryDefinition(final boolean registerRuntimeOnlyValid) { super(new SimpleResourceDefinition.Parameters(MessagingExtension.CONNECTION_FACTORY_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.CONNECTION_FACTORY)) .setCapabilities(CAPABILITY) .setAddHandler(ConnectionFactoryAdd.INSTANCE) .setRemoveHandler(ConnectionFactoryRemove.INSTANCE)); - this.registerRuntimeOnly = registerRuntimeOnly; + this.registerRuntimeOnlyValid = registerRuntimeOnlyValid; } @Override @@ -75,7 +75,7 @@ public void registerAttributes(ManagementResourceRegistration resourceRegistrati public void registerOperations(ManagementResourceRegistration registry) { super.registerOperations(registry); - if (registerRuntimeOnly) { + if (registerRuntimeOnlyValid) { ConnectionFactoryUpdateJndiHandler.registerOperations(registry, getResourceDescriptionResolver()); } } diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalConnectionFactoryDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalConnectionFactoryDefinition.java index 62d5ae6869c3..40d7a87f57f6 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalConnectionFactoryDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalConnectionFactoryDefinition.java @@ -76,14 +76,11 @@ public class ExternalConnectionFactoryDefinition extends PersistentResourceDefin Common.INITIAL_MESSAGE_PACKET_SIZE, Common.USE_TOPOLOGY}; - private final boolean registerRuntimeOnly; - - public ExternalConnectionFactoryDefinition(final boolean registerRuntimeOnly) { + public ExternalConnectionFactoryDefinition() { super(new SimpleResourceDefinition.Parameters(MessagingExtension.CONNECTION_FACTORY_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.CONNECTION_FACTORY)) .setCapabilities(CAPABILITY) .setAddHandler(ExternalConnectionFactoryAdd.INSTANCE) .setRemoveHandler(ExternalConnectionFactoryRemove.INSTANCE)); - this.registerRuntimeOnly = registerRuntimeOnly; } @Override @@ -94,10 +91,6 @@ public Collection getAttributes() { @Override public void registerOperations(ManagementResourceRegistration registry) { super.registerOperations(registry); - - if (registerRuntimeOnly) { - ConnectionFactoryUpdateJndiHandler.registerOperations(registry, getResourceDescriptionResolver()); - } } @Override diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSQueueDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSQueueDefinition.java index b4631f344bdb..29c5afcba9d4 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSQueueDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSQueueDefinition.java @@ -25,14 +25,17 @@ public class ExternalJMSQueueDefinition extends PersistentResourceDefinition { public static final AttributeDefinition[] ATTRIBUTES = {CommonAttributes.DESTINATION_ENTRIES, External.ENABLE_AMQ1_PREFIX}; - private final boolean registerRuntimeOnly; + private final boolean deployed; - public ExternalJMSQueueDefinition(boolean registerRuntimeOnly) { + /** + * @param deployed: indicates if this resource describe a JMS queue created via a deployment. + */ + public ExternalJMSQueueDefinition(boolean deployed) { super(MessagingExtension.EXTERNAL_JMS_QUEUE_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.EXTERNAL_JMS_QUEUE), ExternalJMSQueueAdd.INSTANCE, ExternalJMSQueueRemove.INSTANCE); - this.registerRuntimeOnly = registerRuntimeOnly; + this.deployed = deployed; } @Override @@ -42,7 +45,7 @@ public Collection getAttributes() { @Override public void registerAttributes(ManagementResourceRegistration registry) { - if (registerRuntimeOnly) { + if (deployed) { registry.registerReadOnlyAttribute(CommonAttributes.DESTINATION_ENTRIES, null); // Should this be read only as entries ? registry.registerReadOnlyAttribute(External.ENABLE_AMQ1_PREFIX, null); diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSTopicDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSTopicDefinition.java index be1e3143dc8b..fb2331467875 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSTopicDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalJMSTopicDefinition.java @@ -29,14 +29,17 @@ public class ExternalJMSTopicDefinition extends PersistentResourceDefinition { CommonAttributes.DESTINATION_ENTRIES, External.ENABLE_AMQ1_PREFIX }; - private final boolean registerRuntimeOnly; + private final boolean deployed; - public ExternalJMSTopicDefinition(final boolean registerRuntimeOnly) { + /** + * @param deployed: indicates if this resource describe a JMS topic created via a deployment. + */ + public ExternalJMSTopicDefinition(final boolean deployed) { super(MessagingExtension.EXTERNAL_JMS_TOPIC_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.EXTERNAL_JMS_TOPIC), ExternalJMSTopicAdd.INSTANCE, ExternalJMSTopicRemove.INSTANCE); - this.registerRuntimeOnly = registerRuntimeOnly; + this.deployed = deployed; } @Override @@ -46,7 +49,7 @@ public Collection getAttributes() { @Override public void registerAttributes(ManagementResourceRegistration registry) { - if (registerRuntimeOnly) { + if (deployed) { registry.registerReadOnlyAttribute(CommonAttributes.DESTINATION_ENTRIES, null); // Should this be read only as entries ? registry.registerReadOnlyAttribute(External.ENABLE_AMQ1_PREFIX, null); diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalPooledConnectionFactoryDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalPooledConnectionFactoryDefinition.java index f4aef46db276..ade1b229470b 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalPooledConnectionFactoryDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/ExternalPooledConnectionFactoryDefinition.java @@ -123,6 +123,10 @@ private static AttributeDefinition copy(AttributeDefinition attribute, Attribute public static final ConnectionFactoryAttribute[] ATTRIBUTES = define(Pooled.ATTRIBUTES, Common.ATTRIBUTES); + /** + * Constructor for an external pooled connection factory. + * @param deployed: indicates if this resource describe a pcf created via a deployment. + */ public ExternalPooledConnectionFactoryDefinition(final boolean deployed) { super(new SimpleResourceDefinition.Parameters(MessagingExtension.POOLED_CONNECTION_FACTORY_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.POOLED_CONNECTION_FACTORY)) .setAddHandler(ExternalPooledConnectionFactoryAdd.INSTANCE) diff --git a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/PooledConnectionFactoryDefinition.java b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/PooledConnectionFactoryDefinition.java index 78b0848ff857..c900893a8929 100644 --- a/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/PooledConnectionFactoryDefinition.java +++ b/messaging-activemq/subsystem/src/main/java/org/wildfly/extension/messaging/activemq/jms/PooledConnectionFactoryDefinition.java @@ -117,6 +117,10 @@ public static Map getAttributesMap() { private final boolean deployed; private final boolean external; + /** + * Constructor for a pooled connection factory. + * @param deployed: indicates if this resource describe a pcf created via a deployment. + */ public PooledConnectionFactoryDefinition(final boolean deployed) { this(new SimpleResourceDefinition.Parameters(MessagingExtension.POOLED_CONNECTION_FACTORY_PATH, MessagingExtension.getResourceDescriptionResolver(CommonAttributes.POOLED_CONNECTION_FACTORY)) .setAddHandler(PooledConnectionFactoryAdd.INSTANCE)