KMessageContainer.smali

.class public final Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;
.super Ljava/lang/Object;
.source "KMessageContainer.java"


# static fields
.field private static final sLock:Ljava/util/concurrent/locks/Lock;


# instance fields
.field private final mMessages:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map",
            "<",
            "Ljava/lang/Integer;",
            "Ljava/util/Set",
            "<",
            "Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;",
            ">;>;"
        }
    .end annotation
.end field

.field private final mMessagesForRemoval:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map",
            "<",
            "Ljava/lang/String;",
            "Ljava/util/Set",
            "<",
            "Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;",
            ">;>;"
        }
    .end annotation
.end field


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

    .prologue
    .line 18
    new-instance v0, Ljava/util/concurrent/locks/ReentrantLock;

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

    sput-object v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    return-void
.end method

.method public constructor <init>()V
    .registers 2

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

    .line 20
    new-instance v0, Ljava/util/HashMap;

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

    iput-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    .line 21
    new-instance v0, Ljava/util/HashMap;

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

    iput-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

    return-void
.end method

.method private getMessageRemovalKey(Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;)Ljava/lang/String;
    .registers 6

    .prologue
    .line 42
    if-nez p1, :cond_5

    .line 43
    const-string v0, ""

    .line 45
    :goto_4
    return-object v0

    :cond_5
    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getPackageName()Ljava/lang/String;

    move-result-object v0

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getId()I

    move-result v1

    int-to-long v2, v1

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getTag()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p0, v0, v2, v3, v1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->getMessageRemovalKey(Ljava/lang/String;JLjava/lang/String;)Ljava/lang/String;

    move-result-object v0

    goto :goto_4
.end method


# virtual methods
.method public final addMessage(Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;)V
    .registers 5

    .prologue
    .line 91
    if-eqz p1, :cond_62

    .line 92
    sget-object v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v0}, Ljava/util/concurrent/locks/Lock;->lock()V

    .line 94
    :try_start_7
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v1

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

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

    move-result v0

    if-nez v0, :cond_29

    .line 95
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v1

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    new-instance v2, Ljava/util/LinkedHashSet;

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

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

    .line 97
    :cond_29
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v1

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

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

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    invoke-interface {v0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    .line 99
    invoke-direct {p0, p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->getMessageRemovalKey(Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;)Ljava/lang/String;

    move-result-object v0

    .line 100
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

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

    move-result v1

    if-nez v1, :cond_52

    .line 101
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

    new-instance v2, Ljava/util/HashSet;

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

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

    .line 103
    :cond_52
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

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

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    invoke-interface {v0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
    :try_end_5d
    .catchall {:try_start_7 .. :try_end_5d} :catchall_63

    .line 105
    sget-object v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v0}, Ljava/util/concurrent/locks/Lock;->unlock()V

    .line 108
    :cond_62
    return-void

    .line 105
    :catchall_63
    move-exception v0

    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->unlock()V

    throw v0
.end method

.method public final clear()V
    .registers 6

    .prologue
    .line 24
    sget-object v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v0}, Ljava/util/concurrent/locks/Lock;->lock()V

    .line 26
    :try_start_5
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {v0}, Ljava/util/Map;->values()Ljava/util/Collection;

    move-result-object v0

    invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;

    move-result-object v2

    :goto_f
    invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_46

    invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    .line 27
    invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v3

    :cond_1f
    :goto_1f
    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z

    move-result v1

    if-eqz v1, :cond_42

    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;

    .line 28
    invoke-interface {v1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getBitmap()Landroid/graphics/Bitmap;

    move-result-object v1

    .line 29
    if-eqz v1, :cond_1f

    invoke-virtual {v1}, Landroid/graphics/Bitmap;->isRecycled()Z

    move-result v4

    if-nez v4, :cond_1f

    .line 30
    invoke-virtual {v1}, Landroid/graphics/Bitmap;->recycle()V
    :try_end_3a
    .catchall {:try_start_5 .. :try_end_3a} :catchall_3b

    goto :goto_1f

    .line 37
    :catchall_3b
    move-exception v0

    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->unlock()V

    throw v0

    .line 33
    :cond_42
    :try_start_42
    invoke-interface {v0}, Ljava/util/Set;->clear()V

    goto :goto_f

    .line 35
    :cond_46
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

    invoke-interface {v0}, Ljava/util/Map;->clear()V
    :try_end_4b
    .catchall {:try_start_42 .. :try_end_4b} :catchall_3b

    .line 37
    sget-object v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v0}, Ljava/util/concurrent/locks/Lock;->unlock()V

    .line 39
    return-void
.end method

.method public final contains(Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;)Z
    .registers 5

    .prologue
    const/4 v1, 0x0

    .line 111
    .line 112
    if-eqz p1, :cond_3e

    .line 113
    sget-object v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v0}, Ljava/util/concurrent/locks/Lock;->lock()V

    .line 115
    :try_start_8
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v2

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

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

    move-result v0

    if-eqz v0, :cond_35

    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v2

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

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

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    invoke-interface {v0, p1}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
    :try_end_2b
    .catchall {:try_start_8 .. :try_end_2b} :catchall_37

    move-result v0

    if-eqz v0, :cond_35

    const/4 v0, 0x1

    .line 117
    :goto_2f
    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->unlock()V

    .line 120
    :goto_34
    return v0

    :cond_35
    move v0, v1

    .line 115
    goto :goto_2f

    .line 117
    :catchall_37
    move-exception v0

    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->unlock()V

    throw v0

    :cond_3e
    move v0, v1

    goto :goto_34
.end method

.method public final getMessageRemovalKey(Ljava/lang/String;JLjava/lang/String;)Ljava/lang/String;
    .registers 7

    .prologue
    .line 49
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    const-string v1, "##"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0, p2, p3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v0

    const-string v1, "##"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0, p4}, 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

    return-object v0
