RAUploadManager.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. //
  2. // RAUploadManager.h
  3. // test_autolayout
  4. //
  5. // Created by Ray on 02/05/2017.
  6. // Copyright © 2017 USAI. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import "RAUploadOperation.h"
  10. #import "Reachability.h"
  11. //@class RAUploadManager;
  12. ////@protocol RAUploadManagerDelegate <NSObject>
  13. //
  14. ////@required
  15. ////- (void)uploadManager:(RAUploadManager *)manager didRemoveTasks:(NSArray *)tasks;
  16. //
  17. //@end
  18. typedef NS_ENUM(NSInteger, QueueStatus) {
  19. QueueStatusDefault = 0,
  20. QueueStatusAdd = 1,
  21. QueueStatusError = 2,
  22. QueueStatusFinishWithError = 3,
  23. QueueStatusFinish = 4
  24. };
  25. @interface RAUploadManager : NSObject
  26. @property (assign) int maxThread;
  27. @property (assign) int activeThread;
  28. @property (assign) int maxRetry;
  29. @property (assign) TaskStatus newtaskStatus;
  30. @property (strong,nonatomic) NSMutableArray* arr_queue;
  31. //-(void) upload:(NSString*) url;
  32. -(void) addTask:(NSMutableDictionary*) task;
  33. -(void) addTasks:(NSMutableArray*) tasks;
  34. @property (nonatomic,assign) BOOL onlyWiFi;
  35. //@property (assign) bool removeFinish;
  36. //@property (assign) bool removeError;
  37. @property (assign) bool autoStart;
  38. @property (assign) QueueStatus queue_status;
  39. @property (nonatomic,strong) Reachability *reach;
  40. //@property (strong,nonatomic) NSLock* arr_queue_lock;
  41. @property (strong,nonatomic) NSOperationQueue* operation_queue;
  42. -(void) startTask:(NSMutableDictionary*) task;
  43. -(void) removeTask:(NSMutableDictionary*) task;
  44. -(void) removeTasks:(NSMutableArray*) tasks;
  45. -(void) stopAllTasks;
  46. -(void) saveTasks;
  47. //@property (nonatomic,weak) id <RAUploadManagerDelegate> delegate;
  48. - (BOOL)canUpload;
  49. - (void)addRetryOperation:(RAUploadOperation *)operation;
  50. @end