Package com.dodo.blog.ui.ajax

Source Code of com.dodo.blog.ui.ajax.FormGetAjaxRequestHandler

package com.dodo.blog.ui.ajax;

import com.dodo.blog.RequestCycle;
import com.dodo.blog.ui.ajax.annotation.GetModel;
import com.dodo.blog.ui.page.Page;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* @author <a href="mailto:pohorelec@comvai.com">Jozef Pohorelec</a>
*/
public class FormGetAjaxRequestHandler
        extends AbstractAjaxRequestHandler
{
    private static final long serialVersionUID = 1L;

    @Override
    public void handle() throws Exception
    {
        HttpServletRequest httpRequest = RequestCycle.get().getRequest();
        HttpServletResponse httpResponse = RequestCycle.get().getResponse();

        String modelId = httpRequest.getParameter( AjaxListenerHelper.PARAM_MODEL_ID );
        if ( modelId != null )
        {
            Page page = RequestCycle.get().getInjector().getInstance( getPageClass() );
            Object model = getModelObject( page, modelId );
            if ( model != null )
            {
                Response response = new Response();
                response.setMessages( RequestCycle.get().getMessages() );
                response.setModel( model );

                httpResponse.getWriter().write( MAPPER.writeValueAsString( response ) );

                return;
            }

            log.severe( "No method with annotation " + GetModel.class.getName() + "(name = '" + modelId + "') found in class " + page.getClass().getName() );
        }
    }
}
TOP

Related Classes of com.dodo.blog.ui.ajax.FormGetAjaxRequestHandler

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.