public class org.apache.http.ssl.SSLContextBuilder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.http.ssl.SSLContextBuilder
super_class: java.lang.Object
{
static final java.lang.String TLS;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "TLS"
private java.lang.String protocol;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private final java.util.Set<javax.net.ssl.KeyManager> keyManagers;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljavax/net/ssl/KeyManager;>;
private java.lang.String keyManagerFactoryAlgorithm;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String keyStoreType;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private final java.util.Set<javax.net.ssl.TrustManager> trustManagers;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljavax/net/ssl/TrustManager;>;
private java.lang.String trustManagerFactoryAlgorithm;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.security.SecureRandom secureRandom;
descriptor: Ljava/security/SecureRandom;
flags: (0x0002) ACC_PRIVATE
private java.security.Provider provider;
descriptor: Ljava/security/Provider;
flags: (0x0002) ACC_PRIVATE
public static org.apache.http.ssl.SSLContextBuilder create();
descriptor: ()Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.apache.http.ssl.SSLContextBuilder
dup
invokespecial org.apache.http.ssl.SSLContextBuilder.<init>:()V
areturn
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic javax.net.ssl.KeyManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
putfield org.apache.http.ssl.SSLContextBuilder.keyManagerFactoryAlgorithm:Ljava/lang/String;
2: aload 0
invokestatic java.security.KeyStore.getDefaultType:()Ljava/lang/String;
putfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
3: aload 0
invokestatic javax.net.ssl.TrustManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
putfield org.apache.http.ssl.SSLContextBuilder.trustManagerFactoryAlgorithm:Ljava/lang/String;
4: aload 0
new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
putfield org.apache.http.ssl.SSLContextBuilder.keyManagers:Ljava/util/Set;
5: aload 0
new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
putfield org.apache.http.ssl.SSLContextBuilder.trustManagers:Ljava/util/Set;
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/http/ssl/SSLContextBuilder;
public org.apache.http.ssl.SSLContextBuilder useProtocol(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.protocol:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 protocol Ljava/lang/String;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
protocol final
public org.apache.http.ssl.SSLContextBuilder setProtocol(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.protocol:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 protocol Ljava/lang/String;
MethodParameters:
Name Flags
protocol final
public org.apache.http.ssl.SSLContextBuilder setSecureRandom(java.security.SecureRandom);
descriptor: (Ljava/security/SecureRandom;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.secureRandom:Ljava/security/SecureRandom;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 secureRandom Ljava/security/SecureRandom;
MethodParameters:
Name Flags
secureRandom final
public org.apache.http.ssl.SSLContextBuilder setProvider(java.security.Provider);
descriptor: (Ljava/security/Provider;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.provider:Ljava/security/Provider;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 provider Ljava/security/Provider;
MethodParameters:
Name Flags
provider final
public org.apache.http.ssl.SSLContextBuilder setProvider(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.security.Security.getProvider:(Ljava/lang/String;)Ljava/security/Provider;
putfield org.apache.http.ssl.SSLContextBuilder.provider:Ljava/security/Provider;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name final
public org.apache.http.ssl.SSLContextBuilder setKeyStoreType(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 keyStoreType Ljava/lang/String;
MethodParameters:
Name Flags
keyStoreType final
public org.apache.http.ssl.SSLContextBuilder setKeyManagerFactoryAlgorithm(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.keyManagerFactoryAlgorithm:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 keyManagerFactoryAlgorithm Ljava/lang/String;
MethodParameters:
Name Flags
keyManagerFactoryAlgorithm final
public org.apache.http.ssl.SSLContextBuilder setTrustManagerFactoryAlgorithm(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.http.ssl.SSLContextBuilder.trustManagerFactoryAlgorithm:Ljava/lang/String;
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 2 1 trustManagerFactoryAlgorithm Ljava/lang/String;
MethodParameters:
Name Flags
trustManagerFactoryAlgorithm final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(java.security.KeyStore, org.apache.http.ssl.TrustStrategy);
descriptor: (Ljava/security/KeyStore;Lorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.trustManagerFactoryAlgorithm:Ljava/lang/String;
ifnonnull 1
invokestatic javax.net.ssl.TrustManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
goto 2
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.trustManagerFactoryAlgorithm:Ljava/lang/String;
2: StackMap locals:
StackMap stack: java.lang.String
invokestatic javax.net.ssl.TrustManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/TrustManagerFactory;
3: astore 3
start local 3 4: aload 3
aload 1
invokevirtual javax.net.ssl.TrustManagerFactory.init:(Ljava/security/KeyStore;)V
5: aload 3
invokevirtual javax.net.ssl.TrustManagerFactory.getTrustManagers:()[Ljavax/net/ssl/TrustManager;
astore 4
start local 4 6: aload 4
ifnull 20
7: aload 2
ifnull 15
8: iconst_0
istore 5
start local 5 9: goto 14
10: StackMap locals: javax.net.ssl.TrustManagerFactory javax.net.ssl.TrustManager[] int
StackMap stack:
aload 4
iload 5
aaload
astore 6
start local 6 11: aload 6
instanceof javax.net.ssl.X509TrustManager
ifeq 13
12: aload 4
iload 5
new org.apache.http.ssl.SSLContextBuilder$TrustManagerDelegate
dup
aload 6
checkcast javax.net.ssl.X509TrustManager
aload 2
invokespecial org.apache.http.ssl.SSLContextBuilder$TrustManagerDelegate.<init>:(Ljavax/net/ssl/X509TrustManager;Lorg/apache/http/ssl/TrustStrategy;)V
aastore
end local 6 13: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
14: iload 5
aload 4
arraylength
if_icmplt 10
end local 5 15: StackMap locals:
StackMap stack:
aload 4
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 19
StackMap locals: org.apache.http.ssl.SSLContextBuilder java.security.KeyStore org.apache.http.ssl.TrustStrategy javax.net.ssl.TrustManagerFactory javax.net.ssl.TrustManager[] top int int javax.net.ssl.TrustManager[]
StackMap stack:
16: aload 8
iload 6
aaload
astore 5
start local 5 17: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.trustManagers:Ljava/util/Set;
aload 5
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 5 18: iinc 6 1
StackMap locals:
StackMap stack:
19: iload 6
iload 7
if_icmplt 16
20: StackMap locals: org.apache.http.ssl.SSLContextBuilder java.security.KeyStore org.apache.http.ssl.TrustStrategy javax.net.ssl.TrustManagerFactory javax.net.ssl.TrustManager[]
StackMap stack:
aload 0
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 21 1 truststore Ljava/security/KeyStore;
0 21 2 trustStrategy Lorg/apache/http/ssl/TrustStrategy;
4 21 3 tmfactory Ljavax/net/ssl/TrustManagerFactory;
6 21 4 tms [Ljavax/net/ssl/TrustManager;
9 15 5 i I
11 13 6 tm Ljavax/net/ssl/TrustManager;
17 18 5 tm Ljavax/net/ssl/TrustManager;
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException
MethodParameters:
Name Flags
truststore final
trustStrategy final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(org.apache.http.ssl.TrustStrategy);
descriptor: (Lorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aconst_null
aload 1
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadTrustMaterial:(Ljava/security/KeyStore;Lorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 trustStrategy Lorg/apache/http/ssl/TrustStrategy;
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException
MethodParameters:
Name Flags
trustStrategy final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(java.io.File, char[], org.apache.http.ssl.TrustStrategy);
descriptor: (Ljava/io/File;[CLorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc "Truststore file"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 4
start local 4 2: new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 5
start local 5 3: aload 4
aload 5
aload 2
invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
4: goto 8
StackMap locals: org.apache.http.ssl.SSLContextBuilder java.io.File char[] org.apache.http.ssl.TrustStrategy java.security.KeyStore java.io.FileInputStream
StackMap stack: java.lang.Throwable
5: astore 6
6: aload 5
invokevirtual java.io.FileInputStream.close:()V
7: aload 6
athrow
8: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.io.FileInputStream.close:()V
9: aload 0
aload 4
aload 3
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadTrustMaterial:(Ljava/security/KeyStore;Lorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 10 1 file Ljava/io/File;
0 10 2 storePassword [C
0 10 3 trustStrategy Lorg/apache/http/ssl/TrustStrategy;
2 10 4 trustStore Ljava/security/KeyStore;
3 10 5 inStream Ljava/io/FileInputStream;
Exception table:
from to target type
3 5 5 any
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
file final
storePassword final
trustStrategy final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(java.io.File, char[]);
descriptor: (Ljava/io/File;[C)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadTrustMaterial:(Ljava/io/File;[CLorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 file Ljava/io/File;
0 1 2 storePassword [C
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
file final
storePassword final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(java.io.File);
descriptor: (Ljava/io/File;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadTrustMaterial:(Ljava/io/File;[C)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 file Ljava/io/File;
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
file final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(java.net.URL, char[], org.apache.http.ssl.TrustStrategy);
descriptor: (Ljava/net/URL;[CLorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc "Truststore URL"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 4
start local 4 2: aload 1
invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
astore 5
start local 5 3: aload 4
aload 5
aload 2
invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
4: goto 8
StackMap locals: org.apache.http.ssl.SSLContextBuilder java.net.URL char[] org.apache.http.ssl.TrustStrategy java.security.KeyStore java.io.InputStream
StackMap stack: java.lang.Throwable
5: astore 6
6: aload 5
invokevirtual java.io.InputStream.close:()V
7: aload 6
athrow
8: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.io.InputStream.close:()V
9: aload 0
aload 4
aload 3
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadTrustMaterial:(Ljava/security/KeyStore;Lorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 10 1 url Ljava/net/URL;
0 10 2 storePassword [C
0 10 3 trustStrategy Lorg/apache/http/ssl/TrustStrategy;
2 10 4 trustStore Ljava/security/KeyStore;
3 10 5 inStream Ljava/io/InputStream;
Exception table:
from to target type
3 5 5 any
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
url final
storePassword final
trustStrategy final
public org.apache.http.ssl.SSLContextBuilder loadTrustMaterial(java.net.URL, char[]);
descriptor: (Ljava/net/URL;[C)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadTrustMaterial:(Ljava/net/URL;[CLorg/apache/http/ssl/TrustStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 url Ljava/net/URL;
0 1 2 storePassword [C
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
url final
storePassword final
public org.apache.http.ssl.SSLContextBuilder loadKeyMaterial(java.security.KeyStore, char[], org.apache.http.ssl.PrivateKeyStrategy);
descriptor: (Ljava/security/KeyStore;[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyManagerFactoryAlgorithm:Ljava/lang/String;
ifnonnull 1
invokestatic javax.net.ssl.KeyManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
goto 2
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyManagerFactoryAlgorithm:Ljava/lang/String;
2: StackMap locals:
StackMap stack: java.lang.String
invokestatic javax.net.ssl.KeyManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/KeyManagerFactory;
3: astore 4
start local 4 4: aload 4
aload 1
aload 2
invokevirtual javax.net.ssl.KeyManagerFactory.init:(Ljava/security/KeyStore;[C)V
5: aload 4
invokevirtual javax.net.ssl.KeyManagerFactory.getKeyManagers:()[Ljavax/net/ssl/KeyManager;
astore 5
start local 5 6: aload 5
ifnull 20
7: aload 3
ifnull 15
8: iconst_0
istore 6
start local 6 9: goto 14
10: StackMap locals: javax.net.ssl.KeyManagerFactory javax.net.ssl.KeyManager[] int
StackMap stack:
aload 5
iload 6
aaload
astore 7
start local 7 11: aload 7
instanceof javax.net.ssl.X509ExtendedKeyManager
ifeq 13
12: aload 5
iload 6
new org.apache.http.ssl.SSLContextBuilder$KeyManagerDelegate
dup
aload 7
checkcast javax.net.ssl.X509ExtendedKeyManager
aload 3
invokespecial org.apache.http.ssl.SSLContextBuilder$KeyManagerDelegate.<init>:(Ljavax/net/ssl/X509ExtendedKeyManager;Lorg/apache/http/ssl/PrivateKeyStrategy;)V
aastore
end local 7 13: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
14: iload 6
aload 5
arraylength
if_icmplt 10
end local 6 15: StackMap locals:
StackMap stack:
aload 5
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 19
StackMap locals: org.apache.http.ssl.SSLContextBuilder java.security.KeyStore char[] org.apache.http.ssl.PrivateKeyStrategy javax.net.ssl.KeyManagerFactory javax.net.ssl.KeyManager[] top int int javax.net.ssl.KeyManager[]
StackMap stack:
16: aload 9
iload 7
aaload
astore 6
start local 6 17: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyManagers:Ljava/util/Set;
aload 6
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 6 18: iinc 7 1
StackMap locals:
StackMap stack:
19: iload 7
iload 8
if_icmplt 16
20: StackMap locals: org.apache.http.ssl.SSLContextBuilder java.security.KeyStore char[] org.apache.http.ssl.PrivateKeyStrategy javax.net.ssl.KeyManagerFactory javax.net.ssl.KeyManager[]
StackMap stack:
aload 0
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 21 1 keystore Ljava/security/KeyStore;
0 21 2 keyPassword [C
0 21 3 aliasStrategy Lorg/apache/http/ssl/PrivateKeyStrategy;
4 21 4 kmfactory Ljavax/net/ssl/KeyManagerFactory;
6 21 5 kms [Ljavax/net/ssl/KeyManager;
9 15 6 i I
11 13 7 km Ljavax/net/ssl/KeyManager;
17 18 6 km Ljavax/net/ssl/KeyManager;
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
MethodParameters:
Name Flags
keystore final
keyPassword final
aliasStrategy final
public org.apache.http.ssl.SSLContextBuilder loadKeyMaterial(java.security.KeyStore, char[]);
descriptor: (Ljava/security/KeyStore;[C)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aconst_null
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadKeyMaterial:(Ljava/security/KeyStore;[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 keystore Ljava/security/KeyStore;
0 1 2 keyPassword [C
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException
MethodParameters:
Name Flags
keystore final
keyPassword final
public org.apache.http.ssl.SSLContextBuilder loadKeyMaterial(java.io.File, char[], char[], org.apache.http.ssl.PrivateKeyStrategy);
descriptor: (Ljava/io/File;[C[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
ldc "Keystore file"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 5
start local 5 2: new java.io.FileInputStream
dup
aload 1
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 6
start local 6 3: aload 5
aload 6
aload 2
invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
4: goto 8
StackMap locals: org.apache.http.ssl.SSLContextBuilder java.io.File char[] char[] org.apache.http.ssl.PrivateKeyStrategy java.security.KeyStore java.io.FileInputStream
StackMap stack: java.lang.Throwable
5: astore 7
6: aload 6
invokevirtual java.io.FileInputStream.close:()V
7: aload 7
athrow
8: StackMap locals:
StackMap stack:
aload 6
invokevirtual java.io.FileInputStream.close:()V
9: aload 0
aload 5
aload 3
aload 4
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadKeyMaterial:(Ljava/security/KeyStore;[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 10 1 file Ljava/io/File;
0 10 2 storePassword [C
0 10 3 keyPassword [C
0 10 4 aliasStrategy Lorg/apache/http/ssl/PrivateKeyStrategy;
2 10 5 identityStore Ljava/security/KeyStore;
3 10 6 inStream Ljava/io/FileInputStream;
Exception table:
from to target type
3 5 5 any
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
file final
storePassword final
keyPassword final
aliasStrategy final
public org.apache.http.ssl.SSLContextBuilder loadKeyMaterial(java.io.File, char[], char[]);
descriptor: (Ljava/io/File;[C[C)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
aconst_null
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadKeyMaterial:(Ljava/io/File;[C[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 file Ljava/io/File;
0 1 2 storePassword [C
0 1 3 keyPassword [C
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
file final
storePassword final
keyPassword final
public org.apache.http.ssl.SSLContextBuilder loadKeyMaterial(java.net.URL, char[], char[], org.apache.http.ssl.PrivateKeyStrategy);
descriptor: (Ljava/net/URL;[C[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
ldc "Keystore URL"
invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 5
start local 5 2: aload 1
invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
astore 6
start local 6 3: aload 5
aload 6
aload 2
invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
4: goto 8
StackMap locals: org.apache.http.ssl.SSLContextBuilder java.net.URL char[] char[] org.apache.http.ssl.PrivateKeyStrategy java.security.KeyStore java.io.InputStream
StackMap stack: java.lang.Throwable
5: astore 7
6: aload 6
invokevirtual java.io.InputStream.close:()V
7: aload 7
athrow
8: StackMap locals:
StackMap stack:
aload 6
invokevirtual java.io.InputStream.close:()V
9: aload 0
aload 5
aload 3
aload 4
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadKeyMaterial:(Ljava/security/KeyStore;[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 10 1 url Ljava/net/URL;
0 10 2 storePassword [C
0 10 3 keyPassword [C
0 10 4 aliasStrategy Lorg/apache/http/ssl/PrivateKeyStrategy;
2 10 5 identityStore Ljava/security/KeyStore;
3 10 6 inStream Ljava/io/InputStream;
Exception table:
from to target type
3 5 5 any
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
url final
storePassword final
keyPassword final
aliasStrategy final
public org.apache.http.ssl.SSLContextBuilder loadKeyMaterial(java.net.URL, char[], char[]);
descriptor: (Ljava/net/URL;[C[C)Lorg/apache/http/ssl/SSLContextBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
aconst_null
invokevirtual org.apache.http.ssl.SSLContextBuilder.loadKeyMaterial:(Ljava/net/URL;[C[CLorg/apache/http/ssl/PrivateKeyStrategy;)Lorg/apache/http/ssl/SSLContextBuilder;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 1 1 url Ljava/net/URL;
0 1 2 storePassword [C
0 1 3 keyPassword [C
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyStoreException, java.security.UnrecoverableKeyException, java.security.cert.CertificateException, java.io.IOException
MethodParameters:
Name Flags
url final
storePassword final
keyPassword final
protected void initSSLContext(javax.net.ssl.SSLContext, java.util.Collection<javax.net.ssl.KeyManager>, java.util.Collection<javax.net.ssl.TrustManager>, java.security.SecureRandom);
descriptor: (Ljavax/net/ssl/SSLContext;Ljava/util/Collection;Ljava/util/Collection;Ljava/security/SecureRandom;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
1: aload 2
invokeinterface java.util.Collection.isEmpty:()Z
ifne 2
aload 2
aload 2
invokeinterface java.util.Collection.size:()I
anewarray javax.net.ssl.KeyManager
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast javax.net.ssl.KeyManager[]
goto 3
StackMap locals:
StackMap stack: javax.net.ssl.SSLContext
2: aconst_null
3: StackMap locals: org.apache.http.ssl.SSLContextBuilder javax.net.ssl.SSLContext java.util.Collection java.util.Collection java.security.SecureRandom
StackMap stack: javax.net.ssl.SSLContext javax.net.ssl.KeyManager[]
aload 3
invokeinterface java.util.Collection.isEmpty:()Z
ifne 4
aload 3
aload 3
invokeinterface java.util.Collection.size:()I
anewarray javax.net.ssl.TrustManager
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast javax.net.ssl.TrustManager[]
goto 5
StackMap locals: org.apache.http.ssl.SSLContextBuilder javax.net.ssl.SSLContext java.util.Collection java.util.Collection java.security.SecureRandom
StackMap stack: javax.net.ssl.SSLContext javax.net.ssl.KeyManager[]
4: aconst_null
5: StackMap locals: org.apache.http.ssl.SSLContextBuilder javax.net.ssl.SSLContext java.util.Collection java.util.Collection java.security.SecureRandom
StackMap stack: javax.net.ssl.SSLContext javax.net.ssl.KeyManager[] javax.net.ssl.TrustManager[]
aload 4
6: invokevirtual javax.net.ssl.SSLContext.init:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/http/ssl/SSLContextBuilder;
0 8 1 sslContext Ljavax/net/ssl/SSLContext;
0 8 2 keyManagers Ljava/util/Collection<Ljavax/net/ssl/KeyManager;>;
0 8 3 trustManagers Ljava/util/Collection<Ljavax/net/ssl/TrustManager;>;
0 8 4 secureRandom Ljava/security/SecureRandom;
Exceptions:
throws java.security.KeyManagementException
Signature: (Ljavax/net/ssl/SSLContext;Ljava/util/Collection<Ljavax/net/ssl/KeyManager;>;Ljava/util/Collection<Ljavax/net/ssl/TrustManager;>;Ljava/security/SecureRandom;)V
MethodParameters:
Name Flags
sslContext final
keyManagers final
trustManagers final
secureRandom final
public javax.net.ssl.SSLContext build();
descriptor: ()Ljavax/net/ssl/SSLContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.protocol:Ljava/lang/String;
ifnull 1
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.protocol:Ljava/lang/String;
goto 2
StackMap locals:
StackMap stack:
1: ldc "TLS"
StackMap locals:
StackMap stack: java.lang.String
2: astore 2
start local 2 3: aload 0
getfield org.apache.http.ssl.SSLContextBuilder.provider:Ljava/security/Provider;
ifnull 6
4: aload 2
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.provider:Ljava/security/Provider;
invokestatic javax.net.ssl.SSLContext.getInstance:(Ljava/lang/String;Ljava/security/Provider;)Ljavax/net/ssl/SSLContext;
astore 1
start local 1 5: goto 7
end local 1 6: StackMap locals: org.apache.http.ssl.SSLContextBuilder top java.lang.String
StackMap stack:
aload 2
invokestatic javax.net.ssl.SSLContext.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext;
astore 1
start local 1 7: StackMap locals: org.apache.http.ssl.SSLContextBuilder javax.net.ssl.SSLContext java.lang.String
StackMap stack:
aload 0
aload 1
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyManagers:Ljava/util/Set;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.trustManagers:Ljava/util/Set;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.secureRandom:Ljava/security/SecureRandom;
invokevirtual org.apache.http.ssl.SSLContextBuilder.initSSLContext:(Ljavax/net/ssl/SSLContext;Ljava/util/Collection;Ljava/util/Collection;Ljava/security/SecureRandom;)V
8: aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/http/ssl/SSLContextBuilder;
5 6 1 sslContext Ljavax/net/ssl/SSLContext;
7 9 1 sslContext Ljavax/net/ssl/SSLContext;
3 9 2 protocolStr Ljava/lang/String;
Exceptions:
throws java.security.NoSuchAlgorithmException, java.security.KeyManagementException
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "[provider="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.provider:Ljava/security/Provider;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ", protocol="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.protocol:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", keyStoreType="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyStoreType:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc ", keyManagerFactoryAlgorithm="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyManagerFactoryAlgorithm:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", keyManagers="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.keyManagers:Ljava/util/Set;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: ldc ", trustManagerFactoryAlgorithm="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.trustManagerFactoryAlgorithm:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", trustManagers="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.trustManagers:Ljava/util/Set;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc ", secureRandom="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.http.ssl.SSLContextBuilder.secureRandom:Ljava/security/SecureRandom;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/http/ssl/SSLContextBuilder;
}
SourceFile: "SSLContextBuilder.java"
NestMembers:
org.apache.http.ssl.SSLContextBuilder$KeyManagerDelegate org.apache.http.ssl.SSLContextBuilder$TrustManagerDelegate
InnerClasses:
KeyManagerDelegate = org.apache.http.ssl.SSLContextBuilder$KeyManagerDelegate of org.apache.http.ssl.SSLContextBuilder
TrustManagerDelegate = org.apache.http.ssl.SSLContextBuilder$TrustManagerDelegate of org.apache.http.ssl.SSLContextBuilder