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

#import <Foundation/Foundation.h>
#import <BBAAPIRequest/BBANormalAPIRequest.h>
#import "BBADownloaderCommon.h"


NS_ASSUME_NONNULL_BEGIN

@interface BBADownloaderRequestItem : NSObject

@property (nonatomic, copy) NSString *sourceURL;  // 资源源地址
@property (nonatomic, strong) NSDictionary<NSString *, NSString *> *headers;  /// 下载请求header配置信息
@property (nonatomic, copy) NSString *destinationPath; // 目标存储路径;默认由资源管理器进行管理
@property (nonatomic, assign) BOOL allowDownloadResume; // 是否允许断点续传,默认允许
@property (nonatomic, copy) NSString *resumeTemporaryPath;    //  自定义下载临时文件目录, 设置后默认开启断点续传;如果不设置默认有网络库指定临时存储目录
@property (nonatomic, assign) NSTimeInterval downloadTimeout; // 超时时间,默认是30秒。
@property (nonatomic, assign) NSInteger retryCount; // 重试次数;默认为0,失败不重试
@property (nonatomic, assign) EBBADownloaderPriority priority; // 下载优先级
@property (nonatomic, assign) APIRequestFrom requestFrom; // 请求业务方标识(数值需符合网络库约定)
@property (nonatomic, assign) APIRequestSubFrom requestSubFrom; // 子业务方标识(数值需符合网络库约定)

@property (nonatomic, assign) BOOL allowStreamDownload; //  是否支持流式下载, 暂不支持断点续传, 流式数据通过streamDownloadBytesBlock接收
@property (nonatomic, nullable) APIRequestStreamDownloadBytes streamDownloadBytesBlock; //  流式下载回调

// 判断请求是否有效
- (BOOL)isValid;

@end

NS_ASSUME_NONNULL_END