public abstract class com.mongodb.ReadPreference
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.mongodb.ReadPreference
super_class: java.lang.Object
{
private static final com.mongodb.ReadPreference PRIMARY;
descriptor: Lcom/mongodb/ReadPreference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.mongodb.ReadPreference SECONDARY;
descriptor: Lcom/mongodb/ReadPreference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.mongodb.ReadPreference SECONDARY_PREFERRED;
descriptor: Lcom/mongodb/ReadPreference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.mongodb.ReadPreference PRIMARY_PREFERRED;
descriptor: Lcom/mongodb/ReadPreference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.mongodb.ReadPreference NEAREST;
descriptor: Lcom/mongodb/ReadPreference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$com$mongodb$connection$ClusterType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.mongodb.ReadPreference$PrimaryReadPreference
dup
invokespecial com.mongodb.ReadPreference$PrimaryReadPreference.<init>:()V
putstatic com.mongodb.ReadPreference.PRIMARY:Lcom/mongodb/ReadPreference;
1: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:()V
putstatic com.mongodb.ReadPreference.SECONDARY:Lcom/mongodb/ReadPreference;
2: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:()V
putstatic com.mongodb.ReadPreference.SECONDARY_PREFERRED:Lcom/mongodb/ReadPreference;
3: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:()V
putstatic com.mongodb.ReadPreference.PRIMARY_PREFERRED:Lcom/mongodb/ReadPreference;
4: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:()V
putstatic com.mongodb.ReadPreference.NEAREST:Lcom/mongodb/ReadPreference;
5: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/mongodb/ReadPreference;
public abstract boolean isSlaveOk();
descriptor: ()Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.bson.BsonDocument toDocument();
descriptor: ()Lorg/bson/BsonDocument;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public final java.util.List<com.mongodb.connection.ServerDescription> choose(com.mongodb.connection.ClusterDescription);
descriptor: (Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: invokestatic com.mongodb.ReadPreference.$SWITCH_TABLE$com$mongodb$connection$ClusterType:()[I
aload 1
invokevirtual com.mongodb.connection.ClusterDescription.getType:()Lcom/mongodb/connection/ClusterType;
invokevirtual com.mongodb.connection.ClusterType.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 2
2: 1
3: 2
4: 3
default: 4
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual com.mongodb.ReadPreference.chooseForReplicaSet:(Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual com.mongodb.ReadPreference.chooseForNonReplicaSet:(Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List;
areturn
3: StackMap locals:
StackMap stack:
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
4: StackMap locals:
StackMap stack:
new java.lang.UnsupportedOperationException
dup
new java.lang.StringBuilder
dup
ldc "Unsupported cluster type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.mongodb.connection.ClusterDescription.getType:()Lcom/mongodb/connection/ClusterType;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/mongodb/ReadPreference;
0 5 1 clusterDescription Lcom/mongodb/connection/ClusterDescription;
Signature: (Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List<Lcom/mongodb/connection/ServerDescription;>;
MethodParameters:
Name Flags
clusterDescription final
protected abstract java.util.List<com.mongodb.connection.ServerDescription> chooseForNonReplicaSet(com.mongodb.connection.ClusterDescription);
descriptor: (Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: (Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List<Lcom/mongodb/connection/ServerDescription;>;
MethodParameters:
Name Flags
clusterDescription
protected abstract java.util.List<com.mongodb.connection.ServerDescription> chooseForReplicaSet(com.mongodb.connection.ClusterDescription);
descriptor: (Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Signature: (Lcom/mongodb/connection/ClusterDescription;)Ljava/util/List<Lcom/mongodb/connection/ServerDescription;>;
MethodParameters:
Name Flags
clusterDescription
public static com.mongodb.ReadPreference primary();
descriptor: ()Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mongodb.ReadPreference.PRIMARY:Lcom/mongodb/ReadPreference;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.mongodb.ReadPreference primaryPreferred();
descriptor: ()Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mongodb.ReadPreference.PRIMARY_PREFERRED:Lcom/mongodb/ReadPreference;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.mongodb.ReadPreference secondary();
descriptor: ()Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mongodb.ReadPreference.SECONDARY:Lcom/mongodb/ReadPreference;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.mongodb.ReadPreference secondaryPreferred();
descriptor: ()Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mongodb.ReadPreference.SECONDARY_PREFERRED:Lcom/mongodb/ReadPreference;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.mongodb.ReadPreference nearest();
descriptor: ()Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mongodb.ReadPreference.NEAREST:Lcom/mongodb/ReadPreference;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.mongodb.ReadPreference primaryPreferred(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 2 0: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 2
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 maxStaleness J
0 1 2 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
maxStaleness final
timeUnit final
public static com.mongodb.ReadPreference secondary(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 2 0: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 2
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 maxStaleness J
0 1 2 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
maxStaleness final
timeUnit final
public static com.mongodb.ReadPreference secondaryPreferred(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 2 0: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 2
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 maxStaleness J
0 1 2 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
maxStaleness final
timeUnit final
public static com.mongodb.ReadPreference nearest(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 2 0: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 2
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 maxStaleness J
0 1 2 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference primaryPreferred(com.mongodb.TagSet);
descriptor: (Lcom/mongodb/TagSet;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
MethodParameters:
Name Flags
tagSet final
public static com.mongodb.TaggableReadPreference secondary(com.mongodb.TagSet);
descriptor: (Lcom/mongodb/TagSet;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
MethodParameters:
Name Flags
tagSet final
public static com.mongodb.TaggableReadPreference secondaryPreferred(com.mongodb.TagSet);
descriptor: (Lcom/mongodb/TagSet;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
MethodParameters:
Name Flags
tagSet final
public static com.mongodb.TaggableReadPreference nearest(com.mongodb.TagSet);
descriptor: (Lcom/mongodb/TagSet;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
MethodParameters:
Name Flags
tagSet final
public static com.mongodb.TaggableReadPreference primaryPreferred(com.mongodb.TagSet, long, java.util.concurrent.TimeUnit);
descriptor: (Lcom/mongodb/TagSet;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
tagSet final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference secondary(com.mongodb.TagSet, long, java.util.concurrent.TimeUnit);
descriptor: (Lcom/mongodb/TagSet;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
tagSet final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference secondaryPreferred(com.mongodb.TagSet, long, java.util.concurrent.TimeUnit);
descriptor: (Lcom/mongodb/TagSet;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
tagSet final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference nearest(com.mongodb.TagSet, long, java.util.concurrent.TimeUnit);
descriptor: (Lcom/mongodb/TagSet;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
aload 0
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSet Lcom/mongodb/TagSet;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
tagSet final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference primaryPreferred(java.util.List<com.mongodb.TagSet>);
descriptor: (Ljava/util/List;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
aload 0
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
public static com.mongodb.TaggableReadPreference secondary(java.util.List<com.mongodb.TagSet>);
descriptor: (Ljava/util/List;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
aload 0
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
public static com.mongodb.TaggableReadPreference secondaryPreferred(java.util.List<com.mongodb.TagSet>);
descriptor: (Ljava/util/List;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
aload 0
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
public static com.mongodb.TaggableReadPreference nearest(java.util.List<com.mongodb.TagSet>);
descriptor: (Ljava/util/List;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
aload 0
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
public static com.mongodb.TaggableReadPreference primaryPreferred(java.util.List<com.mongodb.TagSet>, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/List;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
aload 0
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference secondary(java.util.List<com.mongodb.TagSet>, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/List;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
aload 0
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference secondaryPreferred(java.util.List<com.mongodb.TagSet>, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/List;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
aload 0
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
maxStaleness final
timeUnit final
public static com.mongodb.TaggableReadPreference nearest(java.util.List<com.mongodb.TagSet>, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/util/List;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
aload 0
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 3
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
0 1 1 maxStaleness J
0 1 3 timeUnit Ljava/util/concurrent/TimeUnit;
Signature: (Ljava/util/List<Lcom/mongodb/TagSet;>;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
tagSetList final
maxStaleness final
timeUnit final
public static com.mongodb.ReadPreference valueOf(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/mongodb/ReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: ldc "name"
aload 0
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 1
start local 1 2: aload 1
getstatic com.mongodb.ReadPreference.PRIMARY:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: getstatic com.mongodb.ReadPreference.PRIMARY:Lcom/mongodb/ReadPreference;
areturn
4: StackMap locals: java.lang.String
StackMap stack:
aload 1
getstatic com.mongodb.ReadPreference.SECONDARY:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: getstatic com.mongodb.ReadPreference.SECONDARY:Lcom/mongodb/ReadPreference;
areturn
6: StackMap locals:
StackMap stack:
aload 1
getstatic com.mongodb.ReadPreference.SECONDARY_PREFERRED:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
7: getstatic com.mongodb.ReadPreference.SECONDARY_PREFERRED:Lcom/mongodb/ReadPreference;
areturn
8: StackMap locals:
StackMap stack:
aload 1
getstatic com.mongodb.ReadPreference.PRIMARY_PREFERRED:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: getstatic com.mongodb.ReadPreference.PRIMARY_PREFERRED:Lcom/mongodb/ReadPreference;
areturn
10: StackMap locals:
StackMap stack:
aload 1
getstatic com.mongodb.ReadPreference.NEAREST:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
11: getstatic com.mongodb.ReadPreference.NEAREST:Lcom/mongodb/ReadPreference;
areturn
12: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "No match for read preference of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 name Ljava/lang/String;
2 13 1 nameToCheck Ljava/lang/String;
MethodParameters:
Name Flags
name final
public static com.mongodb.TaggableReadPreference valueOf(java.lang.String, java.util.List<com.mongodb.TagSet>);
descriptor: (Ljava/lang/String;Ljava/util/List;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokestatic com.mongodb.ReadPreference.valueOf:(Ljava/lang/String;Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
Signature: (Ljava/lang/String;Ljava/util/List<Lcom/mongodb/TagSet;>;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
name final
tagSetList final
public static com.mongodb.TaggableReadPreference valueOf(java.lang.String, java.util.List<com.mongodb.TagSet>, long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/lang/String;Ljava/util/List;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
aload 1
lload 2
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 4
invokestatic com.mongodb.ReadPreference.valueOf:(Ljava/lang/String;Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
areturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
0 1 2 maxStaleness J
0 1 4 timeUnit Ljava/util/concurrent/TimeUnit;
Signature: (Ljava/lang/String;Ljava/util/List<Lcom/mongodb/TagSet;>;JLjava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
MethodParameters:
Name Flags
name final
tagSetList final
maxStaleness final
timeUnit final
private static com.mongodb.TaggableReadPreference valueOf(java.lang.String, java.util.List<com.mongodb.TagSet>, java.lang.Long, java.util.concurrent.TimeUnit);
descriptor: (Ljava/lang/String;Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc "name"
aload 0
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: ldc "tagSetList"
aload 1
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: ldc "timeUnit"
aload 3
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 0
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 4
start local 4 4: aload 4
getstatic com.mongodb.ReadPreference.PRIMARY:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: new java.lang.IllegalArgumentException
dup
ldc "Primary read preference can not also specify tag sets or max staleness"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: java.lang.String
StackMap stack:
aload 4
getstatic com.mongodb.ReadPreference.SECONDARY:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
7: new com.mongodb.TaggableReadPreference$SecondaryReadPreference
dup
aload 1
aload 2
aload 3
invokespecial com.mongodb.TaggableReadPreference$SecondaryReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
8: StackMap locals:
StackMap stack:
aload 4
getstatic com.mongodb.ReadPreference.SECONDARY_PREFERRED:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: new com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference
dup
aload 1
aload 2
aload 3
invokespecial com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
10: StackMap locals:
StackMap stack:
aload 4
getstatic com.mongodb.ReadPreference.PRIMARY_PREFERRED:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
11: new com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference
dup
aload 1
aload 2
aload 3
invokespecial com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
12: StackMap locals:
StackMap stack:
aload 4
getstatic com.mongodb.ReadPreference.NEAREST:Lcom/mongodb/ReadPreference;
invokevirtual com.mongodb.ReadPreference.getName:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: new com.mongodb.TaggableReadPreference$NearestReadPreference
dup
aload 1
aload 2
aload 3
invokespecial com.mongodb.TaggableReadPreference$NearestReadPreference.<init>:(Ljava/util/List;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)V
areturn
14: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "No match for read preference of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 name Ljava/lang/String;
0 15 1 tagSetList Ljava/util/List<Lcom/mongodb/TagSet;>;
0 15 2 maxStaleness Ljava/lang/Long;
0 15 3 timeUnit Ljava/util/concurrent/TimeUnit;
4 15 4 nameToCheck Ljava/lang/String;
Signature: (Ljava/lang/String;Ljava/util/List<Lcom/mongodb/TagSet;>;Ljava/lang/Long;Ljava/util/concurrent/TimeUnit;)Lcom/mongodb/TaggableReadPreference;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
com.mongodb.lang.Nullable()
3:
MethodParameters:
Name Flags
name final
tagSetList final
maxStaleness final
timeUnit final
static int[] $SWITCH_TABLE$com$mongodb$connection$ClusterType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.mongodb.ReadPreference.$SWITCH_TABLE$com$mongodb$connection$ClusterType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.mongodb.connection.ClusterType.values:()[Lcom/mongodb/connection/ClusterType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.mongodb.connection.ClusterType.REPLICA_SET:Lcom/mongodb/connection/ClusterType;
invokevirtual com.mongodb.connection.ClusterType.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic com.mongodb.connection.ClusterType.SHARDED:Lcom/mongodb/connection/ClusterType;
invokevirtual com.mongodb.connection.ClusterType.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic com.mongodb.connection.ClusterType.STANDALONE:Lcom/mongodb/connection/ClusterType;
invokevirtual com.mongodb.connection.ClusterType.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic com.mongodb.connection.ClusterType.UNKNOWN:Lcom/mongodb/connection/ClusterType;
invokevirtual com.mongodb.connection.ClusterType.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic com.mongodb.ReadPreference.$SWITCH_TABLE$com$mongodb$connection$ClusterType:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
}
SourceFile: "ReadPreference.java"
NestMembers:
com.mongodb.ReadPreference$PrimaryReadPreference
InnerClasses:
private final PrimaryReadPreference = com.mongodb.ReadPreference$PrimaryReadPreference of com.mongodb.ReadPreference
NearestReadPreference = com.mongodb.TaggableReadPreference$NearestReadPreference of com.mongodb.TaggableReadPreference
PrimaryPreferredReadPreference = com.mongodb.TaggableReadPreference$PrimaryPreferredReadPreference of com.mongodb.TaggableReadPreference
SecondaryPreferredReadPreference = com.mongodb.TaggableReadPreference$SecondaryPreferredReadPreference of com.mongodb.TaggableReadPreference
SecondaryReadPreference = com.mongodb.TaggableReadPreference$SecondaryReadPreference of com.mongodb.TaggableReadPreference
RuntimeVisibleAnnotations:
com.mongodb.annotations.Immutable()