New file |
| | |
| | | // |
| | | // UMSocialTask.h |
| | | // UMSocialSDK |
| | | // |
| | | // Created by 张军华 on 16/8/11. |
| | | // Copyright © 2016年 dongjianxiong. All rights reserved. |
| | | // |
| | | |
| | | #import <Foundation/Foundation.h> |
| | | |
| | | #import "UMSocialTaskConfig.h" |
| | | |
| | | @class UMSocialTaskOperation; |
| | | @class UMSocialTask; |
| | | |
| | | NS_ASSUME_NONNULL_BEGIN |
| | | /** |
| | | * task的回调代理 |
| | | */ |
| | | @protocol UMSocialTaskDelegate <NSObject> |
| | | |
| | | -(void)handleTask:(UMSocialTask*)task withError:(NSError*) error; |
| | | |
| | | @end |
| | | |
| | | /** |
| | | * 所有网络请求的基本任务类 |
| | | */ |
| | | @interface UMSocialTask : NSObject<NSCopying,NSCoding> |
| | | |
| | | @property(nonatomic,assign)UMSocialHttpMethodType httpMethodType; //http请求类型 |
| | | @property(nonatomic,copy)NSString* hostUrlPath;//http请求的host |
| | | @property(nonatomic,copy)NSString* relatedUrlPath; //http请求的相对url |
| | | @property(nonatomic,strong)NSDictionary* paramDic; //post或者get请求需要的字典 |
| | | @property(nonatomic,copy)UMSocialTaskCompletion completion;//回调 |
| | | |
| | | @property(nonatomic,readonly,assign)NSInteger taskIdentifier; //唯一id |
| | | @property(nonatomic,readonly,assign)NSInteger retryCount;//retryCount |
| | | @property(nonatomic,readonly,assign)UMSoicalTaskState taskState;//task的状态 |
| | | |
| | | |
| | | #pragma mark - override |
| | | /** |
| | | * 创建的NSURLRequest |
| | | * |
| | | * @return @see NSURLRequest |
| | | * @discuss 用户可以重载此函数,自己实现makeURLRequest的逻辑, |
| | | * 如果不重载此函数会用 |
| | | * 默认会用httpMethodType,relatedUrlPath,paramDic来产生对应的NSURLRequest |
| | | */ |
| | | -(NSURLRequest*)makeURLRequest; |
| | | |
| | | #pragma mark - private |
| | | /** |
| | | * 在指定的operationTaskQueue的执行对应task的任务 |
| | | * |
| | | * @param operationTaskQueue @see NSOperationQueue |
| | | * @discuss 本函数不需要直接调用,UMSocialNetworkCore会自动调用 |
| | | * @see UMSocialTaskManager -(void)addAndExcuteSocialTask:(UMSocialTask*)task |
| | | */ |
| | | -(void)executeTaskWithOperationQueue:(NSOperationQueue*)operationTaskQueue; |
| | | |
| | | @end |
| | | |
| | | NS_ASSUME_NONNULL_END |