List of usage examples for com.liferay.portal.kernel.servlet HttpHeaders LIFERAY_SCREEN_NAME
String LIFERAY_SCREEN_NAME
To view the source code for com.liferay.portal.kernel.servlet HttpHeaders LIFERAY_SCREEN_NAME.
Click Source Link
From source file:com.liferay.wsrp.consumer.portlet.ConsumerPortlet.java
License:Open Source License
protected void initContexts(PortletRequest portletRequest, PortletResponse portletResponse, WSRPConsumer wsrpConsumer, WSRPConsumerPortlet wsrpConsumerPortlet, WSRPConsumerManager wsrpConsumerManager, MimeRequest mimeRequest, PortletContext portletContext, RuntimeContext runtimeContext, UserContext userContext) throws Exception { PortletSession portletSession = portletRequest.getPortletSession(); HttpServletRequest request = PortalUtil.getHttpServletRequest(portletRequest); ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); // Markup params ClientData clientData = new ClientData(); clientData.setRequestVerb(request.getMethod()); clientData.setUserAgent(request.getHeader(HttpHeaders.USER_AGENT)); User user = themeDisplay.getUser();/*from ww w. ja va 2s. c o m*/ List<MessageElement> clientAttributes = new ArrayList<MessageElement>(); Enumeration<String> enu = request.getHeaderNames(); while (enu.hasMoreElements()) { String name = enu.nextElement(); String value = request.getHeader(name); ExtensionHelperUtil.addMessageElement(clientAttributes, name, value); } ExtensionHelperUtil.addMessageElement(clientAttributes, HttpHeaders.LIFERAY_EMAIL_ADDRESS, user.getEmailAddress()); ExtensionHelperUtil.addMessageElement(clientAttributes, HttpHeaders.LIFERAY_SCREEN_NAME, user.getScreenName()); ExtensionHelperUtil.addMessageElement(clientAttributes, HttpHeaders.LIFERAY_USER_ID, String.valueOf(user.getUserId())); ConsumerRequestExtensionsHelper.addClientAttributes(clientAttributes); clientData.setExtensions(ExtensionHelperUtil.getExtensions(clientAttributes)); mimeRequest.setClientData(clientData); List<Locale> locales = Collections.list(portletRequest.getLocales()); String[] localesArray = new String[locales.size()]; for (int i = 0; i < locales.size(); i++) { Locale locale = locales.get(i); localesArray[i] = locale.toString(); } Locale locale = themeDisplay.getLocale(); if (!locales.contains(locale)) { localesArray = ArrayUtil.append(new String[] { locale.toString(), locale.getLanguage() }, localesArray); } mimeRequest.setLocales(localesArray); String[] markupCharacterSets = null; if (Validator.isNotNull(wsrpConsumer.getMarkupCharacterSets())) { String markupCharacterSetsString = wsrpConsumer.getMarkupCharacterSets(); markupCharacterSetsString = MarkupCharacterSetsUtil .getSupportedMarkupCharacterSets(markupCharacterSetsString); markupCharacterSets = StringUtil.split(markupCharacterSetsString); } else { markupCharacterSets = _CHAR_SETS; } mimeRequest.setMarkupCharacterSets(markupCharacterSets); mimeRequest.setMimeTypes(_MIME_TYPES); mimeRequest.setMode(getWSRPMode(portletRequest.getPortletMode())); mimeRequest.setWindowState(getWSRPWindowState(portletRequest.getWindowState())); String[] modes = { getWSRPMode(PortletMode.EDIT), getWSRPMode(PortletMode.HELP), getWSRPMode(PortletMode.VIEW) }; mimeRequest.setValidNewModes(modes); String[] windowStates = { getWSRPWindowState(WindowState.MAXIMIZED), getWSRPWindowState(WindowState.MINIMIZED), getWSRPWindowState(WindowState.NORMAL) }; mimeRequest.setValidNewWindowStates(windowStates); // Navigational context NavigationalContext navigationalContext = new NavigationalContext(); String navigationalState = portletRequest.getParameter("wsrp-navigationalState"); if (Validator.isNotNull(navigationalState)) { navigationalState = new String(Base64.decode(Base64.fromURLSafe(navigationalState)), StringPool.UTF8); navigationalContext.setOpaqueValue(navigationalState); } Map<String, String[]> publicParameterMap = portletRequest.getPublicParameterMap(); List<NamedString> publicValues = new ArrayList<NamedString>(); for (Map.Entry<String, String[]> entry : publicParameterMap.entrySet()) { String name = entry.getKey(); String[] values = entry.getValue(); for (String value : values) { NamedString publicValue = new NamedString(); publicValue.setName(name); publicValue.setValue(value); publicValues.add(publicValue); } } navigationalContext.setPublicValues(publicValues.toArray(new NamedString[publicValues.size()])); mimeRequest.setNavigationalContext(navigationalContext); if (mimeRequest instanceof MarkupParams) { processFormParameters(portletRequest, portletResponse, mimeRequest); } // Portlet context portletContext.setPortletHandle(wsrpConsumerPortlet.getPortletHandle()); // Runtime context runtimeContext.setNamespacePrefix(portletResponse.getNamespace()); runtimeContext.setPortletInstanceKey(portletResponse.getNamespace()); SessionContext sessionContext = (SessionContext) portletSession.getAttribute(WebKeys.SESSION_CONTEXT); if (sessionContext != null) { SessionParams sessionParams = new SessionParams(); sessionParams.setSessionID(sessionContext.getSessionID()); runtimeContext.setSessionParams(sessionParams); } runtimeContext.setUserAuthentication("wsrp:password"); PortletDescription portletDescription = wsrpConsumerManager .getPortletDescription(wsrpConsumerPortlet.getPortletHandle()); Boolean doesUrlTemplateProcessing = portletDescription.getDoesUrlTemplateProcessing(); if ((doesUrlTemplateProcessing != null) && doesUrlTemplateProcessing) { Templates templates = new Templates(); templates.setBlockingActionTemplate(_BLOCKING_ACTION_TEMPLATE); templates.setRenderTemplate(_RENDER_TEMPLATE); templates.setResourceTemplate(_RESOURCE_TEMPLATE); templates.setSecureBlockingActionTemplate(_BLOCKING_ACTION_TEMPLATE); templates.setSecureRenderTemplate(_RENDER_TEMPLATE); templates.setSecureResourceTemplate(_RESOURCE_TEMPLATE); runtimeContext.setTemplates(templates); } // User context UserProfile userProfile = getUserProfile(user); ConsumerRequestExtensionsHelper.addUserProfileAttributes(userProfile, user); userContext.setProfile(userProfile); userContext.setUserContextKey(String.valueOf(user.getUserId())); }
From source file:com.liferay.wsrp.portlet.ConsumerPortlet.java
License:Open Source License
protected void initContexts(PortletRequest portletRequest, PortletResponse portletResponse, WSRPConsumerPortlet wsrpConsumerPortlet, WSRPConsumerManager wsrpConsumerManager, MimeRequest mimeRequest, PortletContext portletContext, RuntimeContext runtimeContext, UserContext userContext) throws Exception { PortletSession portletSession = portletRequest.getPortletSession(); HttpServletRequest request = PortalUtil.getHttpServletRequest(portletRequest); ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY); // Markup params ClientData clientData = new ClientData(); clientData.setRequestVerb(HttpMethods.GET); clientData.setUserAgent(request.getHeader(HttpHeaders.USER_AGENT)); User user = themeDisplay.getUser();/*from w ww. ja v a2s. c o m*/ List<MessageElement> clientAttributes = new ArrayList<MessageElement>(); Enumeration<String> enu = request.getHeaderNames(); while (enu.hasMoreElements()) { String name = enu.nextElement(); String value = request.getHeader(name); ExtensionUtil.addMessageElement(clientAttributes, name, value); } ExtensionUtil.addMessageElement(clientAttributes, HttpHeaders.LIFERAY_EMAIL_ADDRESS, user.getEmailAddress()); ExtensionUtil.addMessageElement(clientAttributes, HttpHeaders.LIFERAY_SCREEN_NAME, user.getScreenName()); ExtensionUtil.addMessageElement(clientAttributes, HttpHeaders.LIFERAY_USER_ID, String.valueOf(user.getUserId())); clientData.setExtensions(ExtensionUtil.getExtensions(clientAttributes)); mimeRequest.setClientData(clientData); List<Locale> locales = Collections.list(portletRequest.getLocales()); String[] localesArray = new String[locales.size()]; for (int i = 0; i < locales.size(); i++) { Locale locale = locales.get(i); localesArray[i] = locale.toString(); } mimeRequest.setLocales(localesArray); mimeRequest.setMarkupCharacterSets(_CHAR_SETS); mimeRequest.setMimeTypes(_MIME_TYPES); mimeRequest.setMode(getWSRPMode(portletRequest.getPortletMode())); mimeRequest.setWindowState(getWSRPWindowState(portletRequest.getWindowState())); String[] modes = { getWSRPMode(PortletMode.EDIT), getWSRPMode(PortletMode.HELP), getWSRPMode(PortletMode.VIEW) }; mimeRequest.setValidNewModes(modes); String[] windowStates = { getWSRPWindowState(WindowState.MAXIMIZED), getWSRPWindowState(WindowState.MINIMIZED), getWSRPWindowState(WindowState.NORMAL) }; mimeRequest.setValidNewWindowStates(windowStates); // Navigational context NavigationalContext navigationalContext = new NavigationalContext(); String navigationalState = portletRequest.getParameter("wsrp-navigationalState"); navigationalContext.setOpaqueValue(navigationalState); Map<String, String[]> publicParameterMap = portletRequest.getPublicParameterMap(); List<NamedString> publicValues = new ArrayList<NamedString>(); for (Map.Entry<String, String[]> entry : publicParameterMap.entrySet()) { String name = entry.getKey(); String[] values = entry.getValue(); for (String value : values) { NamedString publicValue = new NamedString(); publicValue.setName(name); publicValue.setValue(value); publicValues.add(publicValue); } } navigationalContext.setPublicValues(publicValues.toArray(new NamedString[publicValues.size()])); mimeRequest.setNavigationalContext(navigationalContext); processFormParameters(portletRequest, portletResponse, mimeRequest); // Portlet context portletContext.setPortletHandle(wsrpConsumerPortlet.getPortletHandle()); // Runtime context runtimeContext.setNamespacePrefix(portletResponse.getNamespace()); runtimeContext.setPortletInstanceKey(portletResponse.getNamespace()); SessionContext sessionContext = (SessionContext) portletSession.getAttribute(WebKeys.SESSION_CONTEXT); if (sessionContext != null) { SessionParams sessionParams = new SessionParams(); sessionParams.setSessionID(sessionContext.getSessionID()); runtimeContext.setSessionParams(sessionParams); } runtimeContext.setUserAuthentication("wsrp:password"); PortletDescription portletDescription = wsrpConsumerManager .getPortletDescription(wsrpConsumerPortlet.getPortletHandle()); Boolean doesUrlTemplateProcessing = portletDescription.getDoesUrlTemplateProcessing(); if ((doesUrlTemplateProcessing != null) && doesUrlTemplateProcessing) { Templates templates = new Templates(); templates.setBlockingActionTemplate(_BLOCKING_ACTION_TEMPLATE); templates.setRenderTemplate(_RENDER_TEMPLATE); templates.setResourceTemplate(_RESOURCE_TEMPLATE); templates.setSecureBlockingActionTemplate(_BLOCKING_ACTION_TEMPLATE); templates.setSecureRenderTemplate(_RENDER_TEMPLATE); templates.setSecureResourceTemplate(_RESOURCE_TEMPLATE); runtimeContext.setTemplates(templates); } // User context userContext.setUserCategories(new String[] { RoleConstants.USER }); userContext.setUserContextKey(String.valueOf(themeDisplay.getUserId())); }