Process.smali

.class public Lcom/cleanmaster/hpsharelib/process/Process;
.super Ljava/lang/Object;
.source "Process.java"


# static fields
.field public static final PROC_COMBINE:I = 0x100

.field public static final PROC_OUT_FLOAT:I = 0x4000

.field public static final PROC_OUT_LONG:I = 0x2000

.field public static final PROC_OUT_STRING:I = 0x1000

.field public static final PROC_PARENS:I = 0x200

.field public static final PROC_QUOTES:I = 0x400

.field public static final PROC_SPACE_TERM:I = 0x20

.field public static final PROC_TAB_TERM:I = 0x9

.field public static final PROC_TERM_MASK:I = 0xff

.field public static final PROC_ZERO_TERM:I

.field private static mInstance:Lcom/cm/plugincluster/common/IProcessExplorer;


# direct methods
.method public constructor <init>()V
    .registers 1

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

    return-void
.end method

.method public static Init()Z
    .registers 1

    .prologue
    .line 25
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0}, Lcom/cm/plugincluster/common/IProcessExplorer;->init()Z

    move-result v0

    return v0
.end method

.method private static acquire()Lcom/cm/plugincluster/common/IProcessExplorer;
    .registers 2

    .prologue
    .line 14
    sget-object v0, Lcom/cleanmaster/hpsharelib/process/Process;->mInstance:Lcom/cm/plugincluster/common/IProcessExplorer;

    if-nez v0, :cond_1c

    .line 15
    const v0, 0x100071

    const/4 v1, 0x0

    new-array v1, v1, [Ljava/lang/Object;

    invoke-static {v0, v1}, Lcom/cm/plugincluster/spec/CommanderManager;->invokeCommandExpNull(I[Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/cm/plugincluster/common/IProcessExplorer;

    sput-object v0, Lcom/cleanmaster/hpsharelib/process/Process;->mInstance:Lcom/cm/plugincluster/common/IProcessExplorer;

    .line 17
    sget-object v0, Lcom/cleanmaster/hpsharelib/process/Process;->mInstance:Lcom/cm/plugincluster/common/IProcessExplorer;

    if-nez v0, :cond_1c

    .line 18
    new-instance v0, Lcom/cm/plugincluster/common/IProcessExplorer;

    invoke-direct {v0}, Lcom/cm/plugincluster/common/IProcessExplorer;-><init>()V

    .line 21
    :goto_1b
    return-object v0

    :cond_1c
    sget-object v0, Lcom/cleanmaster/hpsharelib/process/Process;->mInstance:Lcom/cm/plugincluster/common/IProcessExplorer;

    goto :goto_1b
.end method

.method public static getFreeMemory()J
    .registers 2

    .prologue
    .line 37
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0}, Lcom/cm/plugincluster/common/IProcessExplorer;->getFreeMemory()J

    move-result-wide v0

    return-wide v0
.end method

.method public static getGidForName(Ljava/lang/String;)I
    .registers 2

    .prologue
    .line 33
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0, p0}, Lcom/cm/plugincluster/common/IProcessExplorer;->getGidForName(Ljava/lang/String;)I

    move-result v0

    return v0
.end method

.method public static getPids(Ljava/lang/String;[I)[I
    .registers 3

    .prologue
    .line 49
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0, p0, p1}, Lcom/cm/plugincluster/common/IProcessExplorer;->getPids(Ljava/lang/String;[I)[I

    move-result-object v0

    return-object v0
.end method

.method public static getPidsForCommands([Ljava/lang/String;)[I
    .registers 2

    .prologue
    .line 61
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0, p0}, Lcom/cm/plugincluster/common/IProcessExplorer;->getPidsForCommands([Ljava/lang/String;)[I

    move-result-object v0

    return-object v0
.end method

.method public static getPss(I)J
    .registers 3

    .prologue
    .line 65
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0, p0}, Lcom/cm/plugincluster/common/IProcessExplorer;->getPss(I)J

    move-result-wide v0

    return-wide v0
.end method

.method public static getTotalMemory()J
    .registers 2

    .prologue
    .line 41
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0}, Lcom/cm/plugincluster/common/IProcessExplorer;->getTotalMemory()J

    move-result-wide v0

    return-wide v0
.end method

.method public static getUidForName(Ljava/lang/String;)I
    .registers 2

    .prologue
    .line 29
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0, p0}, Lcom/cm/plugincluster/common/IProcessExplorer;->getUidForName(Ljava/lang/String;)I

    move-result v0

    return v0
.end method

.method public static parseProcLine([BII[I[Ljava/lang/String;[J[F)Z
    .registers 15

    .prologue
    .line 57
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    move-object v1, p0

    move v2, p1

    move v3, p2

    move-object v4, p3

    move-object v5, p4

    move-object v6, p5

    move-object v7, p6

    invoke-virtual/range {v0 .. v7}, Lcom/cm/plugincluster/common/IProcessExplorer;->parseProcLine([BII[I[Ljava/lang/String;[J[F)Z

    move-result v0

    return v0
.end method

.method public static readProcFile(Ljava/lang/String;[I[Ljava/lang/String;[J[F)Z
    .registers 11

    .prologue
    .line 53
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    move-object v1, p0

    move-object v2, p1

    move-object v3, p2

    move-object v4, p3

    move-object v5, p4

    invoke-virtual/range {v0 .. v5}, Lcom/cm/plugincluster/common/IProcessExplorer;->readProcFile(Ljava/lang/String;[I[Ljava/lang/String;[J[F)Z

    move-result v0

    return v0
.end method

.method public static readProcLines(Ljava/lang/String;[Ljava/lang/String;[J)V
    .registers 4

    .prologue
    .line 45
    invoke-static {}, Lcom/cleanmaster/hpsharelib/process/Process;->acquire()Lcom/cm/plugincluster/common/IProcessExplorer;

    move-result-object v0

    invoke-virtual {v0, p0, p1, p2}, Lcom/cm/plugincluster/common/IProcessExplorer;->readProcLines(Ljava/lang/String;[Ljava/lang/String;[J)V

    .line 46
    return-void
.end method