下面列出了io.reactivex.rxjava3.core.Completable#fromObservable ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Nonnull
public Completable createGuildBan(@Nonnull final String guildId, @Nonnull final String userId,
@Nullable final String reason,
@Nonnegative final int deleteMessageDays) {
if(deleteMessageDays > 7) {
final CompletableFuture<Void> future = new CompletableFuture<>();
future.completeExceptionally(new IllegalArgumentException("deleteMessageDays can't be above 7"));
return Completable.fromFuture(future);
}
final QueryStringBuilder builder = new QueryStringBuilder();
builder.append("reason", reason == null ? "" : reason);
builder.append("delete-message-days", String.valueOf(deleteMessageDays));
final String query = builder.build();
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.CREATE_GUILD_BAN.withMajorParam(guildId).withQueryString(query),
Map.of("user", userId)).reason(reason).emptyBody(true)));
}
@Nonnull
public Completable deleteOwnReaction(@Nonnull final String channelId, @Nonnull final String messageId,
@Nonnull final String emoji) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_OWN_REACTION.withMajorParam(channelId),
Map.of("message", messageId, "emojis", encodeUTF8(emoji))).emptyBody(true)));
}
@Nonnull
public Completable deleteUserReaction(@Nonnull final String channelId, @Nonnull final String messageId,
@Nonnull final String userId, @Nonnull final String emoji) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_USER_REACTION.withMajorParam(channelId),
Map.of("message", messageId, "emojis", encodeUTF8(emoji), "user", userId))
.emptyBody(true)));
}
@Nonnull
public Completable deleteEmojiReaction(@Nonnull final String channelId, @Nonnull final String messageId,
@Nonnull final String emoji) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_EMOJI_REACTIONS.withMajorParam(channelId),
Map.of("message", messageId, "emojis", encodeUTF8(emoji))).emptyBody(true)));
}
@Nonnull
public Completable deletePermissionOverride(@Nonnull final String channelId,
@Nonnull final String overwriteId, @Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_CHANNEL_PERMISSION.withMajorParam(channelId),
Map.of("overwrite", overwriteId)).reason(reason).emptyBody(true)));
}
@Nonnull
public Completable editPermissionOverride(@Nonnull final String channelId, @Nonnull final String overwriteId,
@Nonnull final Collection<Permission> allowed,
@Nonnull final Collection<Permission> denied,
final boolean isMember, @Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.EDIT_CHANNEL_PERMISSIONS.withMajorParam(channelId),
Map.of("overwrite", overwriteId), JsonObject.builder()
.value("allow", Permission.from(allowed))
.value("deny", Permission.from(denied))
.value("type", isMember ? "member" : "role")
.done(),
reason
)));
}
@Nonnull
public Completable deleteGuildEmoji(@Nonnull final String guildId, @Nonnull final String emojiId,
@Nullable final String reason) {
return Completable.fromObservable(catnip().requester().queue(
new OutboundRequest(
Routes.DELETE_GUILD_EMOJI.withMajorParam(guildId),
Map.of("emojis", emojiId)).reason(reason).emptyBody(true)));
}
@Nonnull
@CheckReturnValue
public Completable deleteWebhook(@Nonnull final String webhookId, @Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_WEBHOOK.withMajorParam(webhookId),
Map.of()).reason(reason).emptyBody(true)));
}
@Nonnull
@CheckReturnValue
public Completable modifyGuildMember(@Nonnull final String guildId, @Nonnull final String memberId,
@Nonnull final MemberData data, @Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.MODIFY_GUILD_MEMBER.withMajorParam(guildId),
Map.of("user", memberId), data.toJson(), reason)));
}
@Nonnull
@CheckReturnValue
public Completable modifyGuildChannelPositions(@Nonnull final PositionUpdater updater,
@Nullable final String reason) {
final JsonArray array = new JsonArray();
updater.entries()
.stream()
.map(x -> JsonObject.builder().value("id", x.getKey()).value("position", x.getValue()).done())
.forEach(array::add);
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.MODIFY_GUILD_CHANNEL_POSITIONS.withMajorParam(updater.guildId()),
Map.of(), array, reason)));
}
@Nonnull
@CheckReturnValue
public Completable modifyGuildRolePositions(@Nonnull final PositionUpdater updater,
@Nullable final String reason) {
final JsonArray array = new JsonArray();
updater.entries()
.stream()
.map(x -> JsonObject.builder().value("id", x.getKey()).value("position", x.getValue()).done())
.forEach(array::add);
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.MODIFY_GUILD_ROLE_POSITIONS.withMajorParam(updater.guildId()),
Map.of(), array, reason)));
}
@Nonnull
@CheckReturnValue
public Completable deleteGuildRole(@Nonnull final String guildId, @Nonnull final String roleId,
@Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_GUILD_ROLE.withMajorParam(guildId),
Map.of("role", roleId)).reason(reason).emptyBody(true)));
}
@Nonnull
public Completable removeGuildBan(@Nonnull final String guildId, @Nonnull final String userId,
@Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.REMOVE_GUILD_BAN.withMajorParam(guildId),
Map.of("user", userId)).reason(reason).emptyBody(true)));
}
@Nonnull
public Completable removeGuildMemberRole(@Nonnull final String guildId, @Nonnull final String userId,
@Nonnull final String roleId, @Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.REMOVE_GUILD_MEMBER_ROLE.withMajorParam(guildId),
Map.of("user", userId, "role", roleId)).reason(reason).emptyBody(true)));
}
@Nonnull
public Completable deleteAllReactions(@Nonnull final String channelId, @Nonnull final String messageId) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_ALL_REACTIONS.withMajorParam(channelId),
Map.of("message", messageId)).emptyBody(true)));
}
@Nonnull
public Completable leaveGuild(@Nonnull final String guildId) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.LEAVE_GUILD,
Map.of("guild", guildId)).emptyBody(true)));
}
@Nonnull
public Completable deletePinnedMessage(@Nonnull final String channelId, @Nonnull final String messageId, @Nullable final String reason) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_PINNED_CHANNEL_MESSAGE.withMajorParam(channelId),
Map.of("message", messageId)).reason(reason).emptyBody(true)));
}
@Nonnull
public Completable deleteGuild(@Nonnull final String guildId) {
return Completable.fromObservable(catnip().requester()
.queue(new OutboundRequest(Routes.DELETE_GUILD.withMajorParam(guildId),
Map.of()).emptyBody(true)));
}
@Before
public void setup() {
subject = PublishSubject.create();
completable = Completable.fromObservable(subject);
lifecycle = PublishSubject.create();
}
@Before
public void setup() {
subject = PublishSubject.create();
completable = Completable.fromObservable(subject);
lifecycle = PublishSubject.create();
}