Interface UserModel

    • Method Detail

      • getUsername

        String getUsername()
      • setUsername

        void setUsername​(String username)
        Sets username for this user. No default method here to allow Abstract subclasses where the username is provided in a different manner
        Parameters:
        username - username string
      • getCreatedTimestamp

        Long getCreatedTimestamp()
        Get timestamp of user creation. May be null for old users created before this feature introduction.
      • setCreatedTimestamp

        void setCreatedTimestamp​(Long timestamp)
      • isEnabled

        boolean isEnabled()
      • setEnabled

        void setEnabled​(boolean enabled)
      • setSingleAttribute

        void setSingleAttribute​(String name,
                                String value)
        Set single value of specified attribute. Remove all other existing values of this attribute
        Parameters:
        name -
        value -
      • removeAttribute

        void removeAttribute​(String name)
      • getFirstAttribute

        String getFirstAttribute​(String name)
        Parameters:
        name -
        Returns:
        null if there is not any value of specified attribute or first value otherwise. Don't throw exception if there are more values of the attribute
      • getAttribute

        @Deprecated
        List<String> getAttribute​(String name)
        Deprecated.
        Use getAttributeStream instead.
        Parameters:
        name -
        Returns:
        list of all attribute values or empty list if there are not any values. Never return null
      • getAttributeStream

        default Stream<String> getAttributeStream​(String name)
        Obtains all values associated with the specified attribute name.
        Parameters:
        name - the name of the attribute.
        Returns:
        a non-null Stream of attribute values.
      • getRequiredActionsStream

        default Stream<String> getRequiredActionsStream()
        Obtains the names of required actions associated with the user.
        Returns:
        a non-null Stream of required action names.
      • addRequiredAction

        void addRequiredAction​(String action)
      • removeRequiredAction

        void removeRequiredAction​(String action)
      • getFirstName

        String getFirstName()
      • setFirstName

        void setFirstName​(String firstName)
      • getLastName

        String getLastName()
      • setLastName

        void setLastName​(String lastName)
      • setEmail

        void setEmail​(String email)
        Sets email for this user.
        Parameters:
        email - the email
      • isEmailVerified

        boolean isEmailVerified()
      • setEmailVerified

        void setEmailVerified​(boolean verified)
      • getGroupsStream

        default Stream<GroupModel> getGroupsStream()
        Obtains the groups associated with the user.
        Returns:
        a non-null Stream of groups.
      • getGroupsStream

        default Stream<GroupModel> getGroupsStream​(String search,
                                                   Integer first,
                                                   Integer max)
        Returns a paginated stream of groups within this realm with search in the name
        Parameters:
        search - Case insensitive string which will be searched for. Ignored if null.
        first - Index of first group to return. Ignored if negative or null.
        max - Maximum number of records to return. Ignored if negative or null.
        Returns:
        Stream of desired groups. Never returns null.
      • getGroupsCount

        default long getGroupsCount()
      • getGroupsCountByNameContaining

        default long getGroupsCountByNameContaining​(String search)
      • leaveGroup

        void leaveGroup​(GroupModel group)
      • isMemberOf

        boolean isMemberOf​(GroupModel group)
      • getFederationLink

        String getFederationLink()
      • setFederationLink

        void setFederationLink​(String link)
      • getServiceAccountClientLink

        String getServiceAccountClientLink()
      • setServiceAccountClientLink

        void setServiceAccountClientLink​(String clientInternalId)