title: Properly serializing flash.utils.Dictionary to a SharedObject
body: <p>I have a convenience collection class in my Flex project called HashMap, which is essentially a wrapper around the flash.utils.Dictionary with a bunch of convenience methods and an added (synced) ArrayCollection so that I can pass the HashMap to bindable controls that want an ArrayCollection. That all works fine.</p>
  
  <p>What doesn't work fine, I'm finding out just now, is putting that HashMap in a local SharedObject.</p>
  
  <p>Registering the class causes it to be stored and come back as the proper type, and the ArrayCollection member comes back just fine, but the Dictionary doesn't store its data..</p>
  
  <p>Here's a snippet:</p>
  
  <pre><code>[RemoteClass(alias="com.tamedtornado.collections.HashMap")]
  public class HashMap extends Proxy
  {
      public var hash:Dictionary = new Dictionary();
  
      // Keeps an array collection as well so we can give this to a data bound control
  
      [Bindable]
      public var collection:ArrayCollection = new ArrayCollection();
  </code></pre>
  
  <p>So that's the relevant stuff. What's the procedure for getting that Dictionary to store itself correctly? I actually have to make the ArrayCollection transient, as right now every time the SO is flushed, I'm getting another copy of the (uniquely keyed in the Dictionary) data.</p>