{ "type": "class",
  "qname": "org.apache.royale.utils.UIDUtil",
  "baseClassname": ""
  ,
    "description": "The UIDUtil class is an all-static class with methods for working with UIDs (unique identifiers) within Royale. You do not create instances of UIDUtil; instead you simply call static methods such as the <code>UIDUtil.createUID()</code> method.  <p><b>Note</b>: If you have a dynamic object that has no [Bindable] properties (which force the object to implement the IUID interface), Royale adds an internal property that contains a UID to the object. To avoid having this field in your dynamic object, make it [Bindable], implement the IUID interface in the object class, or set a <coded>uid</coded> property with a value.</p>",
  "tags": [
  {  "tagName": "playerversion",
         "values": ["Flash 9", "AIR 1.1"]},
      {  "tagName": "productversion",
         "values": ["Royale 1.0.0", "Royale 0.0"]},
      {  "tagName": "langversion",
         "values": ["3.0"]}  ],
  "members": [
  { "type": "method",
        "qname": "createUID",
        "namespace": "public",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "Generates a UID (unique identifier) based on ActionScript's pseudo-random number generator and the current time.  <p>The UID has the form <code>&quot;XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX&quot;</code> where X is a hexadecimal digit (0-9, A-F).</p>  <p>This UID will not be truly globally unique; but it is the best we can do without player support for UID generation.</p>",
        "tags": [
        {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Royale 1.0.0", "Royale 0.0"]},
            {  "tagName": "return",
               "values": ["The newly-generated UID."]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "String",
          "params": []}
      ,
      { "type": "method",
        "qname": "fromBinary",
        "namespace": "public",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "Converts a 128-bit UID encoded as a ByteArray to a String representation. The format matches that generated by createUID. If a suitable ByteArray is not provided, null is returned.   ByteArray is provided.",
        "tags": [
        {  "tagName": "param",
               "values": ["ba ByteArray 16 bytes in length representing a 128-bit UID."]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Royale 1.0.0", "Royale 0.0"]},
            {  "tagName": "return",
               "values": ["String representation of the UID, or null if an invalid"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "String",
          "params": [{ "name": "ba", "type": "org.apache.royale.utils.BinaryData"}]}
      ,
      { "type": "method",
        "qname": "isUID",
        "namespace": "public",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "A utility method to check whether a String value represents a correctly formatted UID value. UID values are expected to be in the format generated by createUID(), implying that only capitalized A-F characters in addition to 0-9 digits are supported.",
        "tags": [
        {  "tagName": "param",
               "values": ["uid The value to test whether it is formatted as a UID."]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Royale 1.0.0", "Royale 0.0"]},
            {  "tagName": "return",
               "values": ["Returns true if the value is formatted as a UID."]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "Boolean",
          "params": [{ "name": "uid", "type": "String"}]}
      ,
      { "type": "method",
        "qname": "toBinary",
        "namespace": "public",
        "bindable": [],
        "details": ["static"],
        "deprecated": {},
          "description": "Converts a UID formatted String to a BinaryData. The UID must be in the format generated by createUID, otherwise null is returned.   UID or null if the uid could not be converted.",
        "tags": [
        {  "tagName": "param",
               "values": ["String representing a 128-bit UID"]},
            {  "tagName": "playerversion",
               "values": ["Flash 9", "AIR 1.1"]},
            {  "tagName": "productversion",
               "values": ["Royale 1.0.0", "Royale 0.0"]},
            {  "tagName": "return",
               "values": ["ByteArray 16 bytes in length representing the 128-bits of the"]},
            {  "tagName": "langversion",
               "values": ["3.0"]}  ],
          "return": "org.apache.royale.utils.BinaryData",
          "params": [{ "name": "uid", "type": "String"}]}
      ]
  }
