< prev index next >

src/java.base/share/classes/sun/util/locale/provider/LocaleProviderAdapter.java

Print this page




  30 import java.text.spi.DateFormatProvider;
  31 import java.text.spi.DateFormatSymbolsProvider;
  32 import java.text.spi.DecimalFormatSymbolsProvider;
  33 import java.text.spi.NumberFormatProvider;
  34 import java.util.ArrayList;
  35 import java.util.Collections;
  36 import java.util.List;
  37 import java.util.Locale;
  38 import java.util.Map;
  39 import java.util.ResourceBundle;
  40 import java.util.Set;
  41 import java.util.concurrent.ConcurrentHashMap;
  42 import java.util.concurrent.ConcurrentMap;
  43 import java.util.spi.CalendarDataProvider;
  44 import java.util.spi.CalendarNameProvider;
  45 import java.util.spi.CurrencyNameProvider;
  46 import java.util.spi.LocaleNameProvider;
  47 import java.util.spi.LocaleServiceProvider;
  48 import java.util.spi.TimeZoneNameProvider;
  49 import sun.security.action.GetPropertyAction;

  50 import sun.util.spi.CalendarProvider;
  51 
  52 /**
  53  * The LocaleProviderAdapter abstract class.
  54  *
  55  * @author Naoto Sato
  56  * @author Masayoshi Okutsu
  57  */
  58 public abstract class LocaleProviderAdapter {
  59     /**
  60      * Adapter type.
  61      */
  62     public static enum Type {
  63         JRE("sun.util.locale.provider.JRELocaleProviderAdapter", "sun.util.resources", "sun.text.resources"),
  64         CLDR("sun.util.cldr.CLDRLocaleProviderAdapter", "sun.util.resources.cldr", "sun.text.resources.cldr"),
  65         SPI("sun.util.locale.provider.SPILocaleProviderAdapter"),
  66         HOST("sun.util.locale.provider.HostLocaleProviderAdapter"),
  67         FALLBACK("sun.util.locale.provider.FallbackLocaleProviderAdapter", "sun.util.resources", "sun.text.resources");
  68 
  69         private final String CLASSNAME;


 411      * @return a CalendarDataProvider
 412      */
 413     public abstract CalendarDataProvider getCalendarDataProvider();
 414 
 415     /**
 416      * Returns a CalendarNameProvider for this LocaleProviderAdapter, or null if no
 417      * CalendarNameProvider is available.
 418      *
 419      * @return a CalendarNameProvider
 420      */
 421     public abstract CalendarNameProvider getCalendarNameProvider();
 422 
 423     /**
 424      * Returns a CalendarProvider for this LocaleProviderAdapter, or null if no
 425      * CalendarProvider is available.
 426      *
 427      * @return a CalendarProvider
 428      */
 429     public abstract CalendarProvider getCalendarProvider();
 430 








 431     public abstract LocaleResources getLocaleResources(Locale locale);
 432 
 433     public abstract Locale[] getAvailableLocales();
 434 
 435     private static final LocaleProviderAdapter NONEXISTENT_ADAPTER = new NonExistentAdapter();
 436     private static final class NonExistentAdapter extends FallbackLocaleProviderAdapter {
 437         @Override
 438         public LocaleProviderAdapter.Type getAdapterType() {
 439             return null;
 440         }
 441 
 442         private NonExistentAdapter() {};
 443     }
 444 }


  30 import java.text.spi.DateFormatProvider;
  31 import java.text.spi.DateFormatSymbolsProvider;
  32 import java.text.spi.DecimalFormatSymbolsProvider;
  33 import java.text.spi.NumberFormatProvider;
  34 import java.util.ArrayList;
  35 import java.util.Collections;
  36 import java.util.List;
  37 import java.util.Locale;
  38 import java.util.Map;
  39 import java.util.ResourceBundle;
  40 import java.util.Set;
  41 import java.util.concurrent.ConcurrentHashMap;
  42 import java.util.concurrent.ConcurrentMap;
  43 import java.util.spi.CalendarDataProvider;
  44 import java.util.spi.CalendarNameProvider;
  45 import java.util.spi.CurrencyNameProvider;
  46 import java.util.spi.LocaleNameProvider;
  47 import java.util.spi.LocaleServiceProvider;
  48 import java.util.spi.TimeZoneNameProvider;
  49 import sun.security.action.GetPropertyAction;
  50 import sun.text.spi.JavaTimeDateTimePatternProvider;
  51 import sun.util.spi.CalendarProvider;
  52 
  53 /**
  54  * The LocaleProviderAdapter abstract class.
  55  *
  56  * @author Naoto Sato
  57  * @author Masayoshi Okutsu
  58  */
  59 public abstract class LocaleProviderAdapter {
  60     /**
  61      * Adapter type.
  62      */
  63     public static enum Type {
  64         JRE("sun.util.locale.provider.JRELocaleProviderAdapter", "sun.util.resources", "sun.text.resources"),
  65         CLDR("sun.util.cldr.CLDRLocaleProviderAdapter", "sun.util.resources.cldr", "sun.text.resources.cldr"),
  66         SPI("sun.util.locale.provider.SPILocaleProviderAdapter"),
  67         HOST("sun.util.locale.provider.HostLocaleProviderAdapter"),
  68         FALLBACK("sun.util.locale.provider.FallbackLocaleProviderAdapter", "sun.util.resources", "sun.text.resources");
  69 
  70         private final String CLASSNAME;


 412      * @return a CalendarDataProvider
 413      */
 414     public abstract CalendarDataProvider getCalendarDataProvider();
 415 
 416     /**
 417      * Returns a CalendarNameProvider for this LocaleProviderAdapter, or null if no
 418      * CalendarNameProvider is available.
 419      *
 420      * @return a CalendarNameProvider
 421      */
 422     public abstract CalendarNameProvider getCalendarNameProvider();
 423 
 424     /**
 425      * Returns a CalendarProvider for this LocaleProviderAdapter, or null if no
 426      * CalendarProvider is available.
 427      *
 428      * @return a CalendarProvider
 429      */
 430     public abstract CalendarProvider getCalendarProvider();
 431 
 432     /**
 433      * Returns a JavaTimeDateTimePatternProvider for this LocaleProviderAdapter,
 434      * or null if no JavaTimeDateTimePatternProvider is available.
 435      *
 436      * @return a JavaTimeDateTimePatternProvider
 437      */
 438     public abstract JavaTimeDateTimePatternProvider getJavaTimeDateTimePatternProvider();
 439 
 440     public abstract LocaleResources getLocaleResources(Locale locale);
 441 
 442     public abstract Locale[] getAvailableLocales();
 443 
 444     private static final LocaleProviderAdapter NONEXISTENT_ADAPTER = new NonExistentAdapter();
 445     private static final class NonExistentAdapter extends FallbackLocaleProviderAdapter {
 446         @Override
 447         public LocaleProviderAdapter.Type getAdapterType() {
 448             return null;
 449         }
 450 
 451         private NonExistentAdapter() {};
 452     }
 453 }
< prev index next >