lumis.service.locale
Class LocalePickerControl

Package class diagram package LocalePickerControl
java.lang.Object
  extended by lumis.doui.control.Control
      extended by lumis.doui.control.DataControl
          extended by lumis.doui.control.DataBoundControl<TabularSource<?>>
              extended by lumis.service.locale.LocalePickerControl
All Implemented Interfaces:
Observer, VariableResolver, IControl, IDataBoundControl, IDataControl, IRenderer

public class LocalePickerControl
extends DataBoundControl<TabularSource<?>>

Allows the current user to change his locale. Renders a list of locales available and the url to switch to each locale.

The locales available are read from the source associated with this control. Each row of the source's tabulardata, must contain the information of a locale using the following fields:

This control generates a XML code like the following example:

 <control>
         <data>
                <locales>
                        <locale id="pt_BR"/>
                                <name>Português</name>
                                <url>[a url]</url>
                        </locale>
                        <locale id="en_US"/>
                                <name>English</name>
                                <url>[a url]</url>
                        </locale>
                </locales>
         <data>
 <control>
 

The locale id is the locale code, and the name is the locale display name, as provided by the source. The url is generated to call a process action with id setLocaleProcessAction sending the locale code specified in the locale request parameter. That process action is responsible for implementing the locale change. There is such implementation at LocaleProcessActionHandler.

Example use:

<control:lum_localePicker/> xml data available for xsl rendering: <control id="8A488A031150E33501115120657503CE" type="lum_localePicker"> <data> <locales> <locale id="en_US"> <name>English</name> <url>main.jsp?lumPageId=8A488A031136BFB7011138086E4A17ED&lumA=1&lumII=8A488A03114CA81B01114D4AEB660451&locale=en_US&doui_processActionId=setLocaleProcessAction</url> </locale> <locale id="pt_BR"> <name>Português</name> <url>main.jsp?lumPageId=8A488A031136BFB7011138086E4A17ED&lumA=1&lumII=8A488A03114CA81B01114D4AEB660451&locale=pt_BR&doui_processActionId=setLocaleProcessAction</url> </locale> </locales> </data> </control>

Since:
4.0.10

Field Summary
 
Fields inherited from class lumis.doui.control.DataControl
FORCE_CASE_LOWER, FORCE_CASE_NONE, FORCE_CASE_UPPER, forceCase, requestParameterName, UNKNOWN_DATA_TYPE, value, valuePreviouslySet
 
Fields inherited from class lumis.doui.control.Control
childControls, controlContainer, controlDefinitionNode, controlResource, douiContext, hasValidatorSubControls, isValid, locale, ON_EVENT_CLOSE_WINDOW, ON_EVENT_LINK, ON_EVENT_POPUP_LINK_OR_RUNTIME_INTERFACE, ON_EVENT_POPUP_RUNTIME_INTERFACE, ON_EVENT_PROCESS_ACTION, ON_EVENT_RENDER_ACTION, ON_EVENT_REPLACE_INTERFACE, ON_EVENT_SCRIPT, onEventScripts, PARAMETER_TYPE_FIRST_SELECTED, PARAMETER_TYPE_GET_VALUE, parentControl, resources, type, VALIDATION_SELECTED_MANY, VALIDATION_SELECTED_ONE
 
Constructor Summary
LocalePickerControl()
           
 
Method Summary
 void setRenderData()
           
 
Methods inherited from class lumis.doui.control.DataBoundControl
autoAddDateTimeValueValidator, autoAddDoubleValueValidator, autoAddFileSizeValidator, autoAddIntegerValueValidator, autoAddLengthValidator, autoAddLongValueValidator, autoAddRequiredValueValidator, autoAddValidators, buildSubControls, createConverter, createDataType, getDataId, getFieldName, getProcessActionHandlerParameterName, getReload, getRuntimeDefaultSource, getSource, getSourceById, getUnboundedConverter, init, loadFromRequest, setDefaultValue, setRawValue, setReload, setSourceParameter, setSourceParameters, setsSourceParameters, setValid, setValueFromSource, setValueFromSource, update
 
Methods inherited from class lumis.doui.control.DataControl
convertValueToControlValue, getConverter, getDataType, getDefaultValue, getParameterValue, getProcessActionIds, getRequestParameterName, getValue, getValue, getValueClass, initProcessActionIds, isTrim, loadSubControlFromRequest, loadSubControlsFromRequest, setProcessActionHandlerParameter, setProcessActionHandlerParameter, setProcessActionHandlerParameters, setTrim, setValue, valueIsArray
 
Methods inherited from class lumis.doui.control.Control
appendSubControl, appendSubControls, applyOnEventScripts, convertToStandardValue, createContainer, disconnect, fixedIdentifierRequired, generateControlId, getAdditionalParameters, getAdditionalParameters, getAncestor, getChildControls, getClientEventHandlerScript, getControlResource, getId, getLocale, getNamespace, getParentControl, getPrepareForReadScript, getRenderData, getResources, getScriptActionValidation, getScriptGetValues, getScriptGetValuesFunctionImplementation, getScriptGetValuesFunctionName, getScriptGetValuesRegistration, getSourceContext, getStringsToLocalize, getType, getValidationScript, isValid, localize, localizeStrings, processCustomTags, registerOnEventScript, removeChild, removeChildren, resolveVariable, setRuntimeAttributes
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface lumis.doui.control.IDataControl
getConverter, getProcessActionIds, getValue, getValue, setProcessActionHandlerParameters, setValue
 
Methods inherited from interface lumis.doui.control.IControl
createContainer, disconnect, getChildControls, getControlResource, getId, getParentControl, getPrepareForReadScript, getRenderData, getResources, getType, isValid, registerOnEventScript, removeChild, removeChildren, setRuntimeAttributes
 
Methods inherited from interface lumis.doui.render.IRenderer
getResources, getSourceContext
 

Constructor Detail

LocalePickerControl

public LocalePickerControl()
Method Detail

setRenderData

public void setRenderData()
                   throws PortalException
Specified by:
setRenderData in interface IControl
Overrides:
setRenderData in class DataBoundControl<TabularSource<?>>
Throws:
PortalException


Lumisportal  6.2.0.120405 - Copyright © 2006–2012 Lumis EIP Tecnologia da Informação LTDA. All Rights Reserved.