com.planet_ink.coffee_mud.Libraries
Class BeanCounter

java.lang.Object
  extended by com.planet_ink.coffee_mud.Libraries.StdLibrary
      extended by com.planet_ink.coffee_mud.Libraries.BeanCounter
All Implemented Interfaces:
CMObject, CMLibrary, MoneyLibrary, java.lang.Cloneable, java.lang.Comparable<CMObject>

public class BeanCounter
extends StdLibrary
implements MoneyLibrary


Field Summary
 java.util.Hashtable allCurrencyDenominationNames
           
 java.util.Vector allCurrencyNames
           
 java.util.Hashtable currencies
           
static java.util.Hashtable defaultCurrencies
           
 
Fields inherited from interface com.planet_ink.coffee_mud.Libraries.interfaces.MoneyLibrary
copperStandard, DEBT_AMTDBL, DEBT_DEBTOR, DEBT_DUELONG, DEBT_INTDBL, DEBT_OWEDTO, DEBT_REASON, defaultCurrencyDefinition, goldStandard
 
Constructor Summary
BeanCounter()
           
 
Method Summary
 java.lang.String abbreviatedPrice(MOB shopkeeper, double absoluteAmount)
           
 java.lang.String abbreviatedPrice(java.lang.String currency, double absoluteAmount)
           
 double abbreviatedRePrice(MOB shopkeeper, double absoluteAmount)
           
 double abbreviatedRePrice(java.lang.String currency, double absoluteAmount)
           
 void addMoney(MOB customer, double absoluteValue)
           
 void addMoney(MOB customer, int absoluteValue)
           
 void addMoney(MOB mob, java.lang.String currency, double absoluteValue)
           
 void addMoney(MOB customer, java.lang.String currency, int absoluteValue)
           
 void adjustDebt(java.lang.String name, java.lang.String owedTo, double adjustAmt, java.lang.String reason, double interest, long due)
           
 void bankLedger(java.lang.String bankName, java.lang.String owner, java.lang.String explanation)
           
 void clearInventoryMoney(MOB mob, java.lang.String currency)
           
 void clearZeroMoney(MOB mob, java.lang.String currency)
           
protected  DVector createCurrencySet(java.util.Hashtable currencies, java.lang.String currency)
           
 DVector createCurrencySet(java.lang.String currency)
           
 void delAllDebt(java.lang.String name, java.lang.String owedTo)
           
 java.util.Vector getAllCurrencies()
           
 double getBestDenomination(java.lang.String currency, double absoluteValue)
           
 double getBestDenomination(java.lang.String currency, int numberOfCoins, double absoluteValue)
           
 java.util.Vector getBestDenominations(java.lang.String currency, double absoluteValue)
           
 java.lang.String getConvertableDescription(java.lang.String currency, double denomination)
           
 java.lang.String getCurrency(Environmental E)
           
 DVector getCurrencySet(java.lang.String currency)
           
 DVector getDebt(java.lang.String name)
           
 DVector getDebt(java.lang.String name, java.lang.String owedTo)
           
 DVector getDebtOwed(java.lang.String owedTo)
           
 double getDebtOwed(java.lang.String name, java.lang.String owedTo)
           
 java.lang.String getDenominationName(java.lang.String currency)
           
 java.lang.String getDenominationName(java.lang.String currency, double denomination)
           
 java.lang.String getDenominationName(java.lang.String currency, double denomination, long number)
           
 java.util.Vector getDenominationNameSet(java.lang.String currency)
           
 java.lang.String getDenominationShortCode(java.lang.String currency, double denomination)
           
 double getLowestDenomination(java.lang.String currency)
           
 int getMoney(MOB mob)
           
 long getNumberOfCoins(MOB mob, java.lang.String currency, double denomination)
           
 java.util.Vector getStandardCurrency(MOB mob, java.lang.String currency)
           
 double getTotalAbsoluteNativeValue(MOB mob)
           
 double getTotalAbsoluteShopKeepersValue(MOB mob, MOB shopkeeper)
           
 double getTotalAbsoluteValue(MOB mob, java.lang.String currency)
           
 double getTotalAbsoluteValueAllCurrencies(MOB mob)
           
 void giveSomeoneMoney(MOB recipient, double absoluteValue)
           
 void giveSomeoneMoney(MOB banker, MOB customer, double absoluteValue)
           
 void giveSomeoneMoney(MOB banker, MOB customer, java.lang.String currency, double absoluteValue)
           
 void giveSomeoneMoney(MOB recipient, java.lang.String currency, double absoluteValue)
           
 java.lang.String ID()
          The CoffeeMud Java Class ID shared by all instances of this object.
 double lowestAbbreviatedDenomination(java.lang.String currency)
           
 double lowestAbbreviatedDenomination(java.lang.String currency, double absoluteAmount)
           
 java.util.Vector makeAllCurrency(java.lang.String currency, double absoluteValue)
           
 Coins makeBestCurrency(MOB mob, double absoluteValue)
           
 Coins makeBestCurrency(MOB mob, double absoluteValue, Environmental owner, Item container)
           
 Coins makeBestCurrency(java.lang.String currency, double absoluteValue)
           
 Coins makeBestCurrency(java.lang.String currency, double absoluteValue, Environmental owner, Item container)
           
 Coins makeCurrency(java.lang.String currency, double denomination, long numberOfCoins)
           
 boolean modifyBankGold(java.lang.String bankName, java.lang.String owner, java.lang.String explanation, java.lang.String currency, double absoluteAmount)
           
 boolean modifyLocalBankGold(Area A, java.lang.String owner, java.lang.String explanation, java.lang.String currency, double absoluteAmount)
           
 boolean modifyThisAreaBankGold(Area A, java.util.HashSet triedBanks, java.lang.String owner, java.lang.String explanation, java.lang.String currency, double absoluteAmount)
           
 java.lang.String nameCurrencyLong(MOB mob, double absoluteValue)
           
 java.lang.String nameCurrencyLong(MOB mob, int absoluteValue)
           
 java.lang.String nameCurrencyLong(java.lang.String currency, double absoluteValue)
           
 java.lang.String nameCurrencyShort(MOB mob, double absoluteValue)
           
 java.lang.String nameCurrencyShort(MOB mob, int absoluteValue)
           
 java.lang.String nameCurrencyShort(java.lang.String currency, double absoluteValue)
           
