public class org.apache.cassandra.locator.Ec2MultiRegionSnitch extends org.apache.cassandra.locator.Ec2Snitch
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.locator.Ec2MultiRegionSnitch
super_class: org.apache.cassandra.locator.Ec2Snitch
{
private static final java.lang.String PUBLIC_IP_QUERY_URL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "http://169.254.169.254/latest/meta-data/public-ipv4"
private static final java.lang.String PRIVATE_IP_QUERY_URL;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "http://169.254.169.254/latest/meta-data/local-ipv4"
private final java.lang.String localPrivateAddress;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokespecial org.apache.cassandra.locator.Ec2Snitch.<init>:()V
1: aload 0
ldc "http://169.254.169.254/latest/meta-data/public-ipv4"
invokevirtual org.apache.cassandra.locator.Ec2MultiRegionSnitch.awsApiCall:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
astore 1
start local 1 2: getstatic org.apache.cassandra.locator.Ec2MultiRegionSnitch.logger:Lorg/slf4j/Logger;
ldc "EC2Snitch using publicIP as identifier: {}"
aload 1
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;)V
3: aload 0
aload 0
ldc "http://169.254.169.254/latest/meta-data/local-ipv4"
invokevirtual org.apache.cassandra.locator.Ec2MultiRegionSnitch.awsApiCall:(Ljava/lang/String;)Ljava/lang/String;
putfield org.apache.cassandra.locator.Ec2MultiRegionSnitch.localPrivateAddress:Ljava/lang/String;
4: aload 1
invokestatic org.apache.cassandra.config.DatabaseDescriptor.setBroadcastAddress:(Ljava/net/InetAddress;)V
5: invokestatic org.apache.cassandra.config.DatabaseDescriptor.getBroadcastRpcAddress:()Ljava/net/InetAddress;
ifnonnull 8
6: getstatic org.apache.cassandra.locator.Ec2MultiRegionSnitch.logger:Lorg/slf4j/Logger;
ldc "broadcast_rpc_address unset, broadcasting public IP as rpc_address: {}"
aload 1
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;)V
7: aload 1
invokestatic org.apache.cassandra.config.DatabaseDescriptor.setBroadcastRpcAddress:(Ljava/net/InetAddress;)V
8: StackMap locals: org.apache.cassandra.locator.Ec2MultiRegionSnitch java.net.InetAddress
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/cassandra/locator/Ec2MultiRegionSnitch;
2 9 1 localPublicAddress Ljava/net/InetAddress;
Exceptions:
throws java.io.IOException, org.apache.cassandra.exceptions.ConfigurationException
public void gossiperStarting();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.apache.cassandra.locator.Ec2Snitch.gossiperStarting:()V
1: getstatic org.apache.cassandra.gms.Gossiper.instance:Lorg/apache/cassandra/gms/Gossiper;
getstatic org.apache.cassandra.gms.ApplicationState.INTERNAL_IP:Lorg/apache/cassandra/gms/ApplicationState;
getstatic org.apache.cassandra.service.StorageService.instance:Lorg/apache/cassandra/service/StorageService;
getfield org.apache.cassandra.service.StorageService.valueFactory:Lorg/apache/cassandra/gms/VersionedValue$VersionedValueFactory;
aload 0
getfield org.apache.cassandra.locator.Ec2MultiRegionSnitch.localPrivateAddress:Ljava/lang/String;
invokevirtual org.apache.cassandra.gms.VersionedValue$VersionedValueFactory.internalIP:(Ljava/lang/String;)Lorg/apache/cassandra/gms/VersionedValue;
invokevirtual org.apache.cassandra.gms.Gossiper.addLocalApplicationState:(Lorg/apache/cassandra/gms/ApplicationState;Lorg/apache/cassandra/gms/VersionedValue;)V
2: getstatic org.apache.cassandra.gms.Gossiper.instance:Lorg/apache/cassandra/gms/Gossiper;
new org.apache.cassandra.locator.ReconnectableSnitchHelper
dup
aload 0
aload 0
getfield org.apache.cassandra.locator.Ec2MultiRegionSnitch.ec2region:Ljava/lang/String;
iconst_1
invokespecial org.apache.cassandra.locator.ReconnectableSnitchHelper.<init>:(Lorg/apache/cassandra/locator/IEndpointSnitch;Ljava/lang/String;Z)V
invokevirtual org.apache.cassandra.gms.Gossiper.register:(Lorg/apache/cassandra/gms/IEndpointStateChangeSubscriber;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/locator/Ec2MultiRegionSnitch;
}
SourceFile: "Ec2MultiRegionSnitch.java"
InnerClasses:
public VersionedValueFactory = org.apache.cassandra.gms.VersionedValue$VersionedValueFactory of org.apache.cassandra.gms.VersionedValue