if (prototype != null) { if ("hopobject".equalsIgnoreCase (prototype.getName ())) opp = reval.esNodePrototype; else opp = reval.getPrototype (prototype.getName ()); }
if (prototype != null) opp = reval.getPrototype (prototype.getName ()); if (!"global".equalsIgnoreCase (name) && !"hopobject".equalsIgnoreCase (name) && opp == null) opp = reval.esNodePrototype;
    public void initRequestEvaluator (RequestEvaluator reval) {            ObjectPrototype op = null;            // get the prototype's prototype if possible and necessary            ObjectPrototype opp = null;            if (prototype != null) {                if ("hopobject".equalsIgnoreCase (prototype.getName ()))                    opp = reval.esNodePrototype;                else                    opp = reval.getPrototype (prototype.getName ());            }            if ("user".equalsIgnoreCase (name)) {                op = reval.esUserPrototype;                op.setPrototype (opp);            } else if ("global".equalsIgnoreCase (name))                op = reval.global;            else if ("hopobject".equalsIgnoreCase (name))                op = reval.esNodePrototype;            else {                op = new ObjectPrototype (opp, reval.evaluator);                try {                    op.putProperty ("prototypename", new ESString (name), "prototypename".hashCode ());                } catch (EcmaScriptException ignore) {}            }            reval.putPrototype (name, op);            // Register a constructor for all types except global.            // This will first create a node and then call the actual (scripted) constructor on it.            if (!"global".equalsIgnoreCase (name)) {                try {                    FunctionPrototype fp = (FunctionPrototype) reval.evaluator.getFunctionPrototype();                    reval.global.putHiddenProperty (name, new NodeConstructor (name, fp, reval));                } catch (EcmaScriptException ignore) {}            }	for (Iterator it = functions.values().iterator(); it.hasNext(); ) {	    FunctionFile ff = (FunctionFile) it.next ();	    ff.updateRequestEvaluator (reval);	}	for (Iterator it = templates.values().iterator(); it.hasNext(); ) {	    Template tmp = (Template) it.next ();	    try {	        tmp.updateRequestEvaluator (reval);	    } catch (EcmaScriptException ignore) {}	}	for (Iterator it = actions.values().iterator(); it.hasNext(); ) {	    Action act = (Action) it.next ();	    try {	        act.updateRequestEvaluator (reval);	    } catch (EcmaScriptException ignore) {}	}    }