LocationOwnershipEntry

public final class LocationOwnershipEntry implements Predicate<Location>

Marker class registered with Bukkit's ServicesManager under Predicate<Location>. Carries the namespace, ownership / kind resolvers, and an optional protection check for one plugin's location-ownership claim.

Cross-plugin dispatch trick: this class is shaded into each consumer plugin separately, so registrations from EliteMobs's copy and FMM's copy have different Class<?> identities. LocationOwnership's lookup identifies "our" entries by simple class name (preserved through shade relocation) and invokes them via reflection on the JDK-stable method signatures getNamespace, test, kindsAt and isProtectedAt.

Constructors

Link copied to clipboard
public void LocationOwnershipEntry(String namespace, Predicate<Location> ownsFn, Function<Location, Set<String>> kindsFn, Predicate<Location> protectionFn)

Properties

Link copied to clipboard
public final String namespace

Functions

Link copied to clipboard
public String getNamespace()
Link copied to clipboard
public boolean isProtectedAt(Location loc)
True if this owner protects the given location (write/grief restrictions apply).
Link copied to clipboard
public Set<String> kindsAt(Location loc)
Link copied to clipboard
public boolean test(Location loc)

Inherited functions

Link copied to clipboard
public Predicate<T> and(Predicate<? super T> other)
Link copied to clipboard
public static Predicate<T> isEqual<T>(Object targetRef)
Link copied to clipboard
public Predicate<T> negate()
Link copied to clipboard
public static Predicate<T> not<T>(Predicate<? super T> target)
Link copied to clipboard
public Predicate<T> or(Predicate<? super T> other)