Sendbird Chat SDK for Unreal
SBDGroupChannelListQuery.h
1// Copyright (c) 2021 Sendbird, Inc. All rights reserved.
2
3#ifndef SENDBIRD_SBDGROUPCHANNELLISTQUERY_H_
4#define SENDBIRD_SBDGROUPCHANNELLISTQUERY_H_
5
6#include "SBDGroupChannel.h"
7#include "SBDUser.h"
8
9class FSBDGroupChannelListQuery;
10
16public:
20 int64_t limit;
21
26
31
35 SBDGroupChannelListOrder order;
36
41
45 SBDGroupChannelListQueryType query_type;
46
51
58 SBDChannelPublicStateFilter channel_public_state_filter;
59
64 SBDChannelHiddenStateFilter channel_hidden_state_filter;
65
71 void SetCustomTypeFilter(const std::wstring& custom_type);
72
78 void SetMemberStateFilter(SBDMemberStateFilter member_state_filter);
79
87 void SetChannelUrlsFilter(const std::vector<std::wstring>& channel_urls);
88
94 void SetChannelNameContainsFilter(const std::wstring& channel_name);
95
102 void SetNicknameContainsFilter(const std::wstring& nickname);
103
112 void SetUsersIncludeFilter(const std::vector<SBDUser>& users, SBDGroupChannelListQueryType query_type);
113
120 void SetUsersExactFilter(const std::vector<SBDUser>& users);
121
128 void SetChannelPublicStateFilter(const SBDChannelPublicStateFilter channel_public_state_filter);
129
135 void SetChannelHiddenStateFilter(const SBDChannelHiddenStateFilter channel_hidden_state_filter);
136
142 void LoadNextPage(std::function<void(std::vector<SBDGroupChannel*> channels, SBDError*)> completion_handler);
143
144private:
145 std::string token;
146 std::vector<SBDUser> users_filter_exact_match;
147 std::vector<SBDUser> users_filter_like_match;
148 std::wstring nickname_contains_filter;
149 SBDMemberStateFilter member_state_filter;
150 std::wstring custom_type_filter;
151 std::vector<std::wstring> channel_urls_filter;
152 std::wstring channel_name_filter;
153
155
156 friend FSBDGroupChannelListQuery;
157};
158
159#endif /* SENDBIRD_SBDGROUPCHANNELLISTQUERY_H_ */
Definition: SBDError.h:13
Definition: SBDGroupChannelListQuery.h:15
bool is_loading
Definition: SBDGroupChannelListQuery.h:50
SBDChannelHiddenStateFilter channel_hidden_state_filter
Definition: SBDGroupChannelListQuery.h:64
void SetUsersExactFilter(const std::vector< SBDUser > &users)
void SetChannelHiddenStateFilter(const SBDChannelHiddenStateFilter channel_hidden_state_filter)
void SetNicknameContainsFilter(const std::wstring &nickname)
void SetChannelUrlsFilter(const std::vector< std::wstring > &channel_urls)
int64_t limit
Definition: SBDGroupChannelListQuery.h:20
void SetCustomTypeFilter(const std::wstring &custom_type)
void SetMemberStateFilter(SBDMemberStateFilter member_state_filter)
void SetChannelPublicStateFilter(const SBDChannelPublicStateFilter channel_public_state_filter)
void LoadNextPage(std::function< void(std::vector< SBDGroupChannel * > channels, SBDError *)> completion_handler)
SBDGroupChannelListQueryType query_type
Definition: SBDGroupChannelListQuery.h:45
SBDChannelPublicStateFilter channel_public_state_filter
Definition: SBDGroupChannelListQuery.h:58
bool has_next
Definition: SBDGroupChannelListQuery.h:40
void SetChannelNameContainsFilter(const std::wstring &channel_name)
SBDGroupChannelListOrder order
Definition: SBDGroupChannelListQuery.h:35
void SetUsersIncludeFilter(const std::vector< SBDUser > &users, SBDGroupChannelListQueryType query_type)
bool include_member_list
Definition: SBDGroupChannelListQuery.h:30
bool include_empty_channel
Definition: SBDGroupChannelListQuery.h:25