package com.perforce.controllers;
import java.util.Properties;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.perforce.ApplicationException;
import com.perforce.Constants;
import com.perforce.P4Helper;
import com.perforce.Utility;
@Controller
@RequestMapping("/admin")
public class AdminController {
static Logger logger = Logger.getLogger(AdminController.class.getName());
@RequestMapping(value="/configure.htm", method=RequestMethod.GET)
public String getConfigure(HttpServletRequest request) {
return "admin.configure.page";
}
@RequestMapping(value="/configure.htm", method=RequestMethod.POST)
public String setConfigure(HttpServletRequest request) throws ApplicationException {
Properties appProperties = new Properties();
for(String param : Constants.APPLICATION_SETTINGS) {
String[] values = request.getParameterValues(param);
if(values != null) {
String propValue = null;
if(values.length > 1) {
propValue = StringUtils.join(values, ",");
} else {
propValue = values[0];
}
appProperties.setProperty(param, propValue);
}
}
if(appProperties.size() > 0) {
P4Helper helper = Utility.getHelper(request);
helper.storeApplicationSettings(appProperties);
}
return "admin.home.page";
}
@RequestMapping(value="/home.htm", method=RequestMethod.GET)
public String register(HttpServletRequest request) {
return "admin.home.page";
}
@RequestMapping(value="/users.htm", method=RequestMethod.GET)
public String listUsers(HttpServletRequest request) {
return "admin.users.page";
}
@RequestMapping(value="/groups.htm", method=RequestMethod.GET)
public String listGroups(HttpServletRequest request) {
return "admin.groups.page";
}
}