MusicContentCenterImpl.smali

.class public Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;
.super Lio/agora/musiccontentcenter/IAgoraMusicContentCenter;


# static fields
.field private static final TAG:Ljava/lang/String; = "MusicContentCenterImpl"


# instance fields
.field private final mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

.field private mNativeHandle:J

.field private final mRtcEngine:Lio/agora/rtc2/internal/RtcEngineImpl;


# direct methods
.method public constructor <init>(Lio/agora/rtc2/RtcEngine;)V
    .registers 4
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "rtcEngine"
        }
    .end annotation

    invoke-direct {p0}, Lio/agora/musiccontentcenter/IAgoraMusicContentCenter;-><init>()V

    const-wide/16 v0, 0x0

    iput-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;

    const/4 v1, 0x0

    invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V

    iput-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {p1}, Lio/agora/rtc2/RtcEngine;->getNativeHandle()J

    move-result-wide v0

    invoke-direct {p0, v0, v1}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeObjectInit(J)J

    move-result-wide v0

    iput-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    instance-of v0, p1, Lio/agora/rtc2/internal/RtcEngineImpl;

    if-eqz v0, :cond_27

    check-cast p1, Lio/agora/rtc2/internal/RtcEngineImpl;

    iput-object p1, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mRtcEngine:Lio/agora/rtc2/internal/RtcEngineImpl;

    const-string v0, "agora_drm_loader_extension"

    invoke-virtual {p1, v0}, Lio/agora/rtc2/internal/RtcEngineImpl;->loadExtensionProvider(Ljava/lang/String;)I

    goto :goto_2a

    :cond_27
    const/4 p1, 0x0

    iput-object p1, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mRtcEngine:Lio/agora/rtc2/internal/RtcEngineImpl;

    :goto_2a
    return-void
.end method

.method private native nativeCreateMusicPlayer(J)Lio/agora/musiccontentcenter/internal/MusicPlayerProperty;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid"
        }
    .end annotation
.end method

.method private static native nativeDestroy(J)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "handle"
        }
    .end annotation
.end method

.method private native nativeGetCaches(J)[Lio/agora/musiccontentcenter/MusicCacheInfo;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid"
        }
    .end annotation
.end method

.method private native nativeGetInternalSongCode(JJLjava/lang/String;)J
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode",
            "jsonOption"
        }
    .end annotation
.end method

.method private native nativeGetLyric(JJI)Ljava/lang/String;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode",
            "lyricType"
        }
    .end annotation
.end method

.method private native nativeGetMusicCharts(J)Ljava/lang/String;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid"
        }
    .end annotation
.end method

.method private native nativeGetMusicCollectionByMusicChartId(JIIILjava/lang/String;)Ljava/lang/String;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "type",
            "page",
            "pageSize",
            "option"
        }
    .end annotation
.end method

.method private native nativeGetSongSimpleInfo(JJ)Ljava/lang/String;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode"
        }
    .end annotation
.end method

.method private native nativeInitialize(JLjava/lang/Object;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "configuration"
        }
    .end annotation
.end method

.method private native nativeIsPreloaded(JJ)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode"
        }
    .end annotation
.end method

.method private native nativeObjectInit(J)J
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "rtcEngine"
        }
    .end annotation
.end method

.method private native nativePreload(JJLjava/lang/String;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode",
            "jsonOption"
        }
    .end annotation
.end method

.method private native nativePreloadWithSongCode(JJ)Ljava/lang/String;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode"
        }
    .end annotation
.end method

.method private native nativeRegisterEventHandler(JLjava/lang/Object;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "handler"
        }
    .end annotation
.end method

.method private native nativeRemoveCache(JJ)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "songCode"
        }
    .end annotation
.end method

.method private native nativeRenewToken(JLjava/lang/String;)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "token"
        }
    .end annotation
.end method

.method private native nativeSearchMusic(JLjava/lang/String;IILjava/lang/String;)Ljava/lang/String;
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid",
            "keyword",
            "page",
            "pageSize",
            "option"
        }
    .end annotation
.end method

.method private native nativeUnregisterEventHandler(J)I
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "nativeMusicContentCenterImplAndroid"
        }
    .end annotation
.end method


