package org.jblooming.operator.businessLogic; import org.jblooming.messaging.MessagingSystem; import org.jblooming.persistence.exceptions.PersistenceException; import org.jblooming.waf.ActionController; import org.jblooming.waf.SessionState; import org.jblooming.waf.constants.Commands; import org.jblooming.waf.exceptions.ActionException; import org.jblooming.waf.html.input.Selector; import org.jblooming.waf.view.PageState; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.TreeMap; /** * @author Pietro Polsinelli ppolsinelli@open-lab.com * @author Roberto Bicchierai rbicchierai@open-lab.com */ public class OptionController implements ActionController { OptionAction optionAction; public OptionController() { this.optionAction = new OptionAction(); } public OptionController(OptionAction oa) { this.optionAction = oa; } public PageState perform(HttpServletRequest request, HttpServletResponse response) throws PersistenceException, ActionException, org.jblooming.security.SecurityException { SessionState ss = SessionState.getSessionState(request); PageState pageState = (PageState) ss.getPageState(request, response); String command = pageState.getCommand(); if (Commands.SAVE.equals(command)) optionAction.cmdSave(pageState, request.getContextPath()); else if ("REMOVE_OPTION".equals(command)) optionAction.cmdRemoveOption(pageState); else if (Commands.DELETE.equals(command)) optionAction.cmdDelete(pageState); else optionAction.cmdEdit(pageState); TreeMap candidates = new TreeMap(); for (MessagingSystem.Media media : MessagingSystem.Media.values()) candidates.put(media.ordinal(), media.name()); Selector.make("MSG_CHANNEL", candidates, null, pageState); return pageState; } }