Skip to content
Success

Changes

Summary

  1. Add rate-limiter customization (#2307) (commit: cec8035) (details)
Commit cec80353f37f6e0b85eae69d3da0c813c102f567 by noreply
Add rate-limiter customization (#2307)

* Add RestConfig
* Move Route into api package
* Remove some unused routes
* Move URI encoding into compile and withQueryParams
* Add docs for Route
* Expose major parameter names as list constant
* Remove unused client only fields in SelfUser
* Handle global rate-limit bypass
* Split buckets into 2 types
* Improve handling of global rate-limits
* Call cleanup on shutdown
(commit: cec8035)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/AuditableRestActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/attribute/IWebhookContainerMixin.java (diff)
The file was addedsrc/main/java/net/dv8tion/jda/api/requests/Method.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/WebhookMessageEditActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/MessagePaginationActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/GuildActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/utils/WidgetUtil.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/sticker/GuildStickerImpl.java (diff)
The file was removedsrc/main/java/net/dv8tion/jda/internal/requests/ratelimit/BotRateLimiter.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/middleman/GuildMessageChannelMixin.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/concrete/PrivateChannelImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/ScheduledEventActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/interactions/InteractionCallbackImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/GuildManagerImpl.java (diff)
The file was addedsrc/main/java/net/dv8tion/jda/api/exceptions/InteractionExpiredException.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/RoleManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/ScheduledEventManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/ChannelMixin.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/utils/Helpers.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/GuildVoiceStateImpl.java (diff)
The file was removedsrc/main/java/net/dv8tion/jda/internal/requests/RateLimiter.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/WebhookMessageCreateActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/InviteImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/attribute/IInviteContainerMixin.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/interactions/command/CommandImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/CustomEmojiManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/MessageReference.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/RoleActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/emoji/RichCustomEmojiImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/order/OrderActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/ThreadChannelPaginationActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/TemplateManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/channel/ChannelManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/concrete/StageChannelImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/AccountManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/order/ChannelOrderActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/ReactionPaginationActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/AbstractWebhookClient.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/Webhook.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/JDA.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/SelfUserImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/sharding/DefaultShardManagerBuilder.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/middleman/MessageChannelMixin.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/GuildStickerManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/requests/RestFuture.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/channel/concrete/NewsChannel.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/RoleImpl.java (diff)
The file was addedsrc/main/java/net/dv8tion/jda/api/requests/RestConfig.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/BanPaginationActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/utils/SessionController.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/StageInstanceActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/GuildWelcomeScreenManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/MessageReaction.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/channel/middleman/MessageChannel.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/attribute/IThreadContainerMixin.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/MessageEditActionImpl.java (diff)
The file was removedsrc/main/java/net/dv8tion/jda/internal/requests/Route.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/StageInstanceManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/WebhookActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/requests/Request.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/AuditLogPaginationActionImpl.java (diff)
The file was removedsrc/main/java/net/dv8tion/jda/internal/requests/Method.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/concrete/NewsChannelImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/sharding/ShardManager.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/RestActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/MessageHistory.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/sharding/DefaultShardManager.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/WebhookManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/ScheduledEventMembersPaginationActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/JDABuilder.java (diff)
The file was removedsrc/main/java/net/dv8tion/jda/internal/requests/ratelimit/package-info.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/interactions/InteractionHookImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/JDAImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/events/http/HttpRequestEvent.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/utils/FileProxy.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/utils/SessionControllerAdapter.java (diff)
The file was addedsrc/main/java/net/dv8tion/jda/api/requests/Route.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/PermissionOverrideImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/utils/Checks.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/StageInstanceImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/ChannelActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/CommandEditActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/ThreadMemberPaginationActionImpl.java (diff)
The file was removedsrc/main/java/net/dv8tion/jda/internal/requests/ratelimit/IBucket.java
The file was addedsrc/main/java/net/dv8tion/jda/api/requests/SequentialRestRateLimiter.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/CommandListUpdateActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/ForumPostActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/concrete/ThreadChannelImpl.java (diff)
The file was addedsrc/main/java/net/dv8tion/jda/api/requests/RestRateLimiter.java
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/ThreadChannelActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/PermissionOverrideActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/MemberActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/Requester.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/GuildImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/pagination/PaginationActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/order/RoleOrderActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/ReceivedMessage.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/WebhookImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/ManagerBase.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/managers/PermOverrideManagerImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/CommandCreateActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/templates/Template.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/entities/Message.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/MessageCreateActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/api/exceptions/RateLimitedException.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/ScheduledEventImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/TriggerRestAction.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/UserImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/requests/restaction/InviteActionImpl.java (diff)
The file was modifiedsrc/main/java/net/dv8tion/jda/internal/entities/channel/mixin/middleman/GuildChannelMixin.java (diff)