public final class SubjectComponentData
extends java.lang.Object
SubjectComponentData
is an immutable collection of subject components
which may be used to create a Subject
.Modifier and Type | Field and Description |
---|---|
private java.util.Set<java.lang.String> |
groups |
private java.lang.String |
identityDomain |
private boolean |
isIddSet |
private java.util.Set<java.security.Principal> |
principals |
private java.util.Set<java.lang.Object> |
privateCredentials |
private java.util.Set<java.lang.Object> |
publicCredentials |
private java.lang.String |
userName |
Modifier | Constructor and Description |
---|---|
|
SubjectComponentData(java.lang.String userName,
java.util.Set<java.lang.String> groups,
java.util.Set<java.security.Principal> principals,
java.util.Set<java.lang.Object> privateCredentials,
java.util.Set<java.lang.Object> publicCredentials)
Constructs an instance with an undefined Identity Domain.
|
private |
SubjectComponentData(java.lang.String userName,
java.util.Set<java.lang.String> groups,
java.util.Set<java.security.Principal> principals,
java.util.Set<java.lang.Object> privateCredentials,
java.util.Set<java.lang.Object> publicCredentials,
boolean isIddSet,
java.lang.String identityDomain)
An internal constructor, which facilitates initialization of internal
final members.
|
|
SubjectComponentData(java.lang.String userName,
java.util.Set<java.lang.String> groups,
java.util.Set<java.security.Principal> principals,
java.util.Set<java.lang.Object> privateCredentials,
java.util.Set<java.lang.Object> publicCredentials,
java.lang.String identityDomain)
Constructs an instance with the specified Identity Domain.
|
|
SubjectComponentData(SubjectComponentData subjectComponentData,
java.lang.String identityDomain)
Constructs an instance with the specified Identity Domain, copying the other
subject component references from the given
SubjectComponentData object. |
Modifier and Type | Method and Description |
---|---|
private static SubjectComponentData |
checkNonNull(SubjectComponentData subjectComponentData)
Checks whether the given subjectComponentData is not null.
|
private static <T> java.util.Set<T> |
copyToImmutableSet(java.util.Set<T> set)
Utility method which returns an immutable copy of the given set.
|
java.util.Set<java.lang.String> |
getGroups()
Determines the Subject group membership.
|
java.lang.String |
getIdentityDomain()
Determines the Subject identity domain.
|
java.util.Set<java.security.Principal> |
getPrincipals()
Determines the Subject set of additional principals.
|
java.util.Set<java.lang.Object> |
getPrivateCredentials()
Determines the Subject set of private credentials.
|
java.util.Set<java.lang.Object> |
getPublicCredentials()
Determines the Subject set of public credentials.
|
java.lang.String |
getUserName()
Determines the Subject username, without encoded identity domain.
|
boolean |
isIdentityDomainSet()
Determines whether the Subject identity domain has been set.
|
java.lang.String |
toString()
Provides a string representation of the contained data.
|
private final java.lang.String userName
private final java.util.Set<java.lang.String> groups
private final java.util.Set<java.security.Principal> principals
private final java.util.Set<java.lang.Object> privateCredentials
private final java.util.Set<java.lang.Object> publicCredentials
private final java.lang.String identityDomain
private final boolean isIddSet
private SubjectComponentData(java.lang.String userName, java.util.Set<java.lang.String> groups, java.util.Set<java.security.Principal> principals, java.util.Set<java.lang.Object> privateCredentials, java.util.Set<java.lang.Object> publicCredentials, boolean isIddSet, java.lang.String identityDomain)
NOTE THAT null
given to any parameter is accepted and returned
in the corresponding getter.
userName
- Subject user name, without encoded identity domain.groups
- Subject group membershipprincipals
- Additional subject principals, we assume Principal
implementations are immutable.privateCredentials
- Subject private credentials, we assume credentials
are immutable.publicCredentials
- Subject public credentials, we assume credentials
are immutable.isIddSet
- true
if identityDomain
has a specified value.identityDomain
- If isIddSet
is true
, this is a specified value.
Otherwise, this parameter is insignificant.public SubjectComponentData(java.lang.String userName, java.util.Set<java.lang.String> groups, java.util.Set<java.security.Principal> principals, java.util.Set<java.lang.Object> privateCredentials, java.util.Set<java.lang.Object> publicCredentials)
The instance created, using this constructor, would have
SubjectComponentData.isIdentityDomainSet()
return false
. This implies
callers, such as Identity Asserter implementations,
may supplement the SubjectComponentData
with a configured IdentityDomain.
NOTE THAT null
given to any parameter is accepted and returned
in the corresponding getter.
userName
- Subject user name, without encoded identity domain.groups
- Subject group membershipprincipals
- Additional subject principals, we assume Principal
implementations are immutable.privateCredentials
- Subject private credentials, we assume credentials
are immutable.publicCredentials
- Subject public credentials, we assume credentials
are immutable.public SubjectComponentData(java.lang.String userName, java.util.Set<java.lang.String> groups, java.util.Set<java.security.Principal> principals, java.util.Set<java.lang.Object> privateCredentials, java.util.Set<java.lang.Object> publicCredentials, java.lang.String identityDomain)
The instance created, using this constructor, would have
SubjectComponentData.isIdentityDomainSet()
return true
.
NOTE THAT null
given to any parameter is accepted and returned
in the corresponding getter.
userName
- Subject user name, without encoded identity domain.groups
- Subject group membershipprincipals
- Additional subject principals, we assume Principal
implementations are immutable.privateCredentials
- Subject private credentials, we assume credentials
are immutable.publicCredentials
- Subject public credentials, we assume credentials
are immutable.identityDomain
- Subject identity domain, which may be
null
or empty String.public SubjectComponentData(SubjectComponentData subjectComponentData, java.lang.String identityDomain) throws java.lang.NullPointerException
SubjectComponentData
object.
The instance created, using this constructor, would have
SubjectComponentData.isIdentityDomainSet()
return true
.
subjectComponentData
- SubjectComponentData instance from which to copy.identityDomain
- Subject identity domain, which may be
null
or empty String.java.lang.NullPointerException
- The given subjectComponentData was null.private static <T> java.util.Set<T> copyToImmutableSet(java.util.Set<T> set)
NOTE THAT in order for the entire set to be immutable, elements of the given set MUST also be immutable. This method does NOT ensure immutability of the elements in the given set.
private static SubjectComponentData checkNonNull(SubjectComponentData subjectComponentData) throws java.lang.NullPointerException
subjectComponentData
- Given value to checkjava.lang.NullPointerException
- Given subjectComponentData was null.public java.lang.String getUserName()
public java.lang.String getIdentityDomain()
SubjectComponentData.isIdentityDomainSet()
returns true
.
Otherwise, this returned value is invalid.public boolean isIdentityDomainSet()
true
if identity domain has been set, otherwise false
.public java.util.Set<java.lang.String> getGroups()
public java.util.Set<java.security.Principal> getPrincipals()
public java.util.Set<java.lang.Object> getPrivateCredentials()
public java.util.Set<java.lang.Object> getPublicCredentials()
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()