Add another Abstract Economy that doesn't support banks

This commit is contained in:
Yushu 2020-10-12 18:23:46 -05:00 committed by GitHub
parent ea40092989
commit 0c5df4ec55
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 74 additions and 0 deletions

View File

@ -0,0 +1,74 @@
package net.milkbowl.vault.economy;
import java.util.List;
import java.util.Collections;
/**
* Abstract class that removes the responsibility of implement
* Bank methods for child classes that doesn't support banks
*/
public abstract class NoBankSupportEconomy extends AbstractEconomy {
// EconomyResponse class is immutable, it doesn't require the creation
// of more objects to return the same response
private final EconomyResponse response;
public NoBankSupportEconomy(String unsupportedMessage) {
this.response = new EconomyResponse(0, 0, EconomyResponse.ResponseType.NOT_IMPLEMENTED, unsupportedMessage);
}
public NoBankSupportEconomy() {
this("This economy manager doesn't support banks!");
}
@Override
public boolean hasBankSupport() {
return false;
}
@Override
public EconomyResponse createBank(String name, String playerName) {
return response;
}
@Override
public EconomyResponse deleteBank(String name) {
return response;
}
@Override
public EconomyResponse bankBalance(String name) {
return response;
}
@Override
public EconomyResponse bankHas(String name, double amount) {
return response;
}
@Override
public EconomyResponse bankWithdraw(String name, double amount) {
return response;
}
@Override
public EconomyResponse bankDeposit(String name, double amount) {
return response;
}
@Override
public EconomyResponse isBankOwner(String name, String playerName) {
return response;
}
@Override
public EconomyResponse isBankMember(String name, String playerName) {
return response;
}
@Override
public List<String> getBanks() {
return Collections.emptyList();
}
}