예제 #1
0
 @Override
 protected Object readResolve() {
   super.readResolve();
   // FJE: If the propertyMap field has something in it, it could be:
   //		a pre-1.3b66 token that contains a HashMap<?,?>, or
   //		a pre-1.3b78 token that actually has the CaseInsensitiveHashMap<?>.
   // Newer tokens will use propertyMapCI so we only need to make corrections
   // if the old field has data in it.
   if (propertyMap != null) {
     if (propertyMap instanceof CaseInsensitiveHashMap) {
       propertyMapCI = (CaseInsensitiveHashMap<Object>) propertyMap;
     } else {
       propertyMapCI = new CaseInsensitiveHashMap<Object>();
       propertyMapCI.putAll(propertyMap);
       propertyMap.clear(); // It'll never be written out, but we should free the memory.
     }
     propertyMap = null;
   }
   // 1.3 b77
   if (exposedAreaGUID == null) {
     exposedAreaGUID = new GUID();
   }
   return this;
 }