Class FreeMarkerAccountProvider
- java.lang.Object
- 
- org.keycloak.forms.account.freemarker.FreeMarkerAccountProvider
 
- 
- All Implemented Interfaces:
- AccountProvider,- Provider
 
 public class FreeMarkerAccountProvider extends Object implements AccountProvider - Author:
- Stian Thorgersen
 
- 
- 
Field SummaryFields Modifier and Type Field Description protected Map<String,Object>attributesprotected List<Event>eventsprotected booleaneventsEnabledprotected FreeMarkerProviderfreeMarkerprotected javax.ws.rs.core.HttpHeadersheadersprotected booleanidentityProviderEnabledprotected StringidTokenHintprotected List<FormMessage>messagesprotected MessageTypemessageTypeprotected booleanpasswordSetprotected booleanpasswordUpdateSupportedprotected javax.ws.rs.core.MultivaluedMap<String,String>profileFormDataprotected RealmModelrealmprotected String[]referrerprotected KeycloakSessionsessionprotected List<UserSessionModel>sessionsprotected StringstateCheckerprotected javax.ws.rs.core.Response.Statusstatusprotected javax.ws.rs.core.UriInfouriInfoprotected UserModeluser
 - 
Constructor SummaryConstructors Constructor Description FreeMarkerAccountProvider(KeycloakSession session)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()javax.ws.rs.core.ResponsecreateResponse(AccountPages page)protected StringformatMessage(FormMessage message, Properties messagesBundle, Locale locale)protected ThemegetTheme()Get Theme used for page rendering.protected voidhandleMessages(Locale locale, Properties messagesBundle, Map<String,Object> attributes)Handle messages to be shown on the page - set them to template attributesprotected PropertieshandleThemeResources(Theme theme, Locale locale, Map<String,Object> attributes)Load message bundle and place it intomsgtemplate attribute.protected javax.ws.rs.core.ResponseprocessTemplate(Theme theme, AccountPages page, Map<String,Object> attributes, Locale locale)Process FreeMarker template and prepare Response.AccountProvidersetAttribute(String key, String value)AccountProvidersetError(javax.ws.rs.core.Response.Status status, String message, Object... parameters)AccountProvidersetErrors(javax.ws.rs.core.Response.Status status, List<FormMessage> messages)AccountProvidersetEvents(List<Event> events)AccountProvidersetFeatures(boolean identityProviderEnabled, boolean eventsEnabled, boolean passwordUpdateSupported, boolean authorizationSupported)AccountProvidersetHttpHeaders(javax.ws.rs.core.HttpHeaders httpHeaders)AccountProvidersetIdTokenHint(String idTokenHint)protected voidsetMessage(MessageType type, String message, Object... parameters)AccountProvidersetPasswordSet(boolean passwordSet)AccountProvidersetProfileFormData(javax.ws.rs.core.MultivaluedMap<String,String> formData)AccountProvidersetRealm(RealmModel realm)AccountProvidersetReferrer(String[] referrer)AccountProvidersetSessions(List<UserSessionModel> sessions)AccountProvidersetStateChecker(String stateChecker)AccountProvidersetSuccess(String message, Object... parameters)AccountProvidersetUriInfo(javax.ws.rs.core.UriInfo uriInfo)AccountProvidersetUser(UserModel user)AccountProvidersetWarning(String message, Object... parameters)
 
- 
- 
- 
Field Detail- 
userprotected UserModel user 
 - 
statusprotected javax.ws.rs.core.Response.Status status 
 - 
realmprotected RealmModel realm 
 - 
referrerprotected String[] referrer 
 - 
stateCheckerprotected String stateChecker 
 - 
idTokenHintprotected String idTokenHint 
 - 
sessionsprotected List<UserSessionModel> sessions 
 - 
identityProviderEnabledprotected boolean identityProviderEnabled 
 - 
eventsEnabledprotected boolean eventsEnabled 
 - 
passwordUpdateSupportedprotected boolean passwordUpdateSupported 
 - 
passwordSetprotected boolean passwordSet 
 - 
sessionprotected KeycloakSession session 
 - 
freeMarkerprotected FreeMarkerProvider freeMarker 
 - 
headersprotected javax.ws.rs.core.HttpHeaders headers 
 - 
uriInfoprotected javax.ws.rs.core.UriInfo uriInfo 
 - 
messagesprotected List<FormMessage> messages 
 - 
messageTypeprotected MessageType messageType 
 
- 
 - 
Constructor Detail- 
FreeMarkerAccountProviderpublic FreeMarkerAccountProvider(KeycloakSession session) 
 
- 
 - 
