com.ibm.commerce.price.utils
Class UnitManager

java.lang.Object
  |
  +--com.ibm.commerce.price.utils.UnitManager
All Implemented Interfaces:
Registry
Direct Known Subclasses:
CurrencyManager, QuantityManager

public abstract class UnitManager
extends java.lang.Object
implements Registry

Abstract base class for manager classes.


Field Summary
static int ROUND_METHOD_ROUND
           
static int ROUND_METHOD_TRUNCATION
           
 
Fields inherited from interface com.ibm.commerce.registry. Registry
COPYRIGHT
 
Constructor Summary
protected UnitManager(Converters aConverters, Formatters aFormatters, FormattedUnitAmount aFormattedUnitAmount, FormatDesc aFormatDesc)
          UnitManager constructor.
 
Method Summary
protected  boolean checkStoreGroupConverter()
          Do we check that there is a store group level converter? IBM Internal Use Only.
protected  UnitAmount convert(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.String toUnit)
          Convert a unit amount to a new unit.
protected abstract  java.lang.String getClassName()
          Get the class name.
protected abstract  java.lang.String getConverionRelationshipType()
          Gets the conversion relationship type.
protected  java.lang.Integer[] getConversionStorePath( StoreAccessBean theStoreAB)
          Gets the conversion store path.
protected  Converter getConverter( StoreAccessBean aStoreAccessBean, java.lang.String aFromUnit, java.lang.String aToUnit)
          Get the appropriate converter in the specified store.
protected  Converters getConverters()
          Get the converters container.
protected  java.math.BigDecimal getCustomizedRoundingMultipleBD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aNumbrUsgId)
          Get the customized rounding multiple as a BigDecimal.
protected  java.math.BigDecimal getCustomizedRoundingMultipleBD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.String aNumberUsage)
          Get the customized rounding multiple as a BigDecimal.
protected  java.lang.Double getCustomizedRoundingMultipleD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aNumbrUsgId)
          Get the customized rounding multiple as a Double.
protected  java.lang.Double getCustomizedRoundingMultipleD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.String aNumberUsage)
          Get the customized rounding multiple as a Double.
 int getCustomizedRoundMethod( StoreAccessBean aStoreAccessBean, java.lang.String aUnit)
          Get the rounding method used for a particular unit.
 int getCustomizedRoundMethod( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.String aNumberUsage)
          Get the rounding method used for a particular unit.
protected  java.lang.String getCustomizedString( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.Integer aNumbrUsgId)
          Get the customized string from the format table.
 java.lang.String getCustomizedString( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.String aNumberUsage)
          Get the customized string from the format table.
protected  java.lang.String getDescription( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.Integer aNumbrUsgId)
          Get the description of the specified units.
 java.lang.String getDescription( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.String aNumberUsage)
          Get the description of the specified units.
protected  FormatDesc getFormatDescription( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.Integer aNumbrUsgId)
          Get a format description record.
protected abstract  java.lang.String getFormatRelationshipType()
          Gets the format relationship type.
protected  FormattedUnitAmount getFormattedUnitAmount(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.Integer aLanguageId, java.lang.Integer aNumbrUsgId)
          Get a formatted unit amount for display purposes based on the formatting rules defined in the database.
protected  FormattedUnitAmount getFormattedUnitAmount(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.Integer aLanguageId, java.lang.String aNumberUsage)
          Get a formatted unit amount for display purposes based on the formatting rules defined in the database.
protected  Formatter getFormatter( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aNumbrUsgId)
          Get the formatter with the specified number usage identifer for the store.
protected  Converter getParticularConverter(java.lang.Integer aStoreEntityId, java.lang.String fromUnit, java.lang.String toUnit)
          IBM Internal Use Only.
protected  java.math.BigDecimal getRoundingMultipleBD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aNumbrUsgId)
          Get the rounding multiple as a BigDecimal.
protected  java.math.BigDecimal getRoundingMultipleBD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.String aNumberUsage)
          Get the rounding multiple as a BigDecimal.
