You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ad...@apache.org on 2012/07/18 07:42:25 UTC

svn commit: r1362772 - in /ofbiz/trunk/framework/entity: dtd/entitymodel.xsd src/org/ofbiz/entity/model/ModelReader.java

Author: adrianc
Date: Wed Jul 18 05:42:24 2012
New Revision: 1362772

URL: http://svn.apache.org/viewvc?rev=1362772&view=rev
Log:
Added a new attribute to the entity definition - "redefinition" - which will suppress "Entity is defined more than once" warnings.

Modified:
    ofbiz/trunk/framework/entity/dtd/entitymodel.xsd
    ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelReader.java

Modified: ofbiz/trunk/framework/entity/dtd/entitymodel.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/dtd/entitymodel.xsd?rev=1362772&r1=1362771&r2=1362772&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/dtd/entitymodel.xsd (original)
+++ ofbiz/trunk/framework/entity/dtd/entitymodel.xsd Wed Jul 18 05:42:24 2012
@@ -92,6 +92,15 @@ under the License.
         <xs:attribute name="never-cache" default="false" type="boolean"/>
         <xs:attribute name="never-check" default="false" type="boolean"/>
         <xs:attribute name="auto-clear-cache" default="true" type="boolean"/>
+        <xs:attribute name="redefinition" type="boolean">
+            <xs:annotation>
+                <xs:documentation>
+                    Indicates if this entity redefines an existing entity.
+                    When set to "true" it will suppress "Entity is defined more than once" warnings.
+                    Defaults to "false".
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
         <xs:attribute name="title" type="xs:string"/>
         <xs:attribute name="copyright" type="xs:string"/>
         <xs:attribute name="author" type="xs:string"/>

Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelReader.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelReader.java?rev=1362772&r1=1362771&r2=1362772&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelReader.java (original)
+++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelReader.java Wed Jul 18 05:42:24 2012
@@ -127,6 +127,7 @@ public class ModelReader implements Seri
     private ModelEntity buildEntity(ResourceHandler entityResourceHandler, Element curEntityElement, int i, ModelInfo def) throws GenericEntityException {
         boolean isEntity = "entity".equals(curEntityElement.getNodeName());
         String entityName = UtilXml.checkEmpty(curEntityElement.getAttribute("entity-name")).intern();
+        boolean redefinedEntity = "true".equals(curEntityElement.getAttribute("redefinition"));
 
         // add entityName to appropriate resourceHandlerEntities collection
         Collection<String> resourceHandlerEntityNames = resourceHandlerEntities.get(entityResourceHandler);
@@ -138,7 +139,7 @@ public class ModelReader implements Seri
         resourceHandlerEntityNames.add(entityName);
 
         // check to see if entity with same name has already been read
-        if (entityCache.containsKey(entityName)) {
+        if (entityCache.containsKey(entityName) && !redefinedEntity) {
             Debug.logWarning("WARNING: Entity " + entityName +
                 " is defined more than once, most recent will over-write " +
                 "previous definition(s)", module);