Bukkit/src/main/java/org/bukkit/plugin/RegisteredServiceProvider.java
2011-10-10 21:58:44 +01:00

48 lines
1.1 KiB
Java

package org.bukkit.plugin;
/**
* A registered service provider.
*
* @param <T> Service
*/
public class RegisteredServiceProvider<T> implements Comparable<RegisteredServiceProvider<?>> {
private Class<T> service;
private Plugin plugin;
private T provider;
private ServicePriority priority;
public RegisteredServiceProvider(Class<T> service, T provider,
ServicePriority priority, Plugin plugin) {
this.service = service;
this.plugin = plugin;
this.provider = provider;
this.priority = priority;
}
public Class<T> 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;
}
}
}