/** * Adds a permission for the user. * * @param user The user. * @param permission The permission to add. */ public void addPermission(IUser user, String permission) { addPermission(user.getStringID(), permission); }
/** * Tries to get objects (like channel, user, long) from the given strings. * * @param client The client. * @param args The string array. * @return An object array. */ private Object[] getObjectsFromString(IDiscordClient client, String[] args) { Object[] objects = new Object[args.length]; for (int i = 0; i < args.length; i++) { objects[i] = getObjectFromString(client, 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(IUser user, String permission) { return hasPermission(user.getStringID(), permission); }
return; if (!hasPermission(event.getMessage().getAuthor(), commandAnnotation.requiredPermissions())) { if (Sdcf4jMessage.MISSING_PERMISSIONS.getMessage() != null) { try { 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.getMessage().getChannel().getGuild(); } else if (type == Object[].class) { parameters[i] = getObjectsFromString(event.getClient(), args); } else {