Class DecimalFormatManager

java.lang.Object
net.sf.saxon.trans.DecimalFormatManager
All Implemented Interfaces:
Serializable

public class DecimalFormatManager extends Object implements Serializable
DecimalFormatManager manages the collection of named and unnamed decimal formats
Author:
Michael H. Kay
See Also:
  • Constructor Details

    • DecimalFormatManager

      public DecimalFormatManager()
      create a DecimalFormatManager and initialise variables
  • Method Details

    • setDefaults

      public static void setDefaults(DecimalSymbols d)
      Set up the XSLT-defined default attributes in a DecimalFormatSymbols
    • setDefaultDecimalFormat

      public void setDefaultDecimalFormat(DecimalSymbols dfs, int precedence) throws StaticError
      Register the default decimal-format. Note that it is an error to register the same decimal-format twice, even with different precedence
      Throws:
      StaticError
    • fixupDefaultDefault

      public void fixupDefaultDefault() throws StaticError
      Method called at the end of stylesheet compilation to fix up any format-number() calls to the "default default" decimal format
      Throws:
      StaticError
    • getDefaultDecimalFormat

      public DecimalSymbols getDefaultDecimalFormat()
      Get the default decimal-format.
    • setNamedDecimalFormat

      public void setNamedDecimalFormat(String uri, String localName, DecimalSymbols dfs, int precedence) throws StaticError
      Set a named decimal format. Note that it is an error to register the same decimal-format twice, unless hte values are equal, or unless there is another of higher precedence. This method assumes that decimal-formats are registered in order of decreasing precedence
      Parameters:
      uri - The URI of the name of the decimal format
      localName - The local part of the name of the decimal format
      Throws:
      StaticError
    • registerUsage

      public void registerUsage(String uri, String localName, FormatNumber2 call)
      Register a format-number() function call that uses a particular decimal format. This allows early compile time resolution to a DecimalFormatSymbols object where possible, even in the case of a forwards reference
    • getNamedDecimalFormat

      public DecimalSymbols getNamedDecimalFormat(String uri, String localName)
      Get a named decimal-format registered using setNamedDecimalFormat
      Parameters:
      uri - The URI of the name of the decimal format
      localName - The local part of the name of the decimal format
      Returns:
      the DecimalFormatSymbols object corresponding to the named locale, if any or null if not set.