RongCacheWrap.smali

.class public abstract Lio/rong/imkit/cache/RongCacheWrap;
.super Lio/rong/imkit/cache/RongCache;
.source "RongCacheWrap.java"


# annotations
.annotation system Ldalvik/annotation/Signature;
    value = {
        "<K:",
        "Ljava/lang/Object;",
        "V:",
        "Ljava/lang/Object;",
        ">",
        "Lio/rong/imkit/cache/RongCache<",
        "TK;TV;>;"
    }
.end annotation


# instance fields
.field private mContext:Lio/rong/imkit/RongContext;

.field private mIsSync:Z


# direct methods
.method public constructor <init>(Lio/rong/imkit/RongContext;I)V
    .registers 3

    .line 1
    invoke-direct {p0, p2}, Lio/rong/imkit/cache/RongCache;-><init>(I)V

    const/4 p2, 0x0

    .line 2
    iput-boolean p2, p0, Lio/rong/imkit/cache/RongCacheWrap;->mIsSync:Z

    .line 3
    iput-object p1, p0, Lio/rong/imkit/cache/RongCacheWrap;->mContext:Lio/rong/imkit/RongContext;

    return-void
.end method


# virtual methods
.method protected create(Ljava/lang/Object;)Ljava/lang/Object;
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(TK;)TV;"
        }
    .end annotation

    if-nez p1, :cond_4

    const/4 p1, 0x0

    return-object p1

    .line 1
    :cond_4
    iget-boolean v0, p0, Lio/rong/imkit/cache/RongCacheWrap;->mIsSync:Z

    if-nez v0, :cond_10

    .line 2
    invoke-virtual {p0, p1}, Lio/rong/imkit/cache/RongCacheWrap;->executeCacheProvider(Ljava/lang/Object;)V

    .line 3
    invoke-super {p0, p1}, Lio/rong/imkit/cache/RongCache;->create(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    return-object p1

    .line 4
    :cond_10
    invoke-virtual {p0, p1}, Lio/rong/imkit/cache/RongCacheWrap;->obtainValue(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    return-object p1
.end method

.method public executeCacheProvider(Ljava/lang/Object;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(TK;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imkit/cache/RongCacheWrap;->mContext:Lio/rong/imkit/RongContext;

    new-instance v1, Lio/rong/imkit/cache/RongCacheWrap$1;

    invoke-direct {v1, p0, p1}, Lio/rong/imkit/cache/RongCacheWrap$1;-><init>(Lio/rong/imkit/cache/RongCacheWrap;Ljava/lang/Object;)V

    invoke-virtual {v0, v1}, Lio/rong/imkit/RongContext;->executorBackground(Ljava/lang/Runnable;)V

    return-void
.end method

.method protected getContext()Lio/rong/imkit/RongContext;
    .registers 2

    .line 1
    iget-object v0, p0, Lio/rong/imkit/cache/RongCacheWrap;->mContext:Lio/rong/imkit/RongContext;

    return-object v0
.end method

.method public isIsSync()Z
    .registers 2

    .line 1
    iget-boolean v0, p0, Lio/rong/imkit/cache/RongCacheWrap;->mIsSync:Z

    return v0
.end method

.method public abstract obtainValue(Ljava/lang/Object;)Ljava/lang/Object;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(TK;)TV;"
        }
    .end annotation
.end method

.method public setIsSync(Z)V
    .registers 2

    .line 1
    iput-boolean p1, p0, Lio/rong/imkit/cache/RongCacheWrap;->mIsSync:Z

    return-void
.end method