protected  void parseDebt(DVector debt, java.lang.String debtor, java.lang.String xml)
           
 void setMoney(MOB mob, double absoluteAmount)
           
 void setMoney(MOB mob, int amount)
           
 void setMoney(MOB mob, java.lang.String currency, double absoluteAmount)
           
 void subtractMoney(MOB mob, double absoluteAmount)
           
 void subtractMoney(MOB mob, double denomination, double absoluteAmount)
           
 void subtractMoney(MOB mob, java.lang.String currency, double absoluteAmount)
           
 void subtractMoney(MOB mob, java.lang.String currency, double denomination, double absoluteAmount)
           
 void subtractMoneyGiveChange(MOB banker, MOB mob, double absoluteAmount)
           
 void subtractMoneyGiveChange(MOB banker, MOB mob, int absoluteAmount)
           
 void subtractMoneyGiveChange(MOB banker, MOB mob, java.lang.String currency, double absoluteAmount)
           
 void unloadCurrencySet(java.lang.String currency)
           
protected  java.lang.String unparseDebt(DVector debt, java.lang.String name, java.lang.String owedTo)
           
 
Methods inherited from class com.planet_ink.coffee_mud.Libraries.StdLibrary
activate, compareTo, copyOf, getSupportThread, initializeClass, newInstance, shutdown
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.planet_ink.coffee_mud.Libraries.interfaces.CMLibrary
activate, getSupportThread, shutdown
 
Methods inherited from interface com.planet_ink.coffee_mud.core.interfaces.CMObject
copyOf, initializeClass, newInstance
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Field Detail

currencies

public java.util.Hashtable currencies

defaultCurrencies

public static java.util.Hashtable defaultCurrencies

allCurrencyNames

public java.util.Vector allCurrencyNames

allCurrencyDenominationNames

public java.util.Hashtable allCurrencyDenominationNames
Constructor Detail

BeanCounter

public BeanCounter()
Method Detail

ID

public java.lang.String ID()
Description copied from interface: CMObject
The CoffeeMud Java Class ID shared by all instances of this object. Unlike the Java Class name, this method does not include package information. However, it must return a String value unique to its class category in the ClassLoader. Class categories include Libraries, Common, Areas, Abilities, Behaviors, CharClasses, Commands, Exits Locales, MOBS, Races, WebMacros, Basic Items, Armor, Weapons, ClanItems, MiscTech. The name is typically identical to the class name.

