org.eclipse.jgit.nls

## Class NLS

- java.lang.Object
- - org.eclipse.jgit.nls.NLS

    public class NLS
    extends Object

The purpose of this class is to provide NLS (National Language Support) configurable per thread.

The `setLocale(Locale)` method is used to configure locale for the calling thread. The locale setting is thread inheritable. This means that a child thread will have the same locale setting as its creator thread until it changes it explicitly.

Example of usage:

     NLS.setLocale(Locale.GERMAN);
     TransportText t = NLS.getBundleFor(TransportText.class);

### Field Summary

Fields
`static Locale` `ROOT_LOCALE` The root locale constant.

### Method Summary

All Methods Static Methods Concrete Methods
`static <T extends TranslationBundle> T` `getBundleFor(Class<T> type)` Returns an instance of the translation bundle of the required type.
`static void` `setLocale(Locale locale)` Sets the locale for the calling thread.
`static void` `useJVMDefaultLocale()` Sets the JVM default locale as the locale for the calling thread.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### ROOT_LOCALE

    public static final Locale ROOT_LOCALE

The root locale constant. It is defined here because the Locale.ROOT is not defined in Java 5

### Method Detail

#### setLocale

    public static void setLocale(Locale locale)

Sets the locale for the calling thread.

The `getBundleFor(Class)` method will honor this setting if if it is supported by the provided resource bundle property files. Otherwise, it will use a fall back locale as described in the `TranslationBundle`

Parameters:
  `locale` - the preferred locale

#### useJVMDefaultLocale

    public static void useJVMDefaultLocale()

Sets the JVM default locale as the locale for the calling thread.

Semantically this is equivalent to `NLS.setLocale(Locale.getDefault())`.

#### getBundleFor

    public static <T extends TranslationBundle> T getBundleFor(Class<T> type)

Returns an instance of the translation bundle of the required type. All public String fields of the bundle instance will get their values injected as described in the `TranslationBundle`.

Type Parameters:
  `T` - required bundle type
Parameters:
  `type` - required bundle type
Returns:
  an instance of the required bundle type
Throws:
  `TranslationBundleLoadingException` - see `TranslationBundleLoadingException`
  `TranslationStringMissingException` - see `TranslationStringMissingException`