Advertisement
Vaerys_Dawn

Preeeety cooode

Dec 26th, 2017
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.78 KB | None | 0 0
  1.     private static void sendError(String prefix, String message, IChannel channel) {
  2.         if (channel.isPrivate()) {
  3.             logger.debug(prefix + " {\"MESSAGE\": \"" + message + "\", \"GUILD\": " + -1 + ", \"CHANNEL\": " + channel.getLongID() + "}");
  4.         }
  5.         logger.debug(prefix + " {\"MESSAGE\": \"" + message + "\", \"GUILD\": " + channel.getGuild().getLongID() + ", \"CHANNEL\": " + channel.getLongID() + "}");
  6.     }
  7.  
  8.     private static void missingPermissions(String message, IChannel channel) {
  9.         sendError("Could not send message, Missing Permissions.", message, channel);
  10.     }
  11.  
  12.     public static RequestBuffer.RequestFuture<IMessage> sendMessage(String message, IChannel channel) {
  13.         return RequestBuffer.request(() -> {
  14.             //message and channel checking
  15.             if (!Globals.client.isReady()) return null;
  16.             if (message == null || message.isEmpty()) return null;
  17.             if (message.length() > 2000) {
  18.                 sendMessage("> Could not send message, Too large. " +
  19.                         "Please contact my developer by sending me a **Direct Message** with the **Command Name** that caused this message.", channel);
  20.                 sendError("Could not send message, Too Large.", message, channel);
  21.                 return null;
  22.             }
  23.             if (channel == null) return null;
  24.             if (StringUtils.containsOnly("\n", message)) return null;
  25.             if (StringUtils.isBlank(message)) return null;
  26.             try {
  27.                 return channel.sendMessage(message);
  28.             } catch (MissingPermissionsException e) {
  29.                 missingPermissions(message, channel);
  30.                 return null;
  31.             }
  32.         });
  33.     }
  34.  
  35.     public static RequestBuffer.RequestFuture<IMessage> sendMessage(String message, ChannelObject channel) {
  36.         return sendMessage(message, channel.get());
  37.     }
  38.  
  39.     public static RequestBuffer.RequestFuture<IMessage> sendMessage(String message, CommandObject command) {
  40.         return sendMessage(message, command.channel.get());
  41.     }
  42.  
  43.     public static RequestBuffer.RequestFuture<IMessage> sendEmbedMessage(String message, XEmbedBuilder builder, IChannel channel) {
  44.         return RequestBuffer.request(() -> {
  45.             String checkedMessage = message;
  46.             if (builder == null) throw new IllegalArgumentException("Embed builder must never be null.");
  47.             if (checkedMessage == null) checkedMessage = "";
  48.             EmbedObject embed = builder.build();
  49.             try {
  50.                 return channel.sendMessage(checkedMessage, embed);
  51.             } catch (MissingPermissionsException e) {
  52.                 String debugMessage;
  53.                 if (checkedMessage.isEmpty()) debugMessage = Utility.embedToString(embed);
  54.                 else debugMessage = checkedMessage + "\n" + Utility.embedToString(embed);
  55.                 missingPermissions(debugMessage, channel);
  56.                 return sendMessage(debugMessage, channel).get();
  57.             }
  58.         });
  59.     }
  60.  
  61.     public static RequestBuffer.RequestFuture<IMessage> sendEmbedMessage(String message, XEmbedBuilder builder, ChannelObject channel) {
  62.         return sendEmbedMessage(message, builder, channel.get());
  63.     }
  64.  
  65.     public static RequestBuffer.RequestFuture<IMessage> sendEmbedMessage(String message, XEmbedBuilder builder, CommandObject command) {
  66.         return sendEmbedMessage(message, builder, command.channel.get());
  67.     }
  68.  
  69.     public static RequestBuffer.RequestFuture<IMessage> sendFile(String message, File file, IChannel channel) {
  70.         return RequestBuffer.request(() -> {
  71.             String checkedMessage = message;
  72.             if (file == null) throw new IllegalArgumentException("File must never be null.");
  73.             if (checkedMessage == null) checkedMessage = "";
  74.             try {
  75.                 return channel.sendFile(checkedMessage, file);
  76.             } catch (MissingPermissionsException e) {
  77.                 String debugMessage;
  78.                 if (checkedMessage.isEmpty()) debugMessage = "FILE";
  79.                 else debugMessage = checkedMessage + "\nFILE";
  80.                 sendMessage("> Could not send File, missing permissions.", channel);
  81.                 missingPermissions(debugMessage, channel);
  82.                 return null;
  83.             } catch (FileNotFoundException e) {
  84.                 Utility.sendStack(e);
  85.                 return null;
  86.             }
  87.         });
  88.     }
  89.  
  90.     public static RequestBuffer.RequestFuture<IMessage> sendFile(String message, File file, ChannelObject channel) {
  91.         return sendFile(message, file, channel.get());
  92.     }
  93.  
  94.     public static RequestBuffer.RequestFuture<IMessage> sendFile(String message, File file, CommandObject command) {
  95.         return sendFile(message, file, command.channel.get());
  96.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement