[Merge] Version 4.9.1 (#1122)

PR for 4.9.1
This commit is contained in:
Risto Lahtela 2019-08-02 16:14:56 +03:00 committed by GitHub
commit a959131c2d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 56 additions and 41 deletions

View File

@ -73,7 +73,7 @@ public final class ExtensionExtractor {
}
private Method[] getMethods() {
return extension.getClass().getDeclaredMethods();
return extension.getClass().getMethods();
}
public void extractAnnotationInformation() {
@ -92,7 +92,9 @@ public final class ExtensionExtractor {
methodAnnotations = new MethodAnnotations();
for (Method method : getMethods()) {
if (!Modifier.isPublic(method.getModifiers())) {
int modifiers = method.getModifiers();
if (!Modifier.isPublic(modifiers)
|| Modifier.isStatic(modifiers)) {
continue;
}

View File

@ -12,7 +12,7 @@ allprojects {
wrapper.gradleVersion = "5.0"
group "com.djrapitops"
version "4.9.0"
version "4.9.1"
test {
useJUnitPlatform()

View File

@ -82,9 +82,14 @@ public class ExtensionServiceImplementation implements ExtensionService {
}
public void register() {
extensionRegister.registerBuiltInExtensions();
if (Check.isBukkitAvailable()) extensionRegister.registerBukkitExtensions();
if (Check.isBungeeAvailable()) extensionRegister.registerBungeeExtensions();
try {
extensionRegister.registerBuiltInExtensions();
if (Check.isBukkitAvailable()) extensionRegister.registerBukkitExtensions();
if (Check.isBungeeAvailable()) extensionRegister.registerBungeeExtensions();
} catch (IllegalStateException failedToRegisterOne) {
logger.warn("One or more extensions failed to register:");
errorHandler.log(L.WARN, this.getClass(), failedToRegisterOne);
}
}
@Override
@ -104,7 +109,7 @@ public class ExtensionServiceImplementation implements ExtensionService {
processing.submitNonCritical(() -> updateServerValues(gatherer, CallEvents.SERVER_EXTENSION_REGISTER));
logger.getDebugLogger().logOn(DebugChannels.DATA_EXTENSIONS, pluginName + " extension registered.");
logger.info("Registered extension: " + pluginName);
return Optional.of(new CallerImplementation(gatherer, this, processing));
}

View File

@ -1,7 +1,7 @@
name: Plan
author: Rsl1122
main: com.djrapitops.plan.PlanBungee
version: 4.9.0
version: 4.9.1
softdepend:
- AdvancedBan
- LiteBans

View File

@ -1,7 +1,7 @@
name: Plan
author: Rsl1122
main: com.djrapitops.plan.Plan
version: 4.9.0
version: 4.9.1
softdepend:
- ASkyBlock
- AdvancedAchievements

View File

@ -22,7 +22,8 @@ import com.djrapitops.plan.extension.ExtensionService;
import javax.inject.Inject;
import javax.inject.Singleton;
import java.util.function.Consumer;
import java.util.Optional;
import java.util.function.Supplier;
/**
* In charge of registering built in {@link com.djrapitops.plan.extension.DataExtension} implementations.
@ -32,6 +33,8 @@ import java.util.function.Consumer;
@Singleton
public class ExtensionRegister {
private IllegalStateException registerException;
@Inject
public ExtensionRegister() {
/* Required for dagger injection */
@ -42,43 +45,36 @@ public class ExtensionRegister {
// registerBuiltInExtensions method will not be called unless Plan has enabled properly
ExtensionService extensionService = ExtensionService.getInstance();
Consumer<DataExtension> register = extensionService::register;
new AACExtensionFactory().createExtension().ifPresent(register);
new AdvancedAchievementsExtensionFactory().createExtension().ifPresent(register);
new AdvancedBanExtensionFactory().createExtension().ifPresent(register);
new ASkyBlockExtensionFactory().createExtension().ifPresent(register);
new BanManagerExtensionFactory().createExtension().ifPresent(register);
new CoreProtectExtensionFactory().createExtension().ifPresent(register);
new DiscordSRVExtensionFactory().createExtension().ifPresent(register);
register(new AACExtensionFactory()::createExtension);
register(new AdvancedAchievementsExtensionFactory()::createExtension);
register(new AdvancedBanExtensionFactory()::createExtension);
register(new ASkyBlockExtensionFactory()::createExtension);
register(new BanManagerExtensionFactory()::createExtension);
register(new CoreProtectExtensionFactory()::createExtension);
register(new DiscordSRVExtensionFactory()::createExtension);
registerEssentialsExtension(extensionService);
new GriefPreventionExtensionFactory().createExtension().ifPresent(register);
new GriefPreventionSpongeExtensionFactory().createExtension().ifPresent(register);
new GriefPreventionPlusExtensionFactory().createExtension().ifPresent(register);
new McMMOExtensionFactory().createExtension().ifPresent(register);
register(new GriefPreventionExtensionFactory()::createExtension);
register(new GriefPreventionSpongeExtensionFactory()::createExtension);
register(new GriefPreventionPlusExtensionFactory()::createExtension);
register(new McMMOExtensionFactory()::createExtension);
registerMinigameLibExtensions(extensionService);
new NucleusExtensionFactory().createExtension().ifPresent(register);
new NuVotifierExtensionFactory().createExtension().ifPresent(register);
new ProtocolSupportExtensionFactory().createExtension().ifPresent(register);
new RedProtectExtensionFactory().createExtension().ifPresent(register);
new SpongeEconomyExtensionFactory().createExtension().ifPresent(register);
new SuperbVoteExtensionFactory().createExtension().ifPresent(register);
new VaultExtensionFactory().createExtension().ifPresent(register);
register(new NucleusExtensionFactory()::createExtension);
register(new NuVotifierExtensionFactory()::createExtension);
register(new ProtocolSupportExtensionFactory()::createExtension);
register(new RedProtectExtensionFactory()::createExtension);
register(new SpongeEconomyExtensionFactory()::createExtension);
register(new SuperbVoteExtensionFactory()::createExtension);
register(new VaultExtensionFactory()::createExtension);
if (registerException != null) throw registerException;
}
public void registerBukkitExtensions() {
// No need to catch exceptions here,
// registerBuiltInExtensions method will not be called unless Plan has enabled properly
ExtensionService extensionService = ExtensionService.getInstance();
new ViaVersionBukkitExtensionFactory().createExtension().ifPresent(extensionService::register);
register(new ViaVersionBukkitExtensionFactory()::createExtension);
}
public void registerBungeeExtensions() {
// No need to catch exceptions here,
// registerBuiltInExtensions method will not be called unless Plan has enabled properly
ExtensionService extensionService = ExtensionService.getInstance();
new ViaVersionBungeeExtensionFactory().createExtension().ifPresent(extensionService::register);
register(new ViaVersionBungeeExtensionFactory()::createExtension);
}
private void registerEssentialsExtension(ExtensionService extensionService) {
@ -94,4 +90,16 @@ public class ExtensionRegister {
}
}
private void register(Supplier<Optional<DataExtension>> extension) {
ExtensionService extensionService = ExtensionService.getInstance();
try {
extension.get().ifPresent(extensionService::register);
} catch (IllegalStateException e) {
if (registerException == null) {
registerException = e;
} else {
registerException.addSuppressed(e);
}
}
}
}

View File

@ -42,7 +42,7 @@ import java.io.InputStream;
@Plugin(
id = "plan",
name = "Plan",
version = "4.9.0",
version = "4.9.1",
description = "Player Analytics Plugin by Rsl1122",
authors = {"Rsl1122"},
dependencies = {

View File

@ -46,7 +46,7 @@ import java.nio.file.Path;
@Plugin(
id = "plan",
name = "Plan",
version = "4.9.0",
version = "4.9.1",
description = "Player Analytics Plugin by Rsl1122",
authors = {"Rsl1122"}
)