svn commit: r1755348 - in /ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util: collections/FlexibleMapAccessor.java string/UelUtil.java

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

svn commit: r1755348 - in /ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util: collections/FlexibleMapAccessor.java string/UelUtil.java

Arun Patidar-4
Author: arunpatidar
Date: Fri Aug  5 15:38:00 2016
New Revision: 1755348

URL: http://svn.apache.org/viewvc?rev=1755348&view=rev
Log:
Applied patch from jira issue - OFBIZ-7810 - Enforce noninstantiability to UelUtil class. Thanks Rohit Koushal and Rishi Solanki for your contribution.

Modified:
    ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessor.java
    ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java

Modified: ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessor.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessor.java?rev=1755348&r1=1755347&r2=1755348&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessor.java (original)
+++ ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/collections/FlexibleMapAccessor.java Fri Aug  5 15:38:00 2016
@@ -137,11 +137,11 @@ public final class FlexibleMapAccessor<T
         if (base == null || this.isEmpty) {
             return null;
         }
-        if (locale != null && !base.containsKey(UelUtil.localizedMapLocaleKey)) {
+        if (locale != null && !base.containsKey(UelUtil.getLocalizedMapLocaleKey())) {
             // This method is a hot spot, so placing the cast here instead of in another class.
             // Map<String, Object> writableMap = UtilGenerics.cast(base);
             Map<String, Object> writableMap = (Map<String, Object>) base;
-            writableMap.put(UelUtil.localizedMapLocaleKey, locale);
+            writableMap.put(UelUtil.getLocalizedMapLocaleKey(), locale);
         }
         Object obj = null;
         try {

Modified: ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java?rev=1755348&r1=1755347&r2=1755348&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java (original)
+++ ofbiz/trunk/framework/base/src/main/java/org/apache/ofbiz/base/util/string/UelUtil.java Fri Aug  5 15:38:00 2016
@@ -47,11 +47,11 @@ import org.apache.ofbiz.base.util.UtilMi
 import org.apache.ofbiz.base.util.collections.LocalizedMap;
 
 /** Implements the Unified Expression Language (JSR-245). */
-public class UelUtil {
+public final class UelUtil {
     protected static final String module = UelUtil.class.getName();
-    public static final String localizedMapLocaleKey = LocalizedMap.class.getName() + "_locale".replace(".", "_");
-    protected static final ExpressionFactory exprFactory = JuelConnector.newExpressionFactory();
-    protected static final ELResolver defaultResolver = new ExtendedCompositeResolver() {
+    private static final String localizedMapLocaleKey = LocalizedMap.class.getName() + "_locale".replace(".", "_");
+    private static final ExpressionFactory exprFactory = JuelConnector.newExpressionFactory();
+    private static final ELResolver defaultResolver = new ExtendedCompositeResolver() {
         {
             add(new ExtendedMapResolver(false));
             add(new ExtendedListResolver(false));
@@ -61,7 +61,13 @@ public class UelUtil {
             add(new BeanELResolver(false));
         }
     };
-
+    
+    private UelUtil () {}
+    
+    public static String getLocalizedMapLocaleKey() {
+        return localizedMapLocaleKey;
+    }
+    
     /** Evaluates a Unified Expression Language expression and returns the result.
      * @param context Evaluation context (variables)
      * @param expression UEL expression
@@ -116,10 +122,10 @@ public class UelUtil {
         ve.setValue(elContext, null);
     }
 
-    protected static class BasicContext extends ELContext {
-        protected final Map<String, Object> variables;
-        protected final VariableMapper variableMapper;
-        public BasicContext(Map<String, Object> context) {
+    private static class BasicContext extends ELContext {
+        private final Map<String, Object> variables;
+        private final VariableMapper variableMapper;
+        private BasicContext(Map<String, Object> context) {
             this.variableMapper = new BasicVariableMapper(this);
             this.variables = context;
         }
@@ -137,10 +143,10 @@ public class UelUtil {
         }
     }
 
-    protected static class ReadOnlyContext extends ELContext {
-        protected final Map<String, ? extends Object> variables;
-        protected final VariableMapper variableMapper;
-        public ReadOnlyContext(Map<String, ? extends Object> context) {
+    private static class ReadOnlyContext extends ELContext {
+        private final Map<String, ? extends Object> variables;
+        private final VariableMapper variableMapper;
+        private ReadOnlyContext(Map<String, ? extends Object> context) {
             this.variableMapper = new ReadOnlyVariableMapper(this);
             this.variables = UtilGenerics.cast(context);
         }
@@ -156,9 +162,9 @@ public class UelUtil {
         public VariableMapper getVariableMapper() {
             return this.variableMapper;
         }
-        protected static class ReadOnlyVariableMapper extends VariableMapper {
-            protected final ReadOnlyContext elContext;
-            protected ReadOnlyVariableMapper(ReadOnlyContext elContext) {
+        private static class ReadOnlyVariableMapper extends VariableMapper {
+            private final ReadOnlyContext elContext;
+            private ReadOnlyVariableMapper(ReadOnlyContext elContext) {
                 this.elContext = elContext;
             }
             @Override
@@ -176,9 +182,9 @@ public class UelUtil {
         }
     }
 
-    protected static class BasicVariableMapper extends VariableMapper {
-        protected final BasicContext elContext;
-        protected BasicVariableMapper(BasicContext elContext) {
+    private static class BasicVariableMapper extends VariableMapper {
+        private final BasicContext elContext;
+        private BasicVariableMapper(BasicContext elContext) {
             this.elContext = elContext;
         }
 
@@ -207,9 +213,9 @@ public class UelUtil {
     }
 
     @SuppressWarnings("serial")
-    protected static class ReadOnlyExpression extends ValueExpression {
-        protected final Object object;
-        protected ReadOnlyExpression(Object object) {
+    private static class ReadOnlyExpression extends ValueExpression {
+        private final Object object;
+        private ReadOnlyExpression(Object object) {
             this.object = object;
         }
 
@@ -268,10 +274,10 @@ public class UelUtil {
     }
 
     @SuppressWarnings("serial")
-    protected static class BasicValueExpression extends ValueExpression {
-        protected final BasicContext elContext;
-        protected final String varName;
-        public BasicValueExpression(String varName, BasicContext elContext) {
+    private static class BasicValueExpression extends ValueExpression {
+        private final BasicContext elContext;
+        private final String varName;
+        private BasicValueExpression(String varName, BasicContext elContext) {
             this.elContext = elContext;
             this.varName = varName;
         }
@@ -328,7 +334,7 @@ public class UelUtil {
     /** Custom <code>CompositeELResolver</code> used to handle variable
      * auto-vivify.
      */
-    protected static class ExtendedCompositeResolver extends CompositeELResolver {
+    private static class ExtendedCompositeResolver extends CompositeELResolver {
         @Override
         public void setValue(ELContext context, Object base, Object property, Object val) {
             super.setValue(context, base, property, val);
@@ -348,9 +354,9 @@ public class UelUtil {
     /** Custom <code>ListELResolver</code> used to handle OFBiz
      * <code>List</code> syntax.
      */
-    protected static class ExtendedListResolver extends ListELResolver {
-        protected boolean isReadOnly;
-        public ExtendedListResolver(boolean isReadOnly) {
+    private static class ExtendedListResolver extends ListELResolver {
+        private boolean isReadOnly;
+        private ExtendedListResolver(boolean isReadOnly) {
             super(isReadOnly);
             this.isReadOnly = isReadOnly;
         }
@@ -397,8 +403,8 @@ public class UelUtil {
     /** Custom <code>MapELResolver</code> class used to accommodate
      * <code>LocalizedMap</code> instances.
      */
-    protected static class ExtendedMapResolver extends MapELResolver {
-        public ExtendedMapResolver(boolean isReadOnly) {
+    private static class ExtendedMapResolver extends MapELResolver {
+        private ExtendedMapResolver(boolean isReadOnly) {
             super(isReadOnly);
         }
         @Override