Refactoring

This commit is contained in:
Auxilor
2022-04-25 10:09:09 +01:00
parent fe6b7805c7
commit 94534b2f61
7 changed files with 54 additions and 43 deletions

View File

@@ -1,5 +1,8 @@
package com.willfp.eco.core.integrations.shop;
import com.willfp.eco.core.EcoPlugin;
import org.bukkit.event.Listener;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import java.util.HashSet;
@@ -23,6 +26,22 @@ public final class ShopManager {
REGISTERED.add(integration);
}
/**
* Register the events with eco.
*
* @param plugin Instance of eco.
*/
@ApiStatus.Internal
public static void registerEvents(@NotNull final EcoPlugin plugin) {
for (ShopWrapper wrapper : REGISTERED) {
Listener listener = wrapper.getSellEventAdapter();
if (listener != null) {
plugin.getEventManager().registerListener(listener);
}
}
}
/**
* Register eco item provider for shop plugins.
*/

View File

@@ -1,6 +1,8 @@
package com.willfp.eco.core.integrations.shop;
import com.willfp.eco.core.integrations.Integration;
import org.bukkit.event.Listener;
import org.jetbrains.annotations.Nullable;
/**
* Wrapper class for shop integrations.
@@ -9,5 +11,16 @@ public interface ShopWrapper extends Integration {
/**
* Register eco item provider for shop plugins.
*/
void registerEcoProvider();
default void registerEcoProvider() {
// Do nothing unless overridden.
}
/**
* Register sell event adapters.
*/
@Nullable
default Listener getSellEventAdapter() {
// Do nothing unless overridden.
return null;
}
}