.class public final Lcom/discord/utilities/experiments/ExperimentRegistry; .super Ljava/lang/Object; .source "ExperimentRegistry.kt" # static fields .field public static final INSTANCE:Lcom/discord/utilities/experiments/ExperimentRegistry; .field public static final registeredExperiments:Ljava/util/LinkedHashMap; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/LinkedHashMap<", "Ljava/lang/String;", "Lcom/discord/utilities/experiments/RegisteredExperiment;", ">;" } .end annotation .end field # direct methods .method public static constructor ()V .locals 15 new-instance v0, Lcom/discord/utilities/experiments/ExperimentRegistry; invoke-direct {v0}, Lcom/discord/utilities/experiments/ExperimentRegistry;->()V sput-object v0, Lcom/discord/utilities/experiments/ExperimentRegistry;->INSTANCE:Lcom/discord/utilities/experiments/ExperimentRegistry; new-instance v0, Ljava/util/LinkedHashMap; invoke-direct {v0}, Ljava/util/LinkedHashMap;->()V sput-object v0, Lcom/discord/utilities/experiments/ExperimentRegistry;->registeredExperiments:Ljava/util/LinkedHashMap; const/4 v0, 0x4 new-array v0, v0, [Lcom/discord/utilities/experiments/RegisteredExperiment; new-instance v7, Lcom/discord/utilities/experiments/RegisteredExperiment; sget-object v4, Lcom/discord/utilities/experiments/RegisteredExperiment$Type;->USER:Lcom/discord/utilities/experiments/RegisteredExperiment$Type; const-string v8, "Control" const-string v1, "Treatment 1: 0.5 seconds delay" const-string v2, "Treatment 2: 1 second delay" const-string v3, "Treatment 3: 2 seconds delay" const-string v5, "Treatment 4: 4 seconds delay" filled-new-array {v8, v1, v2, v3, v5}, [Ljava/lang/String; move-result-object v1 invoke-static {v1}, Lf/h/a/f/f/n/f;->listOf([Ljava/lang/Object;)Ljava/util/List; move-result-object v5 const-string v2, "Slow TTI Experiment" const-string v3, "2020-08_android_tti_delay" const/4 v6, 0x0 move-object v1, v7 invoke-direct/range {v1 .. v6}, Lcom/discord/utilities/experiments/RegisteredExperiment;->(Ljava/lang/String;Ljava/lang/String;Lcom/discord/utilities/experiments/RegisteredExperiment$Type;Ljava/util/List;Z)V const/4 v1, 0x0 aput-object v7, v0, v1 new-instance v1, Lcom/discord/utilities/experiments/RegisteredExperiment; sget-object v12, Lcom/discord/utilities/experiments/RegisteredExperiment$Type;->USER:Lcom/discord/utilities/experiments/RegisteredExperiment$Type; const-string v2, "Treatment 1: Minimal UI Changes" const-string v3, "Treatment 2: Full UI Changes" const-string v4, "Treatment 3: Full UI Changes & User Setting" filled-new-array {v8, v2, v3, v4}, [Ljava/lang/String; move-result-object v2 invoke-static {v2}, Lf/h/a/f/f/n/f;->listOf([Ljava/lang/Object;)Ljava/util/List; move-result-object v13 const-string v10, "Mobile Image Compression" const-string v11, "2020-09_mobile_image_compression" const/4 v14, 0x0 move-object v9, v1 invoke-direct/range {v9 .. v14}, Lcom/discord/utilities/experiments/RegisteredExperiment;->(Ljava/lang/String;Ljava/lang/String;Lcom/discord/utilities/experiments/RegisteredExperiment$Type;Ljava/util/List;Z)V const/4 v2, 0x1 aput-object v1, v0, v2 new-instance v1, Lcom/discord/utilities/experiments/RegisteredExperiment; sget-object v12, Lcom/discord/utilities/experiments/RegisteredExperiment$Type;->USER:Lcom/discord/utilities/experiments/RegisteredExperiment$Type; const-string v2, "Treatment 1: Allow phone login" filled-new-array {v8, v2}, [Ljava/lang/String; move-result-object v2 invoke-static {v2}, Lf/h/a/f/f/n/f;->listOf([Ljava/lang/Object;)Ljava/util/List; move-result-object v13 const-string v10, "Phone Login" const-string v11, "2020-10_phone_login" const/4 v14, 0x1 move-object v9, v1 invoke-direct/range {v9 .. v14}, Lcom/discord/utilities/experiments/RegisteredExperiment;->(Ljava/lang/String;Ljava/lang/String;Lcom/discord/utilities/experiments/RegisteredExperiment$Type;Ljava/util/List;Z)V const/4 v2, 0x2 aput-object v1, v0, v2 new-instance v1, Lcom/discord/utilities/experiments/RegisteredExperiment; sget-object v12, Lcom/discord/utilities/experiments/RegisteredExperiment$Type;->USER:Lcom/discord/utilities/experiments/RegisteredExperiment$Type; const-string v2, "Treatment 1: Enable slash commands" filled-new-array {v8, v2}, [Ljava/lang/String; move-result-object v2 invoke-static {v2}, Lf/h/a/f/f/n/f;->listOf([Ljava/lang/Object;)Ljava/util/List; move-result-object v13 const-string v10, "App Slash Commands" const-string v11, "2020-11_android_app_slash_commands" move-object v9, v1 invoke-direct/range {v9 .. v14}, Lcom/discord/utilities/experiments/RegisteredExperiment;->(Ljava/lang/String;Ljava/lang/String;Lcom/discord/utilities/experiments/RegisteredExperiment$Type;Ljava/util/List;Z)V const/4 v2, 0x3 aput-object v1, v0, v2 invoke-static {v0}, Lf/h/a/f/f/n/f;->listOf([Ljava/lang/Object;)Ljava/util/List; move-result-object v0 sget-object v1, Lcom/discord/utilities/experiments/ExperimentRegistry;->registeredExperiments:Ljava/util/LinkedHashMap; invoke-interface {v0}, Ljava/lang/Iterable;->iterator()Ljava/util/Iterator; move-result-object v0 :goto_0 invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z move-result v2 if-eqz v2, :cond_0 invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v2 move-object v3, v2 check-cast v3, Lcom/discord/utilities/experiments/RegisteredExperiment; invoke-virtual {v3}, Lcom/discord/utilities/experiments/RegisteredExperiment;->getName()Ljava/lang/String; move-result-object v3 invoke-interface {v1, v3, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_0 :cond_0 return-void .end method .method public constructor ()V .locals 0 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method # virtual methods .method public final getRegisteredExperiments()Ljava/util/LinkedHashMap; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/LinkedHashMap<", "Ljava/lang/String;", "Lcom/discord/utilities/experiments/RegisteredExperiment;", ">;" } .end annotation sget-object v0, Lcom/discord/utilities/experiments/ExperimentRegistry;->registeredExperiments:Ljava/util/LinkedHashMap; return-object v0 .end method