You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ud...@apache.org on 2018/03/20 22:28:44 UTC
[geode] 01/05: initial commit for micrometer implementation
This is an automated email from the ASF dual-hosted git repository.
udo pushed a commit to branch micrometer
in repository https://gitbox.apache.org/repos/asf/geode.git
commit 7863c796473b27da8a7d84c82649f2e2426d10a2
Author: Udo Kohlmeyer <uk...@pivotal.io>
AuthorDate: Tue Jan 2 10:55:52 2018 -0800
initial commit for micrometer implementation
---
geode-protobuf/build.gradle | 28 +++
.../statistics/MicrometerClientStatsImpl.kt | 69 ++++++
.../protobuf/v1/ProtobufProtocolService.java | 7 +-
.../v1/acceptance/CacheOperationsJUnitTest.java | 258 +++++++++++----------
4 files changed, 235 insertions(+), 127 deletions(-)
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
index c1eed05..13368a9 100644
--- a/geode-protobuf/build.gradle
+++ b/geode-protobuf/build.gradle
@@ -27,4 +27,32 @@ dependencies {
testCompile 'org.powermock:powermock-api-mockito:' + project.'powermock.version'
compile 'com.google.protobuf:protobuf-java:' + project.'protobuf-java.version'
+ compile group: 'io.micrometer', name: 'micrometer-core', version: '1.0.0-rc.5'
+ compile group: 'io.micrometer', name: 'micrometer-registry-atlas', version: '1.0.0-rc.5'
+ compile group: 'io.micrometer', name: 'micrometer-registry-influx', version: '1.0.0-rc.5'
+ compile group: 'io.micrometer', name: 'micrometer-registry-graphite', version: '1.0.0-rc.5'
+ compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
+}
+buildscript {
+ ext.kotlin_version = '1.2.10'
+ repositories {
+ mavenCentral()
+ }
+ dependencies {
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
+ }
+}
+apply plugin: 'kotlin'
+repositories {
+ mavenCentral()
+}
+compileKotlin {
+ kotlinOptions {
+ jvmTarget = "1.8"
+ }
+}
+compileTestKotlin {
+ kotlinOptions {
+ jvmTarget = "1.8"
+ }
}
diff --git a/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt
new file mode 100644
index 0000000..bb95d6a
--- /dev/null
+++ b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/statistics/MicrometerClientStatsImpl.kt
@@ -0,0 +1,69 @@
+package org.apache.geode.internal.protocol.protobuf.statistics
+
+import com.netflix.spectator.atlas.AtlasConfig
+import io.micrometer.atlas.AtlasMeterRegistry
+import io.micrometer.core.instrument.Clock
+import io.micrometer.core.instrument.MeterRegistry
+import io.micrometer.core.instrument.composite.CompositeMeterRegistry
+import io.micrometer.core.instrument.util.HierarchicalNameMapper
+import io.micrometer.graphite.GraphiteConfig
+import io.micrometer.graphite.GraphiteMeterRegistry
+import io.micrometer.influx.InfluxConfig
+import io.micrometer.influx.InfluxMeterRegistry
+import org.apache.geode.internal.protocol.statistics.ProtocolClientStatistics
+import java.time.Duration
+
+class MicrometerClientStatsImpl : ProtocolClientStatistics {
+ private val influxMetrics: MeterRegistry = InfluxMeterRegistry(object : InfluxConfig {
+ override fun step(): Duration = Duration.ofSeconds(10)
+ override fun db(): String = "mydb"
+ override fun get(k: String): String? = null
+ override fun uri(): String = "http://localhost:8086"
+ }, Clock.SYSTEM)
+
+ private val atlasMetrics: MeterRegistry = AtlasMeterRegistry(object : AtlasConfig {
+ override fun get(k: String?): String? = null
+ override fun enabled(): Boolean = true
+ override fun uri(): String = "http://localhost:7101/api/v1/publish"
+ override fun step(): Duration = Duration.ofSeconds(10)
+ }, Clock.SYSTEM)
+
+ private val metrics = CompositeMeterRegistry(Clock.SYSTEM)
+
+ init {
+ metrics.add(influxMetrics)
+ metrics.add(atlasMetrics)
+ }
+
+ val clientConnectedCounter = metrics.counter("clientConnected")
+ val messageReceivedCounter = metrics.counter("messageReceived")
+ val messageSentCounter = metrics.counter("messageSent")
+ val authorizationViolationsCounter = metrics.counter("authorizationViolations")
+ val authenticationFailureCounter = metrics.counter("authenticationFailures")
+
+ override fun clientConnected() {
+ System.err.println("Increment Counter")
+ clientConnectedCounter.increment()
+ }
+
+ override fun clientDisconnected() {
+ System.err.println("Decrement Counter")
+ clientConnectedCounter.increment(-1.0)
+ }
+
+ override fun messageReceived(bytes: Int) {
+ messageReceivedCounter.increment(bytes.toDouble())
+ }
+
+ override fun messageSent(bytes: Int) {
+ messageSentCounter.increment(bytes.toDouble())
+ }
+
+ override fun incAuthorizationViolations() {
+ authorizationViolationsCounter.increment()
+ }
+
+ override fun incAuthenticationFailures() {
+ authenticationFailureCounter.increment()
+ }
+}
\ No newline at end of file
diff --git a/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/v1/ProtobufProtocolService.java b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/v1/ProtobufProtocolService.java
index bfc2048..58637a6 100644
--- a/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/v1/ProtobufProtocolService.java
+++ b/geode-protobuf/src/main/java/org/apache/geode/internal/protocol/protobuf/v1/ProtobufProtocolService.java
@@ -24,6 +24,10 @@ import org.apache.geode.internal.protocol.protobuf.statistics.ClientStatistics;
import org.apache.geode.internal.protocol.protobuf.statistics.NoOpStatistics;
import org.apache.geode.internal.protocol.protobuf.statistics.ProtobufClientStatistics;
import org.apache.geode.internal.protocol.protobuf.v1.state.ProtobufConnectionHandshakeStateProcessor;
+import org.apache.geode.internal.protocol.protobuf.Handshake;
+import org.apache.geode.internal.protocol.protobuf.statistics.MicrometerClientStatsImpl;
+import org.apache.geode.internal.protocol.statistics.NoOpStatistics;
+import org.apache.geode.internal.protocol.statistics.ProtocolClientStatistics;
import org.apache.geode.internal.security.SecurityService;
public class ProtobufProtocolService implements ClientProtocolService {
@@ -33,7 +37,8 @@ public class ProtobufProtocolService implements ClientProtocolService {
@Override
public synchronized void initializeStatistics(String statisticsName, StatisticsFactory factory) {
if (statistics == null) {
- statistics = new ProtobufClientStatistics(factory, statisticsName);
+ // statistics = new ProtobufClientStatisticsImpl(factory, statisticsName);
+ statistics = new MicrometerClientStatsImpl();
}
}
diff --git a/geode-protobuf/src/test/java/org/apache/geode/internal/protocol/protobuf/v1/acceptance/CacheOperationsJUnitTest.java b/geode-protobuf/src/test/java/org/apache/geode/internal/protocol/protobuf/v1/acceptance/CacheOperationsJUnitTest.java
index 4859837..cac6ba3 100644
--- a/geode-protobuf/src/test/java/org/apache/geode/internal/protocol/protobuf/v1/acceptance/CacheOperationsJUnitTest.java
+++ b/geode-protobuf/src/test/java/org/apache/geode/internal/protocol/protobuf/v1/acceptance/CacheOperationsJUnitTest.java
@@ -38,6 +38,7 @@ import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
import org.awaitility.Awaitility;
import org.junit.After;
@@ -80,16 +81,16 @@ public class CacheOperationsJUnitTest {
private final String TEST_VALUE = "testValue";
private final String TEST_REGION = "testRegion";
- private final String DEFAULT_STORE = "default.keystore";
- private final String SSL_PROTOCOLS = "any";
- private final String SSL_CIPHERS = "any";
+ private final String DEFAULT_STORE = "default.keystore";
+ private final String SSL_PROTOCOLS = "any";
+ private final String SSL_CIPHERS = "any";
- private final String TEST_MULTIOP_KEY1 = "multiopKey1";
- private final String TEST_MULTIOP_KEY2 = "multiopKey2";
- private final String TEST_MULTIOP_KEY3 = "multiopKey3";
- private final String TEST_MULTIOP_VALUE1 = "multiopValue1";
- private final String TEST_MULTIOP_VALUE2 = "multiopValue2";
- private final String TEST_MULTIOP_VALUE3 = "multiopValue3";
+ private final String TEST_MULTIOP_KEY1 = "multiopKey1";
+ private final String TEST_MULTIOP_KEY2 = "multiopKey2";
+ private final String TEST_MULTIOP_KEY3 = "multiopKey3";
+ private final String TEST_MULTIOP_VALUE1 = "multiopValue1";
+ private final String TEST_MULTIOP_VALUE2 = "multiopValue2";
+ private final String TEST_MULTIOP_VALUE3 = "multiopValue3";
private Cache cache;
private int cacheServerPort;
@@ -97,105 +98,111 @@ public class CacheOperationsJUnitTest {
private Socket socket;
private OutputStream outputStream;
- @Rule
- public final RestoreSystemProperties restoreSystemProperties = new RestoreSystemProperties();
+ @Rule
+ public final RestoreSystemProperties restoreSystemProperties = new RestoreSystemProperties();
@Rule
public TestName testName = new TestName();
private ProtobufProtocolSerializer protobufProtocolSerializer;
- @Before
- public void setup() throws Exception {
- // Test names prefixed with useSSL_ will setup the cache and socket to use SSL transport
- boolean useSSL = testName.getMethodName().startsWith("useSSL_");
+ @Before
+ public void setup() throws Exception {
+ // Test names prefixed with useSSL_ will setup the cache and socket to use SSL transport
+ boolean useSSL = testName.getMethodName().startsWith("useSSL_");
- Properties properties = new Properties();
- if (useSSL) {
- updatePropertiesForSSLCache(properties);
- }
+ Properties properties = new Properties();
+ if (useSSL) {
+ updatePropertiesForSSLCache(properties);
+ }
- CacheFactory cacheFactory = new CacheFactory(properties);
- cacheFactory.set(ConfigurationProperties.MCAST_PORT, "0");
- cacheFactory.set(ConfigurationProperties.ENABLE_CLUSTER_CONFIGURATION, "false");
- cacheFactory.set(ConfigurationProperties.USE_CLUSTER_CONFIGURATION, "false");
- cache = cacheFactory.create();
+ CacheFactory cacheFactory = new CacheFactory(properties);
+ cacheFactory.set(ConfigurationProperties.MCAST_PORT, "0");
+ cacheFactory.set(ConfigurationProperties.ENABLE_CLUSTER_CONFIGURATION, "false");
+ cacheFactory.set(ConfigurationProperties.USE_CLUSTER_CONFIGURATION, "false");
+ cache = cacheFactory.create();
- CacheServer cacheServer = cache.addCacheServer();
- cacheServerPort = AvailablePortHelper.getRandomAvailableTCPPort();
- cacheServer.setPort(cacheServerPort);
- cacheServer.start();
+ CacheServer cacheServer = cache.addCacheServer();
+ cacheServerPort = AvailablePortHelper.getRandomAvailableTCPPort();
+ cacheServer.setPort(cacheServerPort);
+ cacheServer.start();
- RegionFactory<Object, Object> regionFactory = cache.createRegionFactory();
- regionFactory.create(TEST_REGION);
+ RegionFactory<Object, Object> regionFactory = cache.createRegionFactory();
+ regionFactory.create(TEST_REGION);
- System.setProperty("geode.feature-protobuf-protocol", "true");
+ System.setProperty("geode.feature-protobuf-protocol", "true");
- if (useSSL) {
- socket = getSSLSocket();
- } else {
- socket = new Socket("localhost", cacheServerPort);
- }
- Awaitility.await().atMost(5, TimeUnit.SECONDS).until(socket::isConnected);
- outputStream = socket.getOutputStream();
+ if (useSSL) {
+ socket = getSSLSocket();
+ } else {
+ socket = new Socket("localhost", cacheServerPort);
+ }
+ Awaitility.await().atMost(5, TimeUnit.SECONDS).until(socket::isConnected);
+ outputStream = socket.getOutputStream();
- MessageUtil.performAndVerifyHandshake(socket);
+ MessageUtil.performAndVerifyHandshake(socket);
serializationService = new ProtobufSerializationService();
protobufProtocolSerializer = new ProtobufProtocolSerializer();
}
- @After
- public void cleanup() throws IOException {
- cache.close();
- socket.close();
- SocketCreatorFactory.close();
- }
+ @After
+ public void cleanup() throws IOException {
+ cache.close();
+ socket.close();
+ SocketCreatorFactory.close();
+ }
- @Test
- public void testNewProtocolWithMultikeyOperations() throws Exception {
- System.setProperty("geode.feature-protobuf-protocol", "true");
+ private static String randomLengthString() {
+ Random random = new Random();
+ StringBuffer stringBuffer = new StringBuffer();
+ int length = (int) (random.nextInt(1024000)*(1.75*random.nextInt(10)));
+ for (int i = 0; i < (length); i++) {
+ stringBuffer.append("a");
+ }
+ return stringBuffer.toString();
+ }
- ProtobufProtocolSerializer protobufProtocolSerializer = new ProtobufProtocolSerializer();
- Set<BasicTypes.Entry> putEntries = new HashSet<>();
- putEntries.add(ProtobufUtilities.createEntry(serializationService, TEST_MULTIOP_KEY1,
- TEST_MULTIOP_VALUE1));
- putEntries.add(ProtobufUtilities.createEntry(serializationService, TEST_MULTIOP_KEY2,
- TEST_MULTIOP_VALUE2));
- putEntries.add(ProtobufUtilities.createEntry(serializationService, TEST_MULTIOP_KEY3,
- TEST_MULTIOP_VALUE3));
- ClientProtocol.Message putAllMessage =
- ProtobufRequestUtilities.createPutAllRequest(TEST_REGION, putEntries);
- protobufProtocolSerializer.serialize(putAllMessage, outputStream);
- validatePutAllResponse(socket, protobufProtocolSerializer, new HashSet<>());
-
- Set<BasicTypes.EncodedValue> getEntries = new HashSet<>();
- getEntries.add(serializationService.encode(TEST_MULTIOP_KEY1));
- getEntries.add(serializationService.encode(TEST_MULTIOP_KEY2));
- getEntries.add(serializationService.encode(TEST_MULTIOP_KEY3));
-
- RegionAPI.GetAllRequest getAllRequest =
- ProtobufRequestUtilities.createGetAllRequest(TEST_REGION, getEntries);
-
- ClientProtocol.Message getAllMessage =
- ClientProtocol.Message.newBuilder().setGetAllRequest(getAllRequest).build();
- protobufProtocolSerializer.serialize(getAllMessage, outputStream);
- validateGetAllResponse(socket, protobufProtocolSerializer);
-
- RegionAPI.KeySetRequest keySetRequest =
- RegionAPI.KeySetRequest.newBuilder().setRegionName(TEST_REGION).build();
- ClientProtocol.Message keySetMessage =
- ClientProtocol.Message.newBuilder().setKeySetRequest(keySetRequest).build();
- protobufProtocolSerializer.serialize(keySetMessage, outputStream);
- validateKeySetResponse(socket, protobufProtocolSerializer);
- }
+ @Test
+ public void testNewProtocolWithMultikeyOperations() throws Exception {
+ System.setProperty("geode.feature-protobuf-protocol", "true");
+ for (int i = 0; i < 10000000; i++) {
+
+ ProtobufProtocolSerializer protobufProtocolSerializer = new ProtobufProtocolSerializer();
+ Set<BasicTypes.Entry> putEntries = new HashSet<>();
+ putEntries.add(ProtobufUtilities.createEntry(serializationService, TEST_MULTIOP_KEY1,
+ randomLengthString()));
+ putEntries.add(ProtobufUtilities.createEntry(serializationService, TEST_MULTIOP_KEY2,
+ randomLengthString()));
+ putEntries.add(ProtobufUtilities.createEntry(serializationService, TEST_MULTIOP_KEY3,
+ randomLengthString()));
+ ClientProtocol.Message putAllMessage = ProtobufUtilities.createProtobufMessage(
+ ProtobufRequestUtilities.createPutAllRequest(TEST_REGION, putEntries));
+ protobufProtocolSerializer.serialize(putAllMessage, outputStream);
+ validatePutAllResponse(socket, protobufProtocolSerializer, new HashSet<>());
+
+ Set<BasicTypes.EncodedValue> getEntries = new HashSet<>();
+ getEntries.add(ProtobufUtilities.createEncodedValue(serializationService, TEST_MULTIOP_KEY1));
+// getEntries.add(ProtobufUtilities.createEncodedValue(serializationService, TEST_MULTIOP_KEY2));
+// getEntries.add(ProtobufUtilities.createEncodedValue(serializationService, TEST_MULTIOP_KEY3));
+
+ RegionAPI.GetAllRequest getAllRequest =
+ ProtobufRequestUtilities.createGetAllRequest(TEST_REGION, getEntries);
+
+ ClientProtocol.Message getAllMessage = ProtobufUtilities.createProtobufMessage(
+ ProtobufUtilities.createProtobufRequestWithGetAllRequest(getAllRequest));
+ Thread.sleep(100);
+ protobufProtocolSerializer.serialize(getAllMessage, outputStream);
+ validateGetAllResponse(socket, protobufProtocolSerializer);
+ }
+ }
- @Test
- public void multiKeyOperationErrorsWithClasscastException() throws Exception {
- RegionFactory<Float, Object> regionFactory = cache.createRegionFactory();
- regionFactory.setKeyConstraint(Float.class);
- String regionName = "constraintRegion";
- regionFactory.create(regionName);
- System.setProperty("geode.feature-protobuf-protocol", "true");
+ @Test
+ public void multiKeyOperationErrorsWithClasscastException() throws Exception {
+ RegionFactory<Float, Object> regionFactory = cache.createRegionFactory();
+ regionFactory.setKeyConstraint(Float.class);
+ String regionName = "constraintRegion";
+ regionFactory.create(regionName);
+ System.setProperty("geode.feature-protobuf-protocol", "true");
Set<BasicTypes.Entry> putEntries = new HashSet<>();
putEntries.add(ProtobufUtilities.createEntry(serializationService, 2.2f, TEST_MULTIOP_VALUE1));
@@ -212,10 +219,10 @@ public class CacheOperationsJUnitTest {
expectedFailedKeys.add(serializationService.encode(TEST_MULTIOP_KEY3));
validatePutAllResponse(socket, protobufProtocolSerializer, expectedFailedKeys);
- ClientProtocol.Message getMessage =
- MessageUtil.makeGetRequestMessage(serializationService, 2.2f, regionName);
- protobufProtocolSerializer.serialize(getMessage, outputStream);
- validateGetResponse(socket, protobufProtocolSerializer, TEST_MULTIOP_VALUE1);
+ ClientProtocol.Message getMessage =
+ MessageUtil.makeGetRequestMessage(serializationService, 2.2f, regionName);
+ protobufProtocolSerializer.serialize(getMessage, outputStream);
+ validateGetResponse(socket, protobufProtocolSerializer, TEST_MULTIOP_VALUE1);
ClientProtocol.Message removeMessage = ProtobufRequestUtilities.createRemoveRequest(TEST_REGION,
serializationService.encode(TEST_KEY));
@@ -234,8 +241,8 @@ public class CacheOperationsJUnitTest {
assertEquals(ClientProtocol.Message.MessageTypeCase.GETRESPONSE, response.getMessageTypeCase());
RegionAPI.GetResponse getResponse = response.getGetResponse();
- assertFalse(getResponse.hasResult());
- }
+ assertFalse(getResponse.hasResult());
+ }
@Test
public void testNewProtocolGetRegionNamesCallSucceeds() throws Exception {
@@ -298,11 +305,11 @@ public class CacheOperationsJUnitTest {
response.getMessageTypeCase());
assertEquals(expectedFailedKeys.size(), response.getPutAllResponse().getFailedKeysCount());
- Stream<BasicTypes.EncodedValue> failedKeyStream = response.getPutAllResponse()
- .getFailedKeysList().stream().map(BasicTypes.KeyedError::getKey);
- assertTrue(failedKeyStream.allMatch(expectedFailedKeys::contains));
+// Stream<BasicTypes.EncodedValue> failedKeyStream = response.getPutAllResponse()
+// .getFailedKeysList().stream().map(BasicTypes.KeyedError::getKey);
+// assertTrue(failedKeyStream.allMatch(expectedFailedKeys::contains));
- }
+ }
private void validateGetAllResponse(Socket socket,
ProtobufProtocolSerializer protobufProtocolSerializer)
@@ -339,7 +346,6 @@ public class CacheOperationsJUnitTest {
Assert.fail("Unexpected key found by getAll: " + key);
}
}
- }
private void validateKeySetResponse(Socket socket,
ProtobufProtocolSerializer protobufProtocolSerializer) throws Exception {
@@ -363,36 +369,36 @@ public class CacheOperationsJUnitTest {
response.getMessageTypeCase());
}
- private void updatePropertiesForSSLCache(Properties properties) {
- String keyStore = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
- String trustStore = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
+ private void updatePropertiesForSSLCache(Properties properties) {
+ String keyStore = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
+ String trustStore = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
- properties.put(SSL_ENABLED_COMPONENTS, "server");
- properties.put(ConfigurationProperties.SSL_PROTOCOLS, SSL_PROTOCOLS);
- properties.put(ConfigurationProperties.SSL_CIPHERS, SSL_CIPHERS);
- properties.put(SSL_REQUIRE_AUTHENTICATION, String.valueOf(true));
+ properties.put(SSL_ENABLED_COMPONENTS, "server");
+ properties.put(ConfigurationProperties.SSL_PROTOCOLS, SSL_PROTOCOLS);
+ properties.put(ConfigurationProperties.SSL_CIPHERS, SSL_CIPHERS);
+ properties.put(SSL_REQUIRE_AUTHENTICATION, String.valueOf(true));
- properties.put(SSL_KEYSTORE_TYPE, "jks");
- properties.put(SSL_KEYSTORE, keyStore);
- properties.put(SSL_KEYSTORE_PASSWORD, "password");
- properties.put(SSL_TRUSTSTORE, trustStore);
- properties.put(SSL_TRUSTSTORE_PASSWORD, "password");
- }
+ properties.put(SSL_KEYSTORE_TYPE, "jks");
+ properties.put(SSL_KEYSTORE, keyStore);
+ properties.put(SSL_KEYSTORE_PASSWORD, "password");
+ properties.put(SSL_TRUSTSTORE, trustStore);
+ properties.put(SSL_TRUSTSTORE_PASSWORD, "password");
+ }
- private Socket getSSLSocket() throws IOException {
- String keyStorePath = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
- String trustStorePath = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
-
- SSLConfig sslConfig = new SSLConfig();
- sslConfig.setEnabled(true);
- sslConfig.setCiphers(SSL_CIPHERS);
- sslConfig.setProtocols(SSL_PROTOCOLS);
- sslConfig.setRequireAuth(true);
- sslConfig.setKeystoreType("jks");
- sslConfig.setKeystore(keyStorePath);
- sslConfig.setKeystorePassword("password");
- sslConfig.setTruststore(trustStorePath);
- sslConfig.setKeystorePassword("password");
+ private Socket getSSLSocket() throws IOException {
+ String keyStorePath = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
+ String trustStorePath = TestUtil.getResourcePath(CacheOperationsJUnitTest.class, DEFAULT_STORE);
+
+ SSLConfig sslConfig = new SSLConfig();
+ sslConfig.setEnabled(true);
+ sslConfig.setCiphers(SSL_CIPHERS);
+ sslConfig.setProtocols(SSL_PROTOCOLS);
+ sslConfig.setRequireAuth(true);
+ sslConfig.setKeystoreType("jks");
+ sslConfig.setKeystore(keyStorePath);
+ sslConfig.setKeystorePassword("password");
+ sslConfig.setTruststore(trustStorePath);
+ sslConfig.setKeystorePassword("password");
SocketCreator socketCreator = new SocketCreator(sslConfig);
return socketCreator.connectForClient("localhost", cacheServerPort, 5000);
--
To stop receiving notification emails like this one, please contact
udo@apache.org.