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

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

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

jleroux@apache.org
Author: jleroux
Date: Mon Jan 24 16:33:16 2011
New Revision: 1062863

URL: http://svn.apache.org/viewvc?rev=1062863&view=rev
Log:
A patch from Deyan "Allow attributes enable-lock, no-auto-stamp, auto-clear-cache, never-cache and sequence-bank-size in <extend-entity> tag in entitydef.xml fields " (https://issues.apache.org/jira/browse/OFBIZ-3882) - OFBIZ-3882

Allow attributes
enable-lock
no-auto-stamp
auto-clear-cache
never-cache
sequence-bank-size

in <extend-entity> tag in entitydef.xml fiels

Example: <extend-entity entity-name="Person" enable-lock="true" sequence-bank-size="1" />

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

Modified: ofbiz/trunk/framework/entity/dtd/entitymodel.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/dtd/entitymodel.xsd?rev=1062863&r1=1062862&r2=1062863&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/dtd/entitymodel.xsd (original)
+++ ofbiz/trunk/framework/entity/dtd/entitymodel.xsd Mon Jan 24 16:33:16 2011
@@ -463,5 +463,10 @@ under the License.
         <xs:attribute name="entity-name" type="xs:string" use="required"/>
         <xs:attribute name="default-resource-name" type="xs:string"/>
         <xs:attribute name="dependent-on" type="xs:string"/>
+        <xs:attribute name="sequence-bank-size" type="xs:string"/>
+        <xs:attribute name="enable-lock" type="boolean"/>
+        <xs:attribute name="no-auto-stamp" type="boolean"/>
+        <xs:attribute name="never-cache" type="boolean"/>
+        <xs:attribute name="auto-clear-cache" type="boolean"/>
     </xs:attributeGroup>
 </xs:schema>

Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelEntity.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelEntity.java?rev=1062863&r1=1062862&r2=1062863&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelEntity.java (original)
+++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelEntity.java Mon Jan 24 16:33:16 2011
@@ -304,6 +304,33 @@ public class ModelEntity extends ModelIn
 
 
     public void addExtendEntity(ModelReader reader, Element extendEntityElement) {
+        if ( extendEntityElement.hasAttribute( "enable-lock")) {
+            this.doLock = UtilXml.checkBoolean(extendEntityElement.getAttribute("enable-lock"), false);
+        }
+        
+        if ( extendEntityElement.hasAttribute( "no-auto-stamp")) {
+            this.noAutoStamp = UtilXml.checkBoolean(extendEntityElement.getAttribute("no-auto-stamp"), false);
+        }
+        
+        if ( extendEntityElement.hasAttribute( "auto-clear-cache")) {
+            this.autoClearCache = UtilXml.checkBoolean(extendEntityElement.getAttribute("auto-clear-cache"), false);
+        }
+        
+        if ( extendEntityElement.hasAttribute( "never-cache")) {
+            this.neverCache = UtilXml.checkBoolean(extendEntityElement.getAttribute("never-cache"), false);
+        }
+        
+        if ( extendEntityElement.hasAttribute( "sequence-bank-size")) {
+            String sequenceBankSizeStr = UtilXml.checkEmpty(extendEntityElement.getAttribute("sequence-bank-size"));
+            if (UtilValidate.isNotEmpty(sequenceBankSizeStr)) {
+                try {
+                    this.sequenceBankSize = Integer.valueOf(sequenceBankSizeStr);
+                } catch (NumberFormatException e) {
+                    Debug.logError("Error parsing sequence-bank-size value [" + sequenceBankSizeStr + "] for entity [" + this.entityName + "]", module);
+                }
+            }
+        }
+        
         for (Element fieldElement: UtilXml.childElementList(extendEntityElement, "field")) {
             ModelField field = reader.createModelField(fieldElement);
             if (field != null) {