Class GuildAction.ChannelData
- java.lang.Object
-
- net.dv8tion.jda.api.requests.restaction.GuildAction.ChannelData
-
- All Implemented Interfaces:
SerializableData
- Enclosing interface:
- GuildAction
public static class GuildAction.ChannelData extends java.lang.Object implements SerializableData
GuildChannel information used for the creation ofChannelswithin the construction of aGuildvia GuildAction.Use with
GuildAction.addChannel(ChannelData).
-
-
Constructor Summary
Constructors Constructor Description ChannelData(ChannelType type, java.lang.String name)Constructs a data object containing information on aGuildChannelto be used in the construction of aGuild!
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GuildAction.ChannelDataaddPermissionOverride(GuildAction.RoleData role, long allow, long deny)Adds aPermissionOverrideto this channel with the providedRoleData!
UseGuildAction.newRole()to retrieve an instance of RoleData.GuildAction.ChannelDataaddPermissionOverride(GuildAction.RoleData role, java.util.Collection<Permission> allow, java.util.Collection<Permission> deny)Adds aPermissionOverrideto this channel with the providedRoleData!
UseGuildAction.newRole()to retrieve an instance of RoleData.GuildAction.ChannelDatasetBitrate(java.lang.Integer bitrate)Sets the bitrate for this channel.GuildAction.ChannelDatasetNSFW(java.lang.Boolean nsfw)Sets the whether this channel should be marked NSFW.GuildAction.ChannelDatasetPosition(java.lang.Integer position)Sets the position for this channel.GuildAction.ChannelDatasetTopic(java.lang.String topic)Sets the topic for this channel.GuildAction.ChannelDatasetUserlimit(java.lang.Integer userlimit)Sets the userlimit for this channel.DataObjecttoData()SerializedDataObjectfor this object.
-
-
-
Constructor Detail
-
ChannelData
public ChannelData(ChannelType type, java.lang.String name)
Constructs a data object containing information on aGuildChannelto be used in the construction of aGuild!- Parameters:
type- TheChannelTypeof the resulting GuildChannel
This may be of typeTEXTorVOICE!name- The name of the channel. This must be alphanumeric with underscores for type TEXT- Throws:
java.lang.IllegalArgumentException-- If provided with an invalid ChannelType
- If the provided name is
nullor blank - If the provided name is not between 2-100 characters long
- If the type is TEXT and the provided name is not alphanumeric with underscores
-
-
Method Detail
-
setTopic
@Nonnull public GuildAction.ChannelData setTopic(@Nullable java.lang.String topic)
Sets the topic for this channel.
These are only relevant to channels of typeTEXT.- Parameters:
topic- The topic for the channel- Returns:
- This ChannelData instance for chaining convenience
- Throws:
java.lang.IllegalArgumentException- If the provided topic is bigger than 1024 characters
-
setNSFW
@Nonnull public GuildAction.ChannelData setNSFW(@Nullable java.lang.Boolean nsfw)
Sets the whether this channel should be marked NSFW.
These are only relevant to channels of typeTEXT.- Parameters:
nsfw- Whether this channel should be marked NSFW- Returns:
- This ChannelData instance for chaining convenience
-
setBitrate
@Nonnull public GuildAction.ChannelData setBitrate(@Nullable java.lang.Integer bitrate)
Sets the bitrate for this channel.
These are only relevant to channels of typeVOICE.- Parameters:
bitrate- The bitrate for the channel (8000-96000)- Returns:
- This ChannelData instance for chaining convenience
- Throws:
java.lang.IllegalArgumentException- If the provided bitrate is not between 8000-96000
-
setUserlimit
@Nonnull public GuildAction.ChannelData setUserlimit(@Nullable java.lang.Integer userlimit)
Sets the userlimit for this channel.
These are only relevant to channels of typeVOICE.- Parameters:
userlimit- The userlimit for the channel (0-99)- Returns:
- This ChannelData instance for chaining convenience
- Throws:
java.lang.IllegalArgumentException- If the provided userlimit is not between 0-99
-
setPosition
@Nonnull public GuildAction.ChannelData setPosition(@Nullable java.lang.Integer position)
Sets the position for this channel.- Parameters:
position- The position for the channel- Returns:
- This ChannelData instance for chaining convenience
-
addPermissionOverride
@Nonnull public GuildAction.ChannelData addPermissionOverride(@Nonnull GuildAction.RoleData role, long allow, long deny)
Adds aPermissionOverrideto this channel with the providedRoleData!
UseGuildAction.newRole()to retrieve an instance of RoleData.- Parameters:
role- The target roleallow- The permissions to grant in the overridedeny- The permissions to deny in the override- Returns:
- This ChannelData instance for chaining convenience
- Throws:
java.lang.IllegalArgumentException- If the provided role isnull
-
addPermissionOverride
@Nonnull public GuildAction.ChannelData addPermissionOverride(@Nonnull GuildAction.RoleData role, @Nullable java.util.Collection<Permission> allow, @Nullable java.util.Collection<Permission> deny)
Adds aPermissionOverrideto this channel with the providedRoleData!
UseGuildAction.newRole()to retrieve an instance of RoleData.- Parameters:
role- The target roleallow- The permissions to grant in the overridedeny- The permissions to deny in the override- Returns:
- This ChannelData instance for chaining convenience
- Throws:
java.lang.IllegalArgumentException-- If the provided role is
null - If any permission is
null
- If the provided role is
-
toData
@Nonnull public DataObject toData()
Description copied from interface:SerializableDataSerializedDataObjectfor this object.- Specified by:
toDatain interfaceSerializableData- Returns:
DataObject
-
-