4
4
import net .dv8tion .jda .api .interactions .components .ButtonStyle ;
5
5
import org .jetbrains .annotations .Contract ;
6
6
import org .jetbrains .annotations .NotNull ;
7
+ import org .slf4j .Logger ;
8
+ import org .slf4j .LoggerFactory ;
7
9
8
10
import java .util .regex .Pattern ;
9
11
39
41
* </code>
40
42
* </pre>
41
43
*/
42
- public class DiscordClientAction {
44
+ public final class DiscordClientAction {
43
45
44
46
/**
45
47
* Contains some of the more general actions
46
48
*/
47
- public static class General {
49
+ public enum General {
50
+ ;
51
+
48
52
public static final DiscordClientAction HOME = new DiscordClientAction ("discord://-/" );
49
53
public static final DiscordClientAction FRIENDS = new DiscordClientAction ("discord://-/" );
50
54
@@ -66,7 +70,9 @@ public static class General {
66
70
/**
67
71
* Contains guild specific actions
68
72
*/
69
- public static class Guild {
73
+ public enum Guild {
74
+ ;
75
+
70
76
public static final DiscordClientAction GUILD =
71
77
new DiscordClientAction ("discord://-/channels/{GUILD-ID}" );
72
78
public static final DiscordClientAction GUILD_CHANNEL =
@@ -93,7 +99,9 @@ public static class Guild {
93
99
/**
94
100
* Contains actions related to channels
95
101
*/
96
- public static class Channels {
102
+ public enum Channels {
103
+ ;
104
+
97
105
public static final DiscordClientAction DM_CHANNEL =
98
106
new DiscordClientAction ("discord://-/channels/@me/{CHANNEL-ID}" );
99
107
public static final DiscordClientAction DM_CHANNEL_MESSAGE =
@@ -107,12 +115,15 @@ public static class Channels {
107
115
/**
108
116
* Contains actions related to the settings menu
109
117
*/
110
- public static class Settings {
118
+ public enum Settings {
119
+ ;
111
120
112
121
/**
113
122
* Contains all user settings
114
123
*/
115
- public static class User {
124
+ public enum User {
125
+ ;
126
+
116
127
public static final DiscordClientAction ACCOUNT =
117
128
new DiscordClientAction ("discord://-/settings/account" );
118
129
public static final DiscordClientAction PROFILE_CUSTOMIZATION =
@@ -128,7 +139,9 @@ public static class User {
128
139
/**
129
140
* Contains all payment settings
130
141
*/
131
- public static class Payment {
142
+ public enum Payment {
143
+ ;
144
+
132
145
public static final DiscordClientAction PREMIUM =
133
146
new DiscordClientAction ("discord://-/settings/premium" );
134
147
public static final DiscordClientAction SUBSCRIPTIONS =
@@ -142,7 +155,9 @@ public static class Payment {
142
155
/**
143
156
* Contains all app settings
144
157
*/
145
- public static class App {
158
+ public enum App {
159
+ ;
160
+
146
161
public static final DiscordClientAction APPEARANCE =
147
162
new DiscordClientAction ("discord://-/settings/appearance" );
148
163
public static final DiscordClientAction ACCESSIBILITY =
@@ -179,7 +194,9 @@ public static class App {
179
194
/**
180
195
* Contains some of the more general settings
181
196
*/
182
- public static class General {
197
+ public enum General {
198
+ ;
199
+
183
200
public static final DiscordClientAction ACTIVITY_STATUS =
184
201
new DiscordClientAction ("discord://-/settings/activity-status" );
185
202
public static final DiscordClientAction ACTIVITY_OVERLAY =
@@ -191,7 +208,9 @@ public static class General {
191
208
}
192
209
}
193
210
194
- public static class Library {
211
+ public enum Library {
212
+ ;
213
+
195
214
public static final DiscordClientAction LIBRARY_GAMES =
196
215
new DiscordClientAction ("discord://-/library" );
197
216
public static final DiscordClientAction LIBRARY_SETTINGS =
@@ -261,4 +280,9 @@ public String formatUrl(String @NotNull... arguments) {
261
280
public Button asLinkButton (@ NotNull String label , String ... arguments ) {
262
281
return Button .link (formatUrl (arguments ), label );
263
282
}
283
+
284
+ @ Override
285
+ public String toString () {
286
+ return "DiscordClientAction{" + "url='" + url + '\'' + '}' ;
287
+ }
264
288
}
0 commit comments