Method Detail- 
setUriInfopublic AccountProvider setUriInfo(javax.ws.rs.core.UriInfo uriInfo) - Specified by:
- setUriInfoin interface- AccountProvider
 
 - 
setHttpHeaderspublic AccountProvider setHttpHeaders(javax.ws.rs.core.HttpHeaders httpHeaders) - Specified by:
- setHttpHeadersin interface- AccountProvider
 
 - 
createResponsepublic javax.ws.rs.core.Response createResponse(AccountPages page) - Specified by:
- createResponsein interface- AccountProvider
 
 - 
getThemeprotected Theme getTheme() throws IOException Get Theme used for page rendering.- Returns:
- theme for page rendering, never null
- Throws:
- IOException- in case of Theme loading problem
 
 - 
handleThemeResourcesprotected Properties handleThemeResources(Theme theme, Locale locale, Map<String,Object> attributes) Load message bundle and place it intomsgtemplate attribute. Also load Theme properties and place them intopropertiestemplate attribute.- Parameters:
- theme- actual Theme to load bundle from
- locale- to load bundle for
- attributes- template attributes to add resources to
- Returns:
- message bundle for other use
 
 - 
handleMessagesprotected void handleMessages(Locale locale, Properties messagesBundle, Map<String,Object> attributes) Handle messages to be shown on the page - set them to template attributes- Parameters:
- locale- to be used for message text loading
- messagesBundle- to be used for message text loading
- attributes- template attributes to messages related info to
- See Also:
- messageType,- messages
 
 - 
processTemplateprotected javax.ws.rs.core.Response processTemplate(Theme theme, AccountPages page, Map<String,Object> attributes, Locale locale) Process FreeMarker template and prepare Response. Some fields are used for rendering also.- Parameters:
- theme- to be used (provided by- getTheme())
- page- to be rendered
- attributes- pushed to the template
- locale- to be used
- Returns:
- Response object to be returned to the browser, never null
 
 - 
setPasswordSetpublic AccountProvider setPasswordSet(boolean passwordSet) - Specified by:
- setPasswordSetin interface- AccountProvider
 
 - 
setMessageprotected void setMessage(MessageType type, String message, Object... parameters) 
 - 
formatMessageprotected String formatMessage(FormMessage message, Properties messagesBundle, Locale locale) 
 - 
setErrorspublic AccountProvider setErrors(javax.ws.rs.core.Response.Status status, List<FormMessage> messages) - Specified by:
- setErrorsin interface- AccountProvider
 
 - 
setErrorpublic AccountProvider setError(javax.ws.rs.core.Response.Status status, String message, Object... parameters) - Specified by:
- setErrorin interface- AccountProvider
 
 - 
setSuccesspublic AccountProvider setSuccess(String message, Object... parameters) - Specified by:
- setSuccessin interface- AccountProvider
 
 - 
setWarningpublic AccountProvider setWarning(String message, Object... parameters) - Specified by:
- setWarningin interface- AccountProvider
 
 - 
setUserpublic AccountProvider setUser(UserModel user) - Specified by:
- setUserin interface- AccountProvider
 
 - 
setProfileFormDatapublic AccountProvider setProfileFormData(javax.ws.rs.core.MultivaluedMap<String,String> formData) - Specified by:
- setProfileFormDatain interface- AccountProvider
 
 - 
setRealmpublic AccountProvider setRealm(RealmModel realm) - Specified by:
- setRealmin interface- AccountProvider
 
 - 
setReferrerpublic AccountProvider setReferrer(String[] referrer) - Specified by:
- setReferrerin interface- AccountProvider
 
 - 
setEventspublic AccountProvider setEvents(List<Event> events) - Specified by:
- setEventsin interface- AccountProvider
 
 - 
setSessionspublic AccountProvider setSessions(List<UserSessionModel> sessions) - Specified by:
- setSessionsin interface- AccountProvider
 
 - 
setStateCheckerpublic AccountProvider setStateChecker(String stateChecker) - Specified by:
- setStateCheckerin interface- AccountProvider
 
 - 
setIdTokenHintpublic AccountProvider setIdTokenHint(String idTokenHint) - Specified by:
- setIdTokenHintin interface- AccountProvider
 
 - 
setFeaturespublic AccountProvider setFeatures(boolean identityProviderEnabled, boolean eventsEnabled, boolean passwordUpdateSupported, boolean authorizationSupported) - Specified by:
- setFeaturesin interface- AccountProvider
 
 - 
setAttributepublic AccountProvider setAttribute(String key, String value) - Specified by:
- setAttributein interface- AccountProvider
 
 
- 
 
-