/** * Adds a permission for the user. * * @param user The user. * @param permission The permission to add. */ public void addPermission(User user, String permission) { addPermission(user.getId(), permission); }
/** * Tries to get objects (like channel, user, long) from the given strings. * * @param jda The jda object. * @param args The string array. * @return An object array. */ private Object[] getObjectsFromString(JDA jda, String[] args) { Object[] objects = new Object[args.length]; for (int i = 0; i < args.length; i++) { objects[i] = getObjectFromString(jda, args[i]); } return objects; }
/** * Checks if the user has the required permission. * * @param user The user. * @param permission The permission to check. * @return If the user has the given permission. */ public boolean hasPermission(User user, String permission) { return hasPermission(user.getId(), permission); }
return; if (!hasPermission(event.getAuthor(), commandAnnotation.requiredPermissions())) { if (Sdcf4jMessage.MISSING_PERMISSIONS.getMessage() != null) { event.getChannel().sendMessage(Sdcf4jMessage.MISSING_PERMISSIONS.getMessage()).queue(); final Object[] parameters = getParameters(splitMessage, command, event); if (commandAnnotation.async()) { final SimpleCommand commandFinal = command; Thread t = new Thread(() -> invokeMethod(commandFinal, event, parameters)); t.setDaemon(true); t.start(); } else { invokeMethod(command, event, parameters);
parameters[i] = event.getResponseNumber(); } else if (type == Object[].class) { parameters[i] = getObjectsFromString(event.getJDA(), args); } else {