Class UpdateOnlyChangeUserModelDelegate

java.lang.Object
org.keycloak.models.utils.UserModelDelegate
org.keycloak.storage.adapter.UpdateOnlyChangeUserModelDelegate
All Implemented Interfaces:
org.keycloak.models.Model, org.keycloak.models.RoleMapperModel, org.keycloak.models.UserModel

public class UpdateOnlyChangeUserModelDelegate extends org.keycloak.models.utils.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

    org.keycloak.models.UserModel.RequiredAction, org.keycloak.models.UserModel.UserPreRemovedEvent, org.keycloak.models.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, CREATED_AFTER, CREATED_BEFORE, CREATED_TIMESTAMP, DID, DISABLED_REASON, EMAIL, EMAIL_PENDING, EMAIL_VERIFIED, ENABLED, EXACT, FIRST_NAME, GROUPS, ID, IDP_ALIAS, IDP_USER_ID, INCLUDE_SERVICE_ACCOUNT, IS_TEMP_ADMIN_ATTR_NAME, LAST_NAME, LOCALE, SEARCH, USERNAME
  • Constructor Summary

    Constructors
    Constructor
    Description
    UpdateOnlyChangeUserModelDelegate(org.keycloak.models.UserModel delegate)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
    addRequiredAction(org.keycloak.models.UserModel.RequiredAction action)
     
    void
    deleteRoleMapping(org.keycloak.models.RoleModel role)
     
    void
    grantRole(org.keycloak.models.RoleModel role)
     
    void
    joinGroup(org.keycloak.models.GroupModel group)
     
    void
    leaveGroup(org.keycloak.models.GroupModel group)
     
    void
     
    void
     
    void
    removeRequiredAction(org.keycloak.models.UserModel.RequiredAction action)
     
    void
    setAttribute(String name, List<String> values)
     
    void
     
    void
     
    void
    setEmailVerified(boolean verified)
     
    void
    setEnabled(boolean enabled)
     
    void
     
    void
    setFirstName(String firstName)
     
    void
    setLastName(String lastName)
     
    void
     
    void
     
    void
    setUsername(String username)
     

    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, getLastModifiedTimestamp, isFederated, joinGroup, setLastModifiedTimestamp
  • Constructor Details

    • UpdateOnlyChangeUserModelDelegate

      public UpdateOnlyChangeUserModelDelegate(org.keycloak.models.UserModel delegate)
  • Method Details

    • setUsername

      public void setUsername(String username)
      Specified by:
      setUsername in interface org.keycloak.models.UserModel
      Overrides:
      setUsername in class org.keycloak.models.utils.UserModelDelegate
    • setEnabled

      public void setEnabled(boolean enabled)
      Specified by:
      setEnabled in interface org.keycloak.models.UserModel
      Overrides:
      setEnabled in class org.keycloak.models.utils.UserModelDelegate
    • setSingleAttribute

      public void setSingleAttribute(String name, String value)
      Specified by:
      setSingleAttribute in interface org.keycloak.models.UserModel
      Overrides:
      setSingleAttribute in class org.keycloak.models.utils.UserModelDelegate
    • setAttribute

      public void setAttribute(String name, List<String> values)
      Specified by:
      setAttribute in interface org.keycloak.models.UserModel
      Overrides:
      setAttribute in class org.keycloak.models.utils.UserModelDelegate
    • removeAttribute

      public void removeAttribute(String name)
      Specified by:
      removeAttribute in interface org.keycloak.models.UserModel
      Overrides:
      removeAttribute in class org.keycloak.models.utils.UserModelDelegate
    • addRequiredAction

      public void addRequiredAction(String action)
      Specified by:
      addRequiredAction in interface org.keycloak.models.UserModel
      Overrides:
      addRequiredAction in class org.keycloak.models.utils.UserModelDelegate
    • removeRequiredAction

      public void removeRequiredAction(String action)
      Specified by:
      removeRequiredAction in interface org.keycloak.models.UserModel
      Overrides:
      removeRequiredAction in class org.keycloak.models.utils.UserModelDelegate
    • addRequiredAction

      public void addRequiredAction(org.keycloak.models.UserModel.RequiredAction action)
      Specified by:
      addRequiredAction in interface org.keycloak.models.UserModel
      Overrides:
      addRequiredAction in class org.keycloak.models.utils.UserModelDelegate
    • removeRequiredAction

      public void removeRequiredAction(org.keycloak.models.UserModel.RequiredAction action)
      Specified by:
      removeRequiredAction in interface org.keycloak.models.UserModel
      Overrides:
      removeRequiredAction in class org.keycloak.models.utils.UserModelDelegate
    • setFirstName

      public void setFirstName(String firstName)
      Specified by:
      setFirstName in interface org.keycloak.models.UserModel
      Overrides:
      setFirstName in class org.keycloak.models.utils.UserModelDelegate
    • setLastName

      public void setLastName(String lastName)
      Specified by:
      setLastName in interface org.keycloak.models.UserModel
      Overrides:
      setLastName in class org.keycloak.models.utils.UserModelDelegate
    • setEmail

      public void setEmail(String email)
      Specified by:
      setEmail in interface org.keycloak.models.UserModel
      Overrides:
      setEmail in class org.keycloak.models.utils.UserModelDelegate
    • setEmailVerified

      public void setEmailVerified(boolean verified)
      Specified by:
      setEmailVerified in interface org.keycloak.models.UserModel
      Overrides:
      setEmailVerified in class org.keycloak.models.utils.UserModelDelegate
    • grantRole

      public void grantRole(org.keycloak.models.RoleModel role)
      Specified by:
      grantRole in interface org.keycloak.models.RoleMapperModel
      Overrides:
      grantRole in class org.keycloak.models.utils.UserModelDelegate
    • deleteRoleMapping

      public void deleteRoleMapping(org.keycloak.models.RoleModel role)
      Specified by:
      deleteRoleMapping in interface org.keycloak.models.RoleMapperModel
      Overrides:
      deleteRoleMapping in class org.keycloak.models.utils.UserModelDelegate
    • setFederationLink

      public void setFederationLink(String link)
      Specified by:
      setFederationLink in interface org.keycloak.models.UserModel
      Overrides:
      setFederationLink in class org.keycloak.models.utils.UserModelDelegate
    • setServiceAccountClientLink

      public void setServiceAccountClientLink(String clientInternalId)
      Specified by:
      setServiceAccountClientLink in interface org.keycloak.models.UserModel
      Overrides:
      setServiceAccountClientLink in class org.keycloak.models.utils.UserModelDelegate
    • setCreatedTimestamp

      public void setCreatedTimestamp(Long timestamp)
      Specified by:
      setCreatedTimestamp in interface org.keycloak.models.UserModel
      Overrides:
      setCreatedTimestamp in class org.keycloak.models.utils.UserModelDelegate
    • joinGroup

      public void joinGroup(org.keycloak.models.GroupModel group)
      Specified by:
      joinGroup in interface org.keycloak.models.UserModel
      Overrides:
      joinGroup in class org.keycloak.models.utils.UserModelDelegate
    • leaveGroup

      public void leaveGroup(org.keycloak.models.GroupModel group)
      Specified by:
      leaveGroup in interface org.keycloak.models.UserModel
      Overrides:
      leaveGroup in class org.keycloak.models.utils.UserModelDelegate