Added check and catch for errors during cancelTasks and unregister of services during plugin disable

This commit is contained in:
stevenh 2011-05-22 22:18:05 +01:00
parent 4c7d1459d2
commit a308c24a59

View File

@ -271,9 +271,17 @@ public final class SimplePluginManager implements PluginManager {
server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while disabling " + plugin.getDescription().getFullName() + " (Is it up to date?): " + ex.getMessage(), ex); server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while disabling " + plugin.getDescription().getFullName() + " (Is it up to date?): " + ex.getMessage(), ex);
} }
// Forced disable try {
server.getScheduler().cancelTasks(plugin); server.getScheduler().cancelTasks(plugin);
} catch (Throwable ex) {
server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while cancelling tasks for " + plugin.getDescription().getFullName() + " (Is it up to date?): " + ex.getMessage(), ex);
}
try {
server.getServicesManager().unregisterAll(plugin); server.getServicesManager().unregisterAll(plugin);
} catch (Throwable ex) {
server.getLogger().log(Level.SEVERE, "Error occurred (in the plugin loader) while unregistering services for " + plugin.getDescription().getFullName() + " (Is it up to date?): " + ex.getMessage(), ex);
}
} }
} }