From 52685c144d18314fbb07fe3583d69041f29007c8 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Wed, 7 Nov 2018 02:03:06 +0300 Subject: [PATCH] Fixed - JDK 1.6 compatibility for 2.x base line. #1719 --- pom.xml | 2 +- .../redisson/client/handler/RedisChannelInitializer.java | 9 ++++++++- .../client/protocol/decoder/PendingResultDecoder.java | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 7ac44420a..8e8456d0b 100644 --- a/pom.xml +++ b/pom.xml @@ -20,7 +20,7 @@ true 1.6 1.8 - 7 + 6 UTF-8 diff --git a/redisson/src/main/java/org/redisson/client/handler/RedisChannelInitializer.java b/redisson/src/main/java/org/redisson/client/handler/RedisChannelInitializer.java index daf028f91..e034d1081 100644 --- a/redisson/src/main/java/org/redisson/client/handler/RedisChannelInitializer.java +++ b/redisson/src/main/java/org/redisson/client/handler/RedisChannelInitializer.java @@ -17,6 +17,7 @@ package org.redisson.client.handler; import java.io.IOException; import java.io.InputStream; +import java.lang.reflect.Method; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; @@ -155,7 +156,13 @@ public class RedisChannelInitializer extends ChannelInitializer { SSLParameters sslParams = new SSLParameters(); if (config.isSslEnableEndpointIdentification()) { - sslParams.setEndpointIdentificationAlgorithm("HTTPS"); + // TODO remove for JDK 1.7+ + try { + Method method = sslParams.getClass().getDeclaredMethod("setEndpointIdentificationAlgorithm", String.class); + method.invoke(sslParams, "HTTPS"); + } catch (Exception e) { + throw new SSLException(e); + } } else { if (config.getSslTruststore() == null) { sslContextBuilder.trustManager(InsecureTrustManagerFactory.INSTANCE); diff --git a/redisson/src/main/java/org/redisson/client/protocol/decoder/PendingResultDecoder.java b/redisson/src/main/java/org/redisson/client/protocol/decoder/PendingResultDecoder.java index c5db984b5..b67f1aa72 100644 --- a/redisson/src/main/java/org/redisson/client/protocol/decoder/PendingResultDecoder.java +++ b/redisson/src/main/java/org/redisson/client/protocol/decoder/PendingResultDecoder.java @@ -45,7 +45,7 @@ public class PendingResultDecoder implements MultiDecoder { for (List mapping : customerParts) { consumerNames.put(mapping.get(0), Long.valueOf(mapping.get(1))); } - return new PendingResult((long)parts.get(0), convertor.convert(parts.get(1)), convertor.convert(parts.get(2)), consumerNames); + return new PendingResult((Long)parts.get(0), convertor.convert(parts.get(1)), convertor.convert(parts.get(2)), consumerNames); } }