protected  java.lang.Double getRoundingMultipleD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aNumbrUsgId)
          Get the rounding multiple as a Double.
protected  java.lang.Double getRoundingMultipleD( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.String aNumberUsage)
          Get the rounding multiple as a Double.
protected  StoreAccessBean getStoreAB(java.lang.Integer aStoreId)
          Gets the store access bean associated with the specified store ID.
protected abstract  java.lang.Integer getStoreIdForConverter( StoreAccessBean aStoreAccessBean)
          Get the storeId to use to search for a converter.
protected  java.lang.Integer[] getStorePath(java.lang.String theRelationShipType, StoreAccessBean theStoreAB)
          Gets the store path for the specified store and relationship type.
protected  java.lang.String getSymbol( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.Integer aNumbrUsgId)
          Get the symbol information from the format table.
 java.lang.String getSymbol( StoreAccessBean aStoreAccessBean, java.lang.String aUnit, java.lang.Integer aLanguageId, java.lang.String aNumberUsage)
          Get the symbol information from the format table.
protected  java.lang.Number parsePositiveUnitAmount(java.lang.String anAmount, java.lang.String theUnit, StoreAccessBean aStoreAccessBean, java.lang.Integer aLanguageId, java.lang.Integer aNumbrUsgId)
          Parses a string (representing a positive number) based on the formatting rules defined in the database.
protected  java.lang.Number parsePositiveUnitAmount(java.lang.String anAmount, java.lang.String theUnit, StoreAccessBean aStoreAccessBean, java.lang.Integer aLanguageId, java.lang.String aNumberUsage)
          Parses a string (representing a positive number) based on the formatting rules defined in the database.
 void refresh()
          Refresh the manager cache.
protected  void refreshCache(Converters aConverters, Formatters aFormatters, int theCacheToRefresh)
          Refresh the cache.
protected  void refreshExtension(Formatters theTempFormatters)
          Extension to the refresh.
protected  void refreshOthers(Converters aConverters)
          Refresh other containers.
protected  java.lang.Integer resolveNumberUsageId(java.lang.String aNumberUsage)
          Resolve the number usage code to an Id.
protected  void round(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.Integer aNumbrUsgId)
          Round the unit amount to the appropriate number of decimal places.
protected  void round(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.String aNumberUsage)
          Round the unit amount to the appropriate number of decimal places.
protected  void roundCustomized(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.Integer aNumbrUsgId)
          Perform customized rounding to the correct number of decimal places.
protected  void roundCustomized(UnitAmount aUnitAmount, StoreAccessBean aStoreAccessBean, java.lang.String aNumberUsage)
          Perform customized rounding to the correct number of decimal places.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ibm.commerce.registry. Registry
initialize
 

Field Detail

ROUND_METHOD_TRUNCATION

public static final int ROUND_METHOD_TRUNCATION
See Also:
Constant Field Values

ROUND_METHOD_ROUND

public static final int ROUND_METHOD_ROUND
See Also:
Constant Field Values
Constructor Detail

UnitManager

protected UnitManager(Converters aConverters,
                      Formatters aFormatters,
                      FormattedUnitAmount aFormattedUnitAmount,
                      FormatDesc aFormatDesc)
               throws ECSystemException
UnitManager constructor.
Method Detail

checkStoreGroupConverter

protected boolean checkStoreGroupConverter()
Do we check that there is a store group level converter? IBM Internal Use Only.
Returns:
true if we should check for store group level converters; false otherwise.

getStorePath

protected java.lang.Integer[] getStorePath(java.lang.String theRelationShipType,
StoreAccessBean theStoreAB)
                                    throws ECSystemException
Gets the store path for the specified store and relationship type.
Parameters:
theRelationShipType - The relationship type.
theStoreAB - The store access bean to use to get the store path.
Returns:
The store path.
Throws:
ECSystemException - Raised with the equivalent message of any EJB exceptions.

getConversionStorePath

protected java.lang.Integer[] getConversionStorePath(StoreAccessBean theStoreAB)
                                              throws ECSystemException
