#import "AFNetworking.h" @class MTDatacenterAddress; @class MTHttpWorker; @class MTQueue; @protocol MTHttpWorkerDelegate @optional - (void)httpWorker:(MTHttpWorker *)httpWorker completedWithData:(NSData *)data; - (void)httpWorkerConnected:(MTHttpWorker *)httpWorker; - (void)httpWorkerFailed:(MTHttpWorker *)httpWorker; @end @interface MTHttpWorkerBlockDelegate : NSObject @property (nonatomic, copy) void (^completedWithData)(NSData *); @property (nonatomic, copy) void (^connected)(); @property (nonatomic, copy) void (^failed)(); @end @interface MTHttpWorker : AFHTTPClient @property (nonatomic, strong, readonly) id internalId; @property (nonatomic, weak) id delegate; @property (nonatomic, readonly) bool performsLongPolling; + (MTQueue *)httpWorkerProcessingQueue; - (instancetype)initWithDelegate:(id)delegate address:(MTDatacenterAddress *)address payloadData:(NSData *)payloadData performsLongPolling:(bool)performsLongPolling; - (bool)isConnected; - (void)stop; - (void)terminateWithFailure; @end