Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package net.nan21.dnet.core.web.controller.ui.senchatouch;
  
  import java.util.HashMap;
  import java.util.Map;
  import java.util.Set;
  
  import  javax.servlet.http.Cookie;
  import  javax.servlet.http.HttpServletRequest;
 import  javax.servlet.http.HttpServletResponse;
 
 
 import  org.springframework.security.core.GrantedAuthority;
 import  org.springframework.security.core.context.SecurityContextHolder;
 import  org.springframework.web.bind.annotation.ExceptionHandler;
 import  org.springframework.web.servlet.ModelAndView;
 import  org.springframework.web.servlet.mvc.AbstractController;
 
 public abstract class AbstractUiSenchaTouchController extends
 		AbstractController {
 
 	final static Logger logger = LoggerFactory
 
 	protected IProductInfo productInfo;
 	protected String jspName;
 	protected String deploymentUrl;
 	protected String uiUrl;
 	protected Map<StringObjectmodel;
 
 	protected void _prepare(HttpServletRequest request,
 			HttpServletResponse responsethrows Exception {
 
 		String server = request.getServerName();
 		int port = request.getServerPort();
 		String contextPath = request.getContextPath();
 		String path = request.getServletPath();
 
 		.info("Handling request for ui.sencha-touch: {}",
 				request.getPathInfo());
 
 		String userRolesStr = null;
 
 		try {
 			SessionUser su = (SessionUser) SecurityContextHolder.getContext()
 					.getAuthentication().getPrincipal();
 			User user = (Usersu.getUser();
 			Params params = (Paramssu.getParams();
 			UserProfile profile = new UserProfile(su.isAdministrator(),
 					su.getRoles());
 			UserPreferences prefs = user.getPreferences();
 
 			..set(user);
 			..set(profile);
 			..set(params);
 
 			.put("userUsername"user.getUsername());
 			.put("userDisplayName"user.getDisplayName());
 			.put("userClientCode"user.getClientCode());
 			.put("userClientId"user.getClientId().toString());
 			.put("userSystemClient"params.isSystemClient());
 
 			.put("extjsDateFormat"prefs.getExtjsDateFormat());
 			.put("extjsTimeFormat"prefs.getExtjsTimeFormat());
 			.put("extjsDateTimeFormat"prefs.getExtjsDateTimeFormat());
 			.put("extjsAltFormats"prefs.getExtjsAltFormats());
 
 			.put("decimalSeparator"prefs.getDecimalSeparator());
 			.put("thousandSeparator"prefs.getThousandSeparator());
 
 			Set<GrantedAuthority> roles = su.getAuthorities();
 			StringBuffer sb = new StringBuffer();
 			int i = 0;
 			for (GrantedAuthority role : roles) {
 				if (i > 0) {
 					sb.append(",");
 				}
 				sb.append("\"" + role.getAuthority() + "\"");
 				i++;
 			}
 			userRolesStr = sb.toString();
 
 		} catch (ClassCastException e) {
			// not authenticated
		}
		this. = ((request.isSecure()) ? "https" : "http") + "://"
server + ((port != 80) ? (":" + port) : "") + contextPath;
		this. =  + path;
		this. = new HashMap<StringObject>();
		this..put("deploymentUrl"this.);
		this..put("uiUrl"this.);
		this..put("product"this.);
		this..put("urlUiStModules".getUrlModules());
		this..put("urlUiStCore".getUrlCore());
		this..put("urlUiStLibSenchaTouch",
		this..put("shortLanguage"this.resolveLang(requestresponse));
		this..put("theme"this.resolveTheme(requestresponse));
		this.
				.put("sysCfg_workingMode"this..getWorkingMode());
		this..put("userRolesStr"userRolesStr);
	}

Resolve the user's current theme from the cookie.

Parameters:
request
response
Returns:
Throws:
Exception
	private String resolveTheme(HttpServletRequest request,
			HttpServletResponse responsethrows Exception {
		Cookie[] cookies = request.getCookies();
		Cookie c = this.getCookie(cookies.);
		if (c == null) {
			c = this.createCookie(
					60 * 60 * 24 * 365);
			response.addCookie(c);
		}
		String theme = request.getParameter(.);
		if (theme == null || theme.equals("")) {
			theme = c.getValue();
else {
			c.setMaxAge(0);
					60 * 60 * 24 * 365);
			response.addCookie(c);
		}
		return theme;
	}

Resolve the user's current language from the cookie.

Parameters:
request
response
Returns:
Throws:
Exception
	private String resolveLang(HttpServletRequest request,
			HttpServletResponse responsethrows Exception {
		Cookie[] cookies = request.getCookies();
		Cookie c = this.getCookie(cookies.);
		if (c == null) {
			c = this.createCookie(
							.), 60 * 60 * 24 * 365);
			response.addCookie(c);
		}
		String lang = request.getParameter(.);
		if (lang == null || lang.equals("")) {
			lang = c.getValue();
else {
			c.setMaxAge(0);
					60 * 60 * 24 * 365);
			response.addCookie(c);
		}
		return lang;
	}
	private Cookie getCookie(Cookie[] cookiesString name) {
		if (cookies != null) {
			for (int i = 0; i < cookies.length; i++) {
				Cookie cookie = cookies[i];
				if (name.equals(cookie.getName())) {
					return cookie;
				}
			}
		}
		return null;
	}
	private Cookie createCookie(String nameString valueint age) {
		Cookie c = new Cookie(namevalue);
		c.setMaxAge(age);
		return c;
	}
		return ;
	}
	public void setProductInfo(IProductInfo productInfo) {
		this. = productInfo;
	}
	public String getJspName() {
		return ;
	}
	public void setJspName(String jspName) {
		this. = jspName;
	}
	}
			UiSenchaTouchSettings uiSenchaTouchSettings) {
		this. = uiSenchaTouchSettings;
	}
		return ;
	}
	public void setSystemConfig(ISystemConfig systemConfig) {
		this. = systemConfig;
	}
	@ExceptionHandler(value = NotAuthorizedRequestException.class)
			HttpServletResponse responsethrows IOException {
		String msg = null;
		if (e.getCause() != null) {
			msg = e.getCause().getMessage();
else {
			msg = e.getMessage();
		}
		response.setStatus(403);
		return new ModelAndView("not-authorized").addObject("message"msg); // e.getLocalizedMessage();
	}
	@ExceptionHandler(value = Exception.class)
	protected ModelAndView handleException(Exception e,
			HttpServletResponse responsethrows IOException {
		String msg = null;
		if (e.getCause() != null) {
			msg = e.getCause().getMessage();
else {
			msg = e.getMessage();
		}
				"Exception occured during transactional request execution: ",
				msg);
		response.setStatus(500);
		return new ModelAndView("error").addObject("message"msg); // e.getLocalizedMessage();
	}
New to GrepCode? Check out our FAQ X