Specified by:
ID in interface CMObject
Overrides:
ID in class StdLibrary
Returns:
the name of this class

unloadCurrencySet

public void unloadCurrencySet(java.lang.String currency)
Specified by:
unloadCurrencySet in interface MoneyLibrary

createCurrencySet

public DVector createCurrencySet(java.lang.String currency)
Specified by:
createCurrencySet in interface MoneyLibrary

createCurrencySet

protected DVector createCurrencySet(java.util.Hashtable currencies,
                                    java.lang.String currency)

getCurrencySet

public DVector getCurrencySet(java.lang.String currency)
Specified by:
getCurrencySet in interface MoneyLibrary

getAllCurrencies

public java.util.Vector getAllCurrencies()
Specified by:
getAllCurrencies in interface MoneyLibrary

getDenominationNameSet

public java.util.Vector getDenominationNameSet(java.lang.String currency)
Specified by:
getDenominationNameSet in interface MoneyLibrary

lowestAbbreviatedDenomination

public double lowestAbbreviatedDenomination(java.lang.String currency)
Specified by:
lowestAbbreviatedDenomination in interface MoneyLibrary

lowestAbbreviatedDenomination

public double lowestAbbreviatedDenomination(java.lang.String currency,
                                            double absoluteAmount)
Specified by:
lowestAbbreviatedDenomination in interface MoneyLibrary

abbreviatedRePrice

public double abbreviatedRePrice(MOB shopkeeper,
                                 double absoluteAmount)
Specified by:
abbreviatedRePrice in interface MoneyLibrary

abbreviatedRePrice

public double abbreviatedRePrice(java.lang.String currency,
                                 double absoluteAmount)
Specified by:
abbreviatedRePrice in interface MoneyLibrary

abbreviatedPrice

public java.lang.String abbreviatedPrice(MOB shopkeeper,
                                         double absoluteAmount)
Specified by:
abbreviatedPrice in interface MoneyLibrary

abbreviatedPrice

public java.lang.String abbreviatedPrice(java.lang.String currency,
                                         double absoluteAmount)
Specified by:
abbreviatedPrice in interface MoneyLibrary

getDenominationShortCode

public java.lang.String getDenominationShortCode(java.lang.String currency,
                                                 double denomination)
Specified by:
getDenominationShortCode in interface MoneyLibrary

getLowestDenomination

public double getLowestDenomination(java.lang.String currency)
Specified by:
getLowestDenomination in interface MoneyLibrary

getDenominationName

public java.lang.String getDenominationName(java.lang.String currency)
Specified by:
getDenominationName in interface MoneyLibrary

getDenominationName

public java.lang.String getDenominationName(java.lang.String currency,
                                            double denomination,
                                            long number)
Specified by:
getDenominationName in interface MoneyLibrary

getBestDenomination

public double getBestDenomination(java.lang.String currency,
                                  double absoluteValue)
Specified by:
getBestDenomination in interface MoneyLibrary

getBestDenomination

public double getBestDenomination(java.lang.String currency,
                                  int numberOfCoins,
                                  double absoluteValue)
Specified by:
getBestDenomination in interface MoneyLibrary

getBestDenominations

public java.util.Vector getBestDenominations(java.lang.String currency,
                                             double absoluteValue)
Specified by:
getBestDenominations in interface MoneyLibrary

getConvertableDescription

public java.lang.String getConvertableDescription(java.lang.String currency,
                                                  double denomination)
Specified by:
getConvertableDescription in interface MoneyLibrary

getDenominationName

public java.lang.String getDenominationName(java.lang.String currency,
                                            double denomination)
Specified by:
getDenominationName in interface MoneyLibrary

nameCurrencyShort

public java.lang.String nameCurrencyShort(MOB mob,
                                          double absoluteValue)
Specified by:
nameCurrencyShort in interface MoneyLibrary

nameCurrencyShort

public java.lang.String nameCurrencyShort(MOB mob,
                                          int absoluteValue)
Specified by:
nameCurrencyShort in interface MoneyLibrary

nameCurrencyShort

public java.lang.String nameCurrencyShort(java.lang.String currency,
                                          double absoluteValue)
Specified by:
nameCurrencyShort in interface MoneyLibrary

nameCurrencyLong

public java.lang.String nameCurrencyLong(MOB mob,
                                         double absoluteValue)
Specified by:
nameCurrencyLong in interface MoneyLibrary

