Class ZoneInfoCompiler

java.lang.Object
org.joda.time.tz.ZoneInfoCompiler

public class ZoneInfoCompiler extends Object
Compiles IANA ZoneInfo database files into binary files for each time zone in the database. DateTimeZoneBuilder is used to construct and encode compiled data files. ZoneInfoProvider loads the encoded files and converts them back into DateTimeZone objects.

Although this tool is similar to zic, the binary formats are not compatible. The latest IANA time zone database files may be obtained here.

ZoneInfoCompiler is mutable and not thread-safe, although the main method may be safely invoked by multiple threads.

Since:
1.0
Author:
Brian S O'Neill
  • Constructor Details

    • ZoneInfoCompiler

      public ZoneInfoCompiler()
  • Method Details

    • main

      public static void main(String[] args) throws Exception
      Launches the ZoneInfoCompiler tool.
       Usage: java org.joda.time.tz.ZoneInfoCompiler <options> <source files>
       where possible options include:
         -src <directory>    Specify where to read source files
         -dst <directory>    Specify where to write generated files
         -verbose            Output verbosely (default false)
       
      Throws:
      Exception
    • compile

      public Map<String,DateTimeZone> compile(File outputDir, File[] sources) throws IOException
      Returns a map of ids to DateTimeZones.
      Parameters:
      outputDir - optional directory to write compiled data files to
      sources - optional list of source files to parse
      Throws:
      IOException
    • parseDataFile

      public void parseDataFile(BufferedReader in, boolean backward) throws IOException
      Throws:
      IOException