searchMembersGateway method
Returns a Stream of Member
s objects whose username or nickname starts with a provided string.
By default limits to one entry - can be changed with limit
parameter.
Implementation
Stream<Member> searchMembersGateway(String query, {int limit = 0}) async* {
final nonce = "$query${id.toString()}";
this.shard.requestMembers(this.id, query: query, limit: limit, nonce: nonce);
final first = (await this.shard.onMemberChunk.take(1).toList()).first;
for (final member in first.members) {
yield member;
}
if (first.chunkCount > 1) {
await for (final event in this.shard.onMemberChunk.where((event) => event.nonce == nonce).take(first.chunkCount - 1)) {
for (final member in event.members) {
yield member;
}
}
}
}