Class: Discorb::GuildTemplate
- Inherits:
-
DiscordModel
- Object
- DiscordModel
- Discorb::GuildTemplate
- Defined in:
- lib/discorb/guild_template.rb
Overview
Represents a guild template.
Defined Under Namespace
Classes: TemplateGuild
Instance Attribute Summary collapse
-
#code -> String
readonly
The code of the template.
-
#created_at -> Time
readonly
The time this template was created.
-
#creator -> Discorb::User
readonly
The user who created this template.
-
#description -> String
readonly
The description of the template.
-
#is_dirty -> Boolean
(also: #dirty?)
readonly
Whether this template is dirty.
-
#name -> String
readonly
The name of the template.
-
#serialized_source_guild -> Discorb::GuildTemplate::TemplateGuild
(also: #content)
readonly
The guild where the template was created.
- #source_guild -> nil, Discorb::Guild readonly
-
#source_guild_id -> Discorb::Guild
readonly
The guild where the template was created.
-
#updated_at -> Time
readonly
The time this template was last updated.
-
#usage_count -> Integer
readonly
The number of times this template has been used.
Instance Method Summary collapse
-
#delete! -> Object
(also: #destroy!)
Delete the template.
-
#edit(name = nil, description = :unset) -> Object
(also: #modify)
Edit the template.
-
#update -> Object
Update the template.
Methods inherited from DiscordModel
Instance Attribute Details
#code -> String (readonly)
Returns The code of the template.
9 10 11 |
# File 'lib/discorb/guild_template.rb', line 9 def code @code end |
#created_at -> Time (readonly)
Returns The time this template was created.
19 20 21 |
# File 'lib/discorb/guild_template.rb', line 19 def created_at @created_at end |
#creator -> Discorb::User (readonly)
Returns The user who created this template.
17 18 19 |
# File 'lib/discorb/guild_template.rb', line 17 def creator @creator end |
#description -> String (readonly)
Returns The description of the template.
13 14 15 |
# File 'lib/discorb/guild_template.rb', line 13 def description @description end |
#is_dirty -> Boolean (readonly) Also known as: dirty?
Returns Whether this template is dirty.
28 29 30 |
# File 'lib/discorb/guild_template.rb', line 28 def is_dirty @is_dirty end |
#name -> String (readonly)
Returns The name of the template.
11 12 13 |
# File 'lib/discorb/guild_template.rb', line 11 def name @name end |
#serialized_source_guild -> Discorb::GuildTemplate::TemplateGuild (readonly) Also known as: content
Returns The guild where the template was created.
25 26 27 |
# File 'lib/discorb/guild_template.rb', line 25 def serialized_source_guild @serialized_source_guild end |
#source_guild -> nil, Discorb::Guild (readonly)
This method returns an object from client cache. it will return nil
if the object is not in cache.
|
# File 'lib/discorb/guild_template.rb', line 31
|
#source_guild_id -> Discorb::Guild (readonly)
Returns The guild where the template was created.
23 24 25 |
# File 'lib/discorb/guild_template.rb', line 23 def source_guild_id @source_guild_id end |
#updated_at -> Time (readonly)
Returns The time this template was last updated.
21 22 23 |
# File 'lib/discorb/guild_template.rb', line 21 def updated_at @updated_at end |
#usage_count -> Integer (readonly)
Returns The number of times this template has been used.
15 16 17 |
# File 'lib/discorb/guild_template.rb', line 15 def usage_count @usage_count end |
Instance Method Details
#delete! -> Object Also known as: destroy!
This is an asynchronous method, it will return a Async::Task
object. Use Async::Task#wait
to get the result.
This method calls HTTP request.
Delete the template.
83 84 85 86 87 |
# File 'lib/discorb/guild_template.rb', line 83 def delete! Async do @client.http.delete("/guilds/#{@source_guild_id}/templates/#{@code}").wait end end |
#edit(name = nil, description = :unset) -> Object Also known as: modify
This is an asynchronous method, it will return a Async::Task
object. Use Async::Task#wait
to get the result.
This method calls HTTP request.
The arguments of this method are defaultly set to :unset
. Specify value to set the value, if not don't specify or specify :unset
.
Edit the template.
55 56 57 58 59 60 61 62 |
# File 'lib/discorb/guild_template.rb', line 55 def edit(name = nil, description = :unset) Async do payload = {} payload[:name] = name if name payload[:description] = description if description != :unset @client.http.patch("/guilds/#{@source_guild_id}/templates/#{@code}", payload).wait end end |
#update -> Object
This is an asynchronous method, it will return a Async::Task
object. Use Async::Task#wait
to get the result.
This method calls HTTP request.
Update the template.
71 72 73 74 75 76 |
# File 'lib/discorb/guild_template.rb', line 71 def update Async do _resp, data = @client.http.put("/guilds/#{@source_guild_id}/templates/#{@code}").wait _set_data(data) end end |