# virtual methods
.method public createMusicPlayer()Lio/agora/musiccontentcenter/IAgoraMusicPlayer;
    .registers 7

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v4, 0x0

    cmp-long v0, v2, v4

    if-nez v0, :cond_1c

    const-string v0, "MusicContentCenterImpl"

    const-string v2, "MusicContentCenter does not initialize or it may be destroyed (createMusicPlayer)"

    invoke-static {v0, v2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    invoke-direct {p0, v2, v3}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeCreateMusicPlayer(J)Lio/agora/musiccontentcenter/internal/MusicPlayerProperty;

    move-result-object v0

    iget-wide v2, v0, Lio/agora/musiccontentcenter/internal/MusicPlayerProperty;->handler:J

    cmp-long v2, v2, v4

    if-eqz v2, :cond_31

    new-instance v1, Lio/agora/musiccontentcenter/internal/AgoraMusicPlayerImpl;

    iget-object v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mRtcEngine:Lio/agora/rtc2/internal/RtcEngineImpl;

    iget-wide v3, v0, Lio/agora/musiccontentcenter/internal/MusicPlayerProperty;->handler:J

    iget v0, v0, Lio/agora/musiccontentcenter/internal/MusicPlayerProperty;->id:I

    invoke-direct {v1, v2, v3, v4, v0}, Lio/agora/musiccontentcenter/internal/AgoraMusicPlayerImpl;-><init>(Lio/agora/rtc2/internal/RtcEngineImpl;JI)V

    :cond_31
    monitor-exit p0

    return-object v1

    :catchall_33
    move-exception v0

    monitor-exit p0
    :try_end_35
    .catchall {:try_start_b .. :try_end_35} :catchall_33

    throw v0
.end method

.method protected declared-synchronized doDestroy()V
    .registers 5

    monitor-enter p0

    :try_start_1
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v0, v0, v2

    if-eqz v0, :cond_1c

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    const/4 v1, 0x1

    invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V

    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    invoke-static {v0, v1}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeDestroy(J)I

    iput-wide v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    const/4 v1, 0x0

    invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
    :try_end_1c
    .catchall {:try_start_1 .. :try_end_1c} :catchall_1e

    :cond_1c
    monitor-exit p0

    return-void

    :catchall_1e
    move-exception v0

    monitor-exit p0

    throw v0
.end method

.method public getCaches()[Lio/agora/musiccontentcenter/MusicCacheInfo;
    .registers 7

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_c

    new-array v0, v1, [Lio/agora/musiccontentcenter/MusicCacheInfo;

    return-object v0

    :cond_c
    monitor-enter p0

    :try_start_d
    iget-wide v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v4, 0x0

    cmp-long v0, v2, v4

    if-nez v0, :cond_20

    const-string v0, "MusicContentCenterImpl"

    const-string v2, "MusicContentCenter does not initialize or it may be destroyed (getCaches)"

    invoke-static {v0, v2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    new-array v0, v1, [Lio/agora/musiccontentcenter/MusicCacheInfo;

    monitor-exit p0

    return-object v0

    :cond_20
    invoke-direct {p0, v2, v3}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeGetCaches(J)[Lio/agora/musiccontentcenter/MusicCacheInfo;

    move-result-object v0

    monitor-exit p0

    return-object v0

    :catchall_26
    move-exception v0

    monitor-exit p0
    :try_end_28
    .catchall {:try_start_d .. :try_end_28} :catchall_26

    throw v0
.end method

.method public getInternalSongCode(JLjava/lang/String;)J
    .registers 13
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "songCode",
            "jsonOption"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const-wide/16 v1, 0x0

    if-eqz v0, :cond_b

    return-wide v1

    :cond_b
    monitor-enter p0

    :try_start_c
    iget-wide v4, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    cmp-long v0, v4, v1

    if-nez v0, :cond_1b

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (getInternalSongCode)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-wide v1

    :cond_1b
    move-object v3, p0

    move-wide v6, p1

    move-object v8, p3

    invoke-direct/range {v3 .. v8}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeGetInternalSongCode(JJLjava/lang/String;)J

    move-result-wide p1

    monitor-exit p0

    return-wide p1

    :catchall_24
    move-exception p1

    monitor-exit p0
    :try_end_26
    .catchall {:try_start_c .. :try_end_26} :catchall_24

    throw p1
.end method

.method public getLyric(JI)Ljava/lang/String;
    .registers 12
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "songCode",
            "lyricType"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v3, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v5, 0x0

    cmp-long v0, v3, v5

    if-nez v0, :cond_1c

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (getLyric)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    move-object v2, p0

    move-wide v5, p1

    move v7, p3

    invoke-direct/range {v2 .. v7}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeGetLyric(JJI)Ljava/lang/String;

    move-result-object p1

    monitor-exit p0

    return-object p1

    :catchall_25
    move-exception p1

    monitor-exit p0
    :try_end_27
    .catchall {:try_start_b .. :try_end_27} :catchall_25

    throw p1
.end method

.method public getMusicCharts()Ljava/lang/String;
    .registers 7

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v4, 0x0

    cmp-long v0, v2, v4

    if-nez v0, :cond_1c

    const-string v0, "MusicContentCenterImpl"

    const-string v2, "MusicContentCenter does not initialize or it may be destroyed (getMusicCharts)"

    invoke-static {v0, v2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    invoke-direct {p0, v2, v3}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeGetMusicCharts(J)Ljava/lang/String;

    move-result-object v0

    monitor-exit p0

    return-object v0

    :catchall_22
    move-exception v0

    monitor-exit p0
    :try_end_24
    .catchall {:try_start_b .. :try_end_24} :catchall_22

    throw v0
.end method

.method public getMusicCollectionByMusicChartId(IIILjava/lang/String;)Ljava/lang/String;
    .registers 14
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "musicChartId",
            "page",
            "pageSize",
            "option"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v3, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v5, 0x0

    cmp-long v0, v3, v5

    if-nez v0, :cond_1c

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (getMusicCollectionByMusicChartId)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    move-object v2, p0

    move v5, p1

    move v6, p2

    move v7, p3

    move-object v8, p4

    invoke-direct/range {v2 .. v8}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeGetMusicCollectionByMusicChartId(JIIILjava/lang/String;)Ljava/lang/String;

    move-result-object p1

    monitor-exit p0

    return-object p1

    :catchall_27
    move-exception p1

    monitor-exit p0
    :try_end_29
    .catchall {:try_start_b .. :try_end_29} :catchall_27

    throw p1
.end method

.method public getSongSimpleInfo(J)Ljava/lang/String;
    .registers 9
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "songCode"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v4, 0x0

    cmp-long v0, v2, v4

    if-nez v0, :cond_1c

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (getSongSimpleInfo)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    invoke-direct {p0, v2, v3, p1, p2}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeGetSongSimpleInfo(JJ)Ljava/lang/String;

    move-result-object p1

    monitor-exit p0

    return-object p1

    :catchall_22
    move-exception p1

    monitor-exit p0
    :try_end_24
    .catchall {:try_start_b .. :try_end_24} :catchall_22

    throw p1
.end method

.method public initialize(Lio/agora/musiccontentcenter/MusicContentCenterConfiguration;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "configuration"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 p1, -0x8

    return p1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-nez v2, :cond_1d

    const-string p1, "MusicContentCenterImpl"

    const-string v0, "MusicContentCenter does not initialize or it may be destroyed (initialize)"

    invoke-static {p1, v0}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, -0x7

    monitor-exit p0

    return p1

    :cond_1d
    invoke-direct {p0, v0, v1, p1}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeInitialize(JLjava/lang/Object;)I

    move-result p1

    monitor-exit p0

    return p1

    :catchall_23
    move-exception p1

    monitor-exit p0
    :try_end_25
    .catchall {:try_start_b .. :try_end_25} :catchall_23

    throw p1
.end method

.method public isPreloaded(J)I
    .registers 7
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "songCode"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 p1, -0x8

    return p1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-nez v2, :cond_1d

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (isPreloaded)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, -0x7

    monitor-exit p0

    return p1

    :cond_1d
    invoke-direct {p0, v0, v1, p1, p2}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeIsPreloaded(JJ)I

    move-result p1

    monitor-exit p0

    return p1

    :catchall_23
    move-exception p1

    monitor-exit p0
    :try_end_25
    .catchall {:try_start_b .. :try_end_25} :catchall_23

    throw p1
.end method

.method public preload(JLjava/lang/String;)I
    .registers 10
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0
        }
        names = {
            "songCode",
            "jsonOption"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 p1, -0x8

    return p1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v1, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v3, 0x0

    cmp-long v0, v1, v3

    if-nez v0, :cond_1d

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (preload)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, -0x7

    monitor-exit p0

    return p1

    :cond_1d
    move-object v0, p0

    move-wide v3, p1

    move-object v5, p3

    invoke-direct/range {v0 .. v5}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativePreload(JJLjava/lang/String;)I

    move-result p1

    monitor-exit p0

    return p1

    :catchall_26
    move-exception p1

    monitor-exit p0
    :try_end_28
    .catchall {:try_start_b .. :try_end_28} :catchall_26

    throw p1
.end method

.method public preload(J)Ljava/lang/String;
    .registers 9
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "songCode"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v2, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v4, 0x0

    cmp-long v0, v2, v4

    if-nez v0, :cond_1c

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (preload)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    invoke-direct {p0, v2, v3, p1, p2}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativePreloadWithSongCode(JJ)Ljava/lang/String;

    move-result-object p1

    monitor-exit p0

    return-object p1

    :catchall_22
    move-exception p1

    monitor-exit p0
    :try_end_24
    .catchall {:try_start_b .. :try_end_24} :catchall_22

    throw p1
.end method

.method public registerEventHandler(Lio/agora/musiccontentcenter/IMusicContentCenterEventHandler;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "eventHandler"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 p1, -0x8

    return p1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-nez v2, :cond_1d

    const-string p1, "MusicContentCenterImpl"

    const-string v0, "MusicContentCenter does not initialize or it may be destroyed (registerEventHandler)"

    invoke-static {p1, v0}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, -0x7

    monitor-exit p0

    return p1

    :cond_1d
    invoke-direct {p0, v0, v1, p1}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeRegisterEventHandler(JLjava/lang/Object;)I

    move-result p1

    monitor-exit p0

    return p1

    :catchall_23
    move-exception p1

    monitor-exit p0
    :try_end_25
    .catchall {:try_start_b .. :try_end_25} :catchall_23

    throw p1
.end method

.method public removeCache(J)I
    .registers 7
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "songCode"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 p1, -0x8

    return p1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-nez v2, :cond_1d

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (removeCache)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, -0x7

    monitor-exit p0

    return p1

    :cond_1d
    invoke-direct {p0, v0, v1, p1, p2}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeRemoveCache(JJ)I

    move-result p1

    monitor-exit p0

    return p1

    :catchall_23
    move-exception p1

    monitor-exit p0
    :try_end_25
    .catchall {:try_start_b .. :try_end_25} :catchall_23

    throw p1
.end method

.method public renewToken(Ljava/lang/String;)I
    .registers 6
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0
        }
        names = {
            "token"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 p1, -0x8

    return p1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-nez v2, :cond_1d

    const-string p1, "MusicContentCenterImpl"

    const-string v0, "MusicContentCenter does not initialize or it may be destroyed (renewToken)"

    invoke-static {p1, v0}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, -0x7

    monitor-exit p0

    return p1

    :cond_1d
    invoke-direct {p0, v0, v1, p1}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeRenewToken(JLjava/lang/String;)I

    move-result p1

    monitor-exit p0

    return p1

    :catchall_23
    move-exception p1

    monitor-exit p0
    :try_end_25
    .catchall {:try_start_b .. :try_end_25} :catchall_23

    throw p1
.end method

.method public searchMusic(Ljava/lang/String;IILjava/lang/String;)Ljava/lang/String;
    .registers 14
    .annotation system Ldalvik/annotation/MethodParameters;
        accessFlags = {
            0x0,
            0x0,
            0x0,
            0x0
        }
        names = {
            "keyword",
            "page",
            "pageSize",
            "option"
        }
    .end annotation

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    const/4 v1, 0x0

    if-eqz v0, :cond_a

    return-object v1

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v3, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v5, 0x0

    cmp-long v0, v3, v5

    if-nez v0, :cond_1c

    const-string p1, "MusicContentCenterImpl"

    const-string p2, "MusicContentCenter does not initialize or it may be destroyed (searchMusic)"

    invoke-static {p1, p2}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    monitor-exit p0

    return-object v1

    :cond_1c
    move-object v2, p0

    move-object v5, p1

    move v6, p2

    move v7, p3

    move-object v8, p4

    invoke-direct/range {v2 .. v8}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeSearchMusic(JLjava/lang/String;IILjava/lang/String;)Ljava/lang/String;

    move-result-object p1

    monitor-exit p0

    return-object p1

    :catchall_27
    move-exception p1

    monitor-exit p0
    :try_end_29
    .catchall {:try_start_b .. :try_end_29} :catchall_27

    throw p1
.end method

.method public unregisterEventHandler()I
    .registers 5

    iget-object v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mIsDestroying:Ljava/util/concurrent/atomic/AtomicBoolean;

    invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z

    move-result v0

    if-eqz v0, :cond_a

    const/4 v0, -0x8

    return v0

    :cond_a
    monitor-enter p0

    :try_start_b
    iget-wide v0, p0, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->mNativeHandle:J

    const-wide/16 v2, 0x0

    cmp-long v2, v0, v2

    if-nez v2, :cond_1d

    const-string v0, "MusicContentCenterImpl"

    const-string v1, "MusicContentCenter does not initialize or it may be destroyed (unregisterEventHandler)"

    invoke-static {v0, v1}, Lio/agora/rtc2/internal/Logging;->e(Ljava/lang/String;Ljava/lang/String;)V

    const/4 v0, -0x7

    monitor-exit p0

    return v0

    :cond_1d
    invoke-direct {p0, v0, v1}, Lio/agora/musiccontentcenter/internal/MusicContentCenterImpl;->nativeUnregisterEventHandler(J)I

    move-result v0

    monitor-exit p0

    return v0

    :catchall_23
    move-exception v0

    monitor-exit p0
    :try_end_25
    .catchall {:try_start_b .. :try_end_25} :catchall_23

    throw v0
.end method