Package org.keycloak.userprofile
Interface Attributes
-
- All Known Implementing Classes:
DefaultAttributes
,LegacyAttributes
public interface Attributes
This interface wraps the attributes associated with a user profile. Different operations are provided to access and manage these attributes.
- Author:
- Pedro Igor
-
-
Field Summary
Fields Modifier and Type Field Description static List<String>
EMPTY_VALUE
Default value for attributes with no value set.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Set<Map.Entry<String,List<String>>>
attributeSet()
Returns all attributes defined.boolean
contains(String name)
Checks whether an attribute with the givenname
is defined.default String
getFirstValue(String name)
Returns the first value associated with the attribute with the given .AttributeMetadata
getMetadata(String name)
Returns the metadata associated with the attribute with the givenname
.Map<String,List<String>>
getReadable()
Returns only the attributes that have read/write permissions.default Map<String,List<String>>
getReadable(boolean includeBuiltin)
Similar to {getReadable(boolean)
} but with the possibility to add or remove the root attributes.List<String>
getValues(String name)
Returns all values for an attribute with the givenname
.boolean
isReadOnly(String key)
Checks whether an attribute is read-only.boolean
isRequired(String name)
Returns whether the attribute with the givenname
is required.default boolean
isRootAttribute(String name)
Returns whether the attribute with the givenname
is a root attribute.Set<String>
nameSet()
Returns the names of all defined attributes.Map<String,List<String>>
toMap()
boolean
validate(String name, Consumer<ValidationError>... listeners)
Validates the attribute with the givenname
.
-
-
-
Method Detail
-
getFirstValue
default String getFirstValue(String name)
Returns the first value associated with the attribute with the given .- Parameters:
name
- the name of the attribute- Returns:
- the first value
-
getValues
List<String> getValues(String name)
Returns all values for an attribute with the givenname
.- Parameters:
name
- the name of the attribute- Returns:
- the attribute values
-
isReadOnly
boolean isReadOnly(String key)
Checks whether an attribute is read-only.- Parameters:
key
-- Returns:
-
validate
boolean validate(String name, Consumer<ValidationError>... listeners)
Validates the attribute with the givenname
.- Parameters:
name
- the name of the attributelisteners
- the listeners for listening for errors.ValidationError.inputHint
contains name of the attribute in error.- Returns:
true
if validation is successful. Otherwise,false
. In case there is no attribute with the givenname
,false
is also returned but without triggering listeners
-
contains
boolean contains(String name)
Checks whether an attribute with the givenname
is defined.- Parameters:
name
- the name of the attribute- Returns:
true
if the attribute is defined. Otherwise,false
-
nameSet
Set<String> nameSet()
Returns the names of all defined attributes.- Returns:
- the set of attribute names
-
attributeSet
Set<Map.Entry<String,List<String>>> attributeSet()
Returns all attributes defined.- Returns:
- the attributes
-
getMetadata
AttributeMetadata getMetadata(String name)
Returns the metadata associated with the attribute with the given
name
.The
AttributeMetadata
is a copy of the original metadata. The original metadata keeps immutable.- Parameters:
name
- the attribute name- Returns:
- the metadata
-
isRequired
boolean isRequired(String name)
Returns whether the attribute with the givenname
is required.- Parameters:
name
- the attribute name- Returns:
true
if the attribute is required. Otherwise,false
.
-
getReadable
default Map<String,List<String>> getReadable(boolean includeBuiltin)
Similar to {getReadable(boolean)
} but with the possibility to add or remove the root attributes.- Parameters:
includeBuiltin
- if the root attributes should be included.- Returns:
- the attributes with read/write permission.
-
getReadable
Map<String,List<String>> getReadable()
Returns only the attributes that have read/write permissions.- Returns:
- the attributes with read/write permission.
-
isRootAttribute
default boolean isRootAttribute(String name)
Returns whether the attribute with the givenname
is a root attribute.- Parameters:
name
- the attribute name- Returns:
-
-