Class SubjectImpl
- java.lang.Object
-
- com.sun.identity.xacml.context.impl.SubjectImpl
-
- All Implemented Interfaces:
Subject
public class SubjectImpl extends Object implements Subject
TheSubjectelement specifies information about a subject of theRequestcontext by listing a sequence ofAttributeelements associated with the subject. A subject is an entity associated with the access request.<xs:complexType name="SubjectType"> <xs:sequence> <xs:element ref="xacml-context:Attribute" minOccurs="0" maxOccurs="unbounded"/> <xs:sequence> <xs:attribute name="SubjectCategory" type="xs:anyURI" default="urn:oasis:names:tc:xacml:1.0:subject-category:access-subject"/> <xs:complexType>
-
-
Constructor Summary
Constructors Constructor Description SubjectImpl()Default constructorSubjectImpl(String xml)This constructor is used to buildSubjectobject from a XML string.SubjectImpl(Element element)This constructor is used to buildSubjectobject from a block of existing XML that has already been built into a DOM.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ListgetAttributes()Returns zero to manyAttributeelements of this object If no attributes and present, emptyListwill be returned.URIgetSubjectCategory()Returns theSubjectCategoryof this object.booleanisMutable()Checks if the object is mutablevoidmakeImmutable()Makes the object immutablevoidsetAttributes(List attributes)Sets theAttributeelements of this objectvoidsetSubjectCategory(URI subjectCategory)Sets theSubjectCategoryof this objectStringtoXMLString()Returns a string representation of this objectStringtoXMLString(boolean includeNSPrefix, boolean declareNS)Returns aStringrepresentation of this object
-
-
-
Constructor Detail
-
SubjectImpl
public SubjectImpl()
Default constructor
-
SubjectImpl
public SubjectImpl(String xml) throws XACMLException
This constructor is used to buildSubjectobject from a XML string.- Parameters:
xml- Ajava.lang.Stringrepresenting aSubjectobject- Throws:
XACMLException- if it could not process the XML string
-
SubjectImpl
public SubjectImpl(Element element) throws XACMLException
This constructor is used to buildSubjectobject from a block of existing XML that has already been built into a DOM.- Parameters:
element- Aorg.w3c.dom.Elementrepresenting DOM tree forSubjectobject- Throws:
XACMLException- if it could not process the Element
-
-
Method Detail
-
getAttributes
public List getAttributes()
Returns zero to manyAttributeelements of this object If no attributes and present, emptyListwill be returned. Typically aSubjectelement will contain anAttributewith anAttributeIdof "urn:oasis:names:tc:xacml:1.0:subject:subject-id", containing the identity of theSubject- Specified by:
getAttributesin interfaceSubject- Returns:
- the
Attributeelements of this object
-
setAttributes
public void setAttributes(List attributes) throws XACMLException
Sets theAttributeelements of this object- Specified by:
setAttributesin interfaceSubject- Parameters:
attributes-Attributeelements of this object attributes could be an emptyList, if no attributes are present.- Throws:
XACMLException- if the object is immutable An object is consideredimmutableifmakeImmutable()has been invoked on it. It can be determined by callingisMutableon the object.
-
getSubjectCategory
public URI getSubjectCategory()
Returns theSubjectCategoryof this object. This is optional so could be null if not defined. This attribute indicates the role that the parentSubjectplayed in the formation of the access request. If this attribute is not present in theSubjectelement, then the default value of urn:oasis:names:tc:xacml:1.0:subject-category:access-subject SHALL be used, indicating that theSubjectrepresents the entity ultimately responsible for initiating the access request.- Specified by:
getSubjectCategoryin interfaceSubject- Returns:
URIrepresenting theSubjectCategoryof this object.
-
setSubjectCategory
public void setSubjectCategory(URI subjectCategory) throws XACMLException
Sets theSubjectCategoryof this object- Specified by:
setSubjectCategoryin interfaceSubject- Parameters:
subjectCategory-URI- Throws:
XACMLException- if the object is immutable An object is consideredimmutableifmakeImmutable()has been invoked on it. It can be determined by callingisMutableon the object.
-
toXMLString
public String toXMLString(boolean includeNSPrefix, boolean declareNS) throws XACMLException
Returns aStringrepresentation of this object- Specified by:
toXMLStringin interfaceSubject- Parameters:
includeNSPrefix- Determines whether or not the namespace qualifier is prepended to the Element when converteddeclareNS- Determines whether or not the namespace is declared within the Element.- Returns:
- a string representation of this object
- Throws:
XACMLException- if conversion fails for any reason
-
toXMLString
public String toXMLString() throws XACMLException
Returns a string representation of this object- Specified by:
toXMLStringin interfaceSubject- Returns:
- a string representation of this object
- Throws:
XACMLException- if conversion fails for any reason
-
makeImmutable
public void makeImmutable()
Makes the object immutable- Specified by:
makeImmutablein interfaceSubject
-
-