Search in sources :

Example 1 with VariablesImpl

use of lucee.runtime.type.scope.VariablesImpl in project Lucee by lucee.

the class CFTag method cfmlStartTag.

private int cfmlStartTag() throws PageException {
    callerScope.initialize(pageContext);
    // thistag
    if (thistagScope == null)
        thistagScope = new StructImpl(Struct.TYPE_LINKED);
    thistagScope.set(GENERATED_CONTENT, "");
    thistagScope.set(EXECUTION_MODE, "start");
    thistagScope.set(EXECUTE_BODY, Boolean.TRUE);
    thistagScope.set(KeyConstants._HASENDTAG, Caster.toBoolean(hasBody));
    ctVariablesScope = new VariablesImpl();
    ctVariablesScope.setEL(KeyConstants._ATTRIBUTES, attributesScope);
    ctVariablesScope.setEL(KeyConstants._CALLER, callerScope);
    ctVariablesScope.setEL(KeyConstants._THISTAG, thistagScope);
    // include
    doInclude();
    return Caster.toBooleanValue(thistagScope.get(EXECUTE_BODY)) ? EVAL_BODY_BUFFERED : SKIP_BODY;
}
Also used : StructImpl(lucee.runtime.type.StructImpl) VariablesImpl(lucee.runtime.type.scope.VariablesImpl)

Example 2 with VariablesImpl

use of lucee.runtime.type.scope.VariablesImpl in project Lucee by lucee.

the class PageContextImpl method initialize.

/**
 * initialize a existing page context
 * @param servlet
 * @param req
 * @param rsp
 * @param errorPageURL
 * @param needsSession
 * @param bufferSize
 * @param autoFlush
 */
public PageContextImpl initialize(HttpServlet servlet, HttpServletRequest req, HttpServletResponse rsp, String errorPageURL, boolean needsSession, int bufferSize, boolean autoFlush, boolean isChild, boolean ignoreScopes) {
    parent = null;
    appListenerType = ApplicationListener.TYPE_NONE;
    this.ignoreScopes = ignoreScopes;
    requestId = counter++;
    ReqRspUtil.setContentType(rsp, "text/html; charset=" + config.getWebCharset().name());
    this.isChild = isChild;
    applicationContext = defaultApplicationContext;
    startTime = System.currentTimeMillis();
    thread = Thread.currentThread();
    this.req = new HTTPServletRequestWrap(req);
    this.rsp = rsp;
    this.servlet = servlet;
    // Writers
    if (config.debugLogOutput()) {
        CFMLWriter w = config.getCFMLWriter(this, req, rsp);
        w.setAllowCompression(false);
        DebugCFMLWriter dcw = new DebugCFMLWriter(w);
        bodyContentStack.init(dcw);
        debugger.setOutputLog(dcw);
    } else {
        bodyContentStack.init(config.getCFMLWriter(this, req, rsp));
    }
    writer = bodyContentStack.getWriter();
    forceWriter = writer;
    // Scopes
    server = ScopeContext.getServerScope(this, ignoreScopes);
    if (hasFamily) {
        variablesRoot = new VariablesImpl();
        variables = variablesRoot;
        request = new RequestImpl();
        _url = new URLImpl();
        _form = new FormImpl();
        urlForm = new UrlFormImpl(_form, _url);
        undefined = new UndefinedImpl(this, getScopeCascadingType());
        hasFamily = false;
    } else if (variables == null) {
        variablesRoot = new VariablesImpl();
        variables = variablesRoot;
    }
    request.initialize(this);
    if (config.mergeFormAndURL()) {
        url = urlForm;
        form = urlForm;
    } else {
        url = _url;
        form = _form;
    }
    // url.initialize(this);
    // form.initialize(this);
    // undefined.initialize(this);
    psq = config.getPSQL();
    fdEnabled = !config.allowRequestTimeout();
    if (config.getExecutionLogEnabled())
        this.execLog = config.getExecutionLogFactory().getInstance(this);
    if (debugger != null)
        debugger.init(config);
    undefined.initialize(this);
    timeoutStacktrace = null;
    return this;
}
Also used : UrlFormImpl(lucee.runtime.type.scope.UrlFormImpl) UndefinedImpl(lucee.runtime.type.scope.UndefinedImpl) HTTPServletRequestWrap(lucee.runtime.net.http.HTTPServletRequestWrap) DebugCFMLWriter(lucee.runtime.debug.DebugCFMLWriter) CFMLWriter(lucee.runtime.writer.CFMLWriter) UrlFormImpl(lucee.runtime.type.scope.UrlFormImpl) FormImpl(lucee.runtime.type.scope.FormImpl) VariablesImpl(lucee.runtime.type.scope.VariablesImpl) DebugCFMLWriter(lucee.runtime.debug.DebugCFMLWriter) RequestImpl(lucee.runtime.type.scope.RequestImpl) URLImpl(lucee.runtime.type.scope.URLImpl)

Aggregations

VariablesImpl (lucee.runtime.type.scope.VariablesImpl)2 DebugCFMLWriter (lucee.runtime.debug.DebugCFMLWriter)1 HTTPServletRequestWrap (lucee.runtime.net.http.HTTPServletRequestWrap)1 StructImpl (lucee.runtime.type.StructImpl)1 FormImpl (lucee.runtime.type.scope.FormImpl)1 RequestImpl (lucee.runtime.type.scope.RequestImpl)1 URLImpl (lucee.runtime.type.scope.URLImpl)1 UndefinedImpl (lucee.runtime.type.scope.UndefinedImpl)1 UrlFormImpl (lucee.runtime.type.scope.UrlFormImpl)1 CFMLWriter (lucee.runtime.writer.CFMLWriter)1