Package org.keycloak.userprofile.config
Class UPConfigUtils
- java.lang.Object
-
- org.keycloak.userprofile.config.UPConfigUtils
-
public class UPConfigUtils extends Object
Utility methods to work with User Profile Configurations- Author:
- Vlastimil Elias
-
-
Field Summary
Fields Modifier and Type Field Description static String
ROLE_ADMIN
static String
ROLE_USER
-
Constructor Summary
Constructors Constructor Description UPConfigUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static boolean
canBeAuthFlowContext(org.keycloak.userprofile.UserProfileContext context)
Check if context CAN BE part of the AuthenticationFlow.static String
capitalizeFirstLetter(String str)
static List<String>
getChunks(String src, int partLength)
Break string to substrings of given length.static boolean
isRoleForContext(org.keycloak.userprofile.UserProfileContext context, Set<String> roles)
Check if roles configuration contains role given current context.static boolean
isValidAttributeName(String attributeName)
static UPConfig
readConfig(InputStream is)
Load configuration from JSON file.static String
readDefaultConfig()
static List<String>
validate(org.keycloak.models.KeycloakSession session, UPConfig config)
Validate object representation of the configuration.
-
-
-
Field Detail
-
ROLE_USER
public static final String ROLE_USER
- See Also:
- Constant Field Values
-
ROLE_ADMIN
public static final String ROLE_ADMIN
- See Also:
- Constant Field Values
-
-
Method Detail
-
readConfig
public static UPConfig readConfig(InputStream is) throws IOException
Load configuration from JSON file.Configuration is not validated, use
validate(KeycloakSession, UPConfig)
to validate it and get list of errors.- Parameters:
is
- JSON file to be loaded- Returns:
- object representation of the configuration
- Throws:
IOException
- if JSON configuration can't be loaded (eg due to JSON format errors etc)
-
validate
public static List<String> validate(org.keycloak.models.KeycloakSession session, UPConfig config)
Validate object representation of the configuration. Validations:- defaultProfile is defined and exists in profiles
- parent exists for type
- type exists for attribute
- validator (from Validator SPI) exists for validation and it's config is correct
- if an attribute group is configured it is verified that this group exists
- all groups have a name != null
- Parameters:
session
- to be used for Validator SPI integrationconfig
- to validate- Returns:
- list of errors, empty if no error found
-
isValidAttributeName
public static boolean isValidAttributeName(String attributeName)
- Parameters:
attributeName
- to validate- Returns:
-
getChunks
public static List<String> getChunks(String src, int partLength)
Break string to substrings of given length.- Parameters:
src
- to breakpartLength
-- Returns:
- list of string parts, never null (but can be empty if src is null)
-
canBeAuthFlowContext
public static boolean canBeAuthFlowContext(org.keycloak.userprofile.UserProfileContext context)
Check if context CAN BE part of the AuthenticationFlow.- Parameters:
context
- to check- Returns:
- true if context CAN BE part of the auth flow
-
isRoleForContext
public static boolean isRoleForContext(org.keycloak.userprofile.UserProfileContext context, Set<String> roles)
Check if roles configuration contains role given current context.- Parameters:
context
- to be checkedroles
- to be inspected- Returns:
- true if roles list contains role representing checked context
-
readDefaultConfig
public static String readDefaultConfig()
-
-