MemoryPressureUma.smali
.class public Laegon/chrome/base/memory/MemoryPressureUma;
.super Ljava/lang/Object;
# interfaces
.implements Landroid/content/ComponentCallbacks2;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Laegon/chrome/base/memory/MemoryPressureUma$Notification;
}
.end annotation
# static fields
.field static final synthetic $assertionsDisabled:Z
.field private static sInstance:Laegon/chrome/base/memory/MemoryPressureUma;
# instance fields
.field private final mHistogramName:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.registers 1
const-class v0, Laegon/chrome/base/memory/MemoryPressureUma;
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/base/memory/MemoryPressureUma;->$assertionsDisabled:Z
return-void
:cond_c
const/4 v0, 0x0
goto :goto_9
.end method
.method private constructor <init>(Ljava/lang/String;)V
.registers 4
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Android.MemoryPressureNotification."
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
iput-object v0, p0, Laegon/chrome/base/memory/MemoryPressureUma;->mHistogramName:Ljava/lang/String;
return-void
.end method
.method public static initializeForBrowser()V
.registers 1
const-string v0, "Browser"
invoke-static {v0}, Laegon/chrome/base/memory/MemoryPressureUma;->initializeInstance(Ljava/lang/String;)V
return-void
.end method
.method public static initializeForChildService()V
.registers 1
const-string v0, "ChildService"
invoke-static {v0}, Laegon/chrome/base/memory/MemoryPressureUma;->initializeInstance(Ljava/lang/String;)V
return-void
.end method
.method private static initializeInstance(Ljava/lang/String;)V
.registers 3
invoke-static {}, Laegon/chrome/base/ThreadUtils;->assertOnUiThread()V
sget-boolean v0, Laegon/chrome/base/memory/MemoryPressureUma;->$assertionsDisabled:Z
if-nez v0, :cond_11
sget-object v0, Laegon/chrome/base/memory/MemoryPressureUma;->sInstance:Laegon/chrome/base/memory/MemoryPressureUma;
if-eqz v0, :cond_11
new-instance v0, Ljava/lang/AssertionError;
invoke-direct {v0}, Ljava/lang/AssertionError;-><init>()V
throw v0
:cond_11
new-instance v0, Laegon/chrome/base/memory/MemoryPressureUma;
invoke-direct {v0, p0}, Laegon/chrome/base/memory/MemoryPressureUma;-><init>(Ljava/lang/String;)V
sput-object v0, Laegon/chrome/base/memory/MemoryPressureUma;->sInstance:Laegon/chrome/base/memory/MemoryPressureUma;
invoke-static {}, Laegon/chrome/base/ContextUtils;->getApplicationContext()Landroid/content/Context;
move-result-object v0
sget-object v1, Laegon/chrome/base/memory/MemoryPressureUma;->sInstance:Laegon/chrome/base/memory/MemoryPressureUma;
invoke-virtual {v0, v1}, Landroid/content/Context;->registerComponentCallbacks(Landroid/content/ComponentCallbacks;)V
return-void
.end method
.method private record(I)V
.registers 4
iget-object v0, p0, Laegon/chrome/base/memory/MemoryPressureUma;->mHistogramName:Ljava/lang/String;
const/16 v1, 0x9
invoke-static {v0, p1, v1}, Laegon/chrome/base/metrics/RecordHistogram;->recordEnumeratedHistogram(Ljava/lang/String;II)V
return-void
.end method
# virtual methods
.method public onConfigurationChanged(Landroid/content/res/Configuration;)V
.registers 2
return-void
.end method
.method public onLowMemory()V
.registers 2
const/16 v0, 0x8
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
return-void
.end method
.method public onTrimMemory(I)V
.registers 3
sparse-switch p1, :sswitch_data_2c
const/4 v0, 0x0
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
:goto_7
return-void
:sswitch_8
const/4 v0, 0x1
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
:sswitch_d
const/4 v0, 0x2
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
:sswitch_12
const/4 v0, 0x3
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
:sswitch_17
const/4 v0, 0x4
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
:sswitch_1c
const/4 v0, 0x5
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
:sswitch_21
const/4 v0, 0x6
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
:sswitch_26
const/4 v0, 0x7
invoke-direct {p0, v0}, Laegon/chrome/base/memory/MemoryPressureUma;->record(I)V
goto :goto_7
nop
:sswitch_data_2c
.sparse-switch
0x5 -> :sswitch_26
0xa -> :sswitch_21
0xf -> :sswitch_1c
0x14 -> :sswitch_17
0x28 -> :sswitch_12
0x3c -> :sswitch_d
0x50 -> :sswitch_8
.end sparse-switch
.end method