package fi.arcusys.koku.navi;
import javax.portlet.RenderRequest;
import javax.portlet.RenderResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.portlet.bind.annotation.RenderMapping;
import fi.arcusys.koku.util.Properties;
/**
* Handles the controller for navigation page
* @author Jinhua Chen
* Jun 22, 2011
*/
@Controller("naviController")
@RequestMapping(value = "VIEW")
public class NaviController {
private static final Logger LOG = LoggerFactory.getLogger(NaviController.class);
// maps the incoming portlet request to this method, returns the default page
@RenderMapping
public String home(RenderRequest request, RenderResponse response, ModelMap modelmap) {
return selectJsp();
}
// @ModelAttribute here works as the referenceData method
@ModelAttribute(value = "loginStatus")
public String model(RenderRequest request) {
String user = request.getRemoteUser();
if(user != null) {
return "VALID";
} else {
LOG.info("no logged in user");
return "INVALID";
}
}
private String selectJsp() {
if (Properties.IS_KUNPO_PORTAL) {
return "navi_kunpo";
} else if (Properties.IS_LOORA_PORTAL) {
return "navi_loora";
} else {
LOG.error("Coulnd't determine proper portalMode. Please check properties files and/or code for possible errors.");
return "error";
}
}
}