com.sun.identity.saml.protocol
Class Response

java.lang.Object
  |
  +--com.sun.identity.saml.protocol.AbstractResponse
        |
        +--com.sun.identity.saml.protocol.Response

public class Response
extends AbstractResponse

This Response class represents a Response XML document. The schema of Response is defined as the following: ...


Constructor Summary
Response(org.w3c.dom.Element root)
          Constructor.
Response(java.lang.String responseID, Status status, java.util.List contents)
          This constructor shall only be used at the server side to construct a Response object.
Response(java.lang.String responseID, Status status, java.lang.String recipient, java.util.List contents)
          This constructor shall only be used at the server side to construct a Response object.
Response(java.lang.String responseID, java.lang.String inResponseTo, Status status, java.util.List contents)
          This constructor shall only be used at the server side to construct a Response object.
Response(java.lang.String responseID, java.lang.String inResponseTo, Status status, java.lang.String recipient, java.util.List contents)
          This constructor shall only be used at the server side to construct a Response object.
 
Method Summary
 boolean addAssertion(Assertion assertion)
          Add an assertion to the Response.
 java.util.List getAssertion()
          This method returns the set of Assertions that is the content of the response.
 Status getStatus()
          Gets the Status of the Response.
static Response parseXML(java.io.InputStream is)
          Returns Response object based on the XML document received from server.
static Response parseXML(java.lang.String xml)
          Returns Response object based on the XML document received from server.
 boolean setSignature(org.w3c.dom.Element elem)
          Set the signature for the Response.
 boolean setStatus(Status status)
          Set the Status of the Response.
 void signXML()
          Method that signs the Response.
 java.lang.String toString()
          This method translates the response to an XML document String based on the Response schema described above.
 java.lang.String toString(boolean includeNS, boolean declareNS)
          Creates a String representation of the <samlp:Response> element.
 java.lang.String toString(boolean includeNS, boolean declareNS, boolean includeHeader)
          Creates a String representation of the <samlp:Response> element.
 
Methods inherited from class com.sun.identity.saml.protocol.AbstractResponse
getInResponseTo, getIssueInstant, getMajorVersion, getMinorVersion, getRecipient, getResponseID, getSignature, isSignatureValid, isSigned, setInResponseTo, setIssueInstant, setMajorVersion, setMinorVersion, setRecipient, setResponseID
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Response

public Response(java.lang.String responseID,
                java.lang.String inResponseTo,
                Status status,
                java.util.List contents)
         throws SAMLException
This constructor shall only be used at the server side to construct a Response object. NOTE: The content here is just the body for the Response. The constructor will add the unique ResponseID, MajorVersion, etc. to form a complete Response object.
Parameters:
responseID - If it's null, the constructor will create one.
inResponseTo - the RequestID that this response is corresponding. It could be null or empty string "".
status - The status of the response.
contents - A List of Assertions that are the content of the Response. It could be null when there is no Assertion.
Throws:
SAMLException - if error occurs.

Response

public Response(java.lang.String responseID,
                java.lang.String inResponseTo,
                Status status,
                java.lang.String recipient,
                java.util.List contents)
         throws SAMLException
This constructor shall only be used at the server side to construct a Response object. NOTE: The content here is just the body for the Response. The constructor will add the unique ResponseID, MajorVersion, etc. to form a complete Response object.
Parameters:
responseID - If it's null, the constructor will create one.
inResponseTo - the RequestID that this response is corresponding. It could be null or empty string "".
status - The status of the response.
recipient - The intended recipient of the response. It could be null or empty string since it's optional.
contents - A List of Assertions that are the content of the Response. It could be null when there is no Assertion.
Throws:
SAMLException - if error occurs.

Response

public Response(java.lang.String responseID,
                Status status,
                java.lang.String recipient,
                java.util.List contents)
         throws SAMLException
