Package webit.script.support.springmvc3

Source Code of webit.script.support.springmvc3.WebitViewResolver

// Copyright (c) 2013-2014, Webit Team. All Rights Reserved.
package webit.script.support.springmvc3;

import java.io.IOException;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.web.servlet.view.AbstractTemplateViewResolver;
import webit.script.servlet.WebEngineManager;
import webit.script.servlet.WebEngineManager.ServletContextProvider;

/**
*
* @author Zqq
*/
public class WebitViewResolver extends AbstractTemplateViewResolver implements InitializingBean {

    protected final WebEngineManager engineManager;

    @Override
    protected Class<?> requiredViewClass() {
        return WebitView.class;
    }

    public void afterPropertiesSet() throws Exception {
        if (getSuffix() == null || getSuffix().length() == 0) {
            super.setSuffix(this.engineManager.getEngine().getSuffix());
        }
    }

    public WebitViewResolver() {
        setViewClass(requiredViewClass());

        this.engineManager = new WebEngineManager(new ServletContextProvider() {

            public ServletContext getServletContext() {
                return WebitViewResolver.this.getServletContext();
            }
        });
    }

    public void setConfigPath(String configPath) {
        this.engineManager.setConfigPath(configPath);
    }

    public void resetEngine() {
        this.engineManager.resetEngine();
    }

    @Override
    protected WebitView buildView(String viewName) throws Exception {
        WebitView view = (WebitView) super.buildView(viewName);
        view.setResolver(this);
        return view;
    }

    protected void render(String viewName, Map<String, Object> model, final HttpServletRequest request, final HttpServletResponse response) throws IOException {
        this.engineManager.renderTemplate(viewName, model, response);
    }
}
TOP

Related Classes of webit.script.support.springmvc3.WebitViewResolver

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.