d.smali
.class public Lcom/cleanmaster/gameboost/ping/d;
.super Ljava/lang/Object;
.source "PingNative.java"
# direct methods
.method public static a(Lcom/cleanmaster/gameboost/ping/e;Ljava/lang/String;)Lcom/cleanmaster/gameboost/ping/e;
.registers 6
.prologue
const/4 v3, 0x1
const/4 v2, -0x1
.line 98
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Ping String: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/cleanmaster/gameboost/ping/PingClient;->a(Ljava/lang/String;)V
.line 100
const-string v0, "0% packet loss"
invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_61
.line 101
const-string v0, "/mdev = "
invoke-virtual {p1, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;)I
move-result v0
.line 102
const-string v1, " ms\n"
invoke-virtual {p1, v1, v0}, Ljava/lang/String;->indexOf(Ljava/lang/String;I)I
move-result v1
.line 103
iput-object p1, p0, Lcom/cleanmaster/gameboost/ping/e;->e:Ljava/lang/String;
.line 104
if-eq v0, v2, :cond_32
if-ne v1, v2, :cond_48
.line 105
:cond_32
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Error: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
.line 123
:goto_45
iput-object v0, p0, Lcom/cleanmaster/gameboost/ping/e;->c:Ljava/lang/String;
.line 124
:goto_47
return-object p0
.line 107
:cond_48
add-int/lit8 v0, v0, 0x8
invoke-virtual {p1, v0, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
.line 108
const-string v1, "/"
invoke-virtual {v0, v1}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
move-result-object v1
.line 109
iput-boolean v3, p0, Lcom/cleanmaster/gameboost/ping/e;->b:Z
.line 110
iput-object v0, p0, Lcom/cleanmaster/gameboost/ping/e;->f:Ljava/lang/String;
.line 111
aget-object v0, v1, v3
invoke-static {v0}, Ljava/lang/Float;->parseFloat(Ljava/lang/String;)F
move-result v0
iput v0, p0, Lcom/cleanmaster/gameboost/ping/e;->d:F
goto :goto_47
.line 114
:cond_61
const-string v0, "100% packet loss"
invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_6c
.line 115
const-string v0, "100% packet loss"
goto :goto_45
.line 116
:cond_6c
const-string v0, "% packet loss"
invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_77
.line 117
const-string v0, "partial packet loss"
goto :goto_45
.line 118
:cond_77
const-string v0, "unknown host"
invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_82
.line 119
const-string v0, "unknown host"
goto :goto_45
.line 121
:cond_82
const-string v0, "unknown error in getPingStats"
goto :goto_45
.end method
.method public static a(Ljava/net/InetAddress;I)Lcom/cleanmaster/gameboost/ping/e;
.registers 11
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;,
Ljava/lang/InterruptedException;
}
.end annotation
.prologue
const/4 v1, 0x1
.line 20
new-instance v4, Lcom/cleanmaster/gameboost/ping/e;
invoke-direct {v4, p0}, Lcom/cleanmaster/gameboost/ping/e;-><init>(Ljava/net/InetAddress;)V
.line 21
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
.line 22
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v6
.line 24
div-int/lit16 v0, p1, 0x3e8
.line 25
if-gez v0, :cond_14
move v0, v1
.line 27
:cond_14
invoke-virtual {p0}, Ljava/net/InetAddress;->getHostAddress()Ljava/lang/String;
move-result-object v3
.line 28
const-string v2, "ping"
.line 30
if-eqz v3, :cond_93
.line 31
invoke-static {v3}, Lcom/cleanmaster/gameboost/ping/a;->d(Ljava/lang/String;)Z
move-result v7
if-eqz v7, :cond_70
.line 33
const-string v2, "ping6"
.line 43
:cond_24
:goto_24
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v7, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v7, " -c 1 -w "
invoke-virtual {v2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string v2, " "
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v6, v0}, Ljava/lang/Runtime;->exec(Ljava/lang/String;)Ljava/lang/Process;
move-result-object v0
.line 44
invoke-virtual {v0}, Ljava/lang/Process;->waitFor()I
.line 45
invoke-virtual {v0}, Ljava/lang/Process;->exitValue()I
move-result v2
.line 47
if-nez v2, :cond_a1
.line 48
new-instance v1, Ljava/io/InputStreamReader;
invoke-virtual {v0}, Ljava/lang/Process;->getInputStream()Ljava/io/InputStream;
move-result-object v0
invoke-direct {v1, v0}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
.line 49
new-instance v0, Ljava/io/BufferedReader;
invoke-direct {v0, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
.line 51
:goto_60
invoke-virtual {v0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_98
.line 52
invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, "\n"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_60
.line 34
:cond_70
invoke-static {v3}, Lcom/cleanmaster/gameboost/ping/a;->a(Ljava/lang/String;)Z
move-result v7
if-nez v7, :cond_24
.line 36
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
const-string v8, "Could not identify "
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7
invoke-virtual {v7, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7
const-string v8, " as ipv4 or ipv6, assuming ipv4"
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v7
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v7}, Lcom/cleanmaster/gameboost/ping/PingClient;->a(Ljava/lang/String;)V
goto :goto_24
.line 40
:cond_93
invoke-virtual {p0}, Ljava/net/InetAddress;->getHostName()Ljava/lang/String;
move-result-object v3
goto :goto_24
.line 54
:cond_98
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v4, v0}, Lcom/cleanmaster/gameboost/ping/d;->a(Lcom/cleanmaster/gameboost/ping/e;Ljava/lang/String;)Lcom/cleanmaster/gameboost/ping/e;
move-result-object v0
.line 61
:goto_a0
return-object v0
.line 55
:cond_a1
if-ne v2, v1, :cond_a9
.line 56
const-string v0, "failed, exit = 1"
.line 60
:goto_a5
iput-object v0, v4, Lcom/cleanmaster/gameboost/ping/e;->c:Ljava/lang/String;
move-object v0, v4
.line 61
goto :goto_a0
.line 58
:cond_a9
const-string v0, "error, exit = 2"
goto :goto_a5
.end method