You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by le...@apache.org on 2010/06/18 10:23:28 UTC
svn commit: r955882 -
/ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/control/ConfigXMLReader.java
Author: lektran
Date: Fri Jun 18 08:23:28 2010
New Revision: 955882
URL: http://svn.apache.org/viewvc?rev=955882&view=rev
Log:
Controller events (post/preprocessor, first-visit, after-login etc.) without 'name' attributes were not being loaded into the controller properly since the switch to storing them in <String, Event> maps, fixed by deriving a name from the other element attributes when an explicit one isn't provided
Modified:
ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/control/ConfigXMLReader.java
Modified: ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/control/ConfigXMLReader.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/control/ConfigXMLReader.java?rev=955882&r1=955881&r2=955882&view=diff
==============================================================================
--- ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/control/ConfigXMLReader.java (original)
+++ ofbiz/trunk/framework/webapp/src/org/ofbiz/webapp/control/ConfigXMLReader.java Fri Jun 18 08:23:28 2010
@@ -32,6 +32,7 @@ import javolution.util.FastList;
import javolution.util.FastMap;
import javolution.util.FastSet;
+import org.apache.commons.lang.RandomStringUtils;
import org.ofbiz.base.location.FlexibleLocation;
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.FileUtil;
@@ -318,7 +319,11 @@ public class ConfigXMLReader {
Element firstvisitElement = UtilXml.firstChildElement(rootElement, "firstvisit");
if (firstvisitElement != null) {
for (Element eventElement: UtilXml.childElementList(firstvisitElement, "event")) {
- this.firstVisitEventList.put(eventElement.getAttribute("name"), new Event(eventElement));
+ String eventName = eventElement.getAttribute("name");
+ if (UtilValidate.isEmpty(eventName)) {
+ eventName = eventElement.getAttribute("type") + "::" + eventElement.getAttribute("path") + "::" + eventElement.getAttribute("invoke");
+ }
+ this.firstVisitEventList.put(eventName, new Event(eventElement));
}
}
@@ -326,7 +331,11 @@ public class ConfigXMLReader {
Element preprocessorElement = UtilXml.firstChildElement(rootElement, "preprocessor");
if (preprocessorElement != null) {
for (Element eventElement: UtilXml.childElementList(preprocessorElement, "event")) {
- this.preprocessorEventList.put(eventElement.getAttribute("name"), new Event(eventElement));
+ String eventName = eventElement.getAttribute("name");
+ if (UtilValidate.isEmpty(eventName)) {
+ eventName = eventElement.getAttribute("type") + "::" + eventElement.getAttribute("path") + "::" + eventElement.getAttribute("invoke");
+ }
+ this.preprocessorEventList.put(eventName, new Event(eventElement));
}
}
@@ -334,7 +343,11 @@ public class ConfigXMLReader {
Element postprocessorElement = UtilXml.firstChildElement(rootElement, "postprocessor");
if (postprocessorElement != null) {
for (Element eventElement: UtilXml.childElementList(postprocessorElement, "event")) {
- this.postprocessorEventList.put(eventElement.getAttribute("name"), new Event(eventElement));
+ String eventName = eventElement.getAttribute("name");
+ if (UtilValidate.isEmpty(eventName)) {
+ eventName = eventElement.getAttribute("type") + "::" + eventElement.getAttribute("path") + "::" + eventElement.getAttribute("invoke");
+ }
+ this.postprocessorEventList.put(eventName, new Event(eventElement));
}
}
@@ -342,7 +355,11 @@ public class ConfigXMLReader {
Element afterLoginElement = UtilXml.firstChildElement(rootElement, "after-login");
if (afterLoginElement != null) {
for (Element eventElement: UtilXml.childElementList(afterLoginElement, "event")) {
- this.afterLoginEventList.put(eventElement.getAttribute("name"), new Event(eventElement));
+ String eventName = eventElement.getAttribute("name");
+ if (UtilValidate.isEmpty(eventName)) {
+ eventName = eventElement.getAttribute("type") + "::" + eventElement.getAttribute("path") + "::" + eventElement.getAttribute("invoke");
+ }
+ this.afterLoginEventList.put(eventName, new Event(eventElement));
}
}
@@ -350,7 +367,11 @@ public class ConfigXMLReader {
Element beforeLogoutElement = UtilXml.firstChildElement(rootElement, "before-logout");
if (beforeLogoutElement != null) {
for (Element eventElement: UtilXml.childElementList(beforeLogoutElement, "event")) {
- this.beforeLogoutEventList.put(eventElement.getAttribute("name"), new Event(eventElement));
+ String eventName = eventElement.getAttribute("name");
+ if (UtilValidate.isEmpty(eventName)) {
+ eventName = eventElement.getAttribute("type") + "::" + eventElement.getAttribute("path") + "::" + eventElement.getAttribute("invoke");
+ }
+ this.beforeLogoutEventList.put(eventName, new Event(eventElement));
}
}
}