Class Subject

java.lang.Object
com.sun.identity.saml.assertion.Subject

@SupportedAll public class Subject extends Object
The Subject element specifies one or more subjects. It contains either or both of the following elements: NameIdentifier An identification of a subject by its name and security domain. SubjectConfirmation Information that allows the subject to be authenticated. If a Subject element contains more than one subject specification, the issuer is asserting that the surrounding statement is true for all of the subjects specified. For example, if both a NameIdentifier and a SubjectConfirmation element are present, the issuer is asserting that the statement is true of both subjects being identified. A Subject element SHOULD NOT identify more than one principal.
  • Field Details

  • Constructor Details

    • Subject

      protected Subject()
      Default constructor
    • Subject

      public Subject(NameIdentifier nameIdentifier, SubjectConfirmation subjectConfirmation) throws SAMLException
      Constructs a Subject object from a NameIdentifier object and a SubjectConfirmation object.
      Parameters:
      nameIdentifier - NameIdentifier object.
      subjectConfirmation - SubjectConfirmation object.
      Throws:
      SAMLException - if it could not process the Element properly, implying that there is an error in the sender or in the element definition.
    • Subject

      public Subject(NameIdentifier nameIdentifier) throws SAMLException
      Constructs a Subject object from a NameIdentifier object.
      Parameters:
      nameIdentifier - NameIdentifier object.
      Throws:
      SAMLException - if it could not process the Element properly, implying that there is an error in the sender or in the element definition.
    • Subject

      public Subject(Element subjectElement) throws SAMLException
      Constructs a subject element from an existing XML block which has already been built into a DOM.
      Parameters:
      subjectElement - An Element representing DOM tree for Subject object
      Throws:
      SAMLException - if it could not process the Element properly, implying that there is an error in the sender or in the element definition.
    • Subject

      public Subject(SubjectConfirmation subjectConfirmation) throws SAMLException
      Constructs a Subject object from a SubjectConfirmation object.
      Parameters:
      subjectConfirmation - SubjectConfirmation object to be added to the object.
      Throws:
      SAMLException - if subjectConfirmation is null.
  • Method Details

    • equals

      public boolean equals(Subject subject)
      Checks for equality between this object and the Subject passed down as parameter. If NameIdentifier is present, checks for its equality by calling Nameidentifier.equals(). if SubjectConfirmation is present calls equals() method of SubjectConfirmation too passing in the subject's SubjectConfirmation element.
      Parameters:
      subject - Subject to be checked.
      Returns:
      true if this object and subject are equals.
    • setSubjectConfirmation

      public boolean setSubjectConfirmation(SubjectConfirmation subjectConfirmation)
      Sets the subject confirmation to the subject
      Parameters:
      subjectConfirmation - SubjectConfirmation to be set.
      Returns:
      true if operation succeed.
    • removeSubjectConfirmation

      public boolean removeSubjectConfirmation()
      Removes subject confirmation from the subject.
      Returns:
      true if the operation succeeds.
    • setNameIdentifier

      public boolean setNameIdentifier(NameIdentifier nameIdentifier)
      Sets the NameIdentifier to the subject.
      Parameters:
      nameIdentifier - NameIdentifier to be set.
      Returns:
      true if the operation succeeds.
    • removeNameIdentifier

      public boolean removeNameIdentifier()
      Removes NameIdentifier from the subject.
      Returns:
      true if operation succeeds.
    • getNameIdentifier

      public NameIdentifier getNameIdentifier()
      Gets the NameIdentifier within the Subject element
      Returns:
      NameIdentifier object, within this Subject.
    • getSubjectConfirmation

      public SubjectConfirmation getSubjectConfirmation()
      Gets the SubjectConfirmation within the Subject element
      Returns:
      SubjectConfirmation object, within this Subject if exists else null
    • toString

      public String toString()
      Returns a String representation of the element.
      Overrides:
      toString in class Object
      Returns:
      A string containing the valid XML for this element By default name space name is prepended to the element name example <saml:Subject>
    • toString

      public String toString(boolean includeNS, boolean declareNS)
      Returns a String representation of the <Subject> element.
      Parameters:
      includeNS - if true prepends all elements by their Namespace name example <saml:Subject>.
      declareNS - if true includes the namespace within the generated XML.
      Returns:
      A string containing the valid XML for this element.
    • createNameIdentifier

      protected NameIdentifier createNameIdentifier(Element nameIdentifierElement) throws SAMLException
      Throws:
      SAMLException
    • createSubjectConfirmation

      protected SubjectConfirmation createSubjectConfirmation(Element subjectConfirmationElement) throws SAMLException
      Throws:
      SAMLException