You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by ap...@apache.org on 2011/02/08 18:48:49 UTC

svn commit: r1068494 - in /tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org: ./ apache/ apache/tiles/ apache/tiles/eval/

Author: apetrelli
Date: Tue Feb  8 17:48:49 2011
New Revision: 1068494

URL: http://svn.apache.org/viewvc?rev=1068494&view=rev
Log:
TILESSB-40
First classes of tiles-eval-api.

Added:
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/BasicEvaluatorRegistry.java
      - copied, changed from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/BasicAttributeEvaluatorFactory.java
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/DirectEvaluator.java
      - copied, changed from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/impl/DirectAttributeEvaluator.java
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/Evaluator.java
      - copied, changed from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluator.java
    tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/EvaluatorRegistry.java
      - copied, changed from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluatorFactory.java

Copied: tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/BasicEvaluatorRegistry.java (from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/BasicAttributeEvaluatorFactory.java)
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/BasicEvaluatorRegistry.java?p2=tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/BasicEvaluatorRegistry.java&p1=tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/BasicAttributeEvaluatorFactory.java&r1=1058082&r2=1068494&rev=1068494&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/BasicAttributeEvaluatorFactory.java (original)
+++ tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/BasicEvaluatorRegistry.java Tue Feb  8 17:48:49 2011
@@ -19,36 +19,29 @@
  * under the License.
  */
 
-package org.apache.tiles.evaluator;
+package org.apache.tiles.eval;
 
 import java.util.HashMap;
 import java.util.Map;
 
-import org.apache.tiles.Attribute;
-import org.apache.tiles.Expression;
-
 /**
  * Basic implementation of {@link AttributeEvaluatorFactory}. It supports a
  * default attribute evaluator, in case the language is not recognized.
  *
  * @version $Rev$ $Date$
- * @since 2.2.0
  */
