Initial commit

This commit is contained in:
ifish
2017-08-15 16:59:01 +08:00
commit bdc83e07ef
5766 changed files with 423223 additions and 0 deletions
@@ -0,0 +1,65 @@
//
// 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,relatedUrlPathparamDic来产生对应的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