@@ -58,31 +58,33 @@ protected void execute(final CommandEvent event) {
5858 }
5959
6060 private static void run (final String token , final CommandEvent event ) {
61- final var target = event .getMessage ().getReferencedMessage ();
62- if (target == null || target . isWebhookMessage () || target . getAuthor (). isSystem () ) {
61+ final var action = event .getMessage ().getMessageReference ();
62+ if (action == null ) {
6363 event .getMessage ().reply ("Please reference a message to create a gist from its attachments." ).mentionRepliedUser (false ).queue ();
6464 return ;
6565 }
66- if (!GistContextMenu .canGist (target )) {
67- event .getMessage ().reply ("The message doesn't have any attachments!" ).mentionRepliedUser (false ).queue ();
68- return ;
69- }
70- try {
71- final var gist = GistUtils .create (token , GistContextMenu .createGistFromMessage (target ));
72- if (gist == null ) {
73- event .getMessage ().reply ("The Gist I created was null for some reason. Try again later." ).mentionRepliedUser (false ).queue ();
66+ action .resolve (true ).queue (target -> {
67+ if (!GistContextMenu .canGist (target )) {
68+ event .getMessage ().reply ("The message doesn't have any attachments!" ).mentionRepliedUser (false ).queue ();
7469 return ;
7570 }
76- final EmbedBuilder embed = new EmbedBuilder ().setColor (Color .MAGENTA ).setTimestamp (Instant .now ())
77- .setFooter ("Requester ID: " + event .getMember ().getIdLong (), event .getMember ().getEffectiveAvatarUrl ())
78- .setThumbnail (event .getJDA ().getSelfUser ().getAvatarUrl ())
79- .setDescription ("A gist has been created for the attachments of [this](%s) message." .formatted (target .getJumpUrl ()))
80- .addField ("Gist Link" , gist .htmlUrl (), false );
81- event .getMessage ().replyEmbeds (embed .build ()).mentionRepliedUser (false ).queue ();
82- } catch (InterruptedException | ExecutionException | GistUtils .GistException e ) {
83- event .getMessage ().replyFormat ("Error while creating gist: **%s**" , e .getLocalizedMessage ()).mentionRepliedUser (false ).queue ();
84- TheCommander .LOGGER .error ("Error while creating gist" , e );
85- }
71+ try {
72+ final var gist = GistUtils .create (token , GistContextMenu .createGistFromMessage (target ));
73+ if (gist == null ) {
74+ event .getMessage ().reply ("The Gist I created was null for some reason. Try again later." ).mentionRepliedUser (false ).queue ();
75+ return ;
76+ }
77+ final EmbedBuilder embed = new EmbedBuilder ().setColor (Color .MAGENTA ).setTimestamp (Instant .now ())
78+ .setFooter ("Requester ID: " + event .getMember ().getIdLong (), event .getMember ().getEffectiveAvatarUrl ())
79+ .setThumbnail (event .getJDA ().getSelfUser ().getAvatarUrl ())
80+ .setDescription ("A gist has been created for the attachments of [this](%s) message." .formatted (target .getJumpUrl ()))
81+ .addField ("Gist Link" , gist .htmlUrl (), false );
82+ event .getMessage ().replyEmbeds (embed .build ()).mentionRepliedUser (false ).queue ();
83+ } catch (InterruptedException | ExecutionException | GistUtils .GistException e ) {
84+ event .getMessage ().replyFormat ("Error while creating gist: **%s**" , e .getLocalizedMessage ()).mentionRepliedUser (false ).queue ();
85+ TheCommander .LOGGER .error ("Error while creating gist" , e );
86+ }
87+ });
8688 }
8789
8890}
0 commit comments