Gets the conversion store path.
Parameters:
theStoreAB - The store access bean to use to get the store path.
Returns:
The store path.
ECSystemException

getConverionRelationshipType

protected abstract java.lang.String getConverionRelationshipType()
Gets the conversion relationship type.
Returns:
The conversion relationship type.

getFormatRelationshipType

protected abstract java.lang.String getFormatRelationshipType()
Gets the format relationship type.
Returns:
The format relationship type.

getStoreAB

protected StoreAccessBean getStoreAB(java.lang.Integer aStoreId)
                              throws ECSystemException
Gets the store access bean associated with the specified store ID.
Parameters:
aStoreId - The store ID.
Returns:
The store access bean.
Throws:
ECSystemException - Raised with the message _ERR_BAD_STORE_STATE if no store access bean is found.

convert

protected UnitAmount convert(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                             java.lang.String toUnit)
                      throws ECSystemException
Convert a unit amount to a new unit. If a conversion cannot be found in the specified store then a conversion will be searched for along the store path for the conversion relationship type.
Parameters:
aUnitAmount - a unit amount to be converted.
aStoreAccessBean - the store access bean to use to choose the appropriate conversion rules.
toUnit - the unit to convert to.
Returns:
the new unit amount in the target unit.
ECSystemException

getClassName

protected abstract java.lang.String getClassName()
Get the class name.
Returns:
The name of the class.

getConverter

protected Converter getConverter(StoreAccessBean aStoreAccessBean,
                                 java.lang.String aFromUnit,
                                 java.lang.String aToUnit)
                          throws ECSystemException
Get the appropriate converter in the specified store.
Parameters:
aStoreAccessBean - The store access bean who owns the conversion.
aFromUnit - The from unit of the conversion.
aToUnit - The to unit of the conversion.
Returns:
The converter.
ECSystemException

getConverters

protected Converters getConverters()
Get the converters container.
Returns:
The converters.

getCustomizedRoundingMultipleBD

protected java.math.BigDecimal getCustomizedRoundingMultipleBD(StoreAccessBean aStoreAccessBean,
                                                               java.lang.String aUnit,
                                                               java.lang.Integer aNumbrUsgId)
                                                        throws ECSystemException
Get the customized rounding multiple as a BigDecimal.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumbrUsgId - The number usage identifier to use.
Returns:
The customized rounding multiple.
ECSystemException

getCustomizedRoundingMultipleBD

protected java.math.BigDecimal getCustomizedRoundingMultipleBD(StoreAccessBean aStoreAccessBean,
                                                               java.lang.String aUnit,
                                                               java.lang.String aNumberUsage)
                                                        throws ECSystemException
Get the customized rounding multiple as a BigDecimal.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumberUsage - The number usage code to use.
Returns:
The customized rounding multiple.
ECSystemException

getCustomizedRoundingMultipleD

protected java.lang.Double getCustomizedRoundingMultipleD(StoreAccessBean aStoreAccessBean,
                                                          java.lang.String aUnit,
                                                          java.lang.Integer aNumbrUsgId)
                                                   throws ECSystemException
Get the customized rounding multiple as a Double.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumbrUsgId - The number usage identifier to use.
Returns:
The customized rounding multiple.
ECSystemException

getCustomizedRoundingMultipleD

protected java.lang.Double getCustomizedRoundingMultipleD(StoreAccessBean aStoreAccessBean,
                                                          java.lang.String aUnit,
                                                          java.lang.String aNumberUsage)
                                                   throws ECSystemException
Get the customized rounding multiple as a Double.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumberUsage - The number usage code to use.
Returns:
The customized rounding multiple.
ECSystemException

getCustomizedRoundMethod

public int getCustomizedRoundMethod(StoreAccessBean aStoreAccessBean,
                                    java.lang.String aUnit)
                             throws ECSystemException
Get the rounding method used for a particular unit.
Parameters:
aStoreAccessBean - the store for which the rounding method applies.
aUnit - the unit for which the rounding method applies.
Returns:
the rounding method.
ECSystemException

