ResourceDownloadTask.smali

.class public Lcom/kwai/video/hodor/ResourceDownloadTask;
.super Lcom/kwai/video/hodor/AbstractHodorTask;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDownloadCallback;,
        Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;,
        Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDirEvictStrategy;,
        Lcom/kwai/video/hodor/ResourceDownloadTask$SaveMode;
    }
.end annotation


# static fields
.field public static final ResourceDirEvictStrategy_Auto:I = 0x1

.field public static final ResourceDirEvictStrategy_Manual:I = 0x0

.field public static final SaveMode_CopyAfterDownload:I = 0x2

.field public static final SaveMode_MoveAfterDownload:I = 0x1

.field public static final SaveMode_NonExport:I = 0x0

.field private static final SaveMode_Unset:I = -0x1


# instance fields
.field private mAwesomeCacheCallback:Lcom/kwai/video/cache/AwesomeCacheCallback;
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private final mCacheKey:Ljava/lang/String;
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mDeleteCacheOnCancel:Z
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mEvictStrategy:I
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mExpectSavePath:Ljava/lang/String;
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private final mHttpHeadersString:Ljava/lang/String;
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mProgressCallbackIntervalMs:I
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mReadTimeoutSec:I
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mResourceDownloadCallback:Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDownloadCallback;

.field private mSaveMode:I
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private mStepDownloadBytes:J

.field private mTaskInfo:Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;

.field private mUpdatePriorityIfExist:Z
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private final mUrl:Ljava/lang/String;
    .annotation build Lcom/kwai/video/hodor/anotations/AccessedByNative;
    .end annotation
.end field

.field private setPathBefore:Z


# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/util/Map;Ljava/lang/String;)V
    .registers 7
    .param p1    # Ljava/lang/String;
        .annotation build Landroid/support/annotation/NonNull;
        .end annotation
    .end param
    .param p2    # Ljava/util/Map;
        .annotation build Landroid/support/annotation/Nullable;
        .end annotation
    .end param
    .param p3    # Ljava/lang/String;
        .annotation build Landroid/support/annotation/Nullable;
        .end annotation
    .end param
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Ljava/util/Map",
            "<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;",
            "Ljava/lang/String;",
            ")V"
        }
    .end annotation

    const/4 v2, 0x0

    invoke-direct {p0}, Lcom/kwai/video/hodor/AbstractHodorTask;-><init>()V

    const-string v0, ""

    iput-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mExpectSavePath:Ljava/lang/String;

    const/4 v0, -0x1

    iput v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mSaveMode:I

    iput v2, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mEvictStrategy:I

    iput-boolean v2, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mDeleteCacheOnCancel:Z

    const-wide/16 v0, -0x1

    iput-wide v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mStepDownloadBytes:J

    const/16 v0, 0xc8

    iput v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mProgressCallbackIntervalMs:I

    const/16 v0, 0xa

    iput v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mReadTimeoutSec:I

    iput-boolean v2, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mUpdatePriorityIfExist:Z

    iput-boolean v2, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->setPathBefore:Z

    new-instance v0, Lcom/kwai/video/hodor/ResourceDownloadTask$1;

    invoke-direct {v0, p0}, Lcom/kwai/video/hodor/ResourceDownloadTask$1;-><init>(Lcom/kwai/video/hodor/ResourceDownloadTask;)V

    iput-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mAwesomeCacheCallback:Lcom/kwai/video/cache/AwesomeCacheCallback;

    new-instance v0, Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;

    invoke-direct {v0}, Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;-><init>()V

    iput-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mTaskInfo:Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;

    iput-object p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mUrl:Ljava/lang/String;

    invoke-static {p2}, Lcom/kwai/video/hodor/util/HeaderUtil;->parseHeaderMapToFlatString(Ljava/util/Map;)Ljava/lang/String;

    move-result-object v0

    iput-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mHttpHeadersString:Ljava/lang/String;

    iput-object p3, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mCacheKey:Ljava/lang/String;

    invoke-virtual {p0, v2}, Lcom/kwai/video/hodor/ResourceDownloadTask;->setTaskQosClass(I)V

    const/16 v0, 0xbb8

    invoke-virtual {p0, v0}, Lcom/kwai/video/hodor/ResourceDownloadTask;->setPriority(I)V

    iget-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mTaskInfo:Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;

    invoke-static {}, Lcom/kwai/video/hodor/Hodor;->instance()Lcom/kwai/video/hodor/Hodor;

    move-result-object v1

    const/4 v2, 0x1

    invoke-virtual {v1, p3, v2}, Lcom/kwai/video/hodor/Hodor;->isFullyCached(Ljava/lang/String;I)Z

    move-result v1

    # setter for: Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;->loadFromCache:Z
    invoke-static {v0, v1}, Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;->access$602(Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;Z)Z

    return-void
