* @throws ConfigurationException
*/
public static ResponseType createResponseType(String ID, IssuerInfoHolder issuerInfo, AssertionType assertionType)
throws ConfigurationException
{
ResponseType responseType = SAMLProtocolFactory.getObjectFactory().createResponseType();
responseType.setVersion(issuerInfo.getSamlVersion());
//ID
responseType.setID(ID);
//Issuer
NameIDType issuer = issuerInfo.getIssuer();
responseType.setIssuer(issuer);
//Status
String statusCode = issuerInfo.getStatusCode();
if(statusCode == null)
throw new IllegalArgumentException("issuerInfo missing status code");
responseType.setStatus(createStatusType(statusCode) );
XMLGregorianCalendar issueInstant = XMLTimeUtil.getIssueInstant();
//IssueInstant
responseType.setIssueInstant(issueInstant);
if(assertionType.getIssueInstant() == null)
assertionType.setIssueInstant(issueInstant);
responseType.getAssertionOrEncryptedAssertion().add(assertionType);
return responseType;
}