Class GuildCreateSpec
- java.lang.Object
-
- discord4j.core.spec.GuildCreateSpec
-
- All Implemented Interfaces:
Spec<discord4j.discordjson.json.GuildCreateRequest>
public class GuildCreateSpec extends Object implements Spec<discord4j.discordjson.json.GuildCreateRequest>
A spec used to configure and create aGuild
. This can only be used for bots in less than 10 guilds.This spec also has some limitations to it. - The first role added, either from
addEveryoneRole(java.util.function.Consumer<? super discord4j.core.spec.RoleCreateSpec>)
oraddRole(java.util.function.Consumer<? super discord4j.core.spec.RoleCreateSpec>)
, will automatically be set as the default @everyone role. Each subsequent call toaddEveryoneRole(java.util.function.Consumer<? super discord4j.core.spec.RoleCreateSpec>)
will not override the first role but shift all other roles down. - When using the channels parameter, the position field is ignored, and none of the default channels are created.- See Also:
- Create Guild
-
-
Constructor Summary
Constructors Constructor Description GuildCreateSpec()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GuildCreateSpec
addChannel(String name, Channel.Type type)
Adds the channel to the list of channels for the createdGuild
.GuildCreateSpec
addEveryoneRole(Consumer<? super RoleCreateSpec> roleSpec)
Sets the default @everyone role for the createdGuild
.GuildCreateSpec
addRole(Consumer<? super RoleCreateSpec> roleSpec)
Adds the role spec to the list of roles for the createdGuild
.discord4j.discordjson.json.GuildCreateRequest
asRequest()
GuildCreateSpec
setAfkChannelId(Snowflake id)
Sets the ID of the AFK channel for the createdGuild
.GuildCreateSpec
setAfkTimeout(Integer afkTimeout)
Sets the AFK timeout, in seconds, for the createdGuild
.GuildCreateSpec
setDefaultMessageNotificationLevel(Guild.NotificationLevel notificationLevel)
Sets the default message notification level for the createdGuild
.GuildCreateSpec
setExplicitContentFilter(Guild.ContentFilterLevel explicitContentFilter)
Sets the explicit content filter level for the createdGuild
.GuildCreateSpec
setIcon(Image icon)
Sets the image icon to display for the createdGuild
.GuildCreateSpec
setName(String name)
Sets the name for the createdGuild
.GuildCreateSpec
setRegion(Region.Id regionId)
Sets the voice region id for the createdGuild
.GuildCreateSpec
setRegion(String regionId)
Sets the voice region id for the createdGuild
, automatic if null.GuildCreateSpec
setSystemChannelFlags(Guild.SystemChannelFlag... flags)
Sets the system channel flags for the createdGuild
.GuildCreateSpec
setSystemChannelId(Snowflake id)
Sets the id of the channel where guild notices such as welcome messages and boost events are posted for the createdGuild
.GuildCreateSpec
setVerificationLevel(Guild.VerificationLevel verificationLevel)
Sets the verification level required before a member can send messages in the createdGuild
.
-
-
-
Method Detail
-
setName
public GuildCreateSpec setName(String name)
Sets the name for the createdGuild
.- Parameters:
name
- The name of the guild.- Returns:
- This spec.
-
setRegion
public GuildCreateSpec setRegion(Region.Id regionId)
Sets the voice region id for the createdGuild
.- Parameters:
regionId
- The voice region id for the guild.- Returns:
- This spec.
-
setRegion
public GuildCreateSpec setRegion(@Nullable String regionId)
Sets the voice region id for the createdGuild
, automatic if null.- Parameters:
regionId
- The voice region id for the guild, automatic if null.- Returns:
- This spec.
-
setIcon
public GuildCreateSpec setIcon(@Nullable Image icon)
Sets the image icon to display for the createdGuild
.- Parameters:
icon
- The icon for the guild.- Returns:
- This spec.
-
setVerificationLevel
public GuildCreateSpec setVerificationLevel(@Nullable Guild.VerificationLevel verificationLevel)
Sets the verification level required before a member can send messages in the createdGuild
.- Parameters:
verificationLevel
- The verification level for the guild.- Returns:
- This spec.
-
setDefaultMessageNotificationLevel
public GuildCreateSpec setDefaultMessageNotificationLevel(@Nullable Guild.NotificationLevel notificationLevel)
Sets the default message notification level for the createdGuild
.- Parameters:
notificationLevel
- The default notification level for the guild.- Returns:
- This spec.
-
setExplicitContentFilter
public GuildCreateSpec setExplicitContentFilter(@Nullable Guild.ContentFilterLevel explicitContentFilter)
Sets the explicit content filter level for the createdGuild
.- Parameters:
explicitContentFilter
- The explicit content filter level for the guild.- Returns:
- This spec.
-
addRole
public GuildCreateSpec addRole(Consumer<? super RoleCreateSpec> roleSpec)
Adds the role spec to the list of roles for the createdGuild
.- Parameters:
roleSpec
- The role spec to add to the list of roles.- Returns:
- This spec.
-
addEveryoneRole
public GuildCreateSpec addEveryoneRole(Consumer<? super RoleCreateSpec> roleSpec)
Sets the default @everyone role for the createdGuild
. This shifts all other roles in the list, if present, down by one. It does not replace other @everyone roles already set.When creating a guild, Discord automatically takes the first role in the role array as the default @everyone role. See this limitation and others at
GuildCreateSpec
.- Parameters:
roleSpec
- The default @everyone role spec to add to the list of roles.- Returns:
- This spec.
-
addChannel
public GuildCreateSpec addChannel(String name, Channel.Type type)
Adds the channel to the list of channels for the createdGuild
.- Parameters:
name
- The name of the channel.type
- The type of the channel.- Returns:
- This spec.
-
setAfkChannelId
public GuildCreateSpec setAfkChannelId(@Nullable Snowflake id)
Sets the ID of the AFK channel for the createdGuild
.- Parameters:
id
- id for afk channel- Returns:
- This spec.
-
setAfkTimeout
public GuildCreateSpec setAfkTimeout(@Nullable Integer afkTimeout)
Sets the AFK timeout, in seconds, for the createdGuild
.- Parameters:
afkTimeout
- The AFK timeout, in seconds.- Returns:
- This spec.
-
setSystemChannelId
public GuildCreateSpec setSystemChannelId(@Nullable Snowflake id)
Sets the id of the channel where guild notices such as welcome messages and boost events are posted for the createdGuild
.- Parameters:
id
- The id of the channel where guild notices such as welcome messages and boost events are posted.- Returns:
- This spec.
-
setSystemChannelFlags
public GuildCreateSpec setSystemChannelFlags(@Nullable Guild.SystemChannelFlag... flags)
Sets the system channel flags for the createdGuild
.- Parameters:
flags
- The system channel flags.- Returns:
- This spec.
-
-