abstract class org.apache.hc.client.http.ssl.AbstractClientTlsStrategy extends java.lang.Object implements org.apache.hc.core.http.nio.ssl.TlsStrategy
{
private static final org.slf4j.Logger LOG;
private final javax.net.ssl.SSLContext sslContext;
private final java.lang.String[] supportedProtocols;
private final java.lang.String[] supportedCipherSuites;
private final org.apache.hc.core.reactor.ssl.SSLBufferMode sslBufferManagement;
private final javax.net.ssl.HostnameVerifier hostnameVerifier;
private final org.apache.hc.client.http.ssl.TlsSessionValidator tlsSessionValidator;
void <init>(javax.net.ssl.SSLContext, java.lang.String[], java.lang.String[], org.apache.hc.core.reactor.ssl.SSLBufferMode, javax.net.ssl.HostnameVerifier)
{
javax.net.ssl.SSLContext v;
org.slf4j.Logger v;
org.apache.hc.core.reactor.ssl.SSLBufferMode v, v;
org.apache.hc.client.http.ssl.TlsSessionValidator v;
java.lang.String[] v, v;
java.lang.Object v;
javax.net.ssl.HostnameVerifier v, v;
org.apache.hc.client.http.ssl.AbstractClientTlsStrategy v;
v := @this: org.apache.hc.client.http.ssl.AbstractClientTlsStrategy;
v := @parameter: javax.net.ssl.SSLContext;
v := @parameter: java.lang.String[];
v := @parameter: java.lang.String[];
v := @parameter: org.apache.hc.core.reactor.ssl.SSLBufferMode;
v := @parameter: javax.net.ssl.HostnameVerifier;
specialinvoke v.<java.lang.Object: void <init>()>();
v = staticinvoke <org.apache.hc.core.util.Args: java.lang.Object notNull(java.lang.Object,java.lang.String)>(v, "SSL context");
v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: javax.net.ssl.SSLContext sslContext> = v;
v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: java.lang.String[] supportedProtocols> = v;
v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: java.lang.String[] supportedCipherSuites> = v;
if v == null goto label;
v = v;
goto label;
label:
v = <org.apache.hc.core.reactor.ssl.SSLBufferMode: org.apache.hc.core.reactor.ssl.SSLBufferMode STATIC>;
label:
v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: org.apache.hc.core.reactor.ssl.SSLBufferMode sslBufferManagement> = v;
if v == null goto label;
v = v;
goto label;
label:
v = staticinvoke <org.apache.hc.client.http.ssl.HttpsSupport: javax.net.ssl.HostnameVerifier getDefaultHostnameVerifier()>();
label:
v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: javax.net.ssl.HostnameVerifier hostnameVerifier> = v;
v = new org.apache.hc.client.http.ssl.TlsSessionValidator;
v = <org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: org.slf4j.Logger LOG>;
specialinvoke v.<org.apache.hc.client.http.ssl.TlsSessionValidator: void <init>(org.slf4j.Logger)>(v);
v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: org.apache.hc.client.http.ssl.TlsSessionValidator tlsSessionValidator> = v;
return;
}
public boolean upgrade(org.apache.hc.core.reactor.ssl.TransportSecurityLayer, org.apache.hc.core.http.HttpHost, java.net.SocketAddress, java.net.SocketAddress, java.lang.Object, org.apache.hc.core.util.Timeout)
{
javax.net.ssl.SSLContext v;
java.net.SocketAddress v, v;
org.apache.hc.core.reactor.ssl.SSLBufferMode v;
org.apache.hc.core.util.Timeout v;
org.apache.hc.core.reactor.ssl.TransportSecurityLayer v;
org.apache.hc.client.http.ssl.AbstractClientTlsStrategy$2 v;
org.apache.hc.core.http.HttpHost v;
java.lang.Object v;
org.apache.hc.client.http.ssl.AbstractClientTlsStrategy$1 v;
org.apache.hc.client.http.ssl.AbstractClientTlsStrategy v;
v := @this: org.apache.hc.client.http.ssl.AbstractClientTlsStrategy;
v := @parameter: org.apache.hc.core.reactor.ssl.TransportSecurityLayer;
v := @parameter: org.apache.hc.core.http.HttpHost;
v := @parameter: java.net.SocketAddress;
v := @parameter: java.net.SocketAddress;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.hc.core.util.Timeout;
v = v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: javax.net.ssl.SSLContext sslContext>;
v = v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: org.apache.hc.core.reactor.ssl.SSLBufferMode sslBufferManagement>;
v = new org.apache.hc.client.http.ssl.AbstractClientTlsStrategy$1;
specialinvoke v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy$1: void <init>(org.apache.hc.client.http.ssl.AbstractClientTlsStrategy,java.lang.Object)>(v, v);
v = new org.apache.hc.client.http.ssl.AbstractClientTlsStrategy$2;
specialinvoke v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy$2: void <init>(org.apache.hc.client.http.ssl.AbstractClientTlsStrategy,org.apache.hc.core.http.HttpHost)>(v, v);
interfaceinvoke v.<org.apache.hc.core.reactor.ssl.TransportSecurityLayer: void startTls(javax.net.ssl.SSLContext,org.apache.hc.core.net.NamedEndpoint,org.apache.hc.core.reactor.ssl.SSLBufferMode,org.apache.hc.core.reactor.ssl.SSLSessionInitializer,org.apache.hc.core.reactor.ssl.SSLSessionVerifier,org.apache.hc.core.util.Timeout)>(v, v, v, v, v, v);
return 1;
}
abstract void applyParameters(javax.net.ssl.SSLEngine, javax.net.ssl.SSLParameters, java.lang.String[]);
abstract org.apache.hc.core.reactor.ssl.TlsDetails createTlsDetails(javax.net.ssl.SSLEngine);
protected void initializeEngine(javax.net.ssl.SSLEngine)
{
javax.net.ssl.SSLEngine v;
org.apache.hc.client.http.ssl.AbstractClientTlsStrategy v;
v := @this: org.apache.hc.client.http.ssl.AbstractClientTlsStrategy;
v := @parameter: javax.net.ssl.SSLEngine;
return;
}
protected void verifySession(java.lang.String, javax.net.ssl.SSLSession) throws javax.net.ssl.SSLException
{
javax.net.ssl.SSLSession v;
org.apache.hc.client.http.ssl.TlsSessionValidator v;
java.lang.String v;
javax.net.ssl.HostnameVerifier v;
org.apache.hc.client.http.ssl.AbstractClientTlsStrategy v;
v := @this: org.apache.hc.client.http.ssl.AbstractClientTlsStrategy;
v := @parameter: java.lang.String;
v := @parameter: javax.net.ssl.SSLSession;
v = v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: org.apache.hc.client.http.ssl.TlsSessionValidator tlsSessionValidator>;
v = v.<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: javax.net.ssl.HostnameVerifier hostnameVerifier>;
virtualinvoke v.<org.apache.hc.client.http.ssl.TlsSessionValidator: void verifySession(java.lang.String,javax.net.ssl.SSLSession,javax.net.ssl.HostnameVerifier)>(v, v, v);
return;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/hc/client5/http/ssl/AbstractClientTlsStrategy;");
<org.apache.hc.client.http.ssl.AbstractClientTlsStrategy: org.slf4j.Logger LOG> = v;
return;
}
}