getCustomizedRoundMethod

public int getCustomizedRoundMethod(StoreAccessBean aStoreAccessBean,
                                    java.lang.String aUnit,
                                    java.lang.String aNumberUsage)
                             throws ECSystemException
Get the rounding method used for a particular unit.
Parameters:
aStoreAccessBean - the store for which the rounding method applies.
aUnit - the unit for which the rounding method applies.
aNumberUsage - the number usage code.
Returns:
the rounding method.
ECSystemException

getCustomizedString

protected java.lang.String getCustomizedString(StoreAccessBean aStoreAccessBean,
                                               java.lang.String aUnit,
                                               java.lang.Integer aLanguageId,
                                               java.lang.Integer aNumbrUsgId)
                                        throws ECSystemException
Get the customized string from the format table.
Parameters:
aStoreAccessBean - the store for choosing the appropriate rule.
aUnit - the unit for which to choose the customized string.
aLanguageId - the language Id of the language for the customized string.
Returns:
the customized string from the format table.
ECSystemException

getCustomizedString

public java.lang.String getCustomizedString(StoreAccessBean aStoreAccessBean,
                                            java.lang.String aUnit,
                                            java.lang.Integer aLanguageId,
                                            java.lang.String aNumberUsage)
                                     throws ECSystemException
Get the customized string from the format table.
Parameters:
aStoreAccessBean - the store for choosing the appropriate rule.
aUnit - the unit for which to choose the customized string.
aLanguageId - the language Id of the language for the customized string.
aNumberUsage - the number usage code.
Returns:
the customized string from the format table.
ECSystemException

getDescription

protected java.lang.String getDescription(StoreAccessBean aStoreAccessBean,
                                          java.lang.String aUnit,
                                          java.lang.Integer aLanguageId,
                                          java.lang.Integer aNumbrUsgId)
                                   throws ECSystemException
Get the description of the specified units.
Parameters:
aStoreAccessBean - the store that the description applies to.
aUnit - the units that the description is for.
aLanguageId - the language Id of the language for the description.
Returns:
the units description.
ECSystemException

getDescription

public java.lang.String getDescription(StoreAccessBean aStoreAccessBean,
                                       java.lang.String aUnit,
                                       java.lang.Integer aLanguageId,
                                       java.lang.String aNumberUsage)
                                throws ECSystemException
Get the description of the specified units.
Parameters:
aStoreAccessBean - the store that the description applies to.
aUnit - the units that the description is for.
aLanguageId - the language Id of the language for the description.
aNumberUsage - the number usage code.
Returns:
the units description.
ECSystemException

getFormatDescription

protected FormatDesc getFormatDescription(StoreAccessBean aStoreAccessBean,
                                          java.lang.String aUnit,
                                          java.lang.Integer aLanguageId,
                                          java.lang.Integer aNumbrUsgId)
                                   throws ECSystemException
Get a format description record.
Parameters:
aStoreAccessBean - The store access bean.
aUnit - The unit.
aLanguageId - The language ID.
Returns:
The format description.
ECSystemException

getFormattedUnitAmount

protected FormattedUnitAmount getFormattedUnitAmount(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                                                     java.lang.Integer aLanguageId,
                                                     java.lang.Integer aNumbrUsgId)
                                              throws ECSystemException
Get a formatted unit amount for display purposes based on the formatting rules defined in the database. Numbers are rounded to the number of decimal places specified in the formatting rules.
Parameters:
aUnitAmount - the unit amount to format.
aStoreAccessBean - a store access bean.
aLanguageId - a language ID.
aNumbrUsgId - The number usage identifier to use.
Returns:
the formatted unit amount.
ECSystemException

getFormattedUnitAmount

protected FormattedUnitAmount getFormattedUnitAmount(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                                                     java.lang.Integer aLanguageId,
                                                     java.lang.String aNumberUsage)
                                              throws ECSystemException
