From 6abcb5ea2786b7b3b7e081352b9add296f9dcc66 Mon Sep 17 00:00:00 2001 From: lbenav8095 Date: Wed, 29 Mar 2023 16:30:59 -0600 Subject: [PATCH] Added EconomyWrapper#registerProviders(boolean force) Added IdentityEconomyWrapper#registerProviders(boolean force) Added MultiEconomyWrapper#registerProviders(boolean force) --- pom.xml | 2 +- .../vault/economy/wrappers/EconomyWrapper.java | 16 +++++++++++++--- .../wrappers/IdentityEconomyWrapper.java | 16 +++++++++++++--- .../economy/wrappers/MultiEconomyWrapper.java | 17 +++++++++++++---- 4 files changed, 40 insertions(+), 11 deletions(-) diff --git a/pom.xml b/pom.xml index fb15114..ce04f51 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 net.milkbowl.vault vaultapi - 2.3-SNAPSHOT + 2.4-SNAPSHOT VaultAPI Vault is a Permissions & Economy API to allow plugins to more easily hook into these systems without needing to hook each individual system themselves. diff --git a/src/main/java/net/milkbowl/vault/economy/wrappers/EconomyWrapper.java b/src/main/java/net/milkbowl/vault/economy/wrappers/EconomyWrapper.java index f7c2a75..c92bb0a 100644 --- a/src/main/java/net/milkbowl/vault/economy/wrappers/EconomyWrapper.java +++ b/src/main/java/net/milkbowl/vault/economy/wrappers/EconomyWrapper.java @@ -25,13 +25,14 @@ public class EconomyWrapper { /** * Will register IdentityEconomy and legacy Economy to Vault + * @param force if true, will override existing Economy and IdentityEconomy providers * @return true if registered successfully, false if already registered */ - public boolean registerProviders(){ + public boolean registerProviders(boolean force){ ServicesManager manager = Bukkit.getServicesManager(); - if (manager.isProvidedFor(IdentityEconomy.class)) + if (!force && manager.isProvidedFor(IdentityEconomy.class)) return false; - if (manager.isProvidedFor(Economy.class)) + if (!force && manager.isProvidedFor(Economy.class)) return false; LegacyEconomy legacy = legacy(); manager.register(IdentityEconomy.class, legacy, @@ -40,4 +41,13 @@ public class EconomyWrapper { Bukkit.getPluginManager().getPlugin("Vault"), ServicePriority.Normal); return true; } + + /** + * Will register IdentityEconomy and legacy Economy to Vault + * If any provider is already registered, it won't proceed + * @return true if registered successfully, false if already registered + */ + public boolean registerProviders(){ + return registerProviders(false); + } } diff --git a/src/main/java/net/milkbowl/vault/economy/wrappers/IdentityEconomyWrapper.java b/src/main/java/net/milkbowl/vault/economy/wrappers/IdentityEconomyWrapper.java index f73a452..7923037 100644 --- a/src/main/java/net/milkbowl/vault/economy/wrappers/IdentityEconomyWrapper.java +++ b/src/main/java/net/milkbowl/vault/economy/wrappers/IdentityEconomyWrapper.java @@ -15,13 +15,14 @@ public class IdentityEconomyWrapper { /** * Will register IdentityEconomy and legacy Economy to Vault + * @param force if true, will override existing Economy and IdentityEconomy providers * @return true if registered successfully, false if already registered */ - public boolean registerProviders(){ + public boolean registerProviders(boolean force){ ServicesManager manager = Bukkit.getServicesManager(); - if (manager.isProvidedFor(IdentityEconomy.class)) + if (!force && manager.isProvidedFor(IdentityEconomy.class)) return false; - if (manager.isProvidedFor(Economy.class)) + if (!force && manager.isProvidedFor(Economy.class)) return false; manager.register(IdentityEconomy.class, economy, Bukkit.getPluginManager().getPlugin("Vault"), ServicePriority.Normal); @@ -29,4 +30,13 @@ public class IdentityEconomyWrapper { Bukkit.getPluginManager().getPlugin("Vault"), ServicePriority.Normal); return true; } + + /** + * Will register IdentityEconomy and legacy Economy to Vault + * If any provider is already registered, it won't proceed + * @return true if registered successfully, false if already registered + */ + public boolean registerProviders(){ + return registerProviders(false); + } } diff --git a/src/main/java/net/milkbowl/vault/economy/wrappers/MultiEconomyWrapper.java b/src/main/java/net/milkbowl/vault/economy/wrappers/MultiEconomyWrapper.java index 32aaac9..17d0a19 100644 --- a/src/main/java/net/milkbowl/vault/economy/wrappers/MultiEconomyWrapper.java +++ b/src/main/java/net/milkbowl/vault/economy/wrappers/MultiEconomyWrapper.java @@ -16,15 +16,16 @@ public class MultiEconomyWrapper { /** * Will register MultiEconomy, IdentityEconomy and legacy Economy to Vault + * @param force if true, will override existing Economy, IdentityEconomy and MultiEconomy providers * @return true if registered successfully, false if already registered */ - public boolean registerProviders(){ + public boolean registerProviders(boolean force){ ServicesManager manager = Bukkit.getServicesManager(); - if (manager.isProvidedFor(MultiEconomy.class)) + if (!force && manager.isProvidedFor(MultiEconomy.class)) return false; - if (manager.isProvidedFor(IdentityEconomy.class)) + if (!force && manager.isProvidedFor(IdentityEconomy.class)) return false; - if (manager.isProvidedFor(Economy.class)) + if (!force && manager.isProvidedFor(Economy.class)) return false; manager.register(MultiEconomy.class, economy, Bukkit.getPluginManager().getPlugin("Vault"), ServicePriority.Normal); @@ -34,4 +35,12 @@ public class MultiEconomyWrapper { Bukkit.getPluginManager().getPlugin("Vault"), ServicePriority.Normal); return true; } + /** + * Will register MultiEconomy, IdentityEconomy and legacy Economy to Vault + * If any provider is already registered, it won't proceed + * @return true if registered successfully, false if already registered + */ + public boolean registerProviders(){ + return registerProviders(false); + } }