Author: gvanmatre
Date: Sat Sep 17 20:50:31 2005
New Revision: 289884
URL: http://svn.apache.org/viewcvs?rev=289884&view=rev
Log:
Optimized the loop for moving HTML attributes over the corresponding defined in
the XML config files.
Modified:
struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/parser/builder/Builder.java
Modified:
struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/parser/builder/Builder.java
URL:
http://svn.apache.org/viewcvs/struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/parser/builder/Builder.java?rev=289884&r1=289883&r2=289884&view=diff
==============================================================================
---
struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/parser/builder/Builder.java
(original)
+++
struts/shale/trunk/clay-plugin/src/java/org/apache/shale/clay/parser/builder/Builder.java
Sat Sep 17 20:50:31 2005
@@ -276,20 +276,23 @@
/**
* <p>
* This method applies the HTML attribute overrides to the declarative
- * component.
+ * component, an object representation of the XML configuration.
* </p>
*/
protected void assignAttributes(Node node, ElementBean target) {
// override with html attributes
- Iterator ai = target.getAttributes().entrySet().iterator();
- while (ai.hasNext()) {
- Map.Entry e = (Map.Entry) ai.next();
- AttributeBean attr = (AttributeBean) e.getValue();
- if (!attr.getName().equals("jsfid") &&
node.getAttributes().containsKey(attr.getName())) {
- String value = (String)
node.getAttributes().get(attr.getName());
- if (value != null)
- createAttribute(attr.getName(), value, target);
+ Iterator ai = node.getAttributes().keySet().iterator();
+ next: while (ai.hasNext()) {
+ String key = (String) ai.next();
+
+ if (key.equals("jsfid"))
+ continue next;
+
+ if (target.getAttributes().containsKey(key)) {
+ String value = null;
+ if ((value = (String) node.getAttributes().get(key)) != null)
+ createAttribute(key, value, target);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]