Author: kylem
Date: Tue Apr 12 12:25:45 2005
New Revision: 161098
URL: http://svn.apache.org/viewcvs?view=rev&rev=161098
Log:
Minor tweak to previous checkin to this file to improve thread safety
Modified:
incubator/beehive/trunk/controls/src/runtime/org/apache/beehive/controls/runtime/bean/ControlBeanContext.java
Modified:
incubator/beehive/trunk/controls/src/runtime/org/apache/beehive/controls/runtime/bean/ControlBeanContext.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/controls/src/runtime/org/apache/beehive/controls/runtime/bean/ControlBeanContext.java?view=diff&r1=161097&r2=161098
==============================================================================
---
incubator/beehive/trunk/controls/src/runtime/org/apache/beehive/controls/runtime/bean/ControlBeanContext.java
(original)
+++
incubator/beehive/trunk/controls/src/runtime/org/apache/beehive/controls/runtime/bean/ControlBeanContext.java
Tue Apr 12 12:25:45 2005
@@ -810,7 +810,7 @@
return _controlID;
// Initially set to the local beans relative ID
- _controlID = _bean.getLocalID();
+ String id = _bean.getLocalID();
// If there is a parent context, prepend its ID and the ID separator
BeanContext bc = getBeanContext();
@@ -819,17 +819,21 @@
String parentID = ((ControlBeanContext)bc).getControlID();
if (parentID != null)
{
- _controlID = parentID +
-
org.apache.beehive.controls.api.bean.ControlBean.IDSeparator +
- _controlID;
+ id = parentID +
+
org.apache.beehive.controls.api.bean.ControlBean.IDSeparator +
+ id;
}
}
- return _controlID;
+
+ // Cache the computed value
+ _controlID = id;
+
+ return id;
}
/**
* Resets the composite control ID for this context and all children
beneath it. This
- * can be used to invalidate cached values when necessarily (for example,
when a context
+ * can be used to invalidate cached values when necessary (for example,
when a context
* is reparented).
*/
private void resetControlID()