Reviewers: robertvawter_google.com,


Please review this at http://gwt-code-reviews.appspot.com/47819

Affected files:
    
user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java


Index:  
user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java
===================================================================
---  
user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java
  
(revision 5743)
+++  
user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java
  
(working copy)
@@ -31,7 +31,9 @@
    @SuppressWarnings("unchecked") // raw LinkedHashMap
    public static void deserialize(SerializationStreamReader streamReader,
        LinkedHashMap instance) throws SerializationException {
+    boolean accessOrder = streamReader.readBoolean();
      Map_CustomFieldSerializerBase.deserialize(streamReader, instance);
+    setAccessOrder(instance, accessOrder);
    }

    @SuppressWarnings("unchecked") // raw LinkedHashMap
@@ -66,4 +68,19 @@
        throw new SerializationException("Can't get accessOrder field", e);
      }
    }
+
+  @SuppressWarnings("unchecked") // raw LinkedHashMap
+  private static void setAccessOrder(LinkedHashMap instance, boolean  
accessOrder)
+      throws SerializationException {
+    Field accessOrderField;
+    try {
+      accessOrderField =  
LinkedHashMap.class.getDeclaredField("accessOrder");
+      accessOrderField.setAccessible(true);
+      accessOrderField.set(instance, Boolean.valueOf(accessOrder));
+    } catch (IllegalAccessException e) {
+      throw new SerializationException("Can't set accessOrder field", e);
+    } catch (NoSuchFieldException e) {
+      throw new SerializationException("Can't set accessOrder field", e);
+    }
+  }
  }



--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to