@Override
    public boolean hasPermission(CommandPermission permission) {
        boolean readOnlyMode = isConsole()
                ? this.plugin.getConfiguration().get(ConfigKeys.READ_ONLY_MODE_CONSOLE)
                : this.plugin.getConfiguration().get(ConfigKeys.READ_ONLY_MODE_PLAYERS);

        if (readOnlyMode && !permission.isReadOnly()) {
            return false;
        }

        return hasPermission(permission.getPermission());
    }
Simple implementation of {@link Sender} using a {@link SenderFactory}

@param <T> the command sender type
common/src/main/java/me/lucko/luckperms/common/sender/AbstractSender.java