Class ImmutableGroupWithAttributes

java.lang.Object
com.atlassian.crowd.model.group.BaseImmutableGroup
com.atlassian.crowd.model.group.ImmutableGroupWithAttributes
All Implemented Interfaces:
Attributes, DirectoryEntity, Group, GroupWithAttributes, GroupWithMembers, Comparable<Group>

public final class ImmutableGroupWithAttributes extends BaseImmutableGroup implements GroupWithAttributes
  • Method Details

    • from

    • builder

    • builder

      public static ImmutableGroupWithAttributes.Builder builder(Group group, Map<String,Set<String>> attributes)
    • getValues

      public Set<String> getValues(String key)
      Description copied from interface: Attributes
      Get all the values associated with a given key. Duplicate values are not allowed, and this should be enforced case-insensitively to match the behaviour of LDAP servers. Will return null if the key does not exist.
      Specified by:
      getValues in interface Attributes
      Parameters:
      key - the key to retrieve the values for
      Returns:
      the values associated with the given key. It may return null or empty set if the key does not exist.
    • getValue

      public String getValue(String key)
      Description copied from interface: Attributes
      Returns any value associated with the given key, returns null if there is no value.
      Specified by:
      getValue in interface Attributes
      Parameters:
      key - the key to retrieve the value for
      Returns:
      any value associated with the given key, or null if there is no value
    • getKeys

      public Set<String> getKeys()
      Description copied from interface: Attributes
      Gets all the keys of the attributes. Warning: case-insensitive keys are currently no enforced, however this is the case for LDAP, so this may be implemented in the future.
      Specified by:
      getKeys in interface Attributes
      Returns:
      a set of all the keys.
    • isEmpty

      public boolean isEmpty()
      Specified by:
      isEmpty in interface Attributes
      Returns:
      true if there are no attributes
    • withName

      public ImmutableGroupWithAttributes withName(String name)
      Specified by:
      withName in class BaseImmutableGroup
    • equals

      public boolean equals(Object o)
      Description copied from interface: DirectoryEntity
      Implementations must ensure equality based on getDirectoryId() and case-insensitive getName().
      Specified by:
      equals in interface DirectoryEntity
      Overrides:
      equals in class BaseImmutableGroup
      Parameters:
      o - object to compare to.
      Returns:
      true if and only if the directoryId and the lowercase names of the directory entities match.
    • hashCode

      public int hashCode()
      Description copied from interface: DirectoryEntity
      Implementations must produce a hashcode based on getDirectoryId() and case-insensitive getName().
      Specified by:
      hashCode in interface DirectoryEntity
      Overrides:
      hashCode in class BaseImmutableGroup
      Returns:
      hashcode.