svn commit: r689713 - in /ofbiz/trunk/framework: entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java minilang/dtd/simple-methods.xsd widget/dtd/widget-form.xsd widget/dtd/widget-screen.xsd widget/dtd/widget-tree.xsd

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

svn commit: r689713 - in /ofbiz/trunk/framework: entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java minilang/dtd/simple-methods.xsd widget/dtd/widget-form.xsd widget/dtd/widget-screen.xsd widget/dtd/widget-tree.xsd

hansbak-2
Author: hansbak
Date: Wed Aug 27 21:17:48 2008
New Revision: 689713

URL: http://svn.apache.org/viewvc?rev=689713&view=rev
Log:
OFBIZ-1934: Ignore property for condition-expr tag, excellent contribution by Bruno Busco

Modified:
    ofbiz/trunk/framework/entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java
    ofbiz/trunk/framework/minilang/dtd/simple-methods.xsd
    ofbiz/trunk/framework/widget/dtd/widget-form.xsd
    ofbiz/trunk/framework/widget/dtd/widget-screen.xsd
    ofbiz/trunk/framework/widget/dtd/widget-tree.xsd

Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java?rev=689713&r1=689712&r2=689713&view=diff
==============================================================================
--- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java (original)
+++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/finder/EntityFinderUtil.java Wed Aug 27 21:17:48 2008
@@ -154,6 +154,7 @@
         protected FlexibleStringExpander operatorExdr;
         protected FlexibleMapAccessor<Object> envNameAcsr;
         protected FlexibleStringExpander valueExdr;
+        protected FlexibleStringExpander ignoreExdr;
         protected boolean ignoreIfNull;
         protected boolean ignoreIfEmpty;
         protected boolean ignoreCase;
@@ -171,6 +172,7 @@
             this.ignoreIfNull = "true".equals(conditionExprElement.getAttribute("ignore-if-null"));
             this.ignoreIfEmpty = "true".equals(conditionExprElement.getAttribute("ignore-if-empty"));
             this.ignoreCase = "true".equals(conditionExprElement.getAttribute("ignore-case"));
+            this.ignoreExdr = FlexibleStringExpander.getInstance(conditionExprElement.getAttribute("ignore"));            
         }
         
         public EntityCondition createCondition(Map<String, ? extends Object> context, String entityName, GenericDelegator delegator) {
@@ -225,6 +227,10 @@
                 return null;
             }
 
+            if ("true".equals(this.ignoreExdr.expandString(context))) {
+                return null;
+            }
+          
             if (operator == EntityOperator.NOT_EQUAL && value != null) {
                 // since some databases don't consider nulls in != comparisons, explicitly include them
                 // this makes more sense logically, but if anyone ever needs it to not behave this way we should add an "or-null" attribute that is true by default

Modified: ofbiz/trunk/framework/minilang/dtd/simple-methods.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/minilang/dtd/simple-methods.xsd?rev=689713&r1=689712&r2=689713&view=diff
==============================================================================
--- ofbiz/trunk/framework/minilang/dtd/simple-methods.xsd (original)
+++ ofbiz/trunk/framework/minilang/dtd/simple-methods.xsd Wed Aug 27 21:17:48 2008
@@ -2643,6 +2643,14 @@
                 </xs:restriction>
             </xs:simpleType>
         </xs:attribute>
+        <xs:attribute name="ignore" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    Ignore the condition if flag is true.
+                    Defaults to false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
     </xs:attributeGroup>
     <xs:element name="condition-object">
         <xs:annotation>

Modified: ofbiz/trunk/framework/widget/dtd/widget-form.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/dtd/widget-form.xsd?rev=689713&r1=689712&r2=689713&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/dtd/widget-form.xsd (original)
+++ ofbiz/trunk/framework/widget/dtd/widget-form.xsd Wed Aug 27 21:17:48 2008
@@ -1594,6 +1594,14 @@
                 </xs:restriction>
             </xs:simpleType>
         </xs:attribute>
+        <xs:attribute name="ignore" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    Ignore the condition if flag is true.
+                    Defaults to false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
     </xs:attributeGroup>
     <xs:element name="condition-list">
         <xs:complexType>

Modified: ofbiz/trunk/framework/widget/dtd/widget-screen.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/dtd/widget-screen.xsd?rev=689713&r1=689712&r2=689713&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/dtd/widget-screen.xsd (original)
+++ ofbiz/trunk/framework/widget/dtd/widget-screen.xsd Wed Aug 27 21:17:48 2008
@@ -669,6 +669,14 @@
                 </xs:restriction>
             </xs:simpleType>
         </xs:attribute>
+        <xs:attribute name="ignore" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    Ignore the condition if flag is true.
+                    Defaults to false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
     </xs:attributeGroup>
     <xs:element name="condition-object">
         <xs:complexType>

Modified: ofbiz/trunk/framework/widget/dtd/widget-tree.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/dtd/widget-tree.xsd?rev=689713&r1=689712&r2=689713&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/dtd/widget-tree.xsd (original)
+++ ofbiz/trunk/framework/widget/dtd/widget-tree.xsd Wed Aug 27 21:17:48 2008
@@ -504,6 +504,14 @@
                 </xs:restriction>
             </xs:simpleType>
         </xs:attribute>
+        <xs:attribute name="ignore" default="false">
+            <xs:annotation>
+                <xs:documentation>
+                    Ignore the condition if flag is true.
+                    Defaults to false.
+                </xs:documentation>
+            </xs:annotation>
+        </xs:attribute>
     </xs:attributeGroup>
 
     <!-- ================ CONDITIONS ================ -->