package org.bukkit.plugin; /** * A registered service provider. * * @param Service */ public class RegisteredServiceProvider implements Comparable> { private Class service; private Plugin plugin; private T provider; private ServicePriority priority; public RegisteredServiceProvider(Class service, T provider, ServicePriority priority, Plugin plugin) { this.service = service; this.plugin = plugin; this.provider = provider; this.priority = priority; } public Class getService() { return service; } public Plugin getPlugin() { return plugin; } public T getProvider() { return provider; } public ServicePriority getPriority() { return priority; } public int compareTo(RegisteredServiceProvider other) { if (priority.ordinal() == other.getPriority().ordinal()) { return 0; } else { return priority.ordinal() < other.getPriority().ordinal() ? 1 : -1; } } }