Package com.vst.webapp.action

Source Code of com.vst.webapp.action.ConstructionTypeController

package com.vst.webapp.action;

import java.lang.reflect.InvocationTargetException;
import java.util.List;
import java.util.ResourceBundle;

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

import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.web.servlet.ModelAndView;

import com.vst.Constants;
import com.vst.model.ConstructionType;
import com.vst.service.ConstructionTypeManager;

public class ConstructionTypeController extends AbstractVstController {
    protected static final Log log = LogFactory.getLog(ConstructionTypeController.class);
    private ConstructionTypeManager constructionTypeManager = null;

    public void setConstructionTypeManager(ConstructionTypeManager constructionTypeManager) {
        this.constructionTypeManager = constructionTypeManager;
    }

    private void processParamPageNumber(HttpServletRequest request,
      HttpServletResponse response) {
      String pageNumber = request.getParameter("d-6947071-p");
        if (pageNumber != null) {
            request.setAttribute("pageNumber", "d-6947071-p=" + pageNumber);
        }
  }

    private void processParamDelete(HttpServletRequest request,
      HttpServletResponse response) {
        String constructionTypeId = request.getParameter("id");
        ResourceBundle bundle = ResourceBundle.getBundle("ApplicationResources");
        boolean hasFatalError = false;
        try {
            if (constructionTypeManager.removeConstructionType(constructionTypeId)) {

                request.setAttribute("message", bundle.getString("constructionType.deleted"));
            } else {
                request.setAttribute("errormessage", bundle.getString("constructionType.isUsed"));
                request.setAttribute("refferenceList", constructionTypeManager.getConnectedRefferences(constructionTypeId));

            }
        } catch (Exception e) {
            e.printStackTrace();
            hasFatalError = true;
        }
        if (hasFatalError) {
            request.setAttribute("errormessage", bundle.getString("commonMistake"));

        }
    }

    private List<?> prepareConstructionTypeListForView(HttpServletRequest request,
            HttpServletResponse response) throws IllegalAccessException, InvocationTargetException{
     
      ConstructionType constructionType = new ConstructionType();
        // populate object with request parameters
        BeanUtils.populate(constructionType, request.getParameterMap());
        List constructionTypes = constructionTypeManager.getConstructionTypes(constructionType);
        return constructionTypes;
    }

    public ModelAndView handleRequest(HttpServletRequest request,
                                      HttpServletResponse response)
            throws Exception {
        if (log.isDebugEnabled()) {
            log.debug("entering 'handleRequest' method...");
        }

        processParamEdited(request, response);

        processParamPageNumber(request, response);

        if (isDeleteParamPresent(request)) {
          processParamDelete(request, response);
        }


        List constructionTypes = prepareConstructionTypeListForView(request, response);

        return new ModelAndView("constructionTypeList", Constants.CONSTRUCTIONTYPE_LIST, constructionTypes);
    }
}
TOP

Related Classes of com.vst.webapp.action.ConstructionTypeController

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.