public PEXSubjectCollection(final String identifier, final PermissionsExPlugin plugin) throws ExecutionException, PermissionsLoadingException { this.identifier = identifier; this.plugin = plugin; this.cache = plugin.getManager().getSubjects(identifier); this.transientCache = plugin.getManager().getTransientSubjects(identifier); }
public void uncache(String identifier) { subjectCache.invalidate(identifier); PermissionsEx manager = plugin.getManager(); if (manager != null) { manager.uncache(getIdentifier(), identifier); } }
public Optional<CommandSource> getCommandSource(String identifier) { final Function<String, Optional<CommandSource>> provider = plugin.getCommandSourceProvider(getIdentifier()); if (provider != null) { return provider.apply(identifier); } else { return Optional.empty(); } }
public CalculatedSubject getCalculatedSubject(String identifier) throws PermissionsLoadingException { return plugin.getManager().getCalculatedSubject(this.identifier, identifier); }