nameCurrencyLong

public java.lang.String nameCurrencyLong(MOB mob,
                                         int absoluteValue)
Specified by:
nameCurrencyLong in interface MoneyLibrary

nameCurrencyLong

public java.lang.String nameCurrencyLong(java.lang.String currency,
                                         double absoluteValue)
Specified by:
nameCurrencyLong in interface MoneyLibrary

makeBestCurrency

public Coins makeBestCurrency(MOB mob,
                              double absoluteValue,
                              Environmental owner,
                              Item container)
Specified by:
makeBestCurrency in interface MoneyLibrary

makeBestCurrency

public Coins makeBestCurrency(java.lang.String currency,
                              double absoluteValue,
                              Environmental owner,
                              Item container)
Specified by:
makeBestCurrency in interface MoneyLibrary

parseDebt

protected void parseDebt(DVector debt,
                         java.lang.String debtor,
                         java.lang.String xml)

unparseDebt

protected java.lang.String unparseDebt(DVector debt,
                                       java.lang.String name,
                                       java.lang.String owedTo)

getDebtOwed

public double getDebtOwed(java.lang.String name,
                          java.lang.String owedTo)
Specified by:
getDebtOwed in interface MoneyLibrary

delAllDebt

public void delAllDebt(java.lang.String name,
                       java.lang.String owedTo)
Specified by:
delAllDebt in interface MoneyLibrary

getDebtOwed

public DVector getDebtOwed(java.lang.String owedTo)
Specified by:
getDebtOwed in interface MoneyLibrary

adjustDebt

public void adjustDebt(java.lang.String name,
                       java.lang.String owedTo,
                       double adjustAmt,
                       java.lang.String reason,
                       double interest,
                       long due)
Specified by:
adjustDebt in interface MoneyLibrary

getDebt

public DVector getDebt(java.lang.String name,
                       java.lang.String owedTo)
Specified by:
getDebt in interface MoneyLibrary

getDebt

public DVector getDebt(java.lang.String name)
Specified by:
getDebt in interface MoneyLibrary

makeBestCurrency

public Coins makeBestCurrency(MOB mob,
                              double absoluteValue)
Specified by:
makeBestCurrency in interface MoneyLibrary

makeCurrency

public Coins makeCurrency(java.lang.String currency,
                          double denomination,
                          long numberOfCoins)
Specified by:
makeCurrency in interface MoneyLibrary

makeBestCurrency

public Coins makeBestCurrency(java.lang.String currency,
                              double absoluteValue)
Specified by:
makeBestCurrency in interface MoneyLibrary

makeAllCurrency

public java.util.Vector makeAllCurrency(java.lang.String currency,
                                        double absoluteValue)
Specified by:
makeAllCurrency in interface MoneyLibrary

addMoney

public void addMoney(MOB customer,
                     int absoluteValue)
Specified by:
addMoney in interface MoneyLibrary

addMoney

public void addMoney(MOB customer,
                     double absoluteValue)
Specified by:
addMoney in interface MoneyLibrary

addMoney

public void addMoney(MOB customer,
                     java.lang.String currency,
                     int absoluteValue)
Specified by:
addMoney in interface MoneyLibrary

addMoney

public void addMoney(MOB mob,
                     java.lang.String currency,
                     double absoluteValue)
Specified by:
addMoney in interface MoneyLibrary

giveSomeoneMoney

public void giveSomeoneMoney(MOB recipient,
                             double absoluteValue)
Specified by:
giveSomeoneMoney in interface MoneyLibrary

giveSomeoneMoney

public void giveSomeoneMoney(MOB recipient,
                             java.lang.String currency,
                             double absoluteValue)
Specified by:
giveSomeoneMoney in interface MoneyLibrary

giveSomeoneMoney

public void giveSomeoneMoney(MOB banker,
                             MOB customer,
                             double absoluteValue)
Specified by:
giveSomeoneMoney in interface MoneyLibrary

giveSomeoneMoney

public void giveSomeoneMoney(MOB banker,
                             MOB customer,
                             java.lang.String currency,
                             double absoluteValue)
Specified by:
giveSomeoneMoney in interface MoneyLibrary

bankLedger

public void bankLedger(java.lang.String bankName,
                       java.lang.String owner,
                       java.lang.String explanation)
Specified by:
bankLedger in interface MoneyLibrary

modifyBankGold