.end method

.method static synthetic access$000(Lcom/kwai/video/hodor/ResourceDownloadTask;)Z
    .registers 2

    iget-boolean v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->setPathBefore:Z

    return v0
.end method

.method static synthetic access$002(Lcom/kwai/video/hodor/ResourceDownloadTask;Z)Z
    .registers 2

    iput-boolean p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->setPathBefore:Z

    return p1
.end method

.method static synthetic access$100(Lcom/kwai/video/hodor/ResourceDownloadTask;)Ljava/lang/String;
    .registers 2

    iget-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mExpectSavePath:Ljava/lang/String;

    return-object v0
.end method

.method static synthetic access$200(Lcom/kwai/video/hodor/ResourceDownloadTask;)Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;
    .registers 2

    iget-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mTaskInfo:Lcom/kwai/video/hodor/ResourceDownloadTask$TaskInfo;

    return-object v0
.end method

.method static synthetic access$400(Lcom/kwai/video/hodor/ResourceDownloadTask;)Ljava/lang/String;
    .registers 2

    invoke-direct {p0}, Lcom/kwai/video/hodor/ResourceDownloadTask;->getInnerCacheFilePath()Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method static synthetic access$500(Lcom/kwai/video/hodor/ResourceDownloadTask;)Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDownloadCallback;
    .registers 2

    iget-object v0, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mResourceDownloadCallback:Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDownloadCallback;

    return-object v0
.end method

.method public static native getCachedBytes(Ljava/lang/String;)J
.end method

.method private native getInnerCacheFilePath()Ljava/lang/String;
.end method

.method public static native getTotalBytes(Ljava/lang/String;)J
.end method


# virtual methods
.method public native abandon()V
.end method

.method public native cancel()V
.end method

.method public native pause()V
.end method

.method public native resume()V
.end method

.method public setAwesomeCacheCallback(Lcom/kwai/video/cache/AwesomeCacheCallback;)V
    .registers 4

    new-instance v0, Ljava/lang/UnsupportedOperationException;

    const-string v1, "not support operation, use setResourceDownloadCallback instead"

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

    throw v0
.end method

.method public setDeleteCacheOnCancel(Z)V
    .registers 2

    iput-boolean p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mDeleteCacheOnCancel:Z

    return-void
.end method

.method public setEvictStrategy(I)V
    .registers 2
    .param p1    # I
        .annotation build Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDirEvictStrategy;
        .end annotation
    .end param

    iput p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mEvictStrategy:I

    return-void
.end method

.method public setExpectSavePath(Ljava/lang/String;)V
    .registers 2

    iput-object p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mExpectSavePath:Ljava/lang/String;

    return-void
.end method

.method public setProgressCallbackIntervalMs(I)V
    .registers 2

    iput p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mProgressCallbackIntervalMs:I

    return-void
.end method

.method public setReadTimeout(I)V
    .registers 2

    iput p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mReadTimeoutSec:I

    return-void
.end method

.method public setResourceDownloadCallback(Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDownloadCallback;)V
    .registers 2

    iput-object p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mResourceDownloadCallback:Lcom/kwai/video/hodor/ResourceDownloadTask$ResourceDownloadCallback;

    return-void
.end method

.method public setSaveMode(I)V
    .registers 2
    .param p1    # I
        .annotation build Lcom/kwai/video/hodor/ResourceDownloadTask$SaveMode;
        .end annotation
    .end param

    iput p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mSaveMode:I

    return-void
.end method

.method public setStepDownloadBytes(J)V
    .registers 4

    iput-wide p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mStepDownloadBytes:J

    return-void
.end method

.method public setUpdatePriorityIfExist(Z)V
    .registers 2

    iput-boolean p1, p0, Lcom/kwai/video/hodor/ResourceDownloadTask;->mUpdatePriorityIfExist:Z

    return-void
.end method

.method public native submit()V
.end method