Twitch SDK (Internal)
getusertask.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 
13 
14 namespace ttv
15 {
16  class GetUserTask;
17 }
18 
20 {
21 public:
22  struct Result
23  {
25  };
26 
27  typedef std::function<void(GetUserTask* source, TTV_ErrorCode ec, std::shared_ptr<Result> result)> Callback;
28 
29 public:
30  GetUserTask(const std::string& username, Callback callback);
31  GetUserTask(const std::shared_ptr<OAuthToken>& authToken, Callback callback);
32  GetUserTask(UserId userId, Callback callback);
33 
34  virtual const char* GetTaskName() const override { return "GetUserTask"; }
35 
36 protected:
37  virtual void FillHttpRequestInfo(HttpRequestInfo& requestInfo) override;
38  virtual void ProcessResponse(uint statusCode, const std::vector<char>& response) override;
39  virtual void OnComplete() override;
40 
41 private:
42  std::shared_ptr<Result> mResult;
44  std::string mUserName;
46 };
uint32_t UserId
Definition: coretypes.h:22
UserInfo userInfo
Definition: getusertask.h:24
Definition: getusertask.h:22
Definition: coretypes.h:32
Callback mCallback
Definition: getusertask.h:43
Definition: httptask.h:19
std::function< void(GetUserTask *source, TTV_ErrorCode ec, std::shared_ptr< Result > result)> Callback
Definition: getusertask.h:27
virtual void OnComplete() override
GetUserTask(const std::string &username, Callback callback)
virtual void ProcessResponse(uint statusCode, const std::vector< char > &response) override
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
virtual const char * GetTaskName() const override
Definition: getusertask.h:34
UserId mUserId
Definition: getusertask.h:45
unsigned int uint
Definition: coretypes.h:18
virtual void FillHttpRequestInfo(HttpRequestInfo &requestInfo) override
std::string mUserName
Definition: getusertask.h:44
Definition: getusertask.h:19
Definition: httptask.h:22
std::shared_ptr< Result > mResult
Definition: getusertask.h:42