Author: jacopoc
Date: Wed Aug 21 06:20:42 2013
New Revision: 1516094

URL: http://svn.apache.org/r1516094
Log:
Fixed bug introduced in rev 1490678 (removal of cached DOM tree code and 
refactoring for thread-safety): after that commit it was not possible to define 
entity data readers at runtime, this fix re-enables the feature.

Modified:
    
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/config/model/EntityDataReader.java
    ofbiz/trunk/framework/entity/src/org/ofbiz/entity/util/EntityDataLoader.java

Modified: 
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/config/model/EntityDataReader.java
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/config/model/EntityDataReader.java?rev=1516094&r1=1516093&r2=1516094&view=diff
==============================================================================
--- 
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/config/model/EntityDataReader.java
 (original)
+++ 
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/config/model/EntityDataReader.java
 Wed Aug 21 06:20:42 2013
@@ -39,6 +39,14 @@ public final class EntityDataReader {
     private final String name; // type = xs:string
     private final List<Resource> resourceList; // <resource>
 
+    public EntityDataReader(String name) throws GenericEntityConfException {
+        if (name == null || name.isEmpty()) {
+            throw new GenericEntityConfException("EntityDataReader name cannot 
be empty");
+        }
+        this.name = name;
+        this.resourceList = Collections.emptyList();
+    }
+
     EntityDataReader(Element element) throws GenericEntityConfException {
         String lineNumberText = 
EntityConfigUtil.createConfigFileLineNumberText(element);
         String name = element.getAttribute("name").intern();

Modified: 
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/util/EntityDataLoader.java
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/util/EntityDataLoader.java?rev=1516094&r1=1516093&r2=1516094&view=diff
==============================================================================
--- 
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/util/EntityDataLoader.java 
(original)
+++ 
ofbiz/trunk/framework/entity/src/org/ofbiz/entity/util/EntityDataLoader.java 
Wed Aug 21 06:20:42 2013
@@ -114,6 +114,11 @@ public class EntityDataLoader {
                 EntityDataReader entityDataReaderInfo = null;
                 try {
                     entityDataReaderInfo = 
EntityConfigUtil.getEntityDataReader(readerName);
+                    if (entityDataReaderInfo == null) {
+                        // create a reader name defined at runtime
+                        Debug.logInfo("Could not find entity-data-reader 
named: " + readerName + ". Creating a new reader with this name. ", module);
+                        entityDataReaderInfo = new 
EntityDataReader(readerName);
+                    }
                 } catch (GenericEntityConfException e) {
                     Debug.logWarning(e, "Exception thrown while getting entity 
data reader config: ", module);
                 }


Reply via email to