Class ZoneInfoProvider

  • All Implemented Interfaces:
    Provider

    public class ZoneInfoProvider
    extends java.lang.Object
    implements Provider
    ZoneInfoProvider loads compiled data files as generated by ZoneInfoCompiler.

    ZoneInfoProvider is thread-safe and publicly immutable.

    Since:
    1.0
    • Constructor Summary

      Constructors 
      Constructor Description
      ZoneInfoProvider()
      Search the default classloader resource path for compiled data files.
      ZoneInfoProvider​(java.io.File fileDir)
      ZoneInfoProvider searches the given directory for compiled data files.
      ZoneInfoProvider​(java.lang.String resourcePath)
      ZoneInfoProvider searches the given ClassLoader resource path for compiled data files.
      ZoneInfoProvider​(java.lang.String resourcePath, java.lang.ClassLoader loader)
      ZoneInfoProvider searches the given ClassLoader resource path for compiled data files.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Set<java.lang.String> getAvailableIDs()
      Gets a list of all the available zone ids.
      DateTimeZone getZone​(java.lang.String id)
      If an error is thrown while loading zone data, the exception is logged to system error and null is returned for this and all future requests.
      protected void uncaughtException​(java.lang.Exception ex)
      Called if an exception is thrown from getZone while loading zone data.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ZoneInfoProvider

        public ZoneInfoProvider()
                         throws java.io.IOException
        Search the default classloader resource path for compiled data files.
        Throws:
        java.io.IOException - if directory or map file cannot be read
      • ZoneInfoProvider

        public ZoneInfoProvider​(java.io.File fileDir)
                         throws java.io.IOException
        ZoneInfoProvider searches the given directory for compiled data files.
        Throws:
        java.io.IOException - if directory or map file cannot be read
      • ZoneInfoProvider

        public ZoneInfoProvider​(java.lang.String resourcePath)
                         throws java.io.IOException
        ZoneInfoProvider searches the given ClassLoader resource path for compiled data files. Resources are loaded from the ClassLoader that loaded this class.
        Throws:
        java.io.IOException - if directory or map file cannot be read
      • ZoneInfoProvider

        public ZoneInfoProvider​(java.lang.String resourcePath,
                                java.lang.ClassLoader loader)
                         throws java.io.IOException
        ZoneInfoProvider searches the given ClassLoader resource path for compiled data files.
        Parameters:
        loader - ClassLoader to load compiled data files from. If null, use system ClassLoader.
        Throws:
        java.io.IOException - if directory or map file cannot be read
    • Method Detail

      • getZone

        public DateTimeZone getZone​(java.lang.String id)
        If an error is thrown while loading zone data, the exception is logged to system error and null is returned for this and all future requests.
        Specified by:
        getZone in interface Provider
        Parameters:
        id - the id to load
        Returns:
        the loaded zone
      • getAvailableIDs

        public java.util.Set<java.lang.String> getAvailableIDs()
        Gets a list of all the available zone ids.
        Specified by:
        getAvailableIDs in interface Provider
        Returns:
        the zone ids
      • uncaughtException

        protected void uncaughtException​(java.lang.Exception ex)
        Called if an exception is thrown from getZone while loading zone data.
        Parameters:
        ex - the exception