Merge pull request #2532 from open-osrs/allow-plugin-abstraction
pluginmanager: allow Plugins to be instantized if they're a plugin regardless of superclass.
This commit is contained in:
@@ -643,13 +643,13 @@ public class ExternalPluginManager
|
|||||||
{
|
{
|
||||||
if (pluginDescriptor == null)
|
if (pluginDescriptor == null)
|
||||||
{
|
{
|
||||||
if (clazz.getSuperclass() == Plugin.class)
|
if (Plugin.class.isAssignableFrom(clazz))
|
||||||
{
|
{
|
||||||
log.warn("Class {} is a plugin, but has no plugin descriptor", clazz);
|
log.warn("Class {} is a plugin, but has no plugin descriptor", clazz);
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
else if (clazz.getSuperclass() != Plugin.class)
|
else if (!Plugin.class.isAssignableFrom(clazz))
|
||||||
{
|
{
|
||||||
log.warn("Class {} has plugin descriptor, but is not a plugin", clazz);
|
log.warn("Class {} has plugin descriptor, but is not a plugin", clazz);
|
||||||
continue;
|
continue;
|
||||||
@@ -1084,7 +1084,7 @@ public class ExternalPluginManager
|
|||||||
String lastVersion = lastRelease.version;
|
String lastVersion = lastRelease.version;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
RuneLiteSplashScreen.stage(.59, "Updating " + plugin.id + " to version " + lastVersion);
|
RuneLiteSplashScreen.stage(.59, "Updating " + plugin.id + " to version " + lastVersion);
|
||||||
boolean updated = updateManager.updatePlugin(plugin.id, lastVersion);
|
boolean updated = updateManager.updatePlugin(plugin.id, lastVersion);
|
||||||
|
|
||||||
|
|||||||
@@ -356,18 +356,16 @@ public class PluginManager
|
|||||||
|
|
||||||
if (pluginDescriptor == null)
|
if (pluginDescriptor == null)
|
||||||
{
|
{
|
||||||
if (clazz.getSuperclass() == Plugin.class)
|
if (Plugin.class.isAssignableFrom(clazz) && clazz != Plugin.class)
|
||||||
{
|
{
|
||||||
log.warn("Class {} is a plugin, but has no plugin descriptor",
|
log.warn("Class {} is a plugin, but has no plugin descriptor", clazz);
|
||||||
clazz);
|
|
||||||
}
|
}
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (clazz.getSuperclass() != Plugin.class)
|
if (!Plugin.class.isAssignableFrom(clazz))
|
||||||
{
|
{
|
||||||
log.warn("Class {} has plugin descriptor, but is not a plugin",
|
log.warn("Class {} has plugin descriptor, but is not a plugin", clazz);
|
||||||
clazz);
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user