Adding TYPE field to primitive wrapper types (Integer.TYPE, etc).

Review at: http://gwt-code-reviews.appspot.com/1710804/

Review by: rdayal@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@11001 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/tools/api-checker/config/gwt24_25userApi.conf b/tools/api-checker/config/gwt24_25userApi.conf
index d1fd776..6db2ee3 100644
--- a/tools/api-checker/config/gwt24_25userApi.conf
+++ b/tools/api-checker/config/gwt24_25userApi.conf
@@ -192,3 +192,6 @@
 com.google.gwt.user.client.ui.RenderablePanel::render(Ljava/lang/String;Lcom/google/gwt/safehtml/shared/SafeHtmlBuilder;) MISSING
 com.google.gwt.user.client.ui.RenderablePanel::wrapElement(Lcom/google/gwt/dom/client/Element;) MISSING
 
+# Adding final modifier to static fields Boolean.TRUE/FALSE
+java.lang.Boolean::FALSE FINAL_ADDED
+java.lang.Boolean::TRUE FINAL_ADDED
diff --git a/user/super/com/google/gwt/emul/java/lang/Boolean.java b/user/super/com/google/gwt/emul/java/lang/Boolean.java
index 6273bd2..b8d8c1a 100644
--- a/user/super/com/google/gwt/emul/java/lang/Boolean.java
+++ b/user/super/com/google/gwt/emul/java/lang/Boolean.java
@@ -26,11 +26,13 @@
    */
 
   // CHECKSTYLE_OFF: These have to be created somewhere.
-  public static Boolean FALSE = new Boolean(false);
-  public static Boolean TRUE = new Boolean(true);
+  public static final Boolean FALSE = new Boolean(false);
+  public static final Boolean TRUE = new Boolean(true);
 
   // CHECKSTYLE_ON
 
+  public static final Class<Boolean> TYPE = boolean.class;
+
   public static boolean parseBoolean(String s) {
     return "true".equalsIgnoreCase(s);
   }
diff --git a/user/super/com/google/gwt/emul/java/lang/Byte.java b/user/super/com/google/gwt/emul/java/lang/Byte.java
index 4d6b757..664589e 100644
--- a/user/super/com/google/gwt/emul/java/lang/Byte.java
+++ b/user/super/com/google/gwt/emul/java/lang/Byte.java
@@ -23,6 +23,7 @@
   public static final byte MIN_VALUE = (byte) 0x80;
   public static final byte MAX_VALUE = (byte) 0x7F;
   public static final int SIZE = 8;
+  public static final Class<Byte> TYPE = byte.class;
 
   /**
    * Use nested class to avoid clinit on outer.
diff --git a/user/super/com/google/gwt/emul/java/lang/Double.java b/user/super/com/google/gwt/emul/java/lang/Double.java
index 3397187..5144653 100644
--- a/user/super/com/google/gwt/emul/java/lang/Double.java
+++ b/user/super/com/google/gwt/emul/java/lang/Double.java
@@ -31,6 +31,7 @@
   public static final double NEGATIVE_INFINITY = -1d / 0d;
   public static final double POSITIVE_INFINITY = 1d / 0d;
   public static final int SIZE = 64;
+  public static final Class<Double> TYPE = double.class;
 
   // 2^512, 2^-512
   private static final double POWER_512 = 1.3407807929942597E154;
diff --git a/user/super/com/google/gwt/emul/java/lang/Float.java b/user/super/com/google/gwt/emul/java/lang/Float.java
index f0a8f6d..f10cd9e 100644
--- a/user/super/com/google/gwt/emul/java/lang/Float.java
+++ b/user/super/com/google/gwt/emul/java/lang/Float.java
@@ -28,6 +28,7 @@
   public static final float NEGATIVE_INFINITY = -1f / 0f;
   public static final float POSITIVE_INFINITY = 1f / 0f;
   public static final int SIZE = 32;
+  public static final Class<Float> TYPE = float.class;
 
   private static final long POWER_31_INT = 2147483648L;
   private static final long POWER_32_INT = 4294967296L;
diff --git a/user/super/com/google/gwt/emul/java/lang/Integer.java b/user/super/com/google/gwt/emul/java/lang/Integer.java
index 6a44ab6..04e2b00 100644
--- a/user/super/com/google/gwt/emul/java/lang/Integer.java
+++ b/user/super/com/google/gwt/emul/java/lang/Integer.java
@@ -23,6 +23,7 @@
   public static final int MAX_VALUE = 0x7fffffff;
   public static final int MIN_VALUE = 0x80000000;
   public static final int SIZE = 32;
+  public static final Class<Integer> TYPE = int.class;
 
   /**
    * Use nested class to avoid clinit on outer.
diff --git a/user/super/com/google/gwt/emul/java/lang/Long.java b/user/super/com/google/gwt/emul/java/lang/Long.java
index 0971d94..c0b08d7 100644
--- a/user/super/com/google/gwt/emul/java/lang/Long.java
+++ b/user/super/com/google/gwt/emul/java/lang/Long.java
@@ -50,6 +50,7 @@
   public static final long MAX_VALUE = 0x7fffffffffffffffL;
   public static final long MIN_VALUE = 0x8000000000000000L;
   public static final int SIZE = 64;
+  public static final Class<Long> TYPE = long.class;
 
   public static int bitCount(long i) {
     int high = (int) (i >> 32);
diff --git a/user/super/com/google/gwt/emul/java/lang/Short.java b/user/super/com/google/gwt/emul/java/lang/Short.java
index 945fd75..04d7bff 100644
--- a/user/super/com/google/gwt/emul/java/lang/Short.java
+++ b/user/super/com/google/gwt/emul/java/lang/Short.java
@@ -23,6 +23,7 @@
   public static final short MIN_VALUE = (short) 0x8000;
   public static final short MAX_VALUE = (short) 0x7fff;
   public static final int SIZE = 16;
+  public static final Class<Short> TYPE = short.class;
 
   /**
    * Use nested class to avoid clinit on outer.
diff --git a/user/super/com/google/gwt/emul/java/lang/Void.java b/user/super/com/google/gwt/emul/java/lang/Void.java
index 66a7830..02222f6 100644
--- a/user/super/com/google/gwt/emul/java/lang/Void.java
+++ b/user/super/com/google/gwt/emul/java/lang/Void.java
@@ -20,6 +20,8 @@
  */
 public final class Void {
 
+  public static final Class<Void> TYPE = void.class;
+
   /**
    * Not instantiable.
    */