static HAPolicyConfiguration buildConfiguration(OperationContext context, ModelNode model) throws OperationFailedException { ReplicaPolicyConfiguration haPolicyConfiguration = new ReplicaPolicyConfiguration() .setAllowFailBack(ALLOW_FAILBACK.resolveModelAttribute(context, model).asBoolean()) .setInitialReplicationSyncTimeout(INITIAL_REPLICATION_SYNC_TIMEOUT.resolveModelAttribute(context, model).asLong()) .setMaxSavedReplicatedJournalsSize(MAX_SAVED_REPLICATED_JOURNAL_SIZE.resolveModelAttribute(context, model).asInt()) .setScaleDownConfiguration(addScaleDownConfiguration(context, model)) .setRestartBackup(RESTART_BACKUP.resolveModelAttribute(context, model).asBoolean()); ModelNode clusterName = CLUSTER_NAME.resolveModelAttribute(context, model); if (clusterName.isDefined()) { haPolicyConfiguration.setClusterName(clusterName.asString()); } ModelNode groupName = GROUP_NAME.resolveModelAttribute(context, model); if (groupName.isDefined()) { haPolicyConfiguration.setGroupName(groupName.asString()); } return haPolicyConfiguration; } }
static HAPolicyConfiguration buildConfiguration(OperationContext context, ModelNode model) throws OperationFailedException { ReplicaPolicyConfiguration haPolicyConfiguration = new ReplicaPolicyConfiguration() .setAllowFailBack(ALLOW_FAILBACK.resolveModelAttribute(context, model).asBoolean()) .setInitialReplicationSyncTimeout(INITIAL_REPLICATION_SYNC_TIMEOUT.resolveModelAttribute(context, model).asLong()) .setMaxSavedReplicatedJournalsSize(MAX_SAVED_REPLICATED_JOURNAL_SIZE.resolveModelAttribute(context, model).asInt()) .setScaleDownConfiguration(addScaleDownConfiguration(context, model)) .setRestartBackup(RESTART_BACKUP.resolveModelAttribute(context, model).asBoolean()); ModelNode clusterName = CLUSTER_NAME.resolveModelAttribute(context, model); if (clusterName.isDefined()) { haPolicyConfiguration.setClusterName(clusterName.asString()); } ModelNode groupName = GROUP_NAME.resolveModelAttribute(context, model); if (groupName.isDefined()) { haPolicyConfiguration.setGroupName(groupName.asString()); } return haPolicyConfiguration; } }
haPolicy.setBackupConfig(rpc2); if (scaleDown) { rpc2.setScaleDownConfiguration(new ScaleDownConfiguration());
private ReplicaPolicyConfiguration createReplicaHaPolicy(Element policyNode) { ReplicaPolicyConfiguration configuration = new ReplicaPolicyConfiguration(); configuration.setQuorumVoteWait(getInteger(policyNode, "quorum-vote-wait", ActiveMQDefaultConfiguration.getDefaultQuorumVoteWait(), Validators.GT_ZERO)); configuration.setRestartBackup(getBoolean(policyNode, "restart-backup", configuration.isRestartBackup())); configuration.setGroupName(getString(policyNode, "group-name", configuration.getGroupName(), Validators.NO_CHECK)); configuration.setAllowFailBack(getBoolean(policyNode, "allow-failback", configuration.isAllowFailBack())); configuration.setInitialReplicationSyncTimeout(getLong(policyNode, "initial-replication-sync-timeout", configuration.getInitialReplicationSyncTimeout(), Validators.GT_ZERO)); configuration.setClusterName(getString(policyNode, "cluster-name", configuration.getClusterName(), Validators.NO_CHECK)); configuration.setMaxSavedReplicatedJournalsSize(getInteger(policyNode, "max-saved-replicated-journals-size", configuration.getMaxSavedReplicatedJournalsSize(), Validators.MINUS_ONE_OR_GE_ZERO)); configuration.setScaleDownConfiguration(parseScaleDownConfig(policyNode)); configuration.setVoteOnReplicationFailure(getBoolean(policyNode, "vote-on-replication-failure", configuration.getVoteOnReplicationFailure())); configuration.setVoteRetries(getInteger(policyNode, "vote-retries", configuration.getVoteRetries(), Validators.MINUS_ONE_OR_GE_ZERO)); configuration.setVoteRetryWait(getLong(policyNode, "vote-retry-wait", configuration.getVoteRetryWait(), Validators.GT_ZERO)); configuration.setRetryReplicationWait(getLong(policyNode, "retry-replication-wait", configuration.getVoteRetryWait(), Validators.GT_ZERO)); configuration.setQuorumSize(getInteger(policyNode, "quorum-size", configuration.getQuorumSize(), Validators.MINUS_ONE_OR_GT_ZERO)); return configuration; }