Coverage report

  %line %branch
org.apache.commons.jelly.tags.beanshell.BeanShellExpression
62% 
100% 

 1  
 /*
 2  
  * Copyright 2002,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.jelly.tags.beanshell;
 17  
 
 18  
 import org.apache.commons.jelly.JellyContext;
 19  
 import org.apache.commons.jelly.expression.ExpressionSupport;
 20  
 
 21  
 import org.apache.commons.logging.Log;
 22  
 import org.apache.commons.logging.LogFactory;
 23  
 
 24  
 
 25  
 /** Represents a <a href="http://www.beanshell.org">beanshell</a> expression
 26  
   *
 27  
   * @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
 28  
   * @version $Revision: 155420 $
 29  
   */
 30  
 public class BeanShellExpression extends ExpressionSupport {
 31  
 
 32  
     /** The Log to which logging calls will be made. */
 33  6
     private static final Log log = LogFactory.getLog( BeanShellExpression.class );
 34  
 
 35  
     /** The expression */
 36  
     private String text;
 37  
 
 38  18
     public BeanShellExpression(String text) {
 39  18
         this.text = text;
 40  18
     }
 41  
 
 42  
     // Expression interface
 43  
     //-------------------------------------------------------------------------
 44  
     public String getExpressionText() {
 45  0
         return "${" + text + "}";
 46  
     }
 47  
 
 48  
     public Object evaluate(JellyContext context) {
 49  
         try {
 50  18
             JellyInterpreter interpreter = new JellyInterpreter();
 51  18
             interpreter.setJellyContext(context);
 52  
 
 53  18
             if ( log.isDebugEnabled() ) {
 54  0
                 log.debug( "Evaluating beanshell: " + text );
 55  
             }
 56  
 
 57  18
             return interpreter.eval( text );
 58  
         }
 59  0
         catch (Exception e) {
 60  0
             log.warn( "Caught exception evaluating: " + text + ". Reason: " + e, e );
 61  0
             return null;
 62  
         }
 63  
     }
 64  
 }

This report is generated by jcoverage, Maven and Maven JCoverage Plugin.