Java tutorial
/** * ESUP-Portail News - Copyright (c) 2009 ESUP-Portail consortium * For any information please refer to http://esup-helpdesk.sourceforge.net * You may obtain a copy of the licence at http://www.esup-portail.org/license/ */ package org.esco.portlets.news.web; import java.util.List; import java.util.Map; import javax.portlet.RenderRequest; import javax.portlet.RenderResponse; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.esco.portlets.news.domain.Filter; import org.esco.portlets.news.domain.FilterType; import org.esco.portlets.news.services.EntityManager; import org.esco.portlets.news.services.UserManager; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.orm.ObjectRetrievalFailureException; import org.springframework.stereotype.Controller; import org.springframework.util.Assert; import org.springframework.web.portlet.ModelAndView; import org.springframework.web.portlet.mvc.AbstractController; import org.uhp.portlets.news.NewsConstants; import org.uhp.portlets.news.domain.RolePerm; import org.uhp.portlets.news.web.support.Constants; /** * Controller. * @author GIP RECIA - Gribonvald Julien * 19 mai 2010 */ @Controller public class FilterViewController extends AbstractController implements InitializingBean { /** Logger. */ private static final Log LOG = LogFactory.getLog(FilterViewController.class); /** The Entity Manager.*/ @Autowired private EntityManager em; /** The User Manager. */ @Autowired private UserManager um; /** * Constructor of FilterViewController.java. */ public FilterViewController() { super(); } /** * @param request * @param response * @return <code>ModelAndView</code> * @throws Exception * @see org.springframework.web.portlet.mvc.AbstractController# * handleRenderRequest(javax.portlet.RenderRequest, javax.portlet.RenderResponse) */ @Override public ModelAndView handleRenderRequest(final RenderRequest request, final RenderResponse response) throws Exception { Long entityId = Long.valueOf(request.getParameter(Constants.ATT_ENTITY_ID)); if (LOG.isDebugEnabled()) { LOG.debug("FilterViewController:: entering method handleRenderRequestInternal - entityId=" + entityId); } final Map<FilterType, List<Filter>> filters = this.getEm().getFiltersByTypeOfEntity(entityId); if (filters != null && !filters.isEmpty()) { ModelAndView mav = new ModelAndView(Constants.ACT_VIEW_FILTERS); mav.addObject(Constants.ATT_FILTER_MAP, filters); mav.addObject(Constants.OBJ_ENTITY, this.em.getEntityById(entityId)); mav.addObject(Constants.ATT_PM, RolePerm.valueOf( this.um.getUserRoleInCtx(entityId, NewsConstants.CTX_E, request.getRemoteUser())) .getMask()); return mav; } throw new ObjectRetrievalFailureException(Filter.class, entityId); } /** * Getter du membre em. * @return <code>EntityManager</code> le membre em. */ public EntityManager getEm() { return em; } /** * Setter du membre em. * @param em la nouvelle valeur du membre em. */ public void setEm(final EntityManager em) { this.em = em; } /** * Getter du membre um. * @return <code>UserManager</code> le membre um. */ public UserManager getUm() { return um; } /** * Setter du membre um. * @param um la nouvelle valeur du membre um. */ public void setUm(final UserManager um) { this.um = um; } /** * @throws Exception * @see org.springframework.beans.factory.InitializingBean#afterPropertiesSet() */ public void afterPropertiesSet() throws Exception { Assert.notNull(this.getEm(), "The property EntityManager em in class " + getClass().getSimpleName() + " must not be null."); Assert.notNull(this.getUm(), "The property UserManager um in class " + getClass().getSimpleName() + " must not be null."); } }