public class io.vertx.core.spi.tls.DefaultSslContextFactory extends java.lang.Object implements io.vertx.core.spi.tls.SslContextFactory
{
private final io.netty.handler.ssl.SslProvider sslProvider;
private final boolean sslSessionCacheEnabled;
private java.util.Set enabledCipherSuites;
private java.util.List applicationProtocols;
private boolean useAlpn;
private io.netty.handler.ssl.ClientAuth clientAuth;
private boolean forClient;
private javax.net.ssl.KeyManagerFactory kmf;
private javax.net.ssl.TrustManagerFactory tmf;
public void <init>(io.netty.handler.ssl.SslProvider, boolean)
{
io.netty.handler.ssl.SslProvider v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
boolean v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: io.netty.handler.ssl.SslProvider;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: io.netty.handler.ssl.SslProvider sslProvider> = v;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: boolean sslSessionCacheEnabled> = v;
return;
}
public io.vertx.core.spi.tls.SslContextFactory useAlpn(boolean)
{
io.vertx.core.spi.tls.DefaultSslContextFactory v;
boolean v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: boolean;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: boolean useAlpn> = v;
return v;
}
public io.vertx.core.spi.tls.SslContextFactory clientAuth(io.netty.handler.ssl.ClientAuth)
{
io.netty.handler.ssl.ClientAuth v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: io.netty.handler.ssl.ClientAuth;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: io.netty.handler.ssl.ClientAuth clientAuth> = v;
return v;
}
public io.vertx.core.spi.tls.SslContextFactory forClient(boolean)
{
io.vertx.core.spi.tls.DefaultSslContextFactory v;
boolean v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: boolean;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: boolean forClient> = v;
return v;
}
public io.vertx.core.spi.tls.SslContextFactory keyMananagerFactory(javax.net.ssl.KeyManagerFactory)
{
javax.net.ssl.KeyManagerFactory v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: javax.net.ssl.KeyManagerFactory;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: javax.net.ssl.KeyManagerFactory kmf> = v;
return v;
}
public io.vertx.core.spi.tls.SslContextFactory trustManagerFactory(javax.net.ssl.TrustManagerFactory)
{
javax.net.ssl.TrustManagerFactory v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: javax.net.ssl.TrustManagerFactory;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: javax.net.ssl.TrustManagerFactory tmf> = v;
return v;
}
public io.netty.handler.ssl.SslContext create() throws javax.net.ssl.SSLException
{
io.netty.handler.ssl.SslContext v;
javax.net.ssl.TrustManagerFactory v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
javax.net.ssl.KeyManagerFactory v;
boolean v, v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: boolean useAlpn>;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: boolean forClient>;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: javax.net.ssl.KeyManagerFactory kmf>;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: javax.net.ssl.TrustManagerFactory tmf>;
v = specialinvoke v.<io.vertx.core.spi.tls.DefaultSslContextFactory: io.netty.handler.ssl.SslContext createContext(boolean,boolean,javax.net.ssl.KeyManagerFactory,javax.net.ssl.TrustManagerFactory)>(v, v, v, v);
return v;
}
public io.vertx.core.spi.tls.SslContextFactory enabledCipherSuites(java.util.Set)
{
java.util.Set v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: java.util.Set;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: java.util.Set enabledCipherSuites> = v;
return v;
}
public io.vertx.core.spi.tls.SslContextFactory applicationProtocols(java.util.List)
{
java.util.List v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: java.util.List;
v.<io.vertx.core.spi.tls.DefaultSslContextFactory: java.util.List applicationProtocols> = v;
return v;
}
private io.netty.handler.ssl.SslContext createContext(boolean, boolean, javax.net.ssl.KeyManagerFactory, javax.net.ssl.TrustManagerFactory) throws javax.net.ssl.SSLException
{
io.netty.handler.ssl.ClientAuth v, v;
io.netty.handler.ssl.ApplicationProtocolConfig$Protocol v;
int[] v;
javax.net.ssl.SSLSessionContext v;
io.netty.handler.ssl.ApplicationProtocolConfig v;
boolean v, v, v, v, v, v, v;
javax.net.ssl.TrustManagerFactory v;
java.util.Collection v;
java.util.List v, v, v;
io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior v;
io.vertx.core.spi.tls.DefaultSslContextFactory v;
io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior v;
int v, v, v, v;
java.lang.UnsupportedOperationException v;
io.netty.handler.ssl.SslContext v;
javax.net.ssl.KeyManagerFactory v;
io.netty.handler.ssl.SslProvider v, v, v;
io.netty.handler.ssl.SslContextBuilder v;
v := @this: io.vertx.core.spi.tls.DefaultSslContextFactory;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: javax.net.ssl.KeyManagerFactory;
v := @parameter: javax.net.ssl.TrustManagerFactory;
if v == 0 goto label;
v = staticinvoke <io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder forClient()>();
if v == null goto label;
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder keyManager(javax.net.ssl.KeyManagerFactory)>(v);
goto label;
label:
v = staticinvoke <io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder forServer(javax.net.ssl.KeyManagerFactory)>(v);
label:
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: java.util.Set enabledCipherSuites>;
v = <io.vertx.core.spi.tls.DefaultSslContextFactory$1: int[] $SwitchMap$io$netty$handler$ssl$SslProvider>;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: io.netty.handler.ssl.SslProvider sslProvider>;
v = virtualinvoke v.<io.netty.handler.ssl.SslProvider: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
v = <io.netty.handler.ssl.SslProvider: io.netty.handler.ssl.SslProvider OPENSSL>;
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder sslProvider(io.netty.handler.ssl.SslProvider)>(v);
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v == 0 goto label;
label:
v = staticinvoke <io.netty.handler.ssl.OpenSsl: java.util.Set availableOpenSslCipherSuites()>();
goto label;
label:
v = <io.netty.handler.ssl.SslProvider: io.netty.handler.ssl.SslProvider JDK>;
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder sslProvider(io.netty.handler.ssl.SslProvider)>(v);
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: boolean isEmpty()>();
if v == 0 goto label;
label:
v = staticinvoke <io.vertx.core.spi.tls.DefaultJDKCipherSuite: java.util.List get()>();
goto label;
label:
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>()>();
throw v;
label:
if v == null goto label;
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder trustManager(javax.net.ssl.TrustManagerFactory)>(v);
label:
if v == null goto label;
v = interfaceinvoke v.<java.util.Collection: int size()>();
if v <= 0 goto label;
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder ciphers(java.lang.Iterable)>(v);
label:
if v == 0 goto label;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: java.util.List applicationProtocols>;
if v == null goto label;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: java.util.List applicationProtocols>;
v = interfaceinvoke v.<java.util.List: int size()>();
if v <= 0 goto label;
v = new io.netty.handler.ssl.ApplicationProtocolConfig;
v = <io.netty.handler.ssl.ApplicationProtocolConfig$Protocol: io.netty.handler.ssl.ApplicationProtocolConfig$Protocol ALPN>;
v = <io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior: io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior NO_ADVERTISE>;
v = <io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior: io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior ACCEPT>;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: java.util.List applicationProtocols>;
specialinvoke v.<io.netty.handler.ssl.ApplicationProtocolConfig: void <init>(io.netty.handler.ssl.ApplicationProtocolConfig$Protocol,io.netty.handler.ssl.ApplicationProtocolConfig$SelectorFailureBehavior,io.netty.handler.ssl.ApplicationProtocolConfig$SelectedListenerFailureBehavior,java.lang.Iterable)>(v, v, v, v);
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder applicationProtocolConfig(io.netty.handler.ssl.ApplicationProtocolConfig)>(v);
label:
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: io.netty.handler.ssl.ClientAuth clientAuth>;
if v == null goto label;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: io.netty.handler.ssl.ClientAuth clientAuth>;
virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContextBuilder clientAuth(io.netty.handler.ssl.ClientAuth)>(v);
label:
v = virtualinvoke v.<io.netty.handler.ssl.SslContextBuilder: io.netty.handler.ssl.SslContext build()>();
v = v instanceof io.netty.handler.ssl.OpenSslServerContext;
if v == 0 goto label;
v = virtualinvoke v.<io.netty.handler.ssl.SslContext: javax.net.ssl.SSLSessionContext sessionContext()>();
v = v instanceof io.netty.handler.ssl.OpenSslServerSessionContext;
if v == 0 goto label;
v = v.<io.vertx.core.spi.tls.DefaultSslContextFactory: boolean sslSessionCacheEnabled>;
virtualinvoke v.<io.netty.handler.ssl.OpenSslServerSessionContext: void setSessionCacheEnabled(boolean)>(v);
label:
return v;
}
}