Added EconomyWrapper#registerProviders(boolean force)

Added IdentityEconomyWrapper#registerProviders(boolean force)
Added MultiEconomyWrapper#registerProviders(boolean force)
This commit is contained in:
lbenav8095 2023-03-29 16:30:59 -06:00
parent 13b18ac7a1
commit 6abcb5ea27
4 changed files with 40 additions and 11 deletions

View File

@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>net.milkbowl.vault</groupId>
<artifactId>vaultapi</artifactId>
<version>2.3-SNAPSHOT</version>
<version>2.4-SNAPSHOT</version>
<name>VaultAPI</name>
<description>Vault is a Permissions &amp; Economy API to allow plugins to more easily hook into these systems without needing to hook each individual system themselves.

View File

@ -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);
}
}

View File

@ -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);
}
}

View File

@ -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);
}
}