 
         return existingValue;
     }
+    
+    /**
+     *  Returns the name of the specified object's class,
+     *  such as <code>"Button"</code>
+     *
+     *  <p>This string does not include the package name.
+     *  If you need the package name as well, call the
+     *  <code>getQualifiedClassName()</code> method in the flash.utils package.
+     *  It will return a string such as <code>"mx.controls::Button"</code>.</p>
+     */
+    public static function getUnqualifiedClassName(object:Object):String
+    {
+        var name:String;
+        if (object is String)
+            name = object as String;
+        else
+            name = getQualifiedClassName(object);
+
+        // If there is a package name, strip it off.
+        var index:int = name.indexOf("::");
+        if (index != -1)
+            name = name.substr(index + 2);
+
+        return name;
+    }
 
     /**
      * Noop. Method exists to give a chance to subclasses to pre-process the

                    propertyName = Object(name).toString();


                if (parent is ContentProxy && ContentProxy(parent).object_proxy::isSimple)
                {
                    existingValue = ContentProxy(parent).object_proxy::content;
                }
                else 
                {

import flash.utils.getQualifiedClassName;

import mx.collections.ArrayCollection;
import mx.logging.ILogger;
import mx.logging.Log;
import mx.utils.DescribeTypeCache;
import mx.utils.ObjectProxy;
import mx.utils.URLUtil;
import mx.utils.XMLUtil;
import mx.utils.object_proxy;

[ExcludeClass]

