Coverage Report - org.webslinger.bsf.GenericEngineImpl
 
Classes in this File Line Coverage Branch Coverage Complexity
GenericEngineImpl
58%
18/31
100%
1/1
0
 
 1  
 package org.webslinger.bsf;
 2  
 
 3  
 import java.beans.PropertyChangeEvent;
 4  
 import java.util.HashMap;
 5  
 import java.util.Iterator;
 6  
 import java.util.Map;
 7  
 import java.util.Vector;
 8  
 import java.util.concurrent.ConcurrentHashMap;
 9  
 
 10  
 import org.apache.bsf.BSFDeclaredBean;
 11  
 import org.apache.bsf.BSFException;
 12  
 import org.apache.bsf.BSFManager;
 13  
 import org.apache.bsf.util.BSFFunctions;
 14  
 
 15  
 public abstract class GenericEngineImpl implements GenericEngine {
 16  
     public static final boolean GLOBAL_DEBUG = false;
 17  
 
 18  
     protected BSFManager manager;
 19  
     protected String language;
 20  67
     private ConcurrentHashMap<String, BSFDeclaredBean> beans = new ConcurrentHashMap<String, BSFDeclaredBean>();
 21  
     protected BSFFunctions bsfFunctions;
 22  
     protected boolean localDebug;
 23  
 
 24  67
     protected GenericEngineImpl() {
 25  67
     }
 26  
 
 27  
     public BSFFunctions getBSFFunctions() {
 28  82
         return bsfFunctions;
 29  
     }
 30  
 
 31  
     public Map getBeans() {
 32  274
         return beans;
 33  
     }
 34  
 
 35  
     public boolean getDebug() {
 36  0
         return localDebug;
 37  
     }
 38  
 
 39  
     public void setDebug(boolean debug) {
 40  0
         localDebug = debug;
 41  0
     }
 42  
 
 43  
     public boolean isDebugOn() {
 44  275
         return GLOBAL_DEBUG || localDebug;
 45  
     }
 46  
 
 47  
     public String getLanguage() {
 48  0
         return language;
 49  
     }
 50  
 
 51  
     public BSFManager getManager() {
 52  946
         return manager;
 53  
     }
 54  
 
 55  
     public Object apply(String source, int lineNo, int columnNo, Object body, Vector paramNames, Vector argVector, Vector typeVector) throws BSFException {
 56  0
         return apply(source, lineNo, columnNo, body, paramNames, argVector);
 57  
     }
 58  
 
 59  
     public void terminate() {
 60  0
         reset();
 61  0
     }
 62  
 
 63  
     public void initialize(BSFManager manager, String lang, Vector declaredBeans) throws BSFException {
 64  67
         this.manager = manager;
 65  67
         this.language = lang;
 66  67
         bsfFunctions = new BSFFunctions(manager, this);
 67  67
         Iterator it = declaredBeans.iterator();
 68  1248
         while (it.hasNext()) {
 69  1181
             BSFDeclaredBean bean = (BSFDeclaredBean) it.next();
 70  1181
             beans.put(bean.name, bean);
 71  1181
         }
 72  67
         reset();
 73  67
     }
 74  
 
 75  
     public void undeclareBean(BSFDeclaredBean bean) throws BSFException {
 76  0
         beans.remove(bean.name);
 77  0
     }
 78  
 
 79  
     public void declareBean(BSFDeclaredBean bean) throws BSFException {
 80  0
         beans.put(bean.name, bean);
 81  0
     }
 82  
 
 83  
     protected void reset() {
 84  67
     }
 85  
 
 86  
     public void propertyChange(PropertyChangeEvent event) {
 87  0
         System.err.println("event=" + event);
 88  0
     }
 89  
 }