Get a formatted unit amount for display purposes based on the formatting rules defined in the database. Numbers are rounded to the number of decimal places specified in the formatting rules.
Parameters:
aUnitAmount - the unit amount to format.
aStoreAccessBean - a store access bean.
aLanguageId - a language ID.
aNumberUsage - The number usage code to use.
Returns:
the formatted unit amount.
ECSystemException

getFormatter

protected Formatter getFormatter(StoreAccessBean aStoreAccessBean,
                                 java.lang.String aUnit,
                                 java.lang.Integer aNumbrUsgId)
                          throws ECSystemException
Get the formatter with the specified number usage identifer for the store. If one doesn't exist, get one from the store group. If one still cannot be found, try the default number usage for the store and if necessary the store group. If a formatter still cannot be found, use the default formatter.
Parameters:
aStoreAccessBean - The store access bean.
aUnit - The unit for the formatter.
aNumbrUsgId - The number usage identifier to use.
Returns:
The formatter.
ECSystemException

getParticularConverter

protected Converter getParticularConverter(java.lang.Integer aStoreEntityId,
                                           java.lang.String fromUnit,
                                           java.lang.String toUnit)
IBM Internal Use Only.

getRoundingMultipleBD

protected java.math.BigDecimal getRoundingMultipleBD(StoreAccessBean aStoreAccessBean,
                                                     java.lang.String aUnit,
                                                     java.lang.Integer aNumbrUsgId)
                                              throws ECSystemException
Get the rounding multiple as a BigDecimal.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumbrUsgId - The number usage identifier to use.
Returns:
The rounding multiple.
ECSystemException

getRoundingMultipleBD

protected java.math.BigDecimal getRoundingMultipleBD(StoreAccessBean aStoreAccessBean,
                                                     java.lang.String aUnit,
                                                     java.lang.String aNumberUsage)
                                              throws ECSystemException
Get the rounding multiple as a BigDecimal.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumberUsage - The number usage code to use.
Returns:
The rounding multiple.
ECSystemException

getRoundingMultipleD

protected java.lang.Double getRoundingMultipleD(StoreAccessBean aStoreAccessBean,
                                                java.lang.String aUnit,
                                                java.lang.Integer aNumbrUsgId)
                                         throws ECSystemException
Get the rounding multiple as a Double.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumbrUsgId - The number usage identifier to use.
Returns:
The rounding multiple.
ECSystemException

getRoundingMultipleD

protected java.lang.Double getRoundingMultipleD(StoreAccessBean aStoreAccessBean,
                                                java.lang.String aUnit,
                                                java.lang.String aNumberUsage)
                                         throws ECSystemException
Get the rounding multiple as a Double.
Parameters:
aStoreAccessBean - The store for which the rounding multiple applies.
aUnit - The unit for which the rounding multiple applies.
aNumberUsage - The number usage code to use.
Returns:
The rounding multiple.
ECSystemException

getStoreIdForConverter

protected abstract java.lang.Integer getStoreIdForConverter(StoreAccessBean aStoreAccessBean)
                                                     throws ECSystemException
Get the storeId to use to search for a converter. IBM Internal Use Only.
Parameters:
aStoreAccessBean - com.ibm.commerce.common.objects.StoreAccessBean
Returns:
java.lang.Integer
ECSystemException

getSymbol

protected java.lang.String getSymbol(StoreAccessBean aStoreAccessBean,
                                     java.lang.String aUnit,
                                     java.lang.Integer aLanguageId,
                                     java.lang.Integer aNumbrUsgId)
                              throws ECSystemException
Get the symbol information from the format table.
Parameters:
aStoreAccessBean - the store.
aUnit - the unit.
aLanguageId - the language Id of the language for the symbol.
aNumbrUsgId - The number usage identifier to use.
Returns:
the symbol.
ECSystemException

getSymbol

public java.lang.String getSymbol(StoreAccessBean aStoreAccessBean,
                                  java.lang.String aUnit,
                                  java.lang.Integer aLanguageId,
                                  java.lang.String aNumberUsage)
                           throws ECSystemException
Get the symbol information from the format table.
Parameters:
aStoreAccessBean - the store.
aUnit - the unit.
aLanguageId - the language Id of the language for the symbol.
aNumberUsage - the number usage code.
Returns:
the symbol.
ECSystemException

