@@ -43,7 +43,7 @@ public BinaryJedis() {
4343
4444 public BinaryJedis (final String host ) {
4545 URI uri = URI .create (host );
46- if (uri . getScheme () != null && ( uri . getScheme (). equals ( "redis" ) || uri . getScheme (). equals ( "rediss" ) )) {
46+ if (JedisURIHelper . isValid ( uri )) {
4747 initializeClientFromURI (uri );
4848 } else {
4949 client = new Client (host );
@@ -69,23 +69,17 @@ public BinaryJedis(final String host, final int port, final boolean ssl,
6969 }
7070
7171 public BinaryJedis (final String host , final int port , final int timeout ) {
72- client = new Client (host , port );
73- client .setConnectionTimeout (timeout );
74- client .setSoTimeout (timeout );
72+ this (host , port , timeout , timeout );
7573 }
7674
7775 public BinaryJedis (final String host , final int port , final int timeout , final boolean ssl ) {
78- client = new Client (host , port , ssl );
79- client .setConnectionTimeout (timeout );
80- client .setSoTimeout (timeout );
76+ this (host , port , timeout , timeout , ssl );
8177 }
8278
8379 public BinaryJedis (final String host , final int port , final int timeout , final boolean ssl ,
8480 final SSLSocketFactory sslSocketFactory , final SSLParameters sslParameters ,
8581 final HostnameVerifier hostnameVerifier ) {
86- client = new Client (host , port , ssl , sslSocketFactory , sslParameters , hostnameVerifier );
87- client .setConnectionTimeout (timeout );
88- client .setSoTimeout (timeout );
82+ this (host , port , timeout , timeout , ssl , sslSocketFactory , sslParameters , hostnameVerifier );
8983 }
9084
9185 public BinaryJedis (final String host , final int port , final int connectionTimeout ,
@@ -130,16 +124,12 @@ public BinaryJedis(URI uri, final SSLSocketFactory sslSocketFactory,
130124 }
131125
132126 public BinaryJedis (final URI uri , final int timeout ) {
133- initializeClientFromURI (uri );
134- client .setConnectionTimeout (timeout );
135- client .setSoTimeout (timeout );
127+ this (uri , timeout , timeout );
136128 }
137129
138130 public BinaryJedis (final URI uri , final int timeout , final SSLSocketFactory sslSocketFactory ,
139131 final SSLParameters sslParameters , final HostnameVerifier hostnameVerifier ) {
140- initializeClientFromURI (uri , sslSocketFactory , sslParameters , hostnameVerifier );
141- client .setConnectionTimeout (timeout );
142- client .setSoTimeout (timeout );
132+ this (uri , timeout , timeout , sslSocketFactory , sslParameters , hostnameVerifier );
143133 }
144134
145135 public BinaryJedis (final URI uri , final int connectionTimeout , final int soTimeout ) {
@@ -157,25 +147,7 @@ public BinaryJedis(final URI uri, final int connectionTimeout, final int soTimeo
157147 }
158148
159149 private void initializeClientFromURI (URI uri ) {
160- if (!JedisURIHelper .isValid (uri )) {
161- throw new InvalidURIException (String .format (
162- "Cannot open Redis connection due invalid URI. %s" , uri .toString ()));
163- }
164-
165- client = new Client (uri .getHost (), uri .getPort (), uri .getScheme ().equals ("rediss" ));
166-
167- String password = JedisURIHelper .getPassword (uri );
168- if (password != null ) {
169- client .auth (password );
170- client .getStatusCodeReply ();
171- }
172-
173- int dbIndex = JedisURIHelper .getDBIndex (uri );
174- if (dbIndex > 0 ) {
175- client .select (dbIndex );
176- client .getStatusCodeReply ();
177- client .setDb (dbIndex );
178- }
150+ initializeClientFromURI (uri , null , null , null );
179151 }
180152
181153 private void initializeClientFromURI (URI uri , final SSLSocketFactory sslSocketFactory ,
@@ -185,7 +157,7 @@ private void initializeClientFromURI(URI uri, final SSLSocketFactory sslSocketFa
185157 "Cannot open Redis connection due invalid URI. %s" , uri .toString ()));
186158 }
187159
188- client = new Client (uri .getHost (), uri .getPort (), uri . getScheme (). equals ( "rediss" ),
160+ client = new Client (uri .getHost (), uri .getPort (), JedisURIHelper . isRedisSSLScheme ( uri ),
189161 sslSocketFactory , sslParameters , hostnameVerifier );
190162
191163 String password = JedisURIHelper .getPassword (uri );
0 commit comments