@Override
    public final boolean has(String world, String player, String permission) {
        Objects.requireNonNull(player, "player");
        Objects.requireNonNull(permission, "permission");
        return userHasPermission(convertWorld(world), lookupUuid(player), permission);
    }
An extended abstraction of the Vault {@link Permission} API.

The original Vault API only contained methods to query data by username. Over
time, the maintainers added additional methods to query by (Offline)Player, but
in order to keep backwards compatibility with implementations which only supported
usernames, they implemented the Player query methods and downgraded the requests
to get a result using the players username.

Whilst this meant the old plugins would still be supported, it made the whole
API a total mess. This class reverses this action, and instead upgrades
requests to use UUIDs. This makes implementing Vault significantly easier for modern
plugins, and because requests are upgraded instead of being downgraded then upgraded,
much faster for plugins querying data.
bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/AbstractVaultPermission.java