Package com.atlassian.crowd.model.group
Class ImmutableDirectoryGroupWithAttributes
java.lang.Object
com.atlassian.crowd.model.group.BaseImmutableGroup
com.atlassian.crowd.model.group.ImmutableDirectoryGroupWithAttributes
- All Implemented Interfaces:
Attributes
,DirectoryEntity
,Group
,GroupWithAttributes
,GroupWithMembers
,InternalDirectoryGroup
,TimestampedGroup
,TimestampedEntity
,Comparable<Group>
public final class ImmutableDirectoryGroupWithAttributes
extends BaseImmutableGroup
implements GroupWithAttributes, InternalDirectoryGroup
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionboolean
Implementations must ensure equality based on getDirectoryId() and case-insensitive getName().Returns the date the entity was created.getKeys()
Gets all the keys of the attributes.Returns the date the entity was last updated.Returns any value associated with the given key, returnsnull
if there is no value.Get all the values associated with a given key.int
hashCode()
Implementations must produce a hashcode based on getDirectoryId() and case-insensitive getName().boolean
isEmpty()
boolean
isLocal()
Returns true if this is a Local Group.Methods inherited from class com.atlassian.crowd.model.group.BaseImmutableGroup
compareTo, getDescription, getDirectoryId, getExternalId, getName, getType, isActive, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface com.atlassian.crowd.model.DirectoryEntity
getDirectoryId, getName
Methods inherited from interface com.atlassian.crowd.model.group.Group
getDescription, getExternalId, getType, isActive
-
Method Details
-
builder
public static ImmutableDirectoryGroupWithAttributes.Builder builder(InternalDirectoryGroup group, Map<String, Set<String>> attributes) -
getValues
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 interfaceAttributes
- 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
Description copied from interface:Attributes
Returns any value associated with the given key, returnsnull
if there is no value.- Specified by:
getValue
in interfaceAttributes
- 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
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 interfaceAttributes
- Returns:
- a set of all the keys.
-
isEmpty
public boolean isEmpty()- Specified by:
isEmpty
in interfaceAttributes
- Returns:
true
if there are no attributes
-
getCreatedDate
Description copied from interface:TimestampedEntity
Returns the date the entity was created.- Specified by:
getCreatedDate
in interfaceTimestampedEntity
- Returns:
- date the entity was created
-
getUpdatedDate
Description copied from interface:TimestampedEntity
Returns the date the entity was last updated.- Specified by:
getUpdatedDate
in interfaceTimestampedEntity
- Returns:
- date the entity was last updated.
-
isLocal
public boolean isLocal()Description copied from interface:InternalDirectoryGroup
Returns true if this is a Local Group.- Specified by:
isLocal
in interfaceInternalDirectoryGroup
- Returns:
- true if this is a Local Group.
-
withName
- Specified by:
withName
in classBaseImmutableGroup
-
equals
Description copied from interface:DirectoryEntity
Implementations must ensure equality based on getDirectoryId() and case-insensitive getName().- Specified by:
equals
in interfaceDirectoryEntity
- Overrides:
equals
in classBaseImmutableGroup
- 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 interfaceDirectoryEntity
- Overrides:
hashCode
in classBaseImmutableGroup
- Returns:
- hashcode.
-