You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ds...@apache.org on 2016/02/18 00:10:42 UTC
[07/33] incubator-geode git commit: GEODE-913: refactor
AbstractDistributionConfig
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/70059905/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/AbstractDistributionConfig.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/AbstractDistributionConfig.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/AbstractDistributionConfig.java
index 0cc76ec..0c099fd 100644
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/AbstractDistributionConfig.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/AbstractDistributionConfig.java
@@ -16,19 +16,9 @@
*/
package com.gemstone.gemfire.distributed.internal;
-import java.io.File;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
import com.gemstone.gemfire.InternalGemFireException;
import com.gemstone.gemfire.InvalidValueException;
+import com.gemstone.gemfire.UnmodifiableException;
import com.gemstone.gemfire.internal.AbstractConfig;
import com.gemstone.gemfire.internal.ConfigSource;
import com.gemstone.gemfire.internal.SocketCreator;
@@ -37,6 +27,11 @@ import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
import com.gemstone.gemfire.internal.logging.LogWriterImpl;
import com.gemstone.gemfire.memcached.GemFireMemcachedServer;
+import java.lang.reflect.Method;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.*;
+
/**
* Provides an implementation of <code>DistributionConfig</code> that
* knows how to read the configuration file.
@@ -54,162 +49,97 @@ public abstract class AbstractDistributionConfig
extends AbstractConfig
implements DistributionConfig
{
- protected void checkName(String value) {
- _checkIfModifiable(NAME_NAME);
- }
- public boolean isNameModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isEnableNetworkPartitionDetectionModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isDisableAutoReconnectModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isDepartureCorrelationWindowModifiable() {
- return _modifiableDefault();
- }
- protected void checkLogFile(File value) {
- _checkIfModifiable(LOG_FILE_NAME);
- }
- public boolean isLogFileModifiable() {
- return _modifiableDefault();
- }
+ protected Object checkAttribute(String attName, Object value){
+ // first check to see if this attribute is modifiable, this also checks if the attribute is a valid one.
+ if (!isAttributeModifiable(attName)) {
+ throw new UnmodifiableException(_getUnmodifiableMsg(attName));
+ }
- protected void checkLogLevel(int value) {
- _checkIfModifiable(LOG_LEVEL_NAME);
- if (value < MIN_LOG_LEVEL) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {LOG_LEVEL_NAME, Integer.valueOf(value), Integer.valueOf(MIN_LOG_LEVEL)}));
+ ConfigAttribute attribute = attributes.get(attName);
+ if(attribute==null){
+ // isAttributeModifiable already checks the validity of the attName, if reached here, then they
+ // must be those special attributes that starts with ssl_system_props or sys_props, no further checking needed
+ return value;
}
- if (value > MAX_LOG_LEVEL) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {LOG_LEVEL_NAME, Integer.valueOf(value), Integer.valueOf(MAX_LOG_LEVEL)}));
+ // for integer attribute, do the range check.
+ if(attribute.type().equals(Integer.class)){
+ Integer intValue = (Integer)value;
+ minMaxCheck(attName, intValue, attribute.min(), attribute.max());
+ }
+
+ Method checker = checkers.get(attName);
+ if(checker==null)
+ return value;
+
+ // if specific checker exists for this attribute, call that with the value
+ try {
+ return checker.invoke(this, value);
+ } catch (Exception e) {
+ if(e instanceof RuntimeException){
+ throw (RuntimeException)e;
+ }
+ if(e.getCause() instanceof RuntimeException){
+ throw (RuntimeException)e.getCause();
+ }
+ else
+ throw new InternalGemFireException("error invoking "+checker.getName()+" with value "+value);
}
}
- protected void checkStartLocator(String value) {
- _checkIfModifiable(START_LOCATOR_NAME);
+
+ protected void minMaxCheck(String propName, int value, int minValue, int maxValue) {
+ if (value < minValue) {
+ throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[]{propName, Integer.valueOf(value), Integer.valueOf(minValue)}));
+ } else if (value > maxValue) {
+ throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[]{propName, Integer.valueOf(value), Integer.valueOf(maxValue)}));
+ }
+ }
+
+
+ @ConfigAttributeChecker(name=START_LOCATOR_NAME)
+ protected String checkStartLocator(String value) {
if (value != null && value.trim().length() > 0) {
// throws IllegalArgumentException if string is malformed
new DistributionLocatorId(value);
}
+ return value;
}
- public boolean isStartLocatorModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isLogLevelModifiable() {
- return _modifiableDefault();
- }
- protected void checkTcpPort(int value) {
- _checkIfModifiable(TCP_PORT_NAME);
- if (value < MIN_TCP_PORT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {TCP_PORT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_TCP_PORT)}));
- }
- if (value > MAX_TCP_PORT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {TCP_PORT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_TCP_PORT)}));
- }
+ @ConfigAttributeChecker(name=TCP_PORT_NAME)
+ protected int checkTcpPort(int value) {
if ( getSSLEnabled() && value != 0 ) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_MUST_BE_0_WHEN_2_IS_TRUE.toLocalizedString(new Object[] {TCP_PORT_NAME, Integer.valueOf(value), SSL_ENABLED_NAME}));
}
if ( getClusterSSLEnabled() && value != 0 ) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_MUST_BE_0_WHEN_2_IS_TRUE.toLocalizedString(new Object[] {TCP_PORT_NAME, Integer.valueOf(value), CLUSTER_SSL_ENABLED_NAME}));
}
- }
- public boolean isTcpPortModifiable() {
- return _modifiableDefault();
+ return value;
}
- protected void checkMcastPort(int value) {
- _checkIfModifiable(MCAST_PORT_NAME);
- if (value < MIN_MCAST_PORT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {MCAST_PORT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_MCAST_PORT)}));
- }
- if (value > MAX_MCAST_PORT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {MCAST_PORT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_MCAST_PORT)}));
- }
+ @ConfigAttributeChecker(name=MCAST_PORT_NAME)
+ protected int checkMcastPort(int value) {
if ( getSSLEnabled() && value != 0 ) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_MUST_BE_0_WHEN_2_IS_TRUE.toLocalizedString(new Object[] {MCAST_PORT_NAME, Integer.valueOf(value), SSL_ENABLED_NAME}));
}
if ( getClusterSSLEnabled() && value != 0 ) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_MUST_BE_0_WHEN_2_IS_TRUE.toLocalizedString(new Object[] {MCAST_PORT_NAME, Integer.valueOf(value), CLUSTER_SSL_ENABLED_NAME}));
}
-
- }
- public boolean isMcastPortModifiable() {
- return _modifiableDefault();
+ return value;
}
- protected void checkMcastAddress(InetAddress value) {
- _checkIfModifiable(MCAST_ADDRESS_NAME);
+
+ @ConfigAttributeChecker(name=MCAST_ADDRESS_NAME)
+ protected InetAddress checkMcastAddress(InetAddress value) {
if (!value.isMulticastAddress()) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_IT_WAS_NOT_A_MULTICAST_ADDRESS.toLocalizedString(new Object[] {MCAST_ADDRESS_NAME, value}));
}
- }
- public boolean isMcastAddressModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkMcastTtl(int value) {
- _checkIfModifiable(MCAST_TTL_NAME);
- if (value < MIN_MCAST_TTL) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {MCAST_TTL_NAME, Integer.valueOf(value), Integer.valueOf(MIN_MCAST_TTL)}));
- }
- if (value > MAX_MCAST_TTL) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {MCAST_TTL_NAME, Integer.valueOf(value), Integer.valueOf(MAX_MCAST_TTL)}));
- }
- }
- public boolean isMcastTtlModifiable() {
- return _modifiableDefault();
+ return value;
}
- protected void checkSocketLeaseTime(int value) {
- _checkIfModifiable(SOCKET_LEASE_TIME_NAME);
- if (value < MIN_SOCKET_LEASE_TIME) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {SOCKET_LEASE_TIME_NAME, Integer.valueOf(value), Integer.valueOf(MIN_SOCKET_LEASE_TIME)}));
- }
- if (value > MAX_SOCKET_LEASE_TIME) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {SOCKET_LEASE_TIME_NAME, Integer.valueOf(value), Integer.valueOf(MAX_SOCKET_LEASE_TIME)}));
- }
- }
- public boolean isSocketLeaseTimeModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSocketBufferSize(int value) {
- _checkIfModifiable(SOCKET_BUFFER_SIZE_NAME);
- if (value < MIN_SOCKET_BUFFER_SIZE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {SOCKET_BUFFER_SIZE_NAME, Integer.valueOf(value), Integer.valueOf(MIN_SOCKET_BUFFER_SIZE)}));
- }
- if (value > MAX_SOCKET_BUFFER_SIZE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {SOCKET_BUFFER_SIZE_NAME, Integer.valueOf(value), Integer.valueOf(MAX_SOCKET_BUFFER_SIZE)}));
- }
- }
- public boolean isSocketBufferSizeModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkConserveSockets(boolean value) {
- _checkIfModifiable(CONSERVE_SOCKETS_NAME);
- }
- public boolean isConserveSocketsModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkRoles(String value) {
- _checkIfModifiable(ROLES_NAME);
- }
- public boolean isRolesModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkBindAddress(String value) {
- _checkIfModifiable(BIND_ADDRESS_NAME);
+ @ConfigAttributeChecker(name=BIND_ADDRESS_NAME)
+ protected String checkBindAddress(String value) {
if (value != null && value.length() > 0 &&
!SocketCreator.isLocalHost(value)) {
throw new IllegalArgumentException(
@@ -217,13 +147,12 @@ public abstract class AbstractDistributionConfig
.toLocalizedString(new Object[]{value, SocketCreator.getMyAddresses()
}));
}
- }
- public boolean isBindAddressModifiable() {
- return _modifiableDefault();
+ return value;
}
- protected void checkServerBindAddress(String value) {
- _checkIfModifiable(SERVER_BIND_ADDRESS_NAME);
+
+ @ConfigAttributeChecker(name=SERVER_BIND_ADDRESS_NAME)
+ protected String checkServerBindAddress(String value) {
if (value != null && value.length() > 0 &&
!SocketCreator.isLocalHost(value)) {
throw new IllegalArgumentException(
@@ -231,66 +160,27 @@ public abstract class AbstractDistributionConfig
.toLocalizedString(new Object[]{value, SocketCreator.getMyAddresses()
}));
}
- }
- public boolean isServerBindAddressModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkDeployWorkingDir(File value) {
- _checkIfModifiable(DEPLOY_WORKING_DIR);
- }
-
- public boolean isDeployWorkingDirModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkStatisticSamplingEnabled(boolean value) {
- _checkIfModifiable(STATISTIC_SAMPLING_ENABLED_NAME);
- }
- public boolean isStatisticSamplingEnabledModifiable() {
- return _modifiableDefault();
+ return value;
}
-
- protected void checkStatisticArchiveFile(File value) {
- _checkIfModifiable(STATISTIC_ARCHIVE_FILE_NAME);
- }
- public boolean isStatisticArchiveFileModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkCacheXmlFile(File value) {
- _checkIfModifiable(CACHE_XML_FILE_NAME);
- }
- public boolean isCacheXmlFileModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSSLEnabled(Boolean value) {
- _checkIfModifiable(SSL_ENABLED_NAME);
+ @ConfigAttributeChecker(name=SSL_ENABLED_NAME)
+ protected Boolean checkSSLEnabled(Boolean value) {
if ( value.booleanValue() && (getMcastPort() != 0) ) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_MUST_BE_FALSE_WHEN_2_IS_NOT_0.toLocalizedString(new Object[] {SSL_ENABLED_NAME, value, MCAST_PORT_NAME}));
}
+ return value;
}
-
- protected void checkClusterSSLEnabled(Boolean value) {
- _checkIfModifiable(CLUSTER_SSL_ENABLED_NAME);
+
+ @ConfigAttributeChecker(name=CLUSTER_SSL_ENABLED_NAME)
+ protected Boolean checkClusterSSLEnabled(Boolean value) {
if ( value.booleanValue() && (getMcastPort() != 0) ) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_MUST_BE_FALSE_WHEN_2_IS_NOT_0.toLocalizedString(new Object[] {CLUSTER_SSL_ENABLED_NAME, value, MCAST_PORT_NAME}));
}
+ return value;
}
- protected void checkHttpServicePort(int value) {
- minMaxCheck(HTTP_SERVICE_PORT_NAME, value, 0, 65535);
- }
-
- public boolean isHttpServicePortModifiable() {
- //Need to set "true" for hydra teststo set REST service port
- return true;
- }
-
- protected void checkHttpServiceBindAddress(String value) {
- _checkIfModifiable(HTTP_SERVICE_BIND_ADDRESS_NAME);
+ @ConfigAttributeChecker(name=HTTP_SERVICE_BIND_ADDRESS_NAME)
+ protected String checkHttpServiceBindAddress(String value) {
if (value != null && value.length() > 0 &&
!SocketCreator.isLocalHost(value)) {
throw new IllegalArgumentException(
@@ -298,400 +188,12 @@ public abstract class AbstractDistributionConfig
.toLocalizedString(new Object[]{value, SocketCreator.getMyAddresses()
}));
}
- }
-
- public boolean isHttpServiceBindAddressModifiable() {
- return _modifiableDefault();
- }
-
- //Add for HTTP Service SSL Start
- public boolean isHttpServiceSSLEnabledModifiable(){
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSL(){
- _checkIfModifiable(HTTP_SERVICE_SSL_ENABLED_NAME);
+ return value;
}
- public boolean isHttpServiceSSLRequireAuthenticationModifiable(){
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLRequireAuthentication(){
- _checkIfModifiable(HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME);
- }
-
- public boolean isHttpServiceSSLProtocolsModifiable(){
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLProtocols(){
- _checkIfModifiable(HTTP_SERVICE_SSL_PROTOCOLS_NAME);
- }
-
- public boolean isHttpServiceSSLCiphersModifiable(){
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLCiphers(){
- _checkIfModifiable(HTTP_SERVICE_SSL_CIPHERS_NAME);
- }
-
- public void checkHttpServiceSSLKeyStore(String value) {
- _checkIfModifiable(HTTP_SERVICE_SSL_KEYSTORE_NAME);
- }
- public boolean isHttpServiceSSLKeyStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLKeyStoreType(String value) {
- _checkIfModifiable(HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME);
- }
- public boolean isHttpServiceSSLKeyStoreTypeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLKeyStorePassword(String value) {
- _checkIfModifiable(HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME);
- }
- public boolean isHttpServiceSSLKeyStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLTrustStore(String value) {
- _checkIfModifiable(HTTP_SERVICE_SSL_TRUSTSTORE_NAME);
- }
- public boolean isHttpServiceSSLTrustStoreModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isHttpServiceSSLTrustStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkHttpServiceSSLTrustStorePassword(String value) {
- _checkIfModifiable(HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME);
- }
-
-//Add for HTTP Service SSL End
-
-
-
- protected void checkStartDevRestApi() {
- _checkIfModifiable(START_DEV_REST_API_NAME);
- }
- @Override
- public boolean isStartDevRestApiModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isSSLEnabledModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isClusterSSLEnabledModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSSLProtocols(String value) {
- _checkIfModifiable(SSL_PROTOCOLS_NAME);
- }
- protected void checkClusterSSLProtocols(String value) {
- _checkIfModifiable(CLUSTER_SSL_PROTOCOLS_NAME);
- }
- public boolean isSSLProtocolsModifiable() {
- return _modifiableDefault();
- }
- public boolean isClusterSSLProtocolsModifiable() {
- return _modifiableDefault();
- }
- protected void checkSSLCiphers(String value) {
- _checkIfModifiable(SSL_CIPHERS_NAME);
- }
- protected void checkClusterSSLCiphers(String value) {
- _checkIfModifiable(CLUSTER_SSL_CIPHERS_NAME);
- }
- public boolean isSSLCiphersModifiable() {
- return _modifiableDefault();
- }
- public boolean isClusterSSLCiphersModifiable() {
- return _modifiableDefault();
- }
- public void checkSSLRequireAuthentication(Boolean value) {
- _checkIfModifiable(SSL_REQUIRE_AUTHENTICATION_NAME);
- }
- public void checkClusterSSLRequireAuthentication(Boolean value) {
- _checkIfModifiable(CLUSTER_SSL_REQUIRE_AUTHENTICATION_NAME);
- }
- public boolean isSSLRequireAuthenticationModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isClusterSSLRequireAuthenticationModifiable() {
- return _modifiableDefault();
- }
-
- public void checkClusterSSLKeyStore(String value) {
- _checkIfModifiable(CLUSTER_SSL_KEYSTORE_NAME);
- }
- public boolean isClusterSSLKeyStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkClusterSSLKeyStoreType(String value) {
- _checkIfModifiable(CLUSTER_SSL_KEYSTORE_TYPE_NAME);
- }
- public boolean isClusterSSLKeyStoreTypeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkClusterSSLKeyStorePassword(String value) {
- _checkIfModifiable(CLUSTER_SSL_KEYSTORE_PASSWORD_NAME);
- }
- public boolean isClusterSSLKeyStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkClusterSSLTrustStore(String value) {
- _checkIfModifiable(CLUSTER_SSL_TRUSTSTORE_NAME);
- }
- public boolean isClusterSSLTrustStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkClusterSSLTrustStorePassword(String value) {
- _checkIfModifiable(CLUSTER_SSL_TRUSTSTORE_PASSWORD_NAME);
- }
-
- public boolean isClusterSSLTrustStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkServerSSLKeyStore(String value) {
- _checkIfModifiable(SERVER_SSL_KEYSTORE_NAME);
- }
- public boolean isServerSSLKeyStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkServerSSLKeyStoreType(String value) {
- _checkIfModifiable(SERVER_SSL_KEYSTORE_TYPE_NAME);
- }
- public boolean isServerSSLKeyStoreTypeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkServerSSLKeyStorePassword(String value) {
- _checkIfModifiable(SERVER_SSL_KEYSTORE_PASSWORD_NAME);
- }
- public boolean isServerSSLKeyStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkServerSSLTrustStore(String value) {
- _checkIfModifiable(SERVER_SSL_TRUSTSTORE_NAME);
- }
- public boolean isServerSSLTrustStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkServerSSLTrustStorePassword(String value) {
- _checkIfModifiable(SERVER_SSL_TRUSTSTORE_PASSWORD_NAME);
- }
-
- public boolean isServerSSLTrustStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkJmxManagerSSLKeyStore(String value) {
- _checkIfModifiable(JMX_MANAGER_SSL_KEYSTORE_NAME);
- }
- public boolean isJmxManagerSSLKeyStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkJmxManagerSSLKeyStoreType(String value) {
- _checkIfModifiable(JMX_MANAGER_SSL_KEYSTORE_TYPE_NAME);
- }
- public boolean isJmxManagerSSLKeyStoreTypeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkJmxManagerSSLKeyStorePassword(String value) {
- _checkIfModifiable(JMX_MANAGER_SSL_KEYSTORE_PASSWORD_NAME);
- }
- public boolean isJmxManagerSSLKeyStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkJmxManagerSSLTrustStore(String value) {
- _checkIfModifiable(JMX_MANAGER_SSL_TRUSTSTORE_NAME);
- }
- public boolean isJmxManagerSSLTrustStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkJmxManagerSSLTrustStorePassword(String value) {
- _checkIfModifiable(JMX_MANAGER_SSL_TRUSTSTORE_PASSWORD_NAME);
- }
-
- public boolean isJmxManagerSSLTrustStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkGatewaySSLKeyStore(String value) {
- _checkIfModifiable(GATEWAY_SSL_KEYSTORE_NAME);
- }
- public boolean isGatewaySSLKeyStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkGatewaySSLKeyStoreType(String value) {
- _checkIfModifiable(GATEWAY_SSL_KEYSTORE_TYPE_NAME);
- }
- public boolean isGatewaySSLKeyStoreTypeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkGatewaySSLKeyStorePassword(String value) {
- _checkIfModifiable(GATEWAY_SSL_KEYSTORE_PASSWORD_NAME);
- }
- public boolean isGatewaySSLKeyStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkGatewaySSLTrustStore(String value) {
- _checkIfModifiable(GATEWAY_SSL_TRUSTSTORE_NAME);
- }
- public boolean isGatewaySSLTrustStoreModifiable() {
- return _modifiableDefault();
- }
-
- public void checkGatewaySSLTrustStorePassword(String value) {
- _checkIfModifiable(GATEWAY_SSL_TRUSTSTORE_PASSWORD_NAME);
- }
-
- public boolean isGatewaySSLTrustStorePasswordModifiable() {
- return _modifiableDefault();
- }
-
- public void checkMcastSendBufferSizeModifiable() {
- _checkIfModifiable(MCAST_SEND_BUFFER_SIZE_NAME);
- }
-
- public boolean isMcastSendBufferSizeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkMcastRecvBufferSizeModifiable() {
- _checkIfModifiable(MCAST_RECV_BUFFER_SIZE_NAME);
- }
-
- public boolean isMcastRecvBufferSizeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkMcastFlowControlModifiable() {
- _checkIfModifiable(MCAST_FLOW_CONTROL_NAME);
- }
-
- public boolean isMcastFlowControlModifiable() {
- return _modifiableDefault();
- }
-
- public void checkUdpSendBufferSizeModifiable() {
- _checkIfModifiable(UDP_SEND_BUFFER_SIZE_NAME);
- }
-
- public boolean isUdpSendBufferSizeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkUdpRecvBufferSizeModifiable() {
- _checkIfModifiable(UDP_RECV_BUFFER_SIZE_NAME);
- }
-
- public boolean isUdpRecvBufferSizeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkUdpFragmentSizeModifiable() {
- _checkIfModifiable(UDP_FRAGMENT_SIZE_NAME);
- }
-
- public boolean isUdpFragmentSizeModifiable() {
- return _modifiableDefault();
- }
-
- public void checkDisableTcpModifiable() {
- _checkIfModifiable(DISABLE_TCP_NAME);
- }
-
- public boolean isDisableTcpModifiable() {
- return _modifiableDefault();
- }
-
- public void checkEnableTimeStatisticsModifiable() {
- _checkIfModifiable(ENABLE_TIME_STATISTICS_NAME);
- }
-
- public boolean isEnableTimeStatisticsModifiable() {
- return _modifiableDefault();
- }
-
- public void checkMemberTimeoutModifiable() {
- _checkIfModifiable(MEMBER_TIMEOUT_NAME);
- }
-
- public boolean isMemberTimeoutModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isMembershipPortRangeModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isMaxNumberOfTiesModifiable(){
- return _modifiableDefault();
- }
-
- public boolean isMaxTimeOutModifiable(){
- return _modifiableDefault();
- }
-
- protected void checkStatisticSampleRate(int value) {
- _checkIfModifiable(STATISTIC_SAMPLE_RATE_NAME);
- if (value < MIN_STATISTIC_SAMPLE_RATE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {STATISTIC_SAMPLE_RATE_NAME, Integer.valueOf(value), Integer.valueOf(MIN_STATISTIC_SAMPLE_RATE)}));
- }
- if (value > MAX_STATISTIC_SAMPLE_RATE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {STATISTIC_SAMPLE_RATE_NAME, Integer.valueOf(value), Integer.valueOf(MAX_STATISTIC_SAMPLE_RATE)}));
- }
- }
- public boolean isStatisticSampleRateModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isDeltaPropagationModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkDeltaPropagationModifiable() {
- _checkIfModifiable(DELTA_PROPAGATION_PROP_NAME);
- }
-
- protected String checkRemoteLocators(String value) {
- _checkIfModifiable(REMOTE_LOCATORS_NAME);
- return value ;
- }
-
- public boolean isDistributedSystemIdModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkDistributedSystemId(int value) {
- _checkIfModifiable(DISTRIBUTED_SYSTEM_ID_NAME);
+ @ConfigAttributeChecker(name=DISTRIBUTED_SYSTEM_ID_NAME)
+ protected int checkDistributedSystemId(int value) {
String distributedSystemListener = System
.getProperty("gemfire.DistributedSystemListener");
//this check is specific for Jayesh's use case of WAN BootStraping
@@ -707,51 +209,20 @@ public abstract class AbstractDistributionConfig
if (value > MAX_DISTRIBUTED_SYSTEM_ID) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {DISTRIBUTED_SYSTEM_ID_NAME, Integer.valueOf(value), Integer.valueOf(MAX_DISTRIBUTED_SYSTEM_ID)}));
}
+ return value;
}
- public boolean isEnforceUniqueHostModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkEnforceUniqueHostModifiable() {
- _checkIfModifiable(ENFORCE_UNIQUE_HOST_NAME);
- }
-
- public boolean isRedundancyZoneModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkRedundancyZoneModifiable() {
- _checkIfModifiable(REDUNDANCY_ZONE_NAME);
- }
-
- protected void checkSSLPropertyModifiable() {
- _checkIfModifiable(SSL_SYSTEM_PROPS_NAME);
- }
-
- protected boolean isSSLPropertyModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkUserCommandPackages(String value) {
- _checkIfModifiable(USER_COMMAND_PACKAGES);
- }
-
- public boolean isUserCommandPackagesModifiable() {
- return _modifiableDefault();
- }
-
/**
* Makes sure that the locator string used to configure discovery is
* valid.
- *
+ *
* <p>Starting in 4.0, we accept locators in the format
* "host:port" in addition to the traditional "host:bind-address[port]" format.
* See bug 32306.
- *
+ *
* <p>Starting in 5.1.0.4, we accept locators in the format
* "host@bind-address[port]" to allow use of numeric IPv6 addresses
- *
+ *
* @return The locator string in the traditional "host:bind-address[port]"
* format.
*
@@ -759,9 +230,8 @@ public abstract class AbstractDistributionConfig
* If <code>value</code> is not a valid locator
* configuration
*/
+ @ConfigAttributeChecker(name=LOCATORS_NAME)
protected String checkLocators(String value) {
- _checkIfModifiable(LOCATORS_NAME);
-
// validate locators value
StringBuffer sb = new StringBuffer();
@@ -784,7 +254,7 @@ public abstract class AbstractDistributionConfig
// starting in 5.1.0.4 we allow '@' as the bind-addr separator
// to let people use IPv6 numeric addresses (which contain colons)
int bindAddrIdx = locator.lastIndexOf('@', portIndex - 1);
-
+
if (bindAddrIdx < 0) {
bindAddrIdx = locator.lastIndexOf(':', portIndex - 1);
}
@@ -870,123 +340,9 @@ public abstract class AbstractDistributionConfig
return sb.toString();
}
- public boolean isLocatorsModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isLocatorWaitTimeModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isRemoteLocatorsModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkAckWaitThreshold(int value) {
- _checkIfModifiable(ACK_WAIT_THRESHOLD_NAME);
- if (value < MIN_ACK_WAIT_THRESHOLD) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {ACK_WAIT_THRESHOLD_NAME, Integer.valueOf(value), Integer.valueOf(MIN_ACK_WAIT_THRESHOLD)}));
- }
- if (value > MAX_ACK_WAIT_THRESHOLD) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {ACK_WAIT_THRESHOLD_NAME, Integer.valueOf(value), Integer.valueOf(MAX_ACK_WAIT_THRESHOLD)}));
- }
- }
- public boolean isAckWaitThresholdModifiable() {
- return _modifiableDefault();
- }
-
-
- protected void checkAckSevereAlertThreshold(int value) {
- _checkIfModifiable(ACK_SEVERE_ALERT_THRESHOLD_NAME);
- if (value < MIN_ACK_SEVERE_ALERT_THRESHOLD) {
- throw new IllegalArgumentException("Could not set \"" + ACK_SEVERE_ALERT_THRESHOLD_NAME + "\" to \"" + value + "\" because its value can not be less than \"" + MIN_ACK_SEVERE_ALERT_THRESHOLD + "\".");
- }
- if (value > MAX_ACK_SEVERE_ALERT_THRESHOLD) {
- throw new IllegalArgumentException("Could not set \"" + ACK_SEVERE_ALERT_THRESHOLD_NAME + "\" to \"" + value + "\" because its value can not be greater than \"" + MAX_ACK_SEVERE_ALERT_THRESHOLD + "\".");
- }
- }
- public boolean isAckSevereAlertThresholdModifiable() {
- return _modifiableDefault();
- }
-
-
- public boolean isArchiveFileSizeLimitModifiable() {
- return _modifiableDefault();
- }
- protected void checkArchiveFileSizeLimit(int value) {
- _checkIfModifiable(ARCHIVE_FILE_SIZE_LIMIT_NAME);
- if (value < MIN_ARCHIVE_FILE_SIZE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {ARCHIVE_FILE_SIZE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_ARCHIVE_FILE_SIZE_LIMIT)}));
- }
- if (value > MAX_ARCHIVE_FILE_SIZE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {ARCHIVE_FILE_SIZE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_ARCHIVE_FILE_SIZE_LIMIT)}));
- }
- }
- public boolean isArchiveDiskSpaceLimitModifiable() {
- return _modifiableDefault();
- }
- protected void checkArchiveDiskSpaceLimit(int value) {
- _checkIfModifiable(ARCHIVE_DISK_SPACE_LIMIT_NAME);
- if (value < MIN_ARCHIVE_DISK_SPACE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {ARCHIVE_DISK_SPACE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_ARCHIVE_DISK_SPACE_LIMIT)}));
- }
- if (value > MAX_ARCHIVE_DISK_SPACE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {ARCHIVE_DISK_SPACE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_ARCHIVE_DISK_SPACE_LIMIT)}));
- }
- }
- public boolean isLogFileSizeLimitModifiable() {
- return _modifiableDefault();
- }
- protected void checkLogFileSizeLimit(int value) {
- _checkIfModifiable(LOG_FILE_SIZE_LIMIT_NAME);
- if (value < MIN_LOG_FILE_SIZE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {LOG_FILE_SIZE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_LOG_FILE_SIZE_LIMIT)}));
- }
- if (value > MAX_LOG_FILE_SIZE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {LOG_FILE_SIZE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_LOG_FILE_SIZE_LIMIT)}));
- }
- }
- public boolean isLogDiskSpaceLimitModifiable() {
- return _modifiableDefault();
- }
- protected void checkLogDiskSpaceLimit(int value) {
- _checkIfModifiable(LOG_DISK_SPACE_LIMIT_NAME);
- if (value < MIN_LOG_DISK_SPACE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {LOG_DISK_SPACE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_LOG_DISK_SPACE_LIMIT)}));
- }
- if (value > MAX_LOG_DISK_SPACE_LIMIT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {LOG_DISK_SPACE_LIMIT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_LOG_DISK_SPACE_LIMIT)}));
- }
- }
-
- /** a generic method for checking a new integer setting against a min
- and max value */
- protected void minMaxCheck(String propName, int value, int minValue, int maxValue) {
- _checkIfModifiable(propName);
- if (value < minValue) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {propName, Integer.valueOf(value), Integer.valueOf(minValue)}));
- }
- else if (value > maxValue) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {propName, Integer.valueOf(value), Integer.valueOf(maxValue)}));
- }
- }
-
-
- /** check a new multicast send-buffer size setting */
- protected void checkMcastSendBufferSize(int newSize) {
- minMaxCheck(MCAST_SEND_BUFFER_SIZE_NAME, newSize,
- MIN_MCAST_SEND_BUFFER_SIZE, Integer.MAX_VALUE);
- }
-
- /** check a new multicast recv-buffer size setting */
- protected void checkMcastRecvBufferSize(int newSize) {
- minMaxCheck(MCAST_RECV_BUFFER_SIZE_NAME, newSize,
- MIN_MCAST_RECV_BUFFER_SIZE, Integer.MAX_VALUE);
- }
-
/** check a new mcast flow-control setting */
- protected void checkMcastFlowControl(FlowControlParams params) {
- _checkIfModifiable(MCAST_FLOW_CONTROL_NAME);
+ @ConfigAttributeChecker(name=MCAST_FLOW_CONTROL_NAME)
+ protected FlowControlParams checkMcastFlowControl(FlowControlParams params) {
int value = params.getByteAllowance();
if (value < MIN_FC_BYTE_ALLOWANCE) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_BYTEALLOWANCE_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {MCAST_FLOW_CONTROL_NAME, Integer.valueOf(value), Integer.valueOf(MIN_FC_BYTE_ALLOWANCE)}));
@@ -1005,33 +361,12 @@ public abstract class AbstractDistributionConfig
else if (value > MAX_FC_RECHARGE_BLOCK_MS) {
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_RECHARGEBLOCKMS_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {MCAST_FLOW_CONTROL_NAME, Integer.valueOf(value), Integer.valueOf(MAX_FC_RECHARGE_BLOCK_MS)}));
}
+ return params;
}
- /** check a new udp message fragment size setting */
- protected void checkUdpFragmentSize(int value) {
- minMaxCheck(UDP_FRAGMENT_SIZE_NAME, value,
- MIN_UDP_FRAGMENT_SIZE, MAX_UDP_FRAGMENT_SIZE);
- }
-
- /** check a new udp send-buffer size setting */
- protected void checkUdpSendBufferSize(int newSize) {
- minMaxCheck(UDP_SEND_BUFFER_SIZE_NAME, newSize,
- MIN_UDP_SEND_BUFFER_SIZE, Integer.MAX_VALUE);
- }
-
- /** check a new multicast recv-buffer size setting */
- protected void checkUdpRecvBufferSize(int newSize) {
- minMaxCheck(UDP_RECV_BUFFER_SIZE_NAME, newSize,
- MIN_UDP_RECV_BUFFER_SIZE, Integer.MAX_VALUE);
- }
-
- /** check a new member-timeout setting */
- protected void checkMemberTimeout(int value) {
- minMaxCheck(MEMBER_TIMEOUT_NAME, value,
- MIN_MEMBER_TIMEOUT, MAX_MEMBER_TIMEOUT);
- }
- protected void checkMembershipPortRange(int[] value) {
+ @ConfigAttributeChecker(name=MEMBERSHIP_PORT_RANGE_NAME)
+ protected int[] checkMembershipPortRange(int[] value) {
minMaxCheck(MEMBERSHIP_PORT_RANGE_NAME, value[0],
DEFAULT_MEMBERSHIP_PORT_RANGE[0],
value[1]);
@@ -1045,117 +380,36 @@ public abstract class AbstractDistributionConfig
throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.
toLocalizedString(new Object[] {MEMBERSHIP_PORT_RANGE_NAME, value[0]+"-"+value[1], Integer.valueOf(3)}));
}
+ return value;
}
- public boolean isAsyncDistributionTimeoutModifiable() {
- return _modifiableDefault();
- }
- protected void checkAsyncDistributionTimeout(int value) {
- _checkIfModifiable(ASYNC_DISTRIBUTION_TIMEOUT_NAME);
- if (value < MIN_ASYNC_DISTRIBUTION_TIMEOUT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {ASYNC_DISTRIBUTION_TIMEOUT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_ASYNC_DISTRIBUTION_TIMEOUT)}));
- }
- if (value > MAX_ASYNC_DISTRIBUTION_TIMEOUT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {ASYNC_DISTRIBUTION_TIMEOUT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_ASYNC_DISTRIBUTION_TIMEOUT)}));
- }
- }
- public boolean isAsyncQueueTimeoutModifiable() {
- return _modifiableDefault();
- }
- protected void checkAsyncQueueTimeout(int value) {
- _checkIfModifiable(ASYNC_QUEUE_TIMEOUT_NAME);
- if (value < MIN_ASYNC_QUEUE_TIMEOUT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {ASYNC_QUEUE_TIMEOUT_NAME, Integer.valueOf(value), Integer.valueOf(MIN_ASYNC_QUEUE_TIMEOUT)}));
- }
- if (value > MAX_ASYNC_QUEUE_TIMEOUT) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {ASYNC_QUEUE_TIMEOUT_NAME, Integer.valueOf(value), Integer.valueOf(MAX_ASYNC_QUEUE_TIMEOUT)}));
- }
- }
- public boolean isAsyncMaxQueueSizeModifiable() {
- return _modifiableDefault();
- }
- protected void checkAsyncMaxQueueSize(int value) {
- _checkIfModifiable(ASYNC_MAX_QUEUE_SIZE_NAME);
- if (value < MIN_ASYNC_MAX_QUEUE_SIZE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {ASYNC_MAX_QUEUE_SIZE_NAME, Integer.valueOf(value), Integer.valueOf(MIN_ASYNC_MAX_QUEUE_SIZE)}));
- }
- if (value > MAX_ASYNC_MAX_QUEUE_SIZE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {ASYNC_MAX_QUEUE_SIZE_NAME, Integer.valueOf(value), Integer.valueOf(MAX_ASYNC_MAX_QUEUE_SIZE)}));
- }
- }
-
/** @since 5.7 */
- protected void checkClientConflation(String value) {
+ @ConfigAttributeChecker(name=CLIENT_CONFLATION_PROP_NAME)
+ protected String checkClientConflation(String value) {
if (! (value.equals(CLIENT_CONFLATION_PROP_VALUE_DEFAULT) ||
value.equals(CLIENT_CONFLATION_PROP_VALUE_ON) ||
value.equals(CLIENT_CONFLATION_PROP_VALUE_OFF)) ) {
throw new IllegalArgumentException("Could not set \"" + CLIENT_CONFLATION_PROP_NAME + "\" to \"" + value + "\" because its value is not recognized");
}
- }
-
- /** @since 5.7 */
- public boolean isClientConflationModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkDurableClientId(String value) {
- _checkIfModifiable(DURABLE_CLIENT_ID_NAME);
- }
-
- public boolean isDurableClientIdModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkDurableClientTimeout(int value) {
- _checkIfModifiable(DURABLE_CLIENT_TIMEOUT_NAME);
+ return value;
}
- public boolean isDurableClientTimeoutModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityClientAuthInit(String value) {
- _checkIfModifiable(SECURITY_CLIENT_AUTH_INIT_NAME);
- }
-
- public boolean isSecurityClientAuthInitModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityClientAuthenticator(String value) {
- _checkIfModifiable(SECURITY_CLIENT_AUTHENTICATOR_NAME);
- }
-
- public boolean isSecurityClientAuthenticatorModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityClientDHAlgo(String value) {
- _checkIfModifiable(SECURITY_CLIENT_DHALGO_NAME);
- }
-
- public boolean isSecurityClientDHAlgoModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityPeerAuthInit(String value) {
- _checkIfModifiable(SECURITY_PEER_AUTH_INIT_NAME);
+ @ConfigAttributeChecker(name=SECURITY_PEER_AUTH_INIT_NAME)
+ protected String checkSecurityPeerAuthInit(String value) {
if (value != null && value.length() > 0 && getMcastPort() != 0) {
String mcastInfo = MCAST_PORT_NAME + "[" + getMcastPort() + "]";
throw new IllegalArgumentException(
LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_2_MUST_BE_0_WHEN_SECURITY_IS_ENABLED
- .toLocalizedString(new Object[] {
+ .toLocalizedString(new Object[] {
SECURITY_PEER_AUTH_INIT_NAME, value, mcastInfo }));
}
+ return value;
}
- public boolean isSecurityPeerAuthInitModifiable() {
- return _modifiableDefault();
- }
- protected void checkSecurityPeerAuthenticator(String value) {
- _checkIfModifiable(SECURITY_PEER_AUTHENTICATOR_NAME);
+ @ConfigAttributeChecker(name=SECURITY_PEER_AUTHENTICATOR_NAME)
+ protected String checkSecurityPeerAuthenticator(String value) {
if (value != null && value.length() > 0 && getMcastPort() != 0) {
String mcastInfo = MCAST_PORT_NAME + "[" + getMcastPort() + "]";
throw new IllegalArgumentException(
@@ -1166,219 +420,49 @@ public abstract class AbstractDistributionConfig
value,
mcastInfo}));
}
+ return value;
}
- public boolean isSecurityPeerAuthenticatorModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityClientAccessor(String value) {
- _checkIfModifiable(SECURITY_CLIENT_ACCESSOR_NAME);
- }
-
- public boolean isSecurityClientAccessorModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityClientAccessorPP(String value) {
- _checkIfModifiable(SECURITY_CLIENT_ACCESSOR_PP_NAME);
- }
-
- public boolean isSecurityClientAccessorPPModifiable() {
- return _modifiableDefault();
- }
- protected void checkSecurityLogLevel(int value) {
- _checkIfModifiable(SECURITY_LOG_LEVEL_NAME);
+ @ConfigAttributeChecker(name=SECURITY_LOG_LEVEL_NAME)
+ protected int checkSecurityLogLevel(int value) {
if (value < MIN_LOG_LEVEL) {
throw new IllegalArgumentException(
LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(
- new Object[] {
- SECURITY_LOG_LEVEL_NAME,
- LogWriterImpl.levelToString(value),
+ new Object[] {
+ SECURITY_LOG_LEVEL_NAME,
+ LogWriterImpl.levelToString(value),
LogWriterImpl.levelToString(MIN_LOG_LEVEL)}));
}
if (value > MAX_LOG_LEVEL) {
throw new IllegalArgumentException(
LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(
- new Object[] {
- SECURITY_LOG_LEVEL_NAME,
- LogWriterImpl.levelToString(value),
+ new Object[] {
+ SECURITY_LOG_LEVEL_NAME,
+ LogWriterImpl.levelToString(value),
LogWriterImpl.levelToString(MAX_LOG_LEVEL)}));
}
+ return value;
}
- public boolean isSecurityLogLevelModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityLogFile(File value) {
- _checkIfModifiable(SECURITY_LOG_FILE_NAME);
- }
-
- public boolean isSecurityLogFileModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurityPeerMembershipTimeout(int value) {
- _checkIfModifiable(SECURITY_PEER_VERIFYMEMBER_TIMEOUT_NAME);
- minMaxCheck(SECURITY_PEER_VERIFYMEMBER_TIMEOUT_NAME, value,
- 0, MAX_SECURITY_PEER_VERIFYMEMBER_TIMEOUT);
- }
-
- public boolean isSecurityPeerMembershipTimeoutModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkSecurity(String key, String value) {
- _checkIfModifiable(key);
- }
-
- public boolean isSecurityModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkRemoveUnresponsiveClientModifiable() {
- _checkIfModifiable(REMOVE_UNRESPONSIVE_CLIENT_PROP_NAME);
- }
-
- public boolean isRemoveUnresponsiveClientModifiable() {
- return _modifiableDefault();
- }
-
- /**
- * @since 7.0
- */
- protected void checkGroups(String value) {
- _checkIfModifiable(GROUPS_NAME);
- }
- /**
- * @since 7.0
- */
- public boolean isGroupsModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkJmxManager() {
- _checkIfModifiable(JMX_MANAGER_NAME);
- }
- @Override
- public boolean isJmxManagerModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkJmxManagerStart() {
- _checkIfModifiable(JMX_MANAGER_START_NAME);
- }
- @Override
- public boolean isJmxManagerStartModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxSSLManagerEnabled() {
- _checkIfModifiable(JMX_MANAGER_SSL_NAME);
- }
- protected void checkJmxManagerSSLEnabled() {
- _checkIfModifiable(JMX_MANAGER_SSL_ENABLED_NAME);
- }
- public boolean isJmxManagerSSLEnabledModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerSSLCiphers() {
- _checkIfModifiable(JMX_MANAGER_SSL_CIPHERS_NAME);
- }
- public boolean isJmxManagerSSLCiphersModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerSSLProtocols() {
- _checkIfModifiable(JMX_MANAGER_SSL_PROTOCOLS_NAME);
- }
- public boolean isJmxManagerSSLProtocolsModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerSSLRequireAuthentication() {
- _checkIfModifiable(JMX_MANAGER_SSL_REQUIRE_AUTHENTICATION_NAME);
- }
- public boolean isJmxManagerSSLRequireAuthenticationModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerPort(int value) {
- minMaxCheck(JMX_MANAGER_PORT_NAME, value, 0, 65535);
- }
- @Override
- public boolean isJmxManagerPortModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerBindAddress(String value) {
- _checkIfModifiable(JMX_MANAGER_BIND_ADDRESS_NAME);
- }
- @Override
- public boolean isJmxManagerBindAddressModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerHostnameForClients(String value) {
- _checkIfModifiable(JMX_MANAGER_HOSTNAME_FOR_CLIENTS_NAME);
- }
- @Override
- public boolean isJmxManagerHostnameForClientsModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerPasswordFile(String value) {
- _checkIfModifiable(JMX_MANAGER_PASSWORD_FILE_NAME);
- }
- @Override
- public boolean isJmxManagerPasswordFileModifiable() {
- return _modifiableDefault();
- }
- protected void checkJmxManagerAccessFile(String value) {
- _checkIfModifiable(JMX_MANAGER_ACCESS_FILE_NAME);
- }
- @Override
- public boolean isJmxManagerAccessFileModifiable() {
- return _modifiableDefault();
- }
- @Override
- public boolean isJmxManagerHttpPortModifiable() {
- //return _modifiableDefault();
- return isHttpServicePortModifiable();
- }
- protected void checkJmxManagerHttpPort(int value) {
- minMaxCheck(JMX_MANAGER_HTTP_PORT_NAME, value, 0, 65535);
- }
- protected void checkJmxManagerUpdateRate(int value) {
- _checkIfModifiable(JMX_MANAGER_UPDATE_RATE_NAME);
- if (value < MIN_JMX_MANAGER_UPDATE_RATE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_LESS_THAN_2.toLocalizedString(new Object[] {JMX_MANAGER_UPDATE_RATE_NAME, Integer.valueOf(value), Integer.valueOf(MIN_JMX_MANAGER_UPDATE_RATE)}));
- }
- if (value > MAX_JMX_MANAGER_UPDATE_RATE) {
- throw new IllegalArgumentException(LocalizedStrings.AbstractDistributionConfig_COULD_NOT_SET_0_TO_1_BECAUSE_ITS_VALUE_CAN_NOT_BE_GREATER_THAN_2.toLocalizedString(new Object[] {JMX_MANAGER_UPDATE_RATE_NAME, Integer.valueOf(value), Integer.valueOf(MAX_JMX_MANAGER_UPDATE_RATE)}));
- }
- }
- @Override
- public boolean isJmxManagerUpdateRateModifiable() {
- return _modifiableDefault();
- }
- protected void checkMemcachedPort(int value) {
- minMaxCheck(MEMCACHED_PORT_NAME, value, 0, 65535);
- }
- public boolean isMemcachedPortModifiable() {
- return _modifiableDefault();
- }
- protected void checkMemcachedProtocol(String protocol) {
+ @ConfigAttributeChecker(name=MEMCACHED_PROTOCOL_NAME)
+ protected String checkMemcachedProtocol(String protocol) {
if (protocol == null
|| (!protocol.equalsIgnoreCase(GemFireMemcachedServer.Protocol.ASCII.name()) &&
!protocol.equalsIgnoreCase(GemFireMemcachedServer.Protocol.BINARY.name()))) {
throw new IllegalArgumentException(LocalizedStrings.
AbstractDistributionConfig_MEMCACHED_PROTOCOL_MUST_BE_ASCII_OR_BINARY.toLocalizedString());
}
+ return protocol;
}
public boolean isMemcachedProtocolModifiable() {
return false;
}
-
- protected void checkMemcachedBindAddress(String value) {
- _checkIfModifiable(MEMCACHED_BIND_ADDRESS_NAME);
+
+ @ConfigAttributeChecker(name=MEMCACHED_BIND_ADDRESS_NAME)
+ protected String checkMemcachedBindAddress(String value) {
if (value != null && value.length() > 0 &&
!SocketCreator.isLocalHost(value)) {
throw new IllegalArgumentException(
@@ -1386,92 +470,23 @@ public abstract class AbstractDistributionConfig
.toLocalizedString(new Object[]{value, SocketCreator.getMyAddresses()
}));
}
+ return value;
}
- public boolean isMemcachedBindAddressModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkRedisPort(int value) {
- minMaxCheck(REDIS_PORT_NAME, value, 0, 65535);
- }
- protected void checkRedisBindAddress(String value) {
- _checkIfModifiable(REDIS_BIND_ADDRESS_NAME);
+
+ @ConfigAttributeChecker(name=REDIS_BIND_ADDRESS_NAME)
+ protected String checkRedisBindAddress(String value) {
if (value != null && value.length() > 0 &&
- !SocketCreator.isLocalHost(value)) {
+ !SocketCreator.isLocalHost(value)) {
throw new IllegalArgumentException(
- LocalizedStrings.AbstractDistributionConfig_REDIS_BIND_ADDRESS_0_INVALID_MUST_BE_IN_1
- .toLocalizedString(new Object[]{value, SocketCreator.getMyAddresses()
- }));
+ LocalizedStrings.AbstractDistributionConfig_REDIS_BIND_ADDRESS_0_INVALID_MUST_BE_IN_1
+ .toLocalizedString(new Object[]{value, SocketCreator.getMyAddresses()
+ }));
}
- }
-
- protected void checkRedisPassword(String value) {
-
- }
-
- public boolean isRedisBindAddressModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isRedisPortModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isRedisPasswordModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isOffHeapMemorySizeModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkOffHeapMemorySize(String value) {
- _checkIfModifiable(OFF_HEAP_MEMORY_SIZE_NAME);
- }
-
- protected void checkEnableSharedConfiguration() {
- _checkIfModifiable(ENABLE_CLUSTER_CONFIGURATION_NAME);
- }
-
- protected void checkUseSharedConfiguration() {
- _checkIfModifiable(USE_CLUSTER_CONFIGURATION_NAME);
- }
-
- protected void checkLoadSharedConfigFromDir() {
- _checkIfModifiable(LOAD_CLUSTER_CONFIG_FROM_DIR_NAME);
- }
-
- protected void checkClusterConfigDir() {
- _checkIfModifiable(CLUSTER_CONFIGURATION_DIR);
- }
-
-
- public boolean isEnableSharedConfigurationModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isLoadSharedConfigFromDirModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isUseSharedConfigurationModifiable() {
- return _modifiableDefault();
+ return value;
}
- public boolean isLockMemoryModifiable() {
- return _modifiableDefault();
- }
-
- public boolean isDistributedTransactionsModifiable() {
- return _modifiableDefault();
- }
-
- protected void checkLockMemory(final boolean value) {
- _checkIfModifiable(LOCK_MEMORY_NAME);
- }
-
// AbstractConfig overriding methods
-
+
@Override
protected void checkAttributeName(String attName) {
if(!attName.startsWith(SECURITY_PREFIX_NAME) && !attName.startsWith(USERDEFINED_PREFIX_NAME)
@@ -1479,1308 +494,149 @@ public abstract class AbstractDistributionConfig
super.checkAttributeName(attName);
}
}
-
-
-
- // AbstractDistributionConfig methods
-
- static final String[] dcValidAttributeNames;
- static {
- String[] myAtts = new String[] {
- ACK_WAIT_THRESHOLD_NAME,
- ACK_SEVERE_ALERT_THRESHOLD_NAME,
- ARCHIVE_DISK_SPACE_LIMIT_NAME,
- ARCHIVE_FILE_SIZE_LIMIT_NAME,
- BIND_ADDRESS_NAME,
- SERVER_BIND_ADDRESS_NAME,
- CACHE_XML_FILE_NAME,
- DEPLOY_WORKING_DIR,
- LOG_DISK_SPACE_LIMIT_NAME,
- LOG_FILE_NAME,
- LOG_FILE_SIZE_LIMIT_NAME,
- LOG_LEVEL_NAME, LOCATORS_NAME, LOCATOR_WAIT_TIME_NAME, REMOTE_LOCATORS_NAME,
- MCAST_ADDRESS_NAME, MCAST_PORT_NAME, MCAST_TTL_NAME,
- MCAST_SEND_BUFFER_SIZE_NAME, MCAST_RECV_BUFFER_SIZE_NAME,
- MCAST_FLOW_CONTROL_NAME,
- TCP_PORT_NAME,
- SOCKET_LEASE_TIME_NAME, SOCKET_BUFFER_SIZE_NAME, CONSERVE_SOCKETS_NAME,
- NAME_NAME,
- ROLES_NAME,
- STATISTIC_ARCHIVE_FILE_NAME, STATISTIC_SAMPLE_RATE_NAME,
- STATISTIC_SAMPLING_ENABLED_NAME,
- SSL_ENABLED_NAME,
- SSL_PROTOCOLS_NAME,
- SSL_CIPHERS_NAME,
- SSL_REQUIRE_AUTHENTICATION_NAME,
- CLUSTER_SSL_ENABLED_NAME,
- CLUSTER_SSL_PROTOCOLS_NAME,
- CLUSTER_SSL_CIPHERS_NAME,
- CLUSTER_SSL_REQUIRE_AUTHENTICATION_NAME,
- CLUSTER_SSL_KEYSTORE_NAME,CLUSTER_SSL_KEYSTORE_TYPE_NAME,CLUSTER_SSL_KEYSTORE_PASSWORD_NAME,CLUSTER_SSL_TRUSTSTORE_NAME,CLUSTER_SSL_TRUSTSTORE_PASSWORD_NAME,
- UDP_SEND_BUFFER_SIZE_NAME, UDP_RECV_BUFFER_SIZE_NAME, UDP_FRAGMENT_SIZE_NAME,
- DISABLE_TCP_NAME,
- ENABLE_TIME_STATISTICS_NAME,
- MEMBER_TIMEOUT_NAME,
- MEMBERSHIP_PORT_RANGE_NAME,
- MAX_WAIT_TIME_FOR_RECONNECT_NAME,
- MAX_NUM_RECONNECT_TRIES,
- ASYNC_DISTRIBUTION_TIMEOUT_NAME,
- ASYNC_QUEUE_TIMEOUT_NAME,
- ASYNC_MAX_QUEUE_SIZE_NAME,
- START_LOCATOR_NAME,
- CLIENT_CONFLATION_PROP_NAME,
- DURABLE_CLIENT_ID_NAME,
- DURABLE_CLIENT_TIMEOUT_NAME,
-// DURABLE_CLIENT_KEEP_ALIVE_NAME,
- ENABLE_NETWORK_PARTITION_DETECTION_NAME,
- DISABLE_AUTO_RECONNECT_NAME,
- SECURITY_CLIENT_AUTH_INIT_NAME,
- SECURITY_CLIENT_AUTHENTICATOR_NAME,
- SECURITY_CLIENT_DHALGO_NAME,
- SECURITY_PEER_AUTH_INIT_NAME,
- SECURITY_PEER_AUTHENTICATOR_NAME,
- SECURITY_CLIENT_ACCESSOR_NAME,
- SECURITY_CLIENT_ACCESSOR_PP_NAME,
- SECURITY_LOG_LEVEL_NAME,
- SECURITY_LOG_FILE_NAME,
- SECURITY_PEER_VERIFYMEMBER_TIMEOUT_NAME,
- SECURITY_PREFIX_NAME,
- REMOVE_UNRESPONSIVE_CLIENT_PROP_NAME,
- DELTA_PROPAGATION_PROP_NAME,
- DISTRIBUTED_SYSTEM_ID_NAME,
- ENFORCE_UNIQUE_HOST_NAME,
- REDUNDANCY_ZONE_NAME,
- GROUPS_NAME,
- JMX_MANAGER_NAME,
- JMX_MANAGER_START_NAME,
- JMX_MANAGER_PORT_NAME,
- JMX_MANAGER_SSL_NAME,
- JMX_MANAGER_SSL_ENABLED_NAME,
- JMX_MANAGER_SSL_PROTOCOLS_NAME,
- JMX_MANAGER_SSL_CIPHERS_NAME,
- JMX_MANAGER_SSL_REQUIRE_AUTHENTICATION_NAME,
- JMX_MANAGER_SSL_KEYSTORE_NAME,JMX_MANAGER_SSL_KEYSTORE_TYPE_NAME,JMX_MANAGER_SSL_KEYSTORE_PASSWORD_NAME,JMX_MANAGER_SSL_TRUSTSTORE_NAME,JMX_MANAGER_SSL_TRUSTSTORE_PASSWORD_NAME,
- JMX_MANAGER_BIND_ADDRESS_NAME,
- JMX_MANAGER_HOSTNAME_FOR_CLIENTS_NAME,
- JMX_MANAGER_PASSWORD_FILE_NAME,
- JMX_MANAGER_ACCESS_FILE_NAME,
- JMX_MANAGER_HTTP_PORT_NAME,
- JMX_MANAGER_UPDATE_RATE_NAME,
- MEMCACHED_PORT_NAME,
- MEMCACHED_PROTOCOL_NAME,
- MEMCACHED_BIND_ADDRESS_NAME,
- REDIS_PORT_NAME,
- REDIS_BIND_ADDRESS_NAME,
- REDIS_PASSWORD_NAME,
- USER_COMMAND_PACKAGES,
- ENABLE_CLUSTER_CONFIGURATION_NAME,
- USE_CLUSTER_CONFIGURATION_NAME,
- LOAD_CLUSTER_CONFIG_FROM_DIR_NAME,
- CLUSTER_CONFIGURATION_DIR,
- HTTP_SERVICE_PORT_NAME,
- HTTP_SERVICE_BIND_ADDRESS_NAME,
- START_DEV_REST_API_NAME,
- SERVER_SSL_ENABLED_NAME,
- SERVER_SSL_REQUIRE_AUTHENTICATION_NAME,
- SERVER_SSL_PROTOCOLS_NAME,
- SERVER_SSL_CIPHERS_NAME,
- SERVER_SSL_KEYSTORE_NAME,SERVER_SSL_KEYSTORE_TYPE_NAME,SERVER_SSL_KEYSTORE_PASSWORD_NAME,SERVER_SSL_TRUSTSTORE_NAME,SERVER_SSL_TRUSTSTORE_PASSWORD_NAME,
- GATEWAY_SSL_ENABLED_NAME,
- GATEWAY_SSL_REQUIRE_AUTHENTICATION_NAME,
- GATEWAY_SSL_PROTOCOLS_NAME,
- GATEWAY_SSL_CIPHERS_NAME,
- GATEWAY_SSL_KEYSTORE_NAME,GATEWAY_SSL_KEYSTORE_TYPE_NAME,GATEWAY_SSL_KEYSTORE_PASSWORD_NAME,GATEWAY_SSL_TRUSTSTORE_NAME,GATEWAY_SSL_TRUSTSTORE_PASSWORD_NAME,
- HTTP_SERVICE_SSL_ENABLED_NAME,
- HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME,
- HTTP_SERVICE_SSL_PROTOCOLS_NAME,
- HTTP_SERVICE_SSL_CIPHERS_NAME,
- HTTP_SERVICE_SSL_KEYSTORE_NAME,HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME,HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME,HTTP_SERVICE_SSL_TRUSTSTORE_NAME,HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME,
- OFF_HEAP_MEMORY_SIZE_NAME,
- LOCK_MEMORY_NAME,
- DISTRIBUTED_TRANSACTIONS_NAME
- };
- List atts = Arrays.asList(myAtts);
- Collections.sort(atts);
- dcValidAttributeNames = (String[])atts.toArray(new String[atts.size()]);
- }
public static boolean isWellKnownAttribute(String attName) {
return Arrays.binarySearch(dcValidAttributeNames, attName) >= 0;
}
-
+
public void setAttributeObject(String attName, Object attValue, ConfigSource source) {
+ // TODO: the setters is already checking the parameter type, do we still need to do this?
Class validValueClass = getAttributeType(attName);
if (attValue != null) {
// null is a "valid" value for any class
if (!validValueClass.isInstance(attValue)) {
- throw new InvalidValueException(LocalizedStrings.AbstractDistributionConfig_0_VALUE_1_MUST_BE_OF_TYPE_2.toLocalizedString(new Object[] {attName, attValue, validValueClass.getName()}));
+ throw new InvalidValueException(LocalizedStrings.AbstractDistributionConfig_0_VALUE_1_MUST_BE_OF_TYPE_2.toLocalizedString(new Object[]{attName, attValue, validValueClass.getName()}));
}
}
- if (attName.equalsIgnoreCase(ACK_WAIT_THRESHOLD_NAME)) {
- this.setAckWaitThreshold(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(ACK_SEVERE_ALERT_THRESHOLD_NAME)) {
- this.setAckSevereAlertThreshold(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(ARCHIVE_DISK_SPACE_LIMIT_NAME)) {
- this.setArchiveDiskSpaceLimit(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(ARCHIVE_FILE_SIZE_LIMIT_NAME)) {
- this.setArchiveFileSizeLimit(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(CACHE_XML_FILE_NAME)) {
- this.setCacheXmlFile((File)attValue);
- } else if (attName.equalsIgnoreCase(DEPLOY_WORKING_DIR)) {
- this.setDeployWorkingDir((File)attValue);
- } else if (attName.equalsIgnoreCase(LOG_DISK_SPACE_LIMIT_NAME)) {
- this.setLogDiskSpaceLimit(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(LOG_FILE_NAME)) {
- this.setLogFile((File)attValue);
- } else if (attName.equalsIgnoreCase(LOG_FILE_SIZE_LIMIT_NAME)) {
- this.setLogFileSizeLimit(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(LOG_LEVEL_NAME)) {
- this.setLogLevel(LogWriterImpl.levelNameToCode((String)attValue));
- } else if (attName.equalsIgnoreCase(LOCATORS_NAME)) {
- this.setLocators((String)attValue);
- } else if (attName.equalsIgnoreCase(LOCATOR_WAIT_TIME_NAME)) {
- this.setLocatorWaitTime(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(REMOTE_LOCATORS_NAME)) {
- this.setRemoteLocators((String)attValue);
- } else if (attName.equalsIgnoreCase(MCAST_ADDRESS_NAME)) {
- this.setMcastAddress((InetAddress)attValue);
- } else if (attName.equalsIgnoreCase(BIND_ADDRESS_NAME)) {
- this.setBindAddress((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_BIND_ADDRESS_NAME)) {
- this.setServerBindAddress((String)attValue);
- } else if (attName.equalsIgnoreCase(TCP_PORT_NAME)) {
- this.setTcpPort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MCAST_PORT_NAME)) {
- this.setMcastPort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MCAST_TTL_NAME)) {
- this.setMcastTtl(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(SOCKET_LEASE_TIME_NAME)) {
- this.setSocketLeaseTime(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(SOCKET_BUFFER_SIZE_NAME)) {
- this.setSocketBufferSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(CONSERVE_SOCKETS_NAME)) {
- this.setConserveSockets(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(ROLES_NAME)) {
- this.setRoles((String)attValue);
- } else if (attName.equalsIgnoreCase(NAME_NAME)) {
- this.setName((String)attValue);
- } else if (attName.equalsIgnoreCase(STATISTIC_ARCHIVE_FILE_NAME)) {
- this.setStatisticArchiveFile((File)attValue);
- } else if (attName.equalsIgnoreCase(STATISTIC_SAMPLE_RATE_NAME)) {
- this.setStatisticSampleRate(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(STATISTIC_SAMPLING_ENABLED_NAME)) {
- this.setStatisticSamplingEnabled(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(SSL_ENABLED_NAME)) {
- this.setSSLEnabled(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(SSL_PROTOCOLS_NAME)) {
- this.setSSLProtocols((String)attValue);
- } else if (attName.equalsIgnoreCase(SSL_CIPHERS_NAME)) {
- this.setSSLCiphers((String)attValue);
- } else if (attName.equalsIgnoreCase(SSL_REQUIRE_AUTHENTICATION_NAME)) {
- this.setSSLRequireAuthentication(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_ENABLED_NAME)) {
- this.setClusterSSLEnabled(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_PROTOCOLS_NAME)) {
- this.setClusterSSLProtocols((String)attValue);
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_CIPHERS_NAME)) {
- this.setClusterSSLCiphers((String)attValue);
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_REQUIRE_AUTHENTICATION_NAME)) {
- this.setClusterSSLRequireAuthentication(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_KEYSTORE_NAME)) {
- this.setClusterSSLKeyStore((String)attValue);
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_KEYSTORE_TYPE_NAME)) {
- this.setClusterSSLKeyStoreType((String)attValue);
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_KEYSTORE_PASSWORD_NAME)) {
- this.setClusterSSLKeyStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_TRUSTSTORE_NAME)) {
- this.setClusterSSLTrustStore((String)attValue);
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_TRUSTSTORE_PASSWORD_NAME)) {
- this.setClusterSSLTrustStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(MCAST_SEND_BUFFER_SIZE_NAME)) {
- this.setMcastSendBufferSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MCAST_RECV_BUFFER_SIZE_NAME)) {
- this.setMcastRecvBufferSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(UDP_SEND_BUFFER_SIZE_NAME)) {
- this.setUdpSendBufferSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(UDP_RECV_BUFFER_SIZE_NAME)) {
- this.setUdpRecvBufferSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MCAST_FLOW_CONTROL_NAME)) {
- this.setMcastFlowControl((FlowControlParams)attValue);
- } else if (attName.equalsIgnoreCase(UDP_FRAGMENT_SIZE_NAME)) {
- this.setUdpFragmentSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(DISABLE_TCP_NAME)) {
- this.setDisableTcp(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(ENABLE_TIME_STATISTICS_NAME)) {
- this.setEnableTimeStatistics(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(MEMBER_TIMEOUT_NAME)) {
- this.setMemberTimeout(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MEMBERSHIP_PORT_RANGE_NAME)) {
- this.setMembershipPortRange((int[])attValue);
- } else if (attName.equalsIgnoreCase(MAX_WAIT_TIME_FOR_RECONNECT_NAME)){
- this.setMaxWaitTimeForReconnect(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MAX_NUM_RECONNECT_TRIES)){
- this.setMaxNumReconnectTries(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(ASYNC_DISTRIBUTION_TIMEOUT_NAME)) {
- this.setAsyncDistributionTimeout(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(ASYNC_QUEUE_TIMEOUT_NAME)) {
- this.setAsyncQueueTimeout(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(ASYNC_MAX_QUEUE_SIZE_NAME)) {
- this.setAsyncMaxQueueSize(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(START_LOCATOR_NAME)) {
- this.setStartLocator((String)attValue);
- } else if (attName.equalsIgnoreCase(CLIENT_CONFLATION_PROP_NAME)) {
- this.setClientConflation((String)attValue);
- } else if (attName.equalsIgnoreCase(DURABLE_CLIENT_ID_NAME)) {
- this.setDurableClientId((String)attValue);
- } else if (attName.equalsIgnoreCase(DURABLE_CLIENT_TIMEOUT_NAME)) {
- this.setDurableClientTimeout(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(SECURITY_CLIENT_AUTH_INIT_NAME)) {
- this.setSecurityClientAuthInit((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_CLIENT_AUTHENTICATOR_NAME)) {
- this.setSecurityClientAuthenticator((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_CLIENT_DHALGO_NAME)) {
- this.setSecurityClientDHAlgo((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_PEER_AUTH_INIT_NAME)) {
- this.setSecurityPeerAuthInit((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_PEER_AUTHENTICATOR_NAME)) {
- this.setSecurityPeerAuthenticator((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_CLIENT_ACCESSOR_NAME)) {
- this.setSecurityClientAccessor((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_CLIENT_ACCESSOR_PP_NAME)) {
- this.setSecurityClientAccessorPP((String)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_LOG_LEVEL_NAME)) {
- this.setSecurityLogLevel(LogWriterImpl.levelNameToCode((String)attValue));
- } else if (attName.equalsIgnoreCase(SECURITY_LOG_FILE_NAME)) {
- this.setSecurityLogFile((File)attValue);
- } else if (attName.equalsIgnoreCase(SECURITY_PEER_VERIFYMEMBER_TIMEOUT_NAME)) {
- this.setSecurityPeerMembershipTimeout(((Integer)attValue).intValue());
- } else if (attName.startsWith(SECURITY_PREFIX_NAME)) {
- this.setSecurity(attName,(String)attValue);
- } else if (attName.equalsIgnoreCase(ENABLE_NETWORK_PARTITION_DETECTION_NAME)) {
- this.setEnableNetworkPartitionDetection(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(DISABLE_AUTO_RECONNECT_NAME)) {
- this.setDisableAutoReconnect(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(REMOVE_UNRESPONSIVE_CLIENT_PROP_NAME)) {
- this.setRemoveUnresponsiveClient(((Boolean)attValue).booleanValue());
- } else if (attName.startsWith(DELTA_PROPAGATION_PROP_NAME)) {
- this.setDeltaPropagation((((Boolean)attValue).booleanValue()));
- } else if (attName.startsWith(DISTRIBUTED_SYSTEM_ID_NAME)) {
- this.setDistributedSystemId((Integer)attValue);
- } else if (attName.startsWith(REDUNDANCY_ZONE_NAME)) {
- this.setRedundancyZone((String)attValue);
- } else if (attName.startsWith(ENFORCE_UNIQUE_HOST_NAME)) {
- this.setEnforceUniqueHost(((Boolean)attValue).booleanValue());
- } else if (attName.startsWith(USERDEFINED_PREFIX_NAME)) {
+ if (attName.startsWith(USERDEFINED_PREFIX_NAME)) {
//Do nothing its user defined property.
- } else if (attName.startsWith(SSL_SYSTEM_PROPS_NAME) || attName.startsWith(SYS_PROP_NAME)) {
- this.setSSLProperty(attName, (String)attValue);
- } else if (attName.equalsIgnoreCase(GROUPS_NAME)) {
- this.setGroups((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_NAME)) {
- this.setJmxManager((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_START_NAME)) {
- this.setJmxManagerStart((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_NAME)) {
- this.setJmxManagerSSL((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_ENABLED_NAME)) {
- this.setJmxManagerSSLEnabled((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_REQUIRE_AUTHENTICATION_NAME)) {
- this.setJmxManagerSSLRequireAuthentication((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_PROTOCOLS_NAME)) {
- this.setJmxManagerSSLProtocols((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_CIPHERS_NAME)) {
- this.setJmxManagerSSLCiphers((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_KEYSTORE_NAME)) {
- this.setJmxManagerSSLKeyStore((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_KEYSTORE_TYPE_NAME)) {
- this.setJmxManagerSSLKeyStoreType((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_KEYSTORE_PASSWORD_NAME)) {
- this.setJmxManagerSSLKeyStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_TRUSTSTORE_NAME)) {
- this.setJmxManagerSSLTrustStore((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_SSL_TRUSTSTORE_PASSWORD_NAME)) {
- this.setJmxManagerSSLTrustStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_PORT_NAME)) {
- this.setJmxManagerPort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_BIND_ADDRESS_NAME)) {
- this.setJmxManagerBindAddress((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_HOSTNAME_FOR_CLIENTS_NAME)) {
- this.setJmxManagerHostnameForClients((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_PASSWORD_FILE_NAME)) {
- this.setJmxManagerPasswordFile((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_ACCESS_FILE_NAME)) {
- this.setJmxManagerAccessFile((String)attValue);
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_HTTP_PORT_NAME)) {
- this.setJmxManagerHttpPort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(JMX_MANAGER_UPDATE_RATE_NAME)) {
- this.setJmxManagerUpdateRate(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MEMCACHED_PORT_NAME)) {
- this.setMemcachedPort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(MEMCACHED_PROTOCOL_NAME)) {
- this.setMemcachedProtocol((String)attValue);
- } else if (attName.equalsIgnoreCase(MEMCACHED_BIND_ADDRESS_NAME)) {
- this.setMemcachedBindAddress((String)attValue);
- } else if (attName.equalsIgnoreCase(REDIS_PORT_NAME)) {
- this.setRedisPort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(REDIS_BIND_ADDRESS_NAME)) {
- this.setRedisBindAddress((String)attValue);
- } else if (attName.equalsIgnoreCase(REDIS_PASSWORD_NAME)) {
- this.setRedisPassword((String)attValue);
- } else if (attName.equalsIgnoreCase(USER_COMMAND_PACKAGES)) {
- this.setUserCommandPackages((String)attValue);
- } else if (attName.equalsIgnoreCase(ENABLE_CLUSTER_CONFIGURATION_NAME)) {
- this.setEnableClusterConfiguration(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(LOAD_CLUSTER_CONFIG_FROM_DIR_NAME)) {
- this.setLoadClusterConfigFromDir(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(USE_CLUSTER_CONFIGURATION_NAME)) {
- this.setUseSharedConfiguration(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(CLUSTER_CONFIGURATION_DIR)) {
- this.setClusterConfigDir((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_ENABLED_NAME)) {
- this.setServerSSLEnabled((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(SERVER_SSL_REQUIRE_AUTHENTICATION_NAME)) {
- this.setServerSSLRequireAuthentication((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(SERVER_SSL_PROTOCOLS_NAME)) {
- this.setServerSSLProtocols((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_CIPHERS_NAME)) {
- this.setServerSSLCiphers((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_KEYSTORE_NAME)) {
- this.setServerSSLKeyStore((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_KEYSTORE_TYPE_NAME)) {
- this.setServerSSLKeyStoreType((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_KEYSTORE_PASSWORD_NAME)) {
- this.setServerSSLKeyStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_TRUSTSTORE_NAME)) {
- this.setServerSSLTrustStore((String)attValue);
- } else if (attName.equalsIgnoreCase(SERVER_SSL_TRUSTSTORE_PASSWORD_NAME)) {
- this.setServerSSLTrustStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_ENABLED_NAME)) {
- this.setGatewaySSLEnabled((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_REQUIRE_AUTHENTICATION_NAME)) {
- this.setGatewaySSLRequireAuthentication((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_PROTOCOLS_NAME)) {
- this.setGatewaySSLProtocols((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_CIPHERS_NAME)) {
- this.setGatewaySSLCiphers((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_KEYSTORE_NAME)) {
- this.setGatewaySSLKeyStore((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_KEYSTORE_TYPE_NAME)) {
- this.setGatewaySSLKeyStoreType((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_KEYSTORE_PASSWORD_NAME)) {
- this.setGatewaySSLKeyStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_TRUSTSTORE_NAME)) {
- this.setGatewaySSLTrustStore((String)attValue);
- } else if (attName.equalsIgnoreCase(GATEWAY_SSL_TRUSTSTORE_PASSWORD_NAME)) {
- this.setGatewaySSLTrustStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_PORT_NAME)) {
- this.setHttpServicePort(((Integer)attValue).intValue());
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_BIND_ADDRESS_NAME)) {
- this.setHttpServiceBindAddress((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_ENABLED_NAME)) {
- this.setHttpServiceSSLEnabled((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_REQUIRE_AUTHENTICATION_NAME)) {
- this.setHttpServiceSSLRequireAuthentication((((Boolean)attValue).booleanValue()));
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_PROTOCOLS_NAME)) {
- this.setHttpServiceSSLProtocols((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_CIPHERS_NAME)) {
- this.setHttpServiceSSLCiphers((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_KEYSTORE_NAME)) {
- this.setHttpServiceSSLKeyStore((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_KEYSTORE_TYPE_NAME)) {
- this.setHttpServiceSSLKeyStoreType((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_KEYSTORE_PASSWORD_NAME)) {
- this.setHttpServiceSSLKeyStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_TRUSTSTORE_NAME)) {
- this.setHttpServiceSSLTrustStore((String)attValue);
- } else if (attName.equalsIgnoreCase(HTTP_SERVICE_SSL_TRUSTSTORE_PASSWORD_NAME)) {
- this.setHttpServiceSSLTrustStorePassword((String)attValue);
- } else if (attName.equalsIgnoreCase(START_DEV_REST_API_NAME)) {
- this.setStartDevRestApi(((Boolean)attValue).booleanValue());
- } else if (attName.equalsIgnoreCase(OFF_HEAP_MEMORY_SIZE_NAME)) {
- this.setOffHeapMemorySize((String)attValue);
- } else if (attName.equalsIgnoreCase(LOCK_MEMORY_NAME)) {
- this.setLockMemory((Boolean)attValue);
- } else if (attName.equalsIgnoreCase(DISTRIBUTED_TRANSACTIONS_NAME)) {
- this.setDistributedTransactions(((Boolean)attValue).booleanValue());
- } else {
+ return;
+ }
+
+ // special case: log-level and security-log-level attributes are String type, but the setter accepts int
+ if(attName.equalsIgnoreCase(LOG_LEVEL_NAME) || attName.equalsIgnoreCase(SECURITY_LOG_LEVEL_NAME)){
+ attValue = LogWriterImpl.levelNameToCode((String)attValue);
+ }
+
+ Method setter = setters.get(attName);
+ if (setter == null) {
+ // if we cann't find the defined setter, look for two more special cases
+ if (attName.startsWith(SECURITY_PREFIX_NAME)) {
+ this.setSecurity(attName,(String)attValue);
+ getAttSourceMap().put(attName, source);
+ return;
+ }
+ if (attName.startsWith(SSL_SYSTEM_PROPS_NAME) || attName.startsWith(SYS_PROP_NAME)) {
+ this.setSSLProperty(attName, (String) attValue);
+ getAttSourceMap().put(attName, source);
+ return;
+ }
throw new InternalGemFireException(LocalizedStrings.AbstractDistributionConfig_UNHANDLED_ATTRIBUTE_NAME_0.toLocalizedString(attName));
}
+
+ Class[] pTypes = setter.getParameterTypes();
+ if (pTypes.length != 1)
+ throw new InternalGemFireException("the attribute setter must have one and only one parametter");
+
+
+ try {
+ setter.invoke(this, attValue);
+ } catch (Exception e) {
+ if(e instanceof RuntimeException){
+ throw (RuntimeException)e;
+ }
+ if(e.getCause() instanceof RuntimeException){
+ throw (RuntimeException)e.getCause();
+ }
+ else
+ throw new InternalGemFireException("error invoking "+setter.getName()+" with "+attValue, e);
+ }
+
getAttSourceMap().put(attName, source);
}
public Object getAttributeObject(String attName) {
checkAttributeName(attName);
- if (attName.equalsIgnoreCase(ACK_WAIT_THRESHOLD_NAME)) {
- return Integer.valueOf(this.getAckWaitThreshold());
- } else if (attName.equalsIgnoreCase(ACK_SEVERE_ALERT_THRESHOLD_NAME)) {
- return Integer.valueOf(this.getAckSevereAlertThreshold());
- } else if (attName.equalsIgnoreCase(ARCHIVE_DISK_SPACE_LIMIT_NAME)) {
- return Integer.valueOf(this.getArchiveDiskSpaceLimit());
- } else if (attName.equalsIgnoreCase(ARCHIVE_FILE_SIZE_LIMIT_NAME)) {
- return Integer.valueOf(this.getArchiveFileSizeLimit());
- } else if (attName.equalsIgnoreCase(CACHE_XML_FILE_NAME)) {
- return this.getCacheXmlFile();
- } else if (attName.equalsIgnoreCase(DEPLOY_WORKING_DIR)) {
- return this.getDeployWorkingDir();
- } else if (attName.equalsIgnoreCase(LOG_DISK_SPACE_LIMIT_NAME)) {
- return Integer.valueOf(this.getLogDiskSpaceLimit());
- } else if (attName.equalsIgnoreCase(LOG_FILE_NAME)) {
- return this.getLogFile();
- } else if (attName.equalsIgnoreCase(LOG_FILE_SIZE_LIMIT_NAME)) {
- return Integer.valueOf(this.getLogFileSizeLimit());
- } else if (attName.equalsIgnoreCase(LOG_LEVEL_NAME)) {
+
+ // special case:
+ if (attName.equalsIgnoreCase(LOG_LEVEL_NAME)) {
return LogWriterImpl.levelToString(this.getLogLevel());
- } else if (attName.equalsIgnoreCase(LOCATORS_NAME)) {
- return this.getLocators();
- } else if (attName.equalsIgnoreCase(LOCATOR_WAIT_TIME_NAME)) {
- return Integer.valueOf(this.getLocatorWaitTime());
- } else if (attName.equalsIgnoreCase(REMOTE_LOCATORS_NAME)) {
- return this.getRemoteLocators();
- } else if (attName.equalsIgnoreCase(MCAST_ADDRESS_NAME)) {
- return this.getMcastAddress();
- } else if (attName.equalsIgnoreCase(BIND_ADDRESS_NAME)) {
- return this.getBindAddress();
- } else if (attName.equalsIgnoreCase(SERVER_BIND_ADDRESS_NAME)) {
- return this.getServerBindAddress();
- } else if (attName.equalsIgnoreCase(TCP_PORT_NAME)) {
- return Integer.valueOf(this.getTcpPort());
- } else if (attName.equalsIgnoreCase(MCAST_PORT_NAME)) {
- return Integer.valueOf(this.getMcastPort());
- } else if (attName.equalsIgnoreCase(MCAST_TTL_NAME)) {
- return Integer.valueOf(this.getMcastTtl());
- } else if (attName.equalsIgnoreCase(SOCKET_LEASE_TIME_NAME)) {
- return Integer.valueOf(this.getSocketLeaseTime());
- } else if (attName.equalsIgnoreCase(SOCKET_BUFFER_SIZE_NAME)) {
- return Integer.valueOf(this.getSocketBufferSize());
- } else if (attName.equalsIgnoreCase(CONSERVE_SOCKETS_NAME)) {
- return Boolean.valueOf(this.getConserveSockets());
- } else if (attName.equalsIgnoreCase(ROLES_NAME)) {
- return this.getRoles();
- } else if (attName.equalsIgnoreCase(NAME_NAME)) {
- return this.getName();
- } else if (attName.equalsIgnoreCase(STATISTIC_ARCHIVE_FILE_NAME)) {
- return this.getStatisticArchiveFile();
- } else if (attName.equalsIgnoreCase(STATISTIC_SAMPLE_RATE_NAME)) {
- return Integer.valueOf(this.getStatisticSampleRate());
- } else if (attName.equalsIgnoreCase(STATISTIC_SAMPLING_ENABLED_NAME)) {
- return Boolean.valueOf(this.getStatisticSamplingEnabled());
- } else if (attName.equalsIgnoreCase(SSL_ENABLED_NAME)) {
- return this.getSSLEnabled() ? Boolean.TRUE : Boolean.FALSE;
- } else if (attName.equalsIgnoreCase(SSL_PROTOCOLS_NAME)) {
- return this.getSSLProtocols();
- } else if (attName.equalsIgnoreCase(SSL_CIPHERS_NAME)) {
- return this.getSSLCiphers();
- } else if (attName.equalsIgnoreCase(SSL_REQUIRE_AUTHENTICATION_NAME)) {
- return this.getSSLRequireAuthentication() ? Boolean.TRUE : Boolean.FALSE;
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_ENABLED_NAME)) {
- return this.getClusterSSLEnabled() ? Boolean.TRUE : Boolean.FALSE;
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_PROTOCOLS_NAME)) {
- return this.getClusterSSLProtocols();
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_CIPHERS_NAME)) {
- return this.getClusterSSLCiphers();
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_REQUIRE_AUTHENTICATION_NAME)) {
- return this.getClusterSSLRequireAuthentication() ? Boolean.TRUE : Boolean.FALSE;
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_KEYSTORE_NAME)) {
- return this.getClusterSSLKeyStore();
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_KEYSTORE_TYPE_NAME)) {
- return this.getClusterSSLKeyStoreType();
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_KEYSTORE_PASSWORD_NAME)) {
- return this.getClusterSSLKeyStorePassword();
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_TRUSTSTORE_NAME)) {
- return this.getClusterSSLTrustStore();
- } else if (attName.equalsIgnoreCase(CLUSTER_SSL_TRUSTSTORE_PASSWORD_NAME)) {
- return this.getClusterSSLTrustStorePassword();
- } else if (attName.equalsIgnoreCase(MCAST_SEND_BUFFER_SIZE_NAME)) {
<TRUNCATED>