f.smali

.class public final Lcom/imo/android/imoim/biggroup/i/f;
.super Ljava/lang/Object;
.source "SourceFile"


# static fields
.field private static final g:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Lcom/imo/android/imoim/biggroup/i/f;",
            ">;"
        }
    .end annotation
.end field


# instance fields
.field public a:Ljava/util/concurrent/atomic/AtomicLong;

.field public b:Ljava/util/concurrent/atomic/AtomicLong;

.field public c:Ljava/util/concurrent/atomic/AtomicLong;

.field public d:Ljava/util/concurrent/atomic/AtomicLong;

.field public e:Ljava/util/concurrent/atomic/AtomicLong;

.field public f:Ljava/util/concurrent/atomic/AtomicLong;

.field private h:Ljava/lang/String;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    .line 15
    new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;

    invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;-><init>()V

    sput-object v0, Lcom/imo/android/imoim/biggroup/i/f;->g:Ljava/util/Map;

    return-void
.end method

.method private constructor <init>(Ljava/lang/String;)V
    .registers 5

    .line 42
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 18
    new-instance v0, Ljava/util/concurrent/atomic/AtomicLong;

    const-wide/16 v1, 0x0

    invoke-direct {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;-><init>(J)V

    iput-object v0, p0, Lcom/imo/android/imoim/biggroup/i/f;->a:Ljava/util/concurrent/atomic/AtomicLong;

    .line 19
    new-instance v0, Ljava/util/concurrent/atomic/AtomicLong;

    invoke-direct {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;-><init>(J)V

    iput-object v0, p0, Lcom/imo/android/imoim/biggroup/i/f;->b:Ljava/util/concurrent/atomic/AtomicLong;

    .line 22
    new-instance v0, Ljava/util/concurrent/atomic/AtomicLong;

    invoke-direct {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;-><init>(J)V

    iput-object v0, p0, Lcom/imo/android/imoim/biggroup/i/f;->c:Ljava/util/concurrent/atomic/AtomicLong;

    .line 23
    new-instance v0, Ljava/util/concurrent/atomic/AtomicLong;

    invoke-direct {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;-><init>(J)V

    iput-object v0, p0, Lcom/imo/android/imoim/biggroup/i/f;->d:Ljava/util/concurrent/atomic/AtomicLong;

    .line 26
    new-instance v0, Ljava/util/concurrent/atomic/AtomicLong;

    invoke-direct {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;-><init>(J)V

    iput-object v0, p0, Lcom/imo/android/imoim/biggroup/i/f;->e:Ljava/util/concurrent/atomic/AtomicLong;

    .line 27
    new-instance v0, Ljava/util/concurrent/atomic/AtomicLong;

    invoke-direct {v0, v1, v2}, Ljava/util/concurrent/atomic/AtomicLong;-><init>(J)V

    iput-object v0, p0, Lcom/imo/android/imoim/biggroup/i/f;->f:Ljava/util/concurrent/atomic/AtomicLong;

    .line 43
    iput-object p1, p0, Lcom/imo/android/imoim/biggroup/i/f;->h:Ljava/lang/String;

    return-void
.end method

.method public static a(Ljava/lang/String;)Lcom/imo/android/imoim/biggroup/i/f;
    .registers 4

    .line 32
    sget-object v0, Lcom/imo/android/imoim/biggroup/i/f;->g:Ljava/util/Map;

    invoke-interface {v0, p0}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_22

    .line 33
    sget-object v0, Lcom/imo/android/imoim/biggroup/i/f;->g:Ljava/util/Map;

    monitor-enter v0

    .line 34
    :try_start_b
    sget-object v1, Lcom/imo/android/imoim/biggroup/i/f;->g:Ljava/util/Map;

    invoke-interface {v1, p0}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z

    move-result v1

    if-nez v1, :cond_1d

    .line 35
    sget-object v1, Lcom/imo/android/imoim/biggroup/i/f;->g:Ljava/util/Map;

    new-instance v2, Lcom/imo/android/imoim/biggroup/i/f;

    invoke-direct {v2, p0}, Lcom/imo/android/imoim/biggroup/i/f;-><init>(Ljava/lang/String;)V

    invoke-interface {v1, p0, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 37
    :cond_1d
    monitor-exit v0

    goto :goto_22

    :catchall_1f
    move-exception p0

    monitor-exit v0
    :try_end_21
    .catchall {:try_start_b .. :try_end_21} :catchall_1f

    throw p0

    .line 39
    :cond_22
    :goto_22
    sget-object v0, Lcom/imo/android/imoim/biggroup/i/f;->g:Ljava/util/Map;

    invoke-interface {v0, p0}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p0

    check-cast p0, Lcom/imo/android/imoim/biggroup/i/f;

    return-object p0
.end method


# virtual methods
.method public final a()V
    .registers 18

    move-object/from16 v0, p0

    .line 62
    iget-object v1, v0, Lcom/imo/android/imoim/biggroup/i/f;->b:Ljava/util/concurrent/atomic/AtomicLong;

    const-wide/16 v2, 0x0

    invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J

    move-result-wide v4

    .line 63
    iget-object v1, v0, Lcom/imo/android/imoim/biggroup/i/f;->a:Ljava/util/concurrent/atomic/AtomicLong;

    invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J

    move-result-wide v6

    .line 65
    iget-object v1, v0, Lcom/imo/android/imoim/biggroup/i/f;->d:Ljava/util/concurrent/atomic/AtomicLong;

    invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J

    move-result-wide v8

    .line 66
    iget-object v1, v0, Lcom/imo/android/imoim/biggroup/i/f;->c:Ljava/util/concurrent/atomic/AtomicLong;

    invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J

    move-result-wide v10

    .line 68
    iget-object v1, v0, Lcom/imo/android/imoim/biggroup/i/f;->f:Ljava/util/concurrent/atomic/AtomicLong;

    invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J

    move-result-wide v12

    .line 69
    iget-object v1, v0, Lcom/imo/android/imoim/biggroup/i/f;->e:Ljava/util/concurrent/atomic/AtomicLong;

    invoke-virtual {v1, v2, v3}, Ljava/util/concurrent/atomic/AtomicLong;->getAndSet(J)J

    move-result-wide v14

    const/4 v1, 0x0

    cmp-long v16, v4, v2

    if-eqz v16, :cond_40

    cmp-long v16, v6, v2

    if-nez v16, :cond_32

    goto :goto_40

    :cond_32
    long-to-double v6, v6

    long-to-double v4, v4

    .line 71
    invoke-static {v6, v7}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v4, v5}, Ljava/lang/Double;->isNaN(D)Z

    div-double/2addr v6, v4

    invoke-static {v6, v7}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;

    move-result-object v4

    goto :goto_41

    :cond_40
    :goto_40
    move-object v4, v1

    :goto_41
    cmp-long v5, v10, v2

    if-eqz v5, :cond_58

    cmp-long v5, v8, v2

    if-nez v5, :cond_4a

    goto :goto_58

    :cond_4a
    long-to-double v5, v10

    long-to-double v7, v8

    .line 72
    invoke-static {v5, v6}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v7, v8}, Ljava/lang/Double;->isNaN(D)Z

    div-double/2addr v5, v7

    invoke-static {v5, v6}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;

    move-result-object v5

    goto :goto_59

    :cond_58
    :goto_58
    move-object v5, v1

    :goto_59
    cmp-long v6, v14, v2

    if-eqz v6, :cond_6f

    cmp-long v6, v12, v2

    if-nez v6, :cond_62

    goto :goto_6f

    :cond_62
    long-to-double v1, v14

    long-to-double v6, v12

    .line 73
    invoke-static {v1, v2}, Ljava/lang/Double;->isNaN(D)Z

    invoke-static {v6, v7}, Ljava/lang/Double;->isNaN(D)Z

    div-double/2addr v1, v6

    invoke-static {v1, v2}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;

    move-result-object v1

    .line 75
    :cond_6f
    :goto_6f
    new-instance v2, Ljava/util/HashMap;

    invoke-direct {v2}, Ljava/util/HashMap;-><init>()V

    if-eqz v4, :cond_7b

    const-string v3, "avgHandleMsgCostTime"

    .line 78
    invoke-interface {v2, v3, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_7b
    if-eqz v5, :cond_82

    const-string v3, "avgReadMsgCostTime"

    .line 81
    invoke-interface {v2, v3, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    :cond_82
    if-eqz v1, :cond_89

    const-string v3, "avgWriteMsgCostTime"

    .line 84
    invoke-interface {v2, v3, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 87
    :cond_89
    invoke-interface {v2}, Ljava/util/Map;->size()I

    move-result v1

    if-lez v1, :cond_96

    .line 88
    sget-object v1, Lcom/imo/android/imoim/IMO;->b:Lcom/imo/android/imoim/managers/bb;

    const-string v3, "msg_queue_handler_stable"

    invoke-virtual {v1, v3, v2}, Lcom/imo/android/imoim/managers/bb;->a(Ljava/lang/String;Ljava/util/Map;)V

    :cond_96
    return-void
.end method