Github user pnowojski commented on a diff in the pull request:
https://github.com/apache/flink/pull/6355#discussion_r204326191
--- Diff:
flink-runtime/src/main/java/org/apache/flink/runtime/net/SSLUtils.java ---
@@ -163,80 +163,188 @@ public static void
setSSLVerifyHostname(Configuration sslConfig, SSLParameters s
}
/**
- * Creates the SSL Context for the client if SSL is configured.
+ * Configuration settings and key/trustmanager instances to set up an
SSL client connection.
+ */
+ public static class SSLClientConfiguration {
+ public final String sslProtocolVersion;
+ public final TrustManagerFactory trustManagerFactory;
+ public final int sessionCacheSize;
+ public final int sessionTimeoutMs;
+ public final int handshakeTimeoutMs;
+ public final int closeNotifyFlushTimeoutMs;
+
+ public SSLClientConfiguration(
+ String sslProtocolVersion,
+ TrustManagerFactory trustManagerFactory,
+ int sessionCacheSize,
+ int sessionTimeoutMs,
+ int handshakeTimeoutMs,
+ int closeNotifyFlushTimeoutMs) {
+ this.sslProtocolVersion = sslProtocolVersion;
+ this.trustManagerFactory = trustManagerFactory;
+ this.sessionCacheSize = sessionCacheSize;
+ this.sessionTimeoutMs = sessionTimeoutMs;
+ this.handshakeTimeoutMs = handshakeTimeoutMs;
+ this.closeNotifyFlushTimeoutMs =
closeNotifyFlushTimeoutMs;
+ }
+ }
+
+ /**
+ * Creates necessary helper objects to use for creating an SSL Context
for the client if SSL is
+ * configured.
*
* @param sslConfig
* The application configuration
- * @return The SSLContext object which can be used by the ssl transport
client
- * Returns null if SSL is disabled
+ * @return The SSLClientConfiguration object which can be used for
creating some SSL context object;
+ * returns <tt>null</tt> if SSL is disabled.
* @throws Exception
* Thrown if there is any misconfiguration
*/
@Nullable
- public static SSLContext createSSLClientContext(Configuration
sslConfig) throws Exception {
-
+ public static SSLClientConfiguration
createSSLClientConfiguration(Configuration sslConfig) throws Exception {
Preconditions.checkNotNull(sslConfig);
- SSLContext clientSSLContext = null;
if (getSSLEnabled(sslConfig)) {
--- End diff --
reverse if/else conditions and `Optional`
```
if (!getSSLEnabled(...)) {
return Optional.empty();
}
---