BBADownloaderTask.h 1.27 KB
//
//  BBADownloaderTask.h
//  ApsManager
//
//  Created by ZhangYonglu on 2018/10/22.
//  Copyright © 2018年 Baidu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "BBADownloaderItem.h"

NS_ASSUME_NONNULL_BEGIN

@class BBADownloaderOperation;

@interface BBADownloaderTask : NSObject<NSCopying>

@property (nonatomic, strong) BBADownloaderItem *downloadItem;
@property (nonatomic, strong) BBADownloaderOperation *operation; // 下载操作
@property (nonatomic, copy) BBADownloaderStatusChangedHandler statusChangedHandler; // 状态改变回调
@property (nonatomic, copy) BBADownloaderProgressChangedHandler progressChangeHandler; // 进度变更回调

/**
 * @brief 根据下载基本信息生成下载任务
 *
 * @param  downloadItem 下载基本信息
 * @param statusChangedHandler 状态变更回调
 * @return 下载任务
 */
-(instancetype)initWithDownloadItem:(BBADownloaderItem *) downloadItem
               statusChangedHandler:(BBADownloaderStatusChangedHandler)statusChangedHandler
              progressChangeHandler:(BBADownloaderProgressChangedHandler)progressChangeHandler ;

// 暂停下载
- (void)suspend;

// 清空任务:包括缓存
- (void)cancel;

// 动态调整(暂停但不设置暂停态)
- (void)adjust;

@end

NS_ASSUME_NONNULL_END