-public class BasicAttributeEvaluatorFactory implements
-        AttributeEvaluatorFactory {
+public class BasicEvaluatorRegistry implements EvaluatorRegistry {
 
     /**
      * The default evaluator to return if it is not found in the map of known
      * languages.
      */
-    private AttributeEvaluator defaultEvaluator;
+    private Evaluator defaultEvaluator;
 
     /**
      * Maps names of expression languages to their attribute evaluator.
-     *
-     * @since 2.2.0
      */
-    private Map<String, AttributeEvaluator> language2evaluator;
+    private Map<String, Evaluator> language2evaluator;
 
     /**
      * Constructor.
@@ -57,9 +50,9 @@ public class BasicAttributeEvaluatorFact
      * found in the map of known languages.
      * @since 2.2.0
      */
-    public BasicAttributeEvaluatorFactory(AttributeEvaluator defaultEvaluator) {
+    public BasicEvaluatorRegistry(Evaluator defaultEvaluator) {
         this.defaultEvaluator = defaultEvaluator;
-        language2evaluator = new HashMap<String, AttributeEvaluator>();
+        language2evaluator = new HashMap<String, Evaluator>();
     }
 
     /**
@@ -67,27 +60,17 @@ public class BasicAttributeEvaluatorFact
      *
      * @param language The name of the expression language.
      * @param evaluator The associated attribute evaluator.
-     * @since 2.2.0
      */
-    public void registerAttributeEvaluator(String language, AttributeEvaluator evaluator) {
+    public void registerAttributeEvaluator(String language, Evaluator evaluator) {
         language2evaluator.put(language, evaluator);
     }
 
     /** {@inheritDoc} */
-    public AttributeEvaluator getAttributeEvaluator(String language) {
-        AttributeEvaluator retValue = language2evaluator.get(language);
+    public Evaluator getAttributeEvaluator(String language) {
+        Evaluator retValue = language2evaluator.get(language);
         if (retValue == null) {
             retValue = defaultEvaluator;
         }
         return retValue;
     }
-
-    /** {@inheritDoc} */
-    public AttributeEvaluator getAttributeEvaluator(Attribute attribute) {
-        Expression expression = attribute.getExpressionObject();
-        if (expression != null) {
-            return getAttributeEvaluator(expression.getLanguage());
-        }
-        return defaultEvaluator;
-    }
 }

Copied: tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/DirectEvaluator.java (from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/impl/DirectAttributeEvaluator.java)
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/DirectEvaluator.java?p2=tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/DirectEvaluator.java&p1=tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/impl/DirectAttributeEvaluator.java&r1=1058082&r2=1068494&rev=1068494&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/impl/DirectAttributeEvaluator.java (original)
+++ tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/DirectEvaluator.java Tue Feb  8 17:48:49 2011
@@ -18,9 +18,8 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.tiles.evaluator.impl;
+package org.apache.tiles.eval;
 
-import org.apache.tiles.evaluator.AbstractAttributeEvaluator;
 import org.apache.tiles.request.Request;
 
 /**
@@ -28,9 +27,8 @@ import org.apache.tiles.request.Request;
  * compatibility.
  *
  * @version $Rev$ $Date$
- * @since 2.1.0
  */
-public class DirectAttributeEvaluator extends AbstractAttributeEvaluator {
+public class DirectEvaluator implements Evaluator {
 
     /** {@inheritDoc} */
     public Object evaluate(String expression, Request request) {

Copied: tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/Evaluator.java (from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluator.java)
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/Evaluator.java?p2=tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/Evaluator.java&p1=tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluator.java&r1=1058082&r2=1068494&rev=1068494&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluator.java (original)
+++ tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/Evaluator.java Tue Feb  8 17:48:49 2011
@@ -18,18 +18,16 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.tiles.evaluator;
+package org.apache.tiles.eval;
 
-import org.apache.tiles.Attribute;
 import org.apache.tiles.request.Request;
 
 /**
  * It represents an object that resolves a string to return an object.
  *
  * @version $Rev$ $Date$
- * @since 2.1.0
  */
-public interface AttributeEvaluator {
+public interface Evaluator {
 
     /**
      * Evaluates an expression.
@@ -37,17 +35,6 @@ public interface AttributeEvaluator {
      * @param expression The expression to evaluate.
      * @param request The request object.
      * @return The evaluated object.
-     * @since 2.1.0
      */
     Object evaluate(String expression, Request request);
-
-    /**
-     * Evaluates an attribute value.
-     *
-     * @param attribute The attribute to evaluate.
-     * @param request The request object.
-     * @return The evaluated object.
-     * @since 2.1.0
-     */
-    Object evaluate(Attribute attribute, Request request);
 }

Copied: tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/EvaluatorRegistry.java (from r1058082, tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluatorFactory.java)
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/EvaluatorRegistry.java?p2=tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/EvaluatorRegistry.java&p1=tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluatorFactory.java&r1=1058082&r2=1068494&rev=1068494&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles3/tiles-core/src/main/java/org/apache/tiles/evaluator/AttributeEvaluatorFactory.java (original)
+++ tiles/sandbox/trunk/tiles-eval/tiles-eval-api/src/main/java/org/apache/tiles/eval/EvaluatorRegistry.java Tue Feb  8 17:48:49 2011
@@ -19,33 +19,21 @@
  * under the License.
  */
 
-package org.apache.tiles.evaluator;
+package org.apache.tiles.eval;
 
-import org.apache.tiles.Attribute;
 
 /**
- * Creates an attribute evaluator using the language or an attribute.
+ * Returns an evaluator for the given language code.
  *
  * @version $Rev$ $Date$
- * @since 2.2.0
  */
-public interface AttributeEvaluatorFactory {
+public interface EvaluatorRegistry {
 
     /**
-     * Creates and attribute evaluator using an attribute.
+     * Returns an evaluator for the given expression language.
      *
-     * @param attribute The attribute used to obtain the evaluator.
-     * @return The attribute evaluator. It must not be <code>null</code>.
-     * @since 2.2.0
+     * @param languageCode The name of the expression language.
+     * @return The evaluator.
      */
-    AttributeEvaluator getAttributeEvaluator(Attribute attribute);
-
-    /**
-     * Creates and attribute evaluator for the given expression language.
-     *
-     * @param language The name of the expression language.
-     * @return The attribute evaluator. It must not be <code>null</code>.
-     * @since 2.2.0
-     */
-    AttributeEvaluator getAttributeEvaluator(String language);
+    Evaluator getAttributeEvaluator(String languageCode);
 }