Class RWT.NLS

  • Enclosing class:
    RWT

    public static final class RWT.NLS
    extends java.lang.Object

    This utility class helps to provide a similar approach for compile safe native language support than NLS does. We can not use the original approach though, due to the nature of server side environments, that have to deal with different locales per user session or even requests.

    Usage:

      public class FooMessages {
        private static final String BUNDLE_NAME = "foo.bar.messages";
    
        public String MyMessage;
    
        public static FooMessages get() {
          return ( FootMessages )RWT.NLS.getISO8859_1Encoded( BUNDLE_NAME, FooMessages.class );
        }
      }
     
    BUNDLE_NAME contains the name of a properties file (without file extension) that follows the conventions of standard ResourceBundle property files. For each field (in the example 'MyMessage') there has to be a key entry in the localization property file. Use the FooMessages like this in the application code:
       Label label = ...;
       label.setText( FooMessages.get().MyMessage );
     

    • Constructor Summary

      Constructors 
      Constructor Description
      NLS()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static <T> T getISO8859_1Encoded​(java.lang.String bundleName, java.lang.Class<T> clazz)
      Returns a NLS object for the given resource bundle and type.
      static <T> T getUTF8Encoded​(java.lang.String bundleName, java.lang.Class<T> clazz)
      Returns a NLS object for the given resource bundle and type.
      • Methods inherited from class java.lang.Object

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

      • NLS

        public NLS()
    • Method Detail

      • getISO8859_1Encoded

        public static <T> T getISO8859_1Encoded​(java.lang.String bundleName,
                                                java.lang.Class<T> clazz)
        Returns a NLS object for the given resource bundle and type. See class description for usage information. The resource bundles read by this method have to be ISO 8859-1 encoded. This is according to the Properties file specification.
        Parameters:
        bundleName - the resource bundle to load.
        clazz - the class of the NLS object to load.
      • getUTF8Encoded

        public static <T> T getUTF8Encoded​(java.lang.String bundleName,
                                           java.lang.Class<T> clazz)
        Returns a NLS object for the given resource bundle and type. See class description for usage information. The resource bundles read by this method have to be UTF-8 encoded. Note that this is not according to the Properties file specification and meant for a more convenient use.
        Parameters:
        bundleName - the resource bundle to load.
        clazz - the class of the NLS object to load.