CronetMetrics.smali
.class public final Laegon/chrome/net/impl/CronetMetrics;
.super Laegon/chrome/net/RequestFinishedInfo$Metrics;
# annotations
.annotation build Laegon/chrome/base/VisibleForTesting;
.end annotation
# static fields
.field static final synthetic $assertionsDisabled:Z
# instance fields
.field private final mConnectEndMs:J
.field private final mConnectStartMs:J
.field private final mDnsEndMs:J
.field private final mDnsStartMs:J
.field private final mPushEndMs:J
.field private final mPushStartMs:J
.field private final mReceivedByteCount:Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end field
.field private final mRequestEndMs:J
.field private final mRequestStartMs:J
.field private final mResponseStartMs:J
.field private final mSendingEndMs:J
.field private final mSendingStartMs:J
.field private final mSentByteCount:Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end field
.field private final mSocketReused:Z
.field private final mSslEndMs:J
.field private final mSslStartMs:J
.field private final mTotalTimeMs:Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end field
.field private final mTtfbMs:Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
const-class v0, Laegon/chrome/net/impl/CronetMetrics;
invoke-virtual {v0}, Ljava/lang/Class;->desiredAssertionStatus()Z
move-result v0
if-nez v0, :cond_c
const/4 v0, 0x1
:goto_9
sput-boolean v0, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
return-void
:cond_c
const/4 v0, 0x0
goto :goto_9
.end method
.method public constructor <init>(JJJJJJJJJJJJJZJJ)V
.registers 37
invoke-direct {p0}, Laegon/chrome/net/RequestFinishedInfo$Metrics;-><init>()V
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_13
invoke-static {p3, p4, p5, p6}, Laegon/chrome/net/impl/CronetMetrics;->checkOrder(JJ)Z
move-result v2
if-nez v2, :cond_13
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_13
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_23
invoke-static {p7, p8, p9, p10}, Laegon/chrome/net/impl/CronetMetrics;->checkOrder(JJ)Z
move-result v2
if-nez v2, :cond_23
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_23
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_33
invoke-static/range {p11 .. p14}, Laegon/chrome/net/impl/CronetMetrics;->checkOrder(JJ)Z
move-result v2
if-nez v2, :cond_33
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_33
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_43
invoke-static/range {p15 .. p18}, Laegon/chrome/net/impl/CronetMetrics;->checkOrder(JJ)Z
move-result v2
if-nez v2, :cond_43
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_43
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_53
invoke-static/range {p19 .. p22}, Laegon/chrome/net/impl/CronetMetrics;->checkOrder(JJ)Z
move-result v2
if-nez v2, :cond_53
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_53
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_61
cmp-long v2, p25, p23
if-gez v2, :cond_61
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_61
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_75
cmp-long v2, p3, p1
if-gez v2, :cond_75
const-wide/16 v2, -0x1
cmp-long v2, p3, v2
if-eqz v2, :cond_75
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_75
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_89
cmp-long v2, p15, p1
if-gez v2, :cond_89
const-wide/16 v2, -0x1
cmp-long v2, p15, v2
if-eqz v2, :cond_89
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_89
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_9d
cmp-long v2, p11, p7
if-gez v2, :cond_9d
const-wide/16 v2, -0x1
cmp-long v2, p11, v2
if-eqz v2, :cond_9d
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_9d
sget-boolean v2, Laegon/chrome/net/impl/CronetMetrics;->$assertionsDisabled:Z
if-nez v2, :cond_b1
cmp-long v2, p23, p15
if-gez v2, :cond_b1
const-wide/16 v2, -0x1
cmp-long v2, p23, v2
if-eqz v2, :cond_b1
new-instance v2, Ljava/lang/AssertionError;
invoke-direct {v2}, Ljava/lang/AssertionError;-><init>()V
throw v2
:cond_b1
iput-wide p1, p0, Laegon/chrome/net/impl/CronetMetrics;->mRequestStartMs:J
iput-wide p3, p0, Laegon/chrome/net/impl/CronetMetrics;->mDnsStartMs:J
iput-wide p5, p0, Laegon/chrome/net/impl/CronetMetrics;->mDnsEndMs:J
iput-wide p7, p0, Laegon/chrome/net/impl/CronetMetrics;->mConnectStartMs:J
iput-wide p9, p0, Laegon/chrome/net/impl/CronetMetrics;->mConnectEndMs:J
move-wide/from16 v0, p11
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSslStartMs:J
move-wide/from16 v0, p13
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSslEndMs:J
move-wide/from16 v0, p15
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSendingStartMs:J
move-wide/from16 v0, p17
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSendingEndMs:J
move-wide/from16 v0, p19
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mPushStartMs:J
move-wide/from16 v0, p21
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mPushEndMs:J
move-wide/from16 v0, p23
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mResponseStartMs:J
move-wide/from16 v0, p25
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mRequestEndMs:J
move/from16 v0, p27
iput-boolean v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSocketReused:Z
invoke-static/range {p28 .. p29}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v2
iput-object v2, p0, Laegon/chrome/net/impl/CronetMetrics;->mSentByteCount:Ljava/lang/Long;
invoke-static/range {p30 .. p31}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v2
iput-object v2, p0, Laegon/chrome/net/impl/CronetMetrics;->mReceivedByteCount:Ljava/lang/Long;
const-wide/16 v2, -0x1
cmp-long v2, p1, v2
if-eqz v2, :cond_114
const-wide/16 v2, -0x1
cmp-long v2, p23, v2
if-eqz v2, :cond_114
sub-long v2, p23, p1
invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v2
iput-object v2, p0, Laegon/chrome/net/impl/CronetMetrics;->mTtfbMs:Ljava/lang/Long;
:goto_ff
const-wide/16 v2, -0x1
cmp-long v2, p1, v2
if-eqz v2, :cond_118
const-wide/16 v2, -0x1
cmp-long v2, p25, v2
if-eqz v2, :cond_118
sub-long v2, p25, p1
invoke-static {v2, v3}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v2
iput-object v2, p0, Laegon/chrome/net/impl/CronetMetrics;->mTotalTimeMs:Ljava/lang/Long;
:goto_113
return-void
:cond_114
const/4 v2, 0x0
iput-object v2, p0, Laegon/chrome/net/impl/CronetMetrics;->mTtfbMs:Ljava/lang/Long;
goto :goto_ff
:cond_118
const/4 v2, 0x0
iput-object v2, p0, Laegon/chrome/net/impl/CronetMetrics;->mTotalTimeMs:Ljava/lang/Long;
goto :goto_113
.end method
.method public constructor <init>(Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;Ljava/lang/Long;)V
.registers 7
.param p1 # Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end param
.param p2 # Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end param
.param p3 # Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end param
.param p4 # Ljava/lang/Long;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end param
const-wide/16 v0, -0x1
invoke-direct {p0}, Laegon/chrome/net/RequestFinishedInfo$Metrics;-><init>()V
iput-object p1, p0, Laegon/chrome/net/impl/CronetMetrics;->mTtfbMs:Ljava/lang/Long;
iput-object p2, p0, Laegon/chrome/net/impl/CronetMetrics;->mTotalTimeMs:Ljava/lang/Long;
iput-object p3, p0, Laegon/chrome/net/impl/CronetMetrics;->mSentByteCount:Ljava/lang/Long;
iput-object p4, p0, Laegon/chrome/net/impl/CronetMetrics;->mReceivedByteCount:Ljava/lang/Long;
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mRequestStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mDnsStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mDnsEndMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mConnectStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mConnectEndMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSslStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSslEndMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSendingStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSendingEndMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mPushStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mPushEndMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mResponseStartMs:J
iput-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mRequestEndMs:J
const/4 v0, 0x0
iput-boolean v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSocketReused:Z
return-void
.end method
.method private static checkOrder(JJ)Z
.registers 8
const-wide/16 v2, -0x1
cmp-long v0, p2, p0
if-ltz v0, :cond_a
cmp-long v0, p0, v2
if-nez v0, :cond_e
:cond_a
cmp-long v0, p2, v2
if-nez v0, :cond_10
:cond_e
const/4 v0, 0x1
:goto_f
return v0
:cond_10
const/4 v0, 0x0
goto :goto_f
.end method
.method private static toDate(J)Ljava/util/Date;
.registers 4
.annotation build Landroid/support/annotation/Nullable;
.end annotation
const-wide/16 v0, -0x1
cmp-long v0, p0, v0
if-eqz v0, :cond_c
new-instance v0, Ljava/util/Date;
invoke-direct {v0, p0, p1}, Ljava/util/Date;-><init>(J)V
:goto_b
return-object v0
:cond_c
const/4 v0, 0x0
goto :goto_b
.end method
# virtual methods
.method public getConnectEnd()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mConnectEndMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getConnectStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mConnectStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getDnsEnd()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mDnsEndMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getDnsStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mDnsStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getPushEnd()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mPushEndMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getPushStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mPushStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getReceivedByteCount()Ljava/lang/Long;
.registers 2
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-object v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mReceivedByteCount:Ljava/lang/Long;
return-object v0
.end method
.method public getRequestEnd()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mRequestEndMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getRequestStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mRequestStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getResponseStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mResponseStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getSendingEnd()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSendingEndMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getSendingStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSendingStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getSentByteCount()Ljava/lang/Long;
.registers 2
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-object v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSentByteCount:Ljava/lang/Long;
return-object v0
.end method
.method public getSocketReused()Z
.registers 2
iget-boolean v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSocketReused:Z
return v0
.end method
.method public getSslEnd()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSslEndMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getSslStart()Ljava/util/Date;
.registers 3
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-wide v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mSslStartMs:J
invoke-static {v0, v1}, Laegon/chrome/net/impl/CronetMetrics;->toDate(J)Ljava/util/Date;
move-result-object v0
return-object v0
.end method
.method public getTotalTimeMs()Ljava/lang/Long;
.registers 2
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-object v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mTotalTimeMs:Ljava/lang/Long;
return-object v0
.end method
.method public getTtfbMs()Ljava/lang/Long;
.registers 2
.annotation build Landroid/support/annotation/Nullable;
.end annotation
iget-object v0, p0, Laegon/chrome/net/impl/CronetMetrics;->mTtfbMs:Ljava/lang/Long;
return-object v0
.end method