public class com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
public com.datastax.oss.driver.internal.core.config.cloud.CloudConfig createCloudConfig(java.net.URL);
descriptor: (Ljava/net/URL;)Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfig;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "cloudConfigUrl cannot be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
aload 1
invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.createCloudConfig:(Ljava/io/InputStream;)Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfig;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 2 1 cloudConfigUrl Ljava/net/URL;
Exceptions:
throws java.io.IOException, java.security.GeneralSecurityException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
cloudConfigUrl
public com.datastax.oss.driver.internal.core.config.cloud.CloudConfig createCloudConfig(java.io.InputStream);
descriptor: (Ljava/io/InputStream;)Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfig;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=18, args_size=2
start local 0 start local 1 0: aload 1
ldc "cloudConfig cannot be null"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aconst_null
astore 2
start local 2 2: aconst_null
astore 3
start local 3 3: aconst_null
astore 4
start local 4 4: new com.fasterxml.jackson.databind.ObjectMapper
dup
invokespecial com.fasterxml.jackson.databind.ObjectMapper.<init>:()V
getstatic com.fasterxml.jackson.core.JsonParser$Feature.AUTO_CLOSE_SOURCE:Lcom/fasterxml/jackson/core/JsonParser$Feature;
iconst_0
invokevirtual com.fasterxml.jackson.databind.ObjectMapper.configure:(Lcom/fasterxml/jackson/core/JsonParser$Feature;Z)Lcom/fasterxml/jackson/databind/ObjectMapper;
astore 5
start local 5 5: aconst_null
astore 6
aconst_null
astore 7
6: new java.util.zip.ZipInputStream
dup
aload 1
invokespecial java.util.zip.ZipInputStream.<init>:(Ljava/io/InputStream;)V
astore 8
start local 8 7: goto 20
start local 9 8: StackMap locals: com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory java.io.InputStream com.fasterxml.jackson.databind.JsonNode java.io.ByteArrayOutputStream java.io.ByteArrayOutputStream com.fasterxml.jackson.databind.ObjectMapper java.lang.Throwable java.lang.Throwable java.util.zip.ZipInputStream java.util.zip.ZipEntry
StackMap stack:
aload 9
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
astore 10
start local 10 9: aload 10
dup
astore 11
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
-2092521139: 10
-121870814: 11
-28025836: 12
default: 20
}
StackMap locals: java.lang.String java.lang.String
StackMap stack:
10: aload 11
ldc "trustStore.jks"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 18
goto 20
StackMap locals:
StackMap stack:
11: aload 11
ldc "identity.jks"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
goto 20
StackMap locals:
StackMap stack:
12: aload 11
ldc "config.json"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
goto 20
13: StackMap locals:
StackMap stack:
aload 5
aload 8
invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readTree:(Ljava/io/InputStream;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 2
14: goto 20
15: StackMap locals:
StackMap stack:
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 3
16: aload 8
aload 3
invokestatic com.datastax.oss.driver.shaded.guava.common.io.ByteStreams.copy:(Ljava/io/InputStream;Ljava/io/OutputStream;)J
pop2
17: goto 20
18: StackMap locals:
StackMap stack:
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 4
19: aload 8
aload 4
invokestatic com.datastax.oss.driver.shaded.guava.common.io.ByteStreams.copy:(Ljava/io/InputStream;Ljava/io/OutputStream;)J
pop2
end local 10 end local 9 20: StackMap locals:
StackMap stack:
aload 8
invokevirtual java.util.zip.ZipInputStream.getNextEntry:()Ljava/util/zip/ZipEntry;
dup
astore 9
start local 9 21: ifnonnull 8
end local 9 22: aload 8
ifnull 28
aload 8
invokevirtual java.util.zip.ZipInputStream.close:()V
goto 28
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 6
aload 8
ifnull 24
aload 8
invokevirtual java.util.zip.ZipInputStream.close:()V
end local 8 StackMap locals:
StackMap stack:
24: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
25: astore 7
aload 6
ifnonnull 26
aload 7
astore 6
goto 27
StackMap locals:
StackMap stack:
26: aload 6
aload 7
if_acmpeq 27
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
27: aload 6
athrow
28: StackMap locals:
StackMap stack:
aload 2
ifnonnull 30
29: new java.lang.IllegalStateException
dup
ldc "Invalid bundle: missing file config.json"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
30: StackMap locals:
StackMap stack:
aload 3
ifnonnull 32
31: new java.lang.IllegalStateException
dup
ldc "Invalid bundle: missing file identity.jks"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
32: StackMap locals:
StackMap stack:
aload 4
ifnonnull 34
33: new java.lang.IllegalStateException
dup
ldc "Invalid bundle: missing file trustStore.jks"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
34: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getKeyStorePassword:(Lcom/fasterxml/jackson/databind/JsonNode;)[C
astore 6
start local 6 35: aload 0
aload 2
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getTrustStorePassword:(Lcom/fasterxml/jackson/databind/JsonNode;)[C
astore 7
start local 7 36: new java.io.ByteArrayInputStream
dup
aload 3
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
37: astore 8
start local 8 38: new java.io.ByteArrayInputStream
dup
aload 4
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
39: astore 9
start local 9 40: aload 0
41: aload 8
aload 6
aload 9
aload 7
42: invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.createSslContext:(Ljava/io/ByteArrayInputStream;[CLjava/io/ByteArrayInputStream;[C)Ljavax/net/ssl/SSLContext;
43: astore 10
start local 10 44: aload 0
aload 2
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getMetadataServiceUrl:(Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/net/URL;
astore 11
start local 11 45: aconst_null
astore 13
aconst_null
astore 14
46: aload 0
aload 11
aload 10
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.fetchProxyMetadata:(Ljava/net/URL;Ljavax/net/ssl/SSLContext;)Ljava/io/BufferedReader;
astore 15
start local 15 47: aload 5
aload 15
invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readTree:(Ljava/io/Reader;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 12
start local 12 48: aload 15
ifnull 54
aload 15
invokevirtual java.io.BufferedReader.close:()V
goto 54
end local 12 StackMap locals: com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory java.io.InputStream com.fasterxml.jackson.databind.JsonNode java.io.ByteArrayOutputStream java.io.ByteArrayOutputStream com.fasterxml.jackson.databind.ObjectMapper char[] char[] java.io.ByteArrayInputStream java.io.ByteArrayInputStream javax.net.ssl.SSLContext java.net.URL top java.lang.Throwable java.lang.Throwable java.io.BufferedReader
StackMap stack: java.lang.Throwable
49: astore 13
aload 15
ifnull 50
aload 15
invokevirtual java.io.BufferedReader.close:()V
end local 15 StackMap locals:
StackMap stack:
50: aload 13
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
51: astore 14
aload 13
ifnonnull 52
aload 14
astore 13
goto 53
StackMap locals:
StackMap stack:
52: aload 13
aload 14
if_acmpeq 53
aload 13
aload 14
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
53: aload 13
athrow
start local 12 54: StackMap locals: com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory java.io.InputStream com.fasterxml.jackson.databind.JsonNode java.io.ByteArrayOutputStream java.io.ByteArrayOutputStream com.fasterxml.jackson.databind.ObjectMapper char[] char[] java.io.ByteArrayInputStream java.io.ByteArrayInputStream javax.net.ssl.SSLContext java.net.URL com.fasterxml.jackson.databind.JsonNode
StackMap stack:
aload 0
aload 12
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getSniProxyAddress:(Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/net/InetSocketAddress;
astore 13
start local 13 55: aload 0
aload 12
aload 13
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getEndPoints:(Lcom/fasterxml/jackson/databind/JsonNode;Ljava/net/InetSocketAddress;)Ljava/util/List;
astore 14
start local 14 56: aload 0
aload 12
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getLocalDatacenter:(Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/lang/String;
astore 15
start local 15 57: new com.datastax.oss.driver.internal.core.ssl.SniSslEngineFactory
dup
aload 10
invokespecial com.datastax.oss.driver.internal.core.ssl.SniSslEngineFactory.<init>:(Ljavax/net/ssl/SSLContext;)V
astore 16
start local 16 58: aload 0
aload 2
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getAuthProvider:(Lcom/fasterxml/jackson/databind/JsonNode;)Lcom/datastax/oss/driver/api/core/auth/AuthProvider;
astore 17
start local 17 59: new com.datastax.oss.driver.internal.core.config.cloud.CloudConfig
dup
60: aload 13
aload 14
aload 15
aload 16
aload 17
61: invokespecial com.datastax.oss.driver.internal.core.config.cloud.CloudConfig.<init>:(Ljava/net/InetSocketAddress;Ljava/util/List;Ljava/lang/String;Lcom/datastax/oss/driver/api/core/ssl/SslEngineFactory;Lcom/datastax/oss/driver/api/core/auth/AuthProvider;)V
areturn
end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 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 62 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 62 1 cloudConfig Ljava/io/InputStream;
2 62 2 configJson Lcom/fasterxml/jackson/databind/JsonNode;
3 62 3 keyStoreOutputStream Ljava/io/ByteArrayOutputStream;
4 62 4 trustStoreOutputStream Ljava/io/ByteArrayOutputStream;
5 62 5 mapper Lcom/fasterxml/jackson/databind/ObjectMapper;
7 24 8 zipInputStream Ljava/util/zip/ZipInputStream;
8 20 9 entry Ljava/util/zip/ZipEntry;
21 22 9 entry Ljava/util/zip/ZipEntry;
9 20 10 fileName Ljava/lang/String;
35 62 6 keyStorePassword [C
36 62 7 trustStorePassword [C
38 62 8 keyStoreInputStream Ljava/io/ByteArrayInputStream;
40 62 9 trustStoreInputStream Ljava/io/ByteArrayInputStream;
44 62 10 sslContext Ljavax/net/ssl/SSLContext;
45 62 11 metadataServiceUrl Ljava/net/URL;
48 49 12 proxyMetadataJson Lcom/fasterxml/jackson/databind/JsonNode;
54 62 12 proxyMetadataJson Lcom/fasterxml/jackson/databind/JsonNode;
47 50 15 proxyMetadata Ljava/io/BufferedReader;
55 62 13 sniProxyAddress Ljava/net/InetSocketAddress;
56 62 14 endPoints Ljava/util/List<Lcom/datastax/oss/driver/api/core/metadata/EndPoint;>;
57 62 15 localDatacenter Ljava/lang/String;
58 62 16 sslEngineFactory Lcom/datastax/oss/driver/internal/core/ssl/SniSslEngineFactory;
59 62 17 authProvider Lcom/datastax/oss/driver/api/core/auth/AuthProvider;
Exception table:
from to target type
7 22 23 any
6 25 25 any
47 48 49 any
46 51 51 any
Exceptions:
throws java.io.IOException, java.security.GeneralSecurityException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
cloudConfig
protected char[] getKeyStorePassword(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)[C
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "keyStorePassword"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 2
1: aload 1
ldc "keyStorePassword"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
areturn
2: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid config.json: missing field keyStorePassword"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 3 1 configFile Lcom/fasterxml/jackson/databind/JsonNode;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
configFile
protected char[] getTrustStorePassword(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)[C
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "trustStorePassword"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 2
1: aload 1
ldc "trustStorePassword"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
invokevirtual java.lang.String.toCharArray:()[C
areturn
2: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid config.json: missing field trustStorePassword"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 3 1 configFile Lcom/fasterxml/jackson/databind/JsonNode;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
configFile
protected java.net.URL getMetadataServiceUrl(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/net/URL;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ldc "host"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 6
1: aload 1
ldc "host"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
astore 2
start local 2 2: aload 1
ldc "port"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 5
3: aload 1
ldc "port"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asInt:()I
istore 3
start local 3 4: new java.net.URL
dup
ldc "https"
aload 2
iload 3
ldc "/metadata"
invokespecial java.net.URL.<init>:(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V
areturn
end local 3 5: StackMap locals: java.lang.String
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid config.json: missing field port"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 2 6: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid config.json: missing field host"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 7 1 configFile Lcom/fasterxml/jackson/databind/JsonNode;
2 6 2 metadataServiceHost Ljava/lang/String;
4 5 3 metadataServicePort I
Exceptions:
throws java.net.MalformedURLException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
configFile
protected com.datastax.oss.driver.api.core.auth.AuthProvider getAuthProvider(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Lcom/datastax/oss/driver/api/core/auth/AuthProvider;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ldc "username"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 5
1: aload 1
ldc "username"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
astore 2
start local 2 2: aload 1
ldc "password"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 5
3: aload 1
ldc "password"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
astore 3
start local 3 4: new com.datastax.oss.driver.internal.core.auth.ProgrammaticPlainTextAuthProvider
dup
aload 2
aload 3
invokespecial com.datastax.oss.driver.internal.core.auth.ProgrammaticPlainTextAuthProvider.<init>:(Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 3 end local 2 5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 6 1 configFile Lcom/fasterxml/jackson/databind/JsonNode;
2 5 2 username Ljava/lang/String;
4 5 3 password Ljava/lang/String;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.Nullable()
MethodParameters:
Name Flags
configFile
protected javax.net.ssl.SSLContext createSslContext(java.io.ByteArrayInputStream, char[], java.io.ByteArrayInputStream, char[]);
descriptor: (Ljava/io/ByteArrayInputStream;[CLjava/io/ByteArrayInputStream;[C)Ljavax/net/ssl/SSLContext;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.createKeyManagerFactory:(Ljava/io/InputStream;[C)Ljavax/net/ssl/KeyManagerFactory;
astore 5
start local 5 1: aload 0
aload 3
aload 4
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.createTrustManagerFactory:(Ljava/io/InputStream;[C)Ljavax/net/ssl/TrustManagerFactory;
astore 6
start local 6 2: ldc "SSL"
invokestatic javax.net.ssl.SSLContext.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/SSLContext;
astore 7
start local 7 3: aload 7
aload 5
invokevirtual javax.net.ssl.KeyManagerFactory.getKeyManagers:()[Ljavax/net/ssl/KeyManager;
aload 6
invokevirtual javax.net.ssl.TrustManagerFactory.getTrustManagers:()[Ljavax/net/ssl/TrustManager;
new java.security.SecureRandom
dup
invokespecial java.security.SecureRandom.<init>:()V
invokevirtual javax.net.ssl.SSLContext.init:([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V
4: aload 7
areturn
end local 7 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 5 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 5 1 keyStoreInputStream Ljava/io/ByteArrayInputStream;
0 5 2 keyStorePassword [C
0 5 3 trustStoreInputStream Ljava/io/ByteArrayInputStream;
0 5 4 trustStorePassword [C
1 5 5 kmf Ljavax/net/ssl/KeyManagerFactory;
2 5 6 tmf Ljavax/net/ssl/TrustManagerFactory;
3 5 7 sslContext Ljavax/net/ssl/SSLContext;
Exceptions:
throws java.io.IOException, java.security.GeneralSecurityException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
1:
edu.umd.cs.findbugs.annotations.NonNull()
2:
edu.umd.cs.findbugs.annotations.NonNull()
3:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
keyStoreInputStream
keyStorePassword
trustStoreInputStream
trustStorePassword
protected javax.net.ssl.KeyManagerFactory createKeyManagerFactory(java.io.InputStream, char[]);
descriptor: (Ljava/io/InputStream;[C)Ljavax/net/ssl/KeyManagerFactory;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: ldc "JKS"
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 3
start local 3 1: aload 3
aload 1
aload 2
invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
2: invokestatic javax.net.ssl.KeyManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
invokestatic javax.net.ssl.KeyManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/KeyManagerFactory;
astore 4
start local 4 3: aload 4
aload 3
aload 2
invokevirtual javax.net.ssl.KeyManagerFactory.init:(Ljava/security/KeyStore;[C)V
4: aload 2
iconst_0
invokestatic java.util.Arrays.fill:([CC)V
5: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 6 1 keyStoreInputStream Ljava/io/InputStream;
0 6 2 keyStorePassword [C
1 6 3 ks Ljava/security/KeyStore;
3 6 4 kmf Ljavax/net/ssl/KeyManagerFactory;
Exceptions:
throws java.io.IOException, java.security.GeneralSecurityException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
1:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
keyStoreInputStream
keyStorePassword
protected javax.net.ssl.TrustManagerFactory createTrustManagerFactory(java.io.InputStream, char[]);
descriptor: (Ljava/io/InputStream;[C)Ljavax/net/ssl/TrustManagerFactory;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: ldc "JKS"
invokestatic java.security.KeyStore.getInstance:(Ljava/lang/String;)Ljava/security/KeyStore;
astore 3
start local 3 1: aload 3
aload 1
aload 2
invokevirtual java.security.KeyStore.load:(Ljava/io/InputStream;[C)V
2: invokestatic javax.net.ssl.TrustManagerFactory.getDefaultAlgorithm:()Ljava/lang/String;
invokestatic javax.net.ssl.TrustManagerFactory.getInstance:(Ljava/lang/String;)Ljavax/net/ssl/TrustManagerFactory;
3: astore 4
start local 4 4: aload 4
aload 3
invokevirtual javax.net.ssl.TrustManagerFactory.init:(Ljava/security/KeyStore;)V
5: aload 2
iconst_0
invokestatic java.util.Arrays.fill:([CC)V
6: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 7 1 trustStoreInputStream Ljava/io/InputStream;
0 7 2 trustStorePassword [C
1 7 3 ts Ljava/security/KeyStore;
4 7 4 tmf Ljavax/net/ssl/TrustManagerFactory;
Exceptions:
throws java.io.IOException, java.security.GeneralSecurityException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
1:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
trustStoreInputStream
trustStorePassword
protected java.io.BufferedReader fetchProxyMetadata(java.net.URL, javax.net.ssl.SSLContext);
descriptor: (Ljava/net/URL;Ljavax/net/ssl/SSLContext;)Ljava/io/BufferedReader;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.net.URL.openConnection:()Ljava/net/URLConnection;
checkcast javax.net.ssl.HttpsURLConnection
astore 3
start local 3 1: aload 3
aload 2
invokevirtual javax.net.ssl.SSLContext.getSocketFactory:()Ljavax/net/ssl/SSLSocketFactory;
invokevirtual javax.net.ssl.HttpsURLConnection.setSSLSocketFactory:(Ljavax/net/ssl/SSLSocketFactory;)V
2: aload 3
ldc "GET"
invokevirtual javax.net.ssl.HttpsURLConnection.setRequestMethod:(Ljava/lang/String;)V
3: aload 3
ldc "host"
ldc "localhost"
invokevirtual javax.net.ssl.HttpsURLConnection.setRequestProperty:(Ljava/lang/String;Ljava/lang/String;)V
4: new java.io.BufferedReader
dup
5: new java.io.InputStreamReader
dup
aload 3
invokevirtual javax.net.ssl.HttpsURLConnection.getInputStream:()Ljava/io/InputStream;
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/nio/charset/Charset;)V
6: invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 7 1 metadataServiceUrl Ljava/net/URL;
0 7 2 sslContext Ljavax/net/ssl/SSLContext;
1 7 3 connection Ljavax/net/ssl/HttpsURLConnection;
Exceptions:
throws java.io.IOException
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
1:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
metadataServiceUrl
sslContext
protected java.lang.String getLocalDatacenter(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getContactInfo:(Lcom/fasterxml/jackson/databind/JsonNode;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 2
start local 2 1: aload 2
ldc "local_dc"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 3
2: aload 2
ldc "local_dc"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
areturn
3: StackMap locals: com.fasterxml.jackson.databind.JsonNode
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid proxy metadata: missing field local_dc"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 4 1 proxyMetadata Lcom/fasterxml/jackson/databind/JsonNode;
1 4 2 contactInfo Lcom/fasterxml/jackson/databind/JsonNode;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
proxyMetadata
protected java.net.InetSocketAddress getSniProxyAddress(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Ljava/net/InetSocketAddress;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getContactInfo:(Lcom/fasterxml/jackson/databind/JsonNode;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 2
start local 2 1: aload 2
ldc "sni_proxy_address"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 10
2: aload 2
ldc "sni_proxy_address"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
invokestatic com.datastax.oss.driver.shaded.guava.common.net.HostAndPort.fromString:(Ljava/lang/String;)Lcom/datastax/oss/driver/shaded/guava/common/net/HostAndPort;
3: astore 3
start local 3 4: aload 3
invokevirtual com.datastax.oss.driver.shaded.guava.common.net.HostAndPort.hasPort:()Z
ifne 8
5: new java.lang.IllegalStateException
dup
6: ldc "Invalid proxy metadata: missing port from field sni_proxy_address"
7: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: com.fasterxml.jackson.databind.JsonNode com.datastax.oss.driver.shaded.guava.common.net.HostAndPort
StackMap stack:
aload 3
invokevirtual com.datastax.oss.driver.shaded.guava.common.net.HostAndPort.getHost:()Ljava/lang/String;
aload 3
invokevirtual com.datastax.oss.driver.shaded.guava.common.net.HostAndPort.getPort:()I
9: invokestatic java.net.InetSocketAddress.createUnresolved:(Ljava/lang/String;I)Ljava/net/InetSocketAddress;
areturn
end local 3 10: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid proxy metadata: missing field sni_proxy_address"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 11 1 proxyMetadata Lcom/fasterxml/jackson/databind/JsonNode;
1 11 2 contactInfo Lcom/fasterxml/jackson/databind/JsonNode;
4 10 3 sniProxyHostAndPort Lcom/datastax/oss/driver/shaded/guava/common/net/HostAndPort;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
proxyMetadata
protected java.util.List<com.datastax.oss.driver.api.core.metadata.EndPoint> getEndPoints(com.fasterxml.jackson.databind.JsonNode, java.net.InetSocketAddress);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;Ljava/net/InetSocketAddress;)Ljava/util/List;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory.getContactInfo:(Lcom/fasterxml/jackson/databind/JsonNode;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 3
start local 3 1: aload 3
ldc "contact_points"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 10
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 3: aload 3
ldc "contact_points"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 5
start local 5 4: iconst_0
istore 6
start local 6 5: goto 8
6: StackMap locals: com.datastax.oss.driver.internal.core.config.cloud.CloudConfigFactory com.fasterxml.jackson.databind.JsonNode java.net.InetSocketAddress com.fasterxml.jackson.databind.JsonNode java.util.List com.fasterxml.jackson.databind.JsonNode int
StackMap stack:
aload 4
new com.datastax.oss.driver.internal.core.metadata.SniEndPoint
dup
aload 2
aload 5
iload 6
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(I)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
invokespecial com.datastax.oss.driver.internal.core.metadata.SniEndPoint.<init>:(Ljava/net/InetSocketAddress;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
7: iinc 6 1
StackMap locals:
StackMap stack:
8: iload 6
aload 5
invokevirtual com.fasterxml.jackson.databind.JsonNode.size:()I
if_icmplt 6
end local 6 9: aload 4
areturn
end local 5 end local 4 10: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid proxy metadata: missing field contact_points"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 11 1 proxyMetadata Lcom/fasterxml/jackson/databind/JsonNode;
0 11 2 sniProxyAddress Ljava/net/InetSocketAddress;
1 11 3 contactInfo Lcom/fasterxml/jackson/databind/JsonNode;
3 10 4 endPoints Ljava/util/List<Lcom/datastax/oss/driver/api/core/metadata/EndPoint;>;
4 10 5 hostIdsJson Lcom/fasterxml/jackson/databind/JsonNode;
5 9 6 i I
Signature: (Lcom/fasterxml/jackson/databind/JsonNode;Ljava/net/InetSocketAddress;)Ljava/util/List<Lcom/datastax/oss/driver/api/core/metadata/EndPoint;>;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
1:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
proxyMetadata
sniProxyAddress
protected com.fasterxml.jackson.databind.JsonNode getContactInfo(com.fasterxml.jackson.databind.JsonNode);
descriptor: (Lcom/fasterxml/jackson/databind/JsonNode;)Lcom/fasterxml/jackson/databind/JsonNode;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "contact_info"
invokevirtual com.fasterxml.jackson.databind.JsonNode.has:(Ljava/lang/String;)Z
ifeq 2
1: aload 1
ldc "contact_info"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
areturn
2: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Invalid proxy metadata: missing field contact_info"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/datastax/oss/driver/internal/core/config/cloud/CloudConfigFactory;
0 3 1 proxyMetadata Lcom/fasterxml/jackson/databind/JsonNode;
RuntimeInvisibleAnnotations:
edu.umd.cs.findbugs.annotations.NonNull()
RuntimeInvisibleParameterAnnotations:
0:
edu.umd.cs.findbugs.annotations.NonNull()
MethodParameters:
Name Flags
proxyMetadata
}
SourceFile: "CloudConfigFactory.java"
InnerClasses:
public final Feature = com.fasterxml.jackson.core.JsonParser$Feature of com.fasterxml.jackson.core.JsonParser
RuntimeVisibleAnnotations:
net.jcip.annotations.ThreadSafe()