Author: lektran
Date: Mon Mar 28 21:37:22 2016
New Revision: 1736930

URL: http://svn.apache.org/viewvc?rev=1736930&view=rev
Log:
Merged from trunk r1736922:
Ensure a ModelField is set for rhs EntityConditionValues that don't already 
have it, such as the EntityFunction classes

Modified:
    
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityComparisonOperator.java
    
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionSubSelect.java
    
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionValue.java
    
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFieldValue.java
    
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFunction.java

Modified: 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityComparisonOperator.java
URL: 
http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityComparisonOperator.java?rev=1736930&r1=1736929&r2=1736930&view=diff
==============================================================================
--- 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityComparisonOperator.java
 (original)
+++ 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityComparisonOperator.java
 Mon Mar 28 21:37:22 2016
@@ -118,6 +118,9 @@ public abstract class EntityComparisonOp
     protected void makeRHSWhereStringValue(ModelEntity entity, 
List<EntityConditionParam> entityConditionParams, StringBuilder sql, ModelField 
field, R rhs, Datasource datasourceInfo) {
         if (rhs instanceof EntityConditionValue) {
             EntityConditionValue ecv = (EntityConditionValue) rhs;
+            if (ecv.getModelField(entity) == null) {
+                ecv.setModelField(field);
+            }
             ecv.addSqlValue(sql, entity, entityConditionParams, false, 
datasourceInfo);
         } else {
             addValue(sql, field, rhs, entityConditionParams);

Modified: 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionSubSelect.java
URL: 
http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionSubSelect.java?rev=1736930&r1=1736929&r2=1736930&view=diff
==============================================================================
--- 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionSubSelect.java
 (original)
+++ 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionSubSelect.java
 Mon Mar 28 21:37:22 2016
@@ -132,6 +132,11 @@ public class EntityConditionSubSelect ex
     }
 
     @Override
+    public void setModelField(ModelField modelEntity) {
+        // do nothing for now
+    }
+
+    @Override
     public Comparable<?> getValue(Delegator delegator, Map<String, ? extends 
Object> map) {
         // do nothing for now
         return null;

Modified: 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionValue.java
URL: 
http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionValue.java?rev=1736930&r1=1736929&r2=1736930&view=diff
==============================================================================
--- 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionValue.java
 (original)
+++ 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityConditionValue.java
 Mon Mar 28 21:37:22 2016
@@ -79,6 +79,11 @@ public abstract class EntityConditionVal
         }
 
         @Override
+        public void setModelField(ModelField field) {
+            // Do nothing;
+        }
+
+        @Override
         public Object getValue(Delegator delegator, Map<String, ? extends 
Object> map) {
             return value;
         }
@@ -100,6 +105,8 @@ public abstract class EntityConditionVal
 
     public abstract ModelField getModelField(ModelEntity modelEntity);
 
+    public abstract void setModelField(ModelField modelEntity);
+
     public void addSqlValue(StringBuilder sql, ModelEntity modelEntity, 
List<EntityConditionParam> entityConditionParams, boolean 
includeTableNamePrefix,
             Datasource datasourceinfo) {
         addSqlValue(sql, emptyAliases, modelEntity, entityConditionParams, 
includeTableNamePrefix, datasourceinfo);

Modified: 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFieldValue.java
URL: 
http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFieldValue.java?rev=1736930&r1=1736929&r2=1736930&view=diff
==============================================================================
--- 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFieldValue.java
 (original)
+++ 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFieldValue.java
 Mon Mar 28 21:37:22 2016
@@ -122,6 +122,12 @@ public class EntityFieldValue extends En
         return getField(modelEntity, fieldName);
     }
 
+
+    @Override
+    public void setModelField(ModelField field) {
+        // do nothing
+    }
+
     @Override
     public void addSqlValue(StringBuilder sql, Map<String, String> 
tableAliases, ModelEntity modelEntity, List<EntityConditionParam> 
entityConditionParams, boolean includeTableNamePrefix, Datasource 
datasourceInfo) {
         if (this.modelViewEntity != null) {

Modified: 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFunction.java
URL: 
http://svn.apache.org/viewvc/ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFunction.java?rev=1736930&r1=1736929&r2=1736930&view=diff
==============================================================================
--- 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFunction.java
 (original)
+++ 
ofbiz/branches/release13.07/framework/entity/src/org/ofbiz/entity/condition/EntityFunction.java
 Mon Mar 28 21:37:22 2016
@@ -182,6 +182,7 @@ public abstract class EntityFunction<T e
     protected EntityConditionValue nested = null;
     protected Object value = null;
     protected Fetcher<T> fetcher = null;
+    protected ModelField field;
 
     protected EntityFunction() {}
 
@@ -275,10 +276,15 @@ public abstract class EntityFunction<T e
         if (nested != null) {
             return nested.getModelField(modelEntity);
         }
-        return null;
+        return field;
     }
 
     @Override
+    public void setModelField(ModelField field) {
+        this.field = field;
+    }
+    
+    @Override
     public void validateSql(ModelEntity modelEntity) throws 
GenericModelException {
         if (nested != null) {
             nested.validateSql(modelEntity);


Reply via email to