add Class.getSimpleName to gwt emulation

fixes issue 3404

Change-Id: I7d4c9c34209f43fdfbf255d0d7ce8ac4bd002390
Review-Link: https://gwt-review.googlesource.com/#/c/2220/

Review by: skybrian@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@11587 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/super/com/google/gwt/emul/java/lang/Class.java b/user/super/com/google/gwt/emul/java/lang/Class.java
index 8db8ead..9037371 100644
--- a/user/super/com/google/gwt/emul/java/lang/Class.java
+++ b/user/super/com/google/gwt/emul/java/lang/Class.java
@@ -185,6 +185,7 @@
       int seedId) {
     if (clazz.isClassMetadataEnabled()) {
       clazz.typeName = packageName + className;
+      clazz.simpleName = className;
     } else {
       /*
        * The initial "" + in the below code is to prevent clazz.hashCode() from
@@ -193,6 +194,7 @@
        */
       clazz.typeName = "Class$"
           + (isInstantiableOrPrimitive(seedId) ? asString(seedId) : "" + clazz.hashCode());
+      clazz.simpleName = clazz.typeName;
     }
 
     if (isInstantiable(seedId)) {
@@ -213,6 +215,8 @@
 
   private Class<? super T> superclass;
 
+  private String simpleName;
+
   private String typeName;
 
   private int seedId;
@@ -244,6 +248,10 @@
     return typeName;
   }
 
+  public String getSimpleName() {
+    return simpleName;
+  }
+
   public Class<? super T> getSuperclass() {
     if (isClassMetadataEnabled()) {
       return superclass;