Package org.keycloak.storage.adapter
Class UpdateOnlyChangeUserModelDelegate
- java.lang.Object
-
- org.keycloak.models.utils.UserModelDelegate
-
- org.keycloak.storage.adapter.UpdateOnlyChangeUserModelDelegate
-
- All Implemented Interfaces:
RoleMapperModel,UserModel
public class UpdateOnlyChangeUserModelDelegate extends UserModelDelegate
This will perform update operation for particular attribute/property just if the existing value is not already same. In other words, just "real updates" will be passed to the delegate.- Author:
- Marek Posolda
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.keycloak.models.UserModel
UserModel.RequiredAction, UserModel.SearchableFields, UserModel.Streams, UserModel.UserRemovedEvent
-
-
Field Summary
-
Fields inherited from class org.keycloak.models.utils.UserModelDelegate
delegate
-
Fields inherited from interface org.keycloak.models.UserModel
COMPARE_BY_USERNAME, DISABLED_REASON, EMAIL, EMAIL_VERIFIED, ENABLED, EXACT, FIRST_NAME, GROUPS, IDP_ALIAS, IDP_USER_ID, INCLUDE_SERVICE_ACCOUNT, LAST_NAME, LOCALE, SEARCH, USERNAME
-
-
Constructor Summary
Constructors Constructor Description UpdateOnlyChangeUserModelDelegate(UserModel delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddRequiredAction(String action)voidaddRequiredAction(UserModel.RequiredAction action)voiddeleteRoleMapping(RoleModel role)Removes the given role mapping from this object.voidgrantRole(RoleModel role)Grants the given role to this object.voidjoinGroup(GroupModel group)voidleaveGroup(GroupModel group)voidremoveAttribute(String name)voidremoveRequiredAction(String action)voidremoveRequiredAction(UserModel.RequiredAction action)voidsetAttribute(String name, List<String> values)voidsetCreatedTimestamp(Long timestamp)voidsetEmail(String email)Sets email for this user.voidsetEmailVerified(boolean verified)voidsetEnabled(boolean enabled)voidsetFederationLink(String link)voidsetFirstName(String firstName)voidsetLastName(String lastName)voidsetServiceAccountClientLink(String clientInternalId)voidsetSingleAttribute(String name, String value)Set single value of specified attribute.voidsetUsername(String username)Sets username for this user.-
Methods inherited from class org.keycloak.models.utils.UserModelDelegate
credentialManager, equals, getAttributes, getAttributeStream, getClientRoleMappingsStream, getCreatedTimestamp, getDelegate, getEmail, getFederationLink, getFirstAttribute, getFirstName, getGroupsStream, getId, getLastName, getRealmRoleMappingsStream, getRequiredActionsStream, getRoleMappingsStream, getServiceAccountClientLink, getUsername, hashCode, hasRole, isEmailVerified, isEnabled, isMemberOf
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.keycloak.models.RoleMapperModel
hasDirectRole
-
Methods inherited from interface org.keycloak.models.UserModel
getGroupsCount, getGroupsCountByNameContaining, getGroupsStream
-
-
-
-
Constructor Detail
-
UpdateOnlyChangeUserModelDelegate
public UpdateOnlyChangeUserModelDelegate(UserModel delegate)
-
-
Method Detail
-
setUsername
public void setUsername(String username)
Description copied from interface:UserModelSets username for this user. No default method here to allow Abstract subclasses where the username is provided in a different manner- Specified by:
setUsernamein interfaceUserModel- Overrides:
setUsernamein classUserModelDelegate- Parameters:
username- username string
-
setEnabled
public void setEnabled(boolean enabled)
- Specified by:
setEnabledin interfaceUserModel- Overrides:
setEnabledin classUserModelDelegate
-
setSingleAttribute
public void setSingleAttribute(String name, String value)
Description copied from interface:UserModelSet single value of specified attribute. Remove all other existing values of this attribute- Specified by:
setSingleAttributein interfaceUserModel- Overrides:
setSingleAttributein classUserModelDelegate
-
setAttribute
public void setAttribute(String name, List<String> values)
- Specified by:
setAttributein interfaceUserModel- Overrides:
setAttributein classUserModelDelegate
-
removeAttribute
public void removeAttribute(String name)
- Specified by:
removeAttributein interfaceUserModel- Overrides:
removeAttributein classUserModelDelegate
-
addRequiredAction
public void addRequiredAction(String action)
- Specified by:
addRequiredActionin interfaceUserModel- Overrides:
addRequiredActionin classUserModelDelegate
-
removeRequiredAction
public void removeRequiredAction(String action)
- Specified by:
removeRequiredActionin interfaceUserModel- Overrides:
removeRequiredActionin classUserModelDelegate
-
addRequiredAction
public void addRequiredAction(UserModel.RequiredAction action)
- Specified by:
addRequiredActionin interfaceUserModel- Overrides:
addRequiredActionin classUserModelDelegate
-
removeRequiredAction
public void removeRequiredAction(UserModel.RequiredAction action)
- Specified by:
removeRequiredActionin interfaceUserModel- Overrides:
removeRequiredActionin classUserModelDelegate
-
setFirstName
public void setFirstName(String firstName)
- Specified by:
setFirstNamein interfaceUserModel- Overrides:
setFirstNamein classUserModelDelegate
-
setLastName
public void setLastName(String lastName)
- Specified by:
setLastNamein interfaceUserModel- Overrides:
setLastNamein classUserModelDelegate
-
setEmail
public void setEmail(String email)
Description copied from interface:UserModelSets email for this user.- Specified by:
setEmailin interfaceUserModel- Overrides:
setEmailin classUserModelDelegate- Parameters:
email- the email
-
setEmailVerified
public void setEmailVerified(boolean verified)
- Specified by:
setEmailVerifiedin interfaceUserModel- Overrides:
setEmailVerifiedin classUserModelDelegate
-
grantRole
public void grantRole(RoleModel role)
Description copied from interface:RoleMapperModelGrants the given role to this object.- Specified by:
grantRolein interfaceRoleMapperModel- Overrides:
grantRolein classUserModelDelegate
-
deleteRoleMapping
public void deleteRoleMapping(RoleModel role)
Description copied from interface:RoleMapperModelRemoves the given role mapping from this object.- Specified by:
deleteRoleMappingin interfaceRoleMapperModel- Overrides:
deleteRoleMappingin classUserModelDelegate- Parameters:
role- Role to remove
-
setFederationLink
public void setFederationLink(String link)
- Specified by:
setFederationLinkin interfaceUserModel- Overrides:
setFederationLinkin classUserModelDelegate
-
setServiceAccountClientLink
public void setServiceAccountClientLink(String clientInternalId)
- Specified by:
setServiceAccountClientLinkin interfaceUserModel- Overrides:
setServiceAccountClientLinkin classUserModelDelegate
-
setCreatedTimestamp
public void setCreatedTimestamp(Long timestamp)
- Specified by:
setCreatedTimestampin interfaceUserModel- Overrides:
setCreatedTimestampin classUserModelDelegate
-
joinGroup
public void joinGroup(GroupModel group)
- Specified by:
joinGroupin interfaceUserModel- Overrides:
joinGroupin classUserModelDelegate
-
leaveGroup
public void leaveGroup(GroupModel group)
- Specified by:
leaveGroupin interfaceUserModel- Overrides:
leaveGroupin classUserModelDelegate
-
-