Use parametrized reflection to remove warnings

This commit is contained in:
durron597 2011-01-01 17:08:32 -05:00
parent 9ecdf8b4ba
commit 61232549e4
2 changed files with 4 additions and 4 deletions

View File

@ -18,7 +18,7 @@ public interface PluginManager {
* @param loader Class name of the PluginLoader to register * @param loader Class name of the PluginLoader to register
* @throws IllegalArgumentException Thrown when the given Class is not a valid PluginLoader * @throws IllegalArgumentException Thrown when the given Class is not a valid PluginLoader
*/ */
public void RegisterInterface(Class loader) throws IllegalArgumentException; public void RegisterInterface(Class<? extends PluginLoader> loader) throws IllegalArgumentException;
/** /**
* Checks if the given plugin is loaded and returns it when applicable * Checks if the given plugin is loaded and returns it when applicable

View File

@ -39,14 +39,14 @@ public final class SimplePluginManager implements PluginManager {
* @param loader Class name of the PluginLoader to register * @param loader Class name of the PluginLoader to register
* @throws IllegalArgumentException Thrown when the given Class is not a valid PluginLoader * @throws IllegalArgumentException Thrown when the given Class is not a valid PluginLoader
*/ */
public void RegisterInterface(Class loader) throws IllegalArgumentException { public void RegisterInterface(Class<? extends PluginLoader> loader) throws IllegalArgumentException {
PluginLoader instance; PluginLoader instance;
if (PluginLoader.class.isAssignableFrom(loader)) { if (PluginLoader.class.isAssignableFrom(loader)) {
Constructor constructor; Constructor<? extends PluginLoader> constructor;
try { try {
constructor = loader.getConstructor(Server.class); constructor = loader.getConstructor(Server.class);
instance = (PluginLoader) constructor.newInstance(server); instance = constructor.newInstance(server);
} catch (NoSuchMethodException ex) { } catch (NoSuchMethodException ex) {
throw new IllegalArgumentException(String.format("Class %s does not have a public %s(Server) constructor", loader.getName()), ex); throw new IllegalArgumentException(String.format("Class %s does not have a public %s(Server) constructor", loader.getName()), ex);
} catch (Exception ex) { } catch (Exception ex) {