Twitch SDK (Internal)
chatgetblocklisttask.h
Go to the documentation of this file.
1 /********************************************************************************************
2 * Twitch Broadcasting SDK
3 *
4 * This software is supplied under the terms of a license agreement with Twitch Interactive, Inc. and
5 * may not be copied or used except in accordance with the terms of that agreement
6 * Copyright (c) 2012-2016 Twitch Interactive, Inc.
7 *********************************************************************************************/
8 
9 #pragma once
10 
14 #include <map>
15 
16 namespace ttv
17 {
18  namespace chat
19  {
20  class ChatGetBlockListTask;
21  }
22 }
23 
25 {
26 public:
27  struct Result
28  {
29  std::vector<UserInfo> users;
30 
34  bool valid;
35  };
36 
37  typedef std::function<void(ChatGetBlockListTask* source, TTV_ErrorCode ec, std::shared_ptr<Result> result)> Callback;
38 
39  ChatGetBlockListTask(UserId userId, const std::string& authToken, uint offset, uint limit, std::shared_ptr<Result> result, Callback callback);
40 
41 protected:
42  virtual const char* GetTaskName() const override { return "ChatGetBlockListTask"; }
43 
44  virtual void FillHttpRequestInfo(HttpRequestInfo& requestInfo) override;
45  virtual void ProcessResponse(uint statusCode, const std::vector<char>& response) override;
46  virtual void OnComplete() override;
47 
48 private:
50  std::shared_ptr<Result> mResult;
54 };
uint32_t UserId
Definition: coretypes.h:22
uint offset
Definition: chatgetblocklisttask.h:31
Definition: chatgetblocklisttask.h:24
virtual void ProcessResponse(uint statusCode, const std::vector< char > &response) override
ChatGetBlockListTask(UserId userId, const std::string &authToken, uint offset, uint limit, std::shared_ptr< Result > result, Callback callback)
uint mLimit
Definition: chatgetblocklisttask.h:53
Definition: httptask.h:19
uint total
Definition: chatgetblocklisttask.h:33
std::shared_ptr< Result > mResult
Definition: chatgetblocklisttask.h:50
virtual void OnComplete() override
std::vector< UserInfo > users
Definition: chatgetblocklisttask.h:29
Definition: chatgetblocklisttask.h:27
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
Callback mCallback
Definition: chatgetblocklisttask.h:49
UserId mUserId
Definition: chatgetblocklisttask.h:51
bool valid
Definition: chatgetblocklisttask.h:34
uint mOffset
Definition: chatgetblocklisttask.h:52
virtual const char * GetTaskName() const override
Definition: chatgetblocklisttask.h:42
unsigned int uint
Definition: coretypes.h:18
uint limit
Definition: chatgetblocklisttask.h:32
virtual void FillHttpRequestInfo(HttpRequestInfo &requestInfo) override
std::function< void(ChatGetBlockListTask *source, TTV_ErrorCode ec, std::shared_ptr< Result > result)> Callback
Definition: chatgetblocklisttask.h:37
Definition: httptask.h:22