Search in sources :

Example 11 with HAPolicyConfiguration

use of org.apache.activemq.artemis.core.config.HAPolicyConfiguration in project wildfly by wildfly.

the class HAPolicyConfigurationBuilder method addHAPolicyConfiguration.

public void addHAPolicyConfiguration(OperationContext context, Configuration configuration, ModelNode model) throws OperationFailedException {
    if (!model.hasDefined(HA_POLICY)) {
        return;
    }
    Property prop = model.get(HA_POLICY).asProperty();
    ModelNode haPolicy = prop.getValue();
    final HAPolicyConfiguration haPolicyConfiguration;
    String type = prop.getName();
    switch(type) {
        case LIVE_ONLY:
            {
                haPolicyConfiguration = buildLiveOnlyConfiguration(context, haPolicy);
                break;
            }
        case REPLICATION_MASTER:
            {
                haPolicyConfiguration = buildReplicationMasterConfiguration(context, haPolicy);
                break;
            }
        case REPLICATION_SLAVE:
            {
                haPolicyConfiguration = buildReplicationSlaveConfiguration(context, haPolicy);
                break;
            }
        case REPLICATION_COLOCATED:
            {
                haPolicyConfiguration = buildReplicationColocatedConfiguration(context, haPolicy);
                break;
            }
        case SHARED_STORE_MASTER:
            {
                haPolicyConfiguration = buildSharedStoreMasterConfiguration(context, haPolicy);
                break;
            }
        case SHARED_STORE_SLAVE:
            {
                haPolicyConfiguration = buildSharedStoreSlaveConfiguration(context, haPolicy);
                break;
            }
        case SHARED_STORE_COLOCATED:
            {
                haPolicyConfiguration = buildSharedStoreColocatedConfiguration(context, haPolicy);
                break;
            }
        default:
            {
                throw new OperationFailedException("unknown ha policy type");
            }
    }
    configuration.setHAPolicyConfiguration(haPolicyConfiguration);
}
Also used : HAPolicyConfiguration(org.apache.activemq.artemis.core.config.HAPolicyConfiguration) OperationFailedException(org.jboss.as.controller.OperationFailedException) ModelNode(org.jboss.dmr.ModelNode) Property(org.jboss.dmr.Property)

Aggregations

HAPolicyConfiguration (org.apache.activemq.artemis.core.config.HAPolicyConfiguration)11 ColocatedPolicyConfiguration (org.apache.activemq.artemis.core.config.ha.ColocatedPolicyConfiguration)5 SharedStoreMasterPolicyConfiguration (org.apache.activemq.artemis.core.config.ha.SharedStoreMasterPolicyConfiguration)5 ModelNode (org.jboss.dmr.ModelNode)5 TransportConfiguration (org.apache.activemq.artemis.api.core.TransportConfiguration)4 Configuration (org.apache.activemq.artemis.core.config.Configuration)4 SharedStoreSlavePolicyConfiguration (org.apache.activemq.artemis.core.config.ha.SharedStoreSlavePolicyConfiguration)4 SimpleString (org.apache.activemq.artemis.api.core.SimpleString)3 ClusterConnectionConfiguration (org.apache.activemq.artemis.core.config.ClusterConnectionConfiguration)3 ActiveMQServer (org.apache.activemq.artemis.core.server.ActiveMQServer)3 ActiveMQDefaultConfiguration (org.apache.activemq.artemis.api.config.ActiveMQDefaultConfiguration)2 BroadcastGroupConfiguration (org.apache.activemq.artemis.api.core.BroadcastGroupConfiguration)2 DiscoveryGroupConfiguration (org.apache.activemq.artemis.api.core.DiscoveryGroupConfiguration)2 BridgeConfiguration (org.apache.activemq.artemis.core.config.BridgeConfiguration)2 LiveOnlyPolicyConfiguration (org.apache.activemq.artemis.core.config.ha.LiveOnlyPolicyConfiguration)2 ReplicaPolicyConfiguration (org.apache.activemq.artemis.core.config.ha.ReplicaPolicyConfiguration)2 ReplicatedPolicyConfiguration (org.apache.activemq.artemis.core.config.ha.ReplicatedPolicyConfiguration)2 Test (org.junit.Test)2 ByteArrayInputStream (java.io.ByteArrayInputStream)1 ArrayList (java.util.ArrayList)1