.end method

.method public final isMessageDuplicated(Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;Z)Z
    .registers 10

    .prologue
    .line 124
    const/4 v3, 0x0

    .line 126
    instance-of v1, p1, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;

    if-eqz v1, :cond_79

    .line 127
    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->lock()V

    .line 129
    :try_start_a
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v2

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

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

    move-result v1

    if-eqz v1, :cond_75

    .line 130
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v2

    invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

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

    move-result-object v1

    check-cast v1, Ljava/util/Set;

    .line 131
    invoke-interface {v1}, Ljava/util/Set;->size()I

    move-result v2

    if-lez v2, :cond_75

    .line 132
    invoke-interface {v1}, Ljava/util/Set;->toArray()[Ljava/lang/Object;

    move-result-object v6

    .line 134
    const/4 v4, 0x0

    .line 135
    array-length v1, v6

    add-int/lit8 v1, v1, -0x1

    move v5, v1

    :goto_39
    if-ltz v5, :cond_77

    .line 136
    aget-object v2, v6, v5

    .line 137
    instance-of v1, v2, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;

    if-eqz v1, :cond_5d

    .line 138
    move-object v0, v2

    check-cast v0, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;

    move-object v1, v0

    invoke-virtual {v1, p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;->isSameMessage(Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;)Z

    move-result v1

    if-eqz v1, :cond_5d

    .line 139
    check-cast v2, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;

    .line 145
    :goto_4d
    if-eqz v2, :cond_75

    .line 146
    if-nez p2, :cond_61

    .line 147
    check-cast p1, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;

    invoke-virtual {p1, v2}, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;->isDuplicated(Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;)Z
    :try_end_56
    .catchall {:try_start_a .. :try_end_56} :catchall_6e

    move-result v1

    .line 155
    :goto_57
    sget-object v2, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v2}, Ljava/util/concurrent/locks/Lock;->unlock()V

    .line 158
    :goto_5c
    return v1

    .line 135
    :cond_5d
    add-int/lit8 v1, v5, -0x1

    move v5, v1

    goto :goto_39

    .line 149
    :cond_61
    :try_start_61
    invoke-interface {p1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getContent()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v2}, Lcom/cmcm/locker/sdk/notificationhelper/impl/model/KAbstractMessage;->getContent()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
    :try_end_6c
    .catchall {:try_start_61 .. :try_end_6c} :catchall_6e

    move-result v1

    goto :goto_57

    .line 155
    :catchall_6e
    move-exception v1

    sget-object v2, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v2}, Ljava/util/concurrent/locks/Lock;->unlock()V

    throw v1

    :cond_75
    move v1, v3

    goto :goto_57

    :cond_77
    move-object v2, v4

    goto :goto_4d

    :cond_79
    move v1, v3

    goto :goto_5c
.end method

.method public final removeMessages(Ljava/lang/String;)Ljava/util/Set;
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            ")",
            "Ljava/util/Set",
            "<",
            "Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;",
            ">;"
        }
    .end annotation

    .prologue
    .line 56
    const/4 v0, 0x0

    .line 57
    if-eqz p1, :cond_7e

    .line 58
    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->lock()V

    .line 60
    :try_start_8
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

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

    move-result v1

    if-eqz v1, :cond_79

    .line 61
    iget-object v0, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

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

    move-result-object v0

    check-cast v0, Ljava/util/Set;

    .line 63
    if-eqz v0, :cond_74

    invoke-interface {v0}, Ljava/util/Set;->size()I

    move-result v1

    if-lez v1, :cond_74

    .line 64
    invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v3

    :cond_24
    :goto_24
    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z

    move-result v1

    if-eqz v1, :cond_74

    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;

    .line 65
    if-eqz v1, :cond_24

    .line 66
    iget-object v2, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {v1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v4

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

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

    move-result v2

    if-eqz v2, :cond_5d

    .line 67
    iget-object v2, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessages:Ljava/util/Map;

    invoke-interface {v1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getType()I

    move-result v4

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

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

    move-result-object v2

    check-cast v2, Ljava/util/Set;

    .line 68
    if-eqz v2, :cond_5d

    invoke-interface {v2}, Ljava/util/Set;->size()I

    move-result v4

    if-lez v4, :cond_5d

    .line 69
    invoke-interface {v2, v1}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z

    .line 73
    :cond_5d
    invoke-interface {v1}, Lcom/cmcm/locker/sdk/notificationhelper/impl/inter/IMessage;->getBitmap()Landroid/graphics/Bitmap;

    move-result-object v1

    .line 74
    if-eqz v1, :cond_24

    invoke-virtual {v1}, Landroid/graphics/Bitmap;->isRecycled()Z

    move-result v2

    if-nez v2, :cond_24

    .line 75
    invoke-virtual {v1}, Landroid/graphics/Bitmap;->recycle()V
    :try_end_6c
    .catchall {:try_start_8 .. :try_end_6c} :catchall_6d

    goto :goto_24

    .line 84
    :catchall_6d
    move-exception v0

    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->unlock()V

    throw v0

    .line 81
    :cond_74
    :try_start_74
    iget-object v1, p0, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->mMessagesForRemoval:Ljava/util/Map;

    invoke-interface {v1, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
    :try_end_79
    .catchall {:try_start_74 .. :try_end_79} :catchall_6d

    .line 84
    :cond_79
    sget-object v1, Lcom/cmcm/locker/sdk/notificationhelper/impl/controller/KMessageContainer;->sLock:Ljava/util/concurrent/locks/Lock;

    invoke-interface {v1}, Ljava/util/concurrent/locks/Lock;->unlock()V

    .line 87
    :cond_7e
    return-object v0
.end method