This constructor shall only be used at the server side to construct a Response object. NOTE: The content here is just the body for the Response. The constructor will add the unique ResponseID, MajorVersion, etc. to form a complete Response object.
Parameters:
responseID - If it's null, the constructor will create one.
status - The status of the response.
recipient - The intended recipient of the response. It could be null or empty string since it's optional.
contents - A List of Assertions that are the content of the Response. It could be null when there is no Assertion.
Throws:
SAMLException - if error occurs.

Response

public Response(java.lang.String responseID,
                Status status,
                java.util.List contents)
         throws SAMLException
This constructor shall only be used at the server side to construct a Response object. NOTE: The content here is just the body for the Response. The constructor will add the unique ResponseID, MajorVersion, etc. to form a complete Response object.
Parameters:
responseID - If it's null, the constructor will create one.
status - The status of the response.
contents - A List of Assertions that are the content of the Response. It could be null when there is no Assertion.
Throws:
SAMLException - if error occurs.

Response

public Response(org.w3c.dom.Element root)
         throws SAMLException
Constructor.
Parameters:
root - Response element
Throws:
SAMLException - if error occurs.
Method Detail

signXML

public void signXML()
             throws SAMLException
Method that signs the Response.
Overrides:
signXML in class AbstractResponse
Throws:
SAMLException - if could not sign the Response.

parseXML

public static Response parseXML(java.lang.String xml)
                         throws SAMLException
Returns Response object based on the XML document received from server. This method is used primarily at the client side. The schema of the XML document is describe above.
Parameters:
xml - The Response XML document String. NOTE: this is a complete SAML response XML string with ResponseID, MajorVersion, etc.
Returns:
Response object based on the XML document received from server.
Throws:
SAMLException - if XML parsing failed

parseXML

public static Response parseXML(java.io.InputStream is)
                         throws SAMLException
Returns Response object based on the XML document received from server. This method is used primarily at the client side. The schema of the XML document is describe above.
Parameters:
is - The Response XML InputStream. NOTE: The InputStream contains a complete SAML response with ResponseID, MajorVersion, etc.
Returns:
Response object based on the XML document received from server.
Throws:
SAMLException - if XML parsing failed

getAssertion

public java.util.List getAssertion()
This method returns the set of Assertions that is the content of the response.
Returns:
The set of Assertions that is the content of the response. It could be Collections.EMPTY_LIST when there is no Assertion in the response.

addAssertion

public boolean addAssertion(Assertion assertion)
Add an assertion to the Response.
Parameters:
assertion - The assertion to be added.
Returns:
A boolean value: true if the operation is successful; false otherwise.

getStatus

public Status getStatus()
Gets the Status of the Response.
Returns:
The Status of the response.

setStatus

public boolean setStatus(Status status)
Set the Status of the Response.
Parameters:
status - The Status of the Response to be set.
Returns:
true if the operation is successful.

setSignature

public boolean setSignature(org.w3c.dom.Element elem)
Set the signature for the Response.
Overrides:
setSignature in class AbstractResponse
Parameters:
elem - ds:Signature element
Returns:
A boolean value: true if the operation succeeds; false otherwise.

toString

public java.lang.String toString()
This method translates the response to an XML document String based on the Response schema described above.
Overrides:
toString in class java.lang.Object
Returns:
An XML String representing the response. NOTE: this is a complete SAML response XML string with ResponseID, MajorVersion, etc.

toString

public java.lang.String toString(boolean includeNS,
                                 boolean declareNS)
Creates a String representation of the <samlp:Response> element.
Parameters:
includeNS - Determines whether or not the namespace qualifier is prepended to the Element when converted
declareNS - Determines whether or not the namespace is declared within the Element.
Returns:
A string containing the valid XML for this element

toString

public java.lang.String toString(boolean includeNS,
                                 boolean declareNS,
                                 boolean includeHeader)
Creates a String representation of the <samlp:Response> element.
Parameters:
includeNS - Determines whether or not the namespace qualifier is prepended to the Element when converted
declareNS - Determines whether or not the namespace is declared within the Element.
includeHeader - Determines whether the output include the XML declaration header.
Returns:
A string containing the valid XML for this element