public boolean modifyBankGold(java.lang.String bankName,
                              java.lang.String owner,
                              java.lang.String explanation,
                              java.lang.String currency,
                              double absoluteAmount)
Specified by:
modifyBankGold in interface MoneyLibrary

modifyThisAreaBankGold

public boolean modifyThisAreaBankGold(Area A,
                                      java.util.HashSet triedBanks,
                                      java.lang.String owner,
                                      java.lang.String explanation,
                                      java.lang.String currency,
                                      double absoluteAmount)
Specified by:
modifyThisAreaBankGold in interface MoneyLibrary

modifyLocalBankGold

public boolean modifyLocalBankGold(Area A,
                                   java.lang.String owner,
                                   java.lang.String explanation,
                                   java.lang.String currency,
                                   double absoluteAmount)
Specified by:
modifyLocalBankGold in interface MoneyLibrary

subtractMoneyGiveChange

public void subtractMoneyGiveChange(MOB banker,
                                    MOB mob,
                                    int absoluteAmount)
Specified by:
subtractMoneyGiveChange in interface MoneyLibrary

subtractMoneyGiveChange

public void subtractMoneyGiveChange(MOB banker,
                                    MOB mob,
                                    double absoluteAmount)
Specified by:
subtractMoneyGiveChange in interface MoneyLibrary

subtractMoneyGiveChange

public void subtractMoneyGiveChange(MOB banker,
                                    MOB mob,
                                    java.lang.String currency,
                                    double absoluteAmount)
Specified by:
subtractMoneyGiveChange in interface MoneyLibrary

setMoney

public void setMoney(MOB mob,
                     double absoluteAmount)
Specified by:
setMoney in interface MoneyLibrary

setMoney

public void setMoney(MOB mob,
                     java.lang.String currency,
                     double absoluteAmount)
Specified by:
setMoney in interface MoneyLibrary

subtractMoney

public void subtractMoney(MOB mob,
                          double absoluteAmount)
Specified by:
subtractMoney in interface MoneyLibrary

subtractMoney

public void subtractMoney(MOB mob,
                          java.lang.String currency,
                          double absoluteAmount)
Specified by:
subtractMoney in interface MoneyLibrary

getMoney

public int getMoney(MOB mob)
Specified by:
getMoney in interface MoneyLibrary

setMoney

public void setMoney(MOB mob,
                     int amount)
Specified by:
setMoney in interface MoneyLibrary

clearZeroMoney

public void clearZeroMoney(MOB mob,
                           java.lang.String currency)
Specified by:
clearZeroMoney in interface MoneyLibrary

clearInventoryMoney

public void clearInventoryMoney(MOB mob,
                                java.lang.String currency)
Specified by:
clearInventoryMoney in interface MoneyLibrary

subtractMoney

public void subtractMoney(MOB mob,
                          double denomination,
                          double absoluteAmount)
Specified by:
subtractMoney in interface MoneyLibrary

subtractMoney

public void subtractMoney(MOB mob,
                          java.lang.String currency,
                          double denomination,
                          double absoluteAmount)
Specified by:
subtractMoney in interface MoneyLibrary

getStandardCurrency

public java.util.Vector getStandardCurrency(MOB mob,
                                            java.lang.String currency)
Specified by:
getStandardCurrency in interface MoneyLibrary

getNumberOfCoins

public long getNumberOfCoins(MOB mob,
                             java.lang.String currency,
                             double denomination)
Specified by:
getNumberOfCoins in interface MoneyLibrary

getCurrency

public java.lang.String getCurrency(Environmental E)
Specified by:
getCurrency in interface MoneyLibrary

getTotalAbsoluteValue

public double getTotalAbsoluteValue(MOB mob,
                                    java.lang.String currency)
Specified by:
getTotalAbsoluteValue in interface MoneyLibrary

getTotalAbsoluteNativeValue

public double getTotalAbsoluteNativeValue(MOB mob)
Specified by:
getTotalAbsoluteNativeValue in interface MoneyLibrary

getTotalAbsoluteShopKeepersValue

public double getTotalAbsoluteShopKeepersValue(MOB mob,
                                               MOB shopkeeper)
Specified by:
getTotalAbsoluteShopKeepersValue in interface MoneyLibrary

getTotalAbsoluteValueAllCurrencies

public double getTotalAbsoluteValueAllCurrencies(MOB mob)
Specified by:
getTotalAbsoluteValueAllCurrencies in interface MoneyLibrary