Coverage Report - org.apache.commons.betwixt.expression.Expression

Classes in this File Line Coverage Branch Coverage Complexity
Expression
N/A 
N/A 
1

 1  
 /*
 2  
  * Copyright 2001-2004 The Apache Software Foundation.
 3  
  * 
 4  
  * Licensed under the Apache License, Version 2.0 (the "License");
 5  
  * you may not use this file except in compliance with the License.
 6  
  * You may obtain a copy of the License at
 7  
  * 
 8  
  *      http://www.apache.org/licenses/LICENSE-2.0
 9  
  * 
 10  
  * Unless required by applicable law or agreed to in writing, software
 11  
  * distributed under the License is distributed on an "AS IS" BASIS,
 12  
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 13  
  * See the License for the specific language governing permissions and
 14  
  * limitations under the License.
 15  
  */ 
 16  
 package org.apache.commons.betwixt.expression;
 17  
 
 18  
 /** <p><code>Expression</code> represents an arbitrary expression on a bean.</p>
 19  
   *
 20  
   * @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
 21  
   */
 22  
 public interface Expression {
 23  
 
 24  
     /** Evaluates the expression on the bean with the given context
 25  
      * and returns the result 
 26  
      *
 27  
      * @param context evaluate against this <code>Context</code>
 28  
      * @return the value of the expression
 29  
      */
 30  
     public Object evaluate(Context context);    
 31  
     
 32  
     
 33  
     /* XXX 
 34  
        Is update actually useful?
 35  
        None of the expression implementations i can find do anything when it's called.
 36  
        I suspect that it's been replaced by Updater
 37  
        but i maybe i'm missing something subtle
 38  
     */
 39  
     /** <p>Updates the current bean context with a new String value.
 40  
      * This is typically used when parsing XML and updating a beans value
 41  
      * from XML.<p>
 42  
      *
 43  
      * @param context update this <code>Context</code> 
 44  
      * @param newValue the new value for this expression
 45  
      * @deprecated 0.5 use {@link Updater} instead
 46  
      */
 47  
     public void update(Context context, String newValue);
 48  
 }