Class Template
- java.lang.Object
-
- net.dv8tion.jda.api.entities.templates.Template
-
public class Template extends Object
Representation of a Discord Guild Template
This class is immutable.- Since:
- 4.3.0
- See Also:
resolve(JDA, String),Guild.retrieveTemplates()
-
-
Constructor Summary
Constructors Constructor Description Template(net.dv8tion.jda.internal.JDAImpl api, String code, String name, String description, int uses, User creator, OffsetDateTime createdAt, OffsetDateTime updatedAt, TemplateGuild guild, boolean synced)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description RestAction<Void>delete()Deletes this template.booleanequals(Object obj)StringgetCode()The template code.UsergetCreator()The user who created this template.StringgetDescription()The template description.TemplateGuildgetGuild()ATemplate.Guildobject containing information about this template's origin guild.JDAgetJDA()TheJDAinstance used to create this Template instance.TemplateManagergetManager()Returns theTemplateManagerfor this Template.StringgetName()The template name.OffsetDateTimegetTimeCreated()Returns creation date of this template.OffsetDateTimegetTimeUpdated()Returns the last update date of this template.intgetUses()How often this template has been used.inthashCode()booleanisSynced()Whether or not this template is synced.static RestAction<Template>resolve(JDA api, String code)Retrieves a newTemplateinstance for the given template code.RestAction<Template>sync()Syncs this template.StringtoString()
-
-
-
Constructor Detail
-
Template
public Template(net.dv8tion.jda.internal.JDAImpl api, String code, String name, String description, int uses, User creator, OffsetDateTime createdAt, OffsetDateTime updatedAt, TemplateGuild guild, boolean synced)
-
-
Method Detail
-
resolve
@Nonnull public static RestAction<Template> resolve(JDA api, String code)
Retrieves a newTemplateinstance for the given template code.Possible
ErrorResponsesinclude:Unknown Guild Template
The template doesn't exist.
- Parameters:
api- The JDA instancecode- A valid template code- Returns:
RestAction- Type:Template
The Template object- Throws:
IllegalArgumentException-- If the provided code is null or empty
- If the provided code contains a whitespace
- If the provided JDA object is null
-
sync
@Nonnull @CheckReturnValue public RestAction<Template> sync()
Syncs this template.
RequiresMANAGE_SERVERin the template's guild. Will throw anInsufficientPermissionExceptionotherwise.- Returns:
RestAction- Type:Template
The synced Template object- Throws:
IllegalStateException- If the account is not in the template's guildInsufficientPermissionException- If the account does not haveMANAGE_SERVERin the template's guild
-
delete
@Nonnull @CheckReturnValue public RestAction<Void> delete()
Deletes this template.
RequiresMANAGE_SERVERin the template's guild. Will throw anInsufficientPermissionExceptionotherwise.- Returns:
RestAction- Throws:
IllegalStateException- If the account is not in the template's guildInsufficientPermissionException- If the account does not haveMANAGE_SERVERin the template's guild
-
getDescription
@Nullable public String getDescription()
The template description.- Returns:
- The template description
-
getUses
public int getUses()
How often this template has been used.- Returns:
- The uses of this template
-
getCreator
@Nonnull public User getCreator()
The user who created this template.- Returns:
- The user who created this template
-
getTimeCreated
@Nonnull public OffsetDateTime getTimeCreated()
Returns creation date of this template.- Returns:
- The creation date of this template
-
getTimeUpdated
@Nonnull public OffsetDateTime getTimeUpdated()
Returns the last update date of this template.
If this template has never been updated, this returns the date of creation.- Returns:
- The last update date of this template
- See Also:
getTimeCreated()
-
getGuild
@Nonnull public TemplateGuild getGuild()
ATemplate.Guildobject containing information about this template's origin guild.- Returns:
- Information about this template's origin guild
- See Also:
TemplateGuild
-
isSynced
public boolean isSynced()
Whether or not this template is synced.- Returns:
- True, if this template matches the current guild structure
-
getManager
@Nonnull public TemplateManager getManager()
Returns theTemplateManagerfor this Template.
In the TemplateManager, you can modify the name or description of the template. You modify multiple fields in one request by chaining setters before callingRestAction.queue().This is a lazy idempotent getter. The manager is retained after the first call. This getter is not thread-safe and would require guards by the user.
- Returns:
- The TemplateManager of this Template
- Throws:
IllegalStateException- If the account is not in the template's guildInsufficientPermissionException- If the currently logged in account does not haveMANAGE_SERVER
-
getJDA
@Nonnull public JDA getJDA()
TheJDAinstance used to create this Template instance.- Returns:
- The corresponding JDA instance
-
-