refresh

public void refresh()
             throws ECSystemException
Refresh the manager cache.
Specified by:
refresh in interface Registry
ECSystemException

refreshCache

protected void refreshCache(Converters aConverters,
                            Formatters aFormatters,
                            int theCacheToRefresh)
                     throws ECSystemException
Refresh the cache.
ECSystemException

refreshExtension

protected void refreshExtension(Formatters theTempFormatters)
                         throws ECSystemException
Extension to the refresh.
Parameters:
theTempFormatters - com.ibm.commerce.price.utils.Formatters
ECSystemException

refreshOthers

protected void refreshOthers(Converters aConverters)
                      throws ECSystemException
Refresh other containers.
ECSystemException

resolveNumberUsageId

protected java.lang.Integer resolveNumberUsageId(java.lang.String aNumberUsage)
                                          throws ECSystemException
Resolve the number usage code to an Id.
Parameters:
aNumberUsage - The number usage code.
Returns:
The number usage identifier.
ECSystemException

round

protected void round(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                     java.lang.Integer aNumbrUsgId)
              throws ECSystemException
Round the unit amount to the appropriate number of decimal places. This ignores the roundingMultiple and roundingMethod columns of the format table.
Parameters:
aUnitAmount - the unit amount to round.
aStoreAccessBean - the store.
ECSystemException

round

protected void round(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                     java.lang.String aNumberUsage)
              throws ECSystemException
Round the unit amount to the appropriate number of decimal places. This ignores the roundingMultiple and roundingMethod columns of the format table.
Parameters:
aUnitAmount - the unit amount to round.
aStoreAccessBean - the store.
aNumberUsage - the number usage code.
ECSystemException

roundCustomized

protected void roundCustomized(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                               java.lang.Integer aNumbrUsgId)
                        throws ECSystemException
Perform customized rounding to the correct number of decimal places. This uses the roundingMultiple and roundingMethod columns of the currency format table.
Parameters:
aUnitAmount - the unit amount to round.
aStoreAccessBean - the store.
ECSystemException

roundCustomized

protected void roundCustomized(UnitAmount aUnitAmount,
StoreAccessBean aStoreAccessBean,
                               java.lang.String aNumberUsage)
                        throws ECSystemException
Perform customized rounding to the correct number of decimal places. This uses the roundingMultiple and roundingMethod columns of the currency format table.
Parameters:
aUnitAmount - the unit amount to round.
aStoreAccessBean - the store.
aNumberUsage - the number usage code.
ECSystemException

parsePositiveUnitAmount

protected java.lang.Number parsePositiveUnitAmount(java.lang.String anAmount,
                                                   java.lang.String theUnit,
StoreAccessBean aStoreAccessBean,
                                                   java.lang.Integer aLanguageId,
                                                   java.lang.Integer aNumbrUsgId)
                                            throws java.text.ParseException,
ECSystemException
Parses a string (representing a positive number) based on the formatting rules defined in the database.
Parameters:
anAmount - the amount to parse.
theUnit - the unit of the value.
aStoreAccessBean - a store access bean.
aLanguageId - a language ID.
aNumbrUsgId - The number usage identifier to use.
Returns:
the parsed value.
java.text.ParseException
ECSystemException

parsePositiveUnitAmount

protected java.lang.Number parsePositiveUnitAmount(java.lang.String anAmount,
                                                   java.lang.String theUnit,
StoreAccessBean aStoreAccessBean,
                                                   java.lang.Integer aLanguageId,
                                                   java.lang.String aNumberUsage)
                                            throws java.text.ParseException,
ECSystemException
Parses a string (representing a positive number) based on the formatting rules defined in the database.
Parameters:
anAmount - the amount to parse.
theUnit - the unit of the value.
aStoreAccessBean - a store access bean.
aLanguageId - a language ID.
aNumberUsage - The number usage code to use.
Returns:
the parsed value.
java.text.ParseException
ECSystemException