//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.5-b10
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2012.05.06 at 06:41:10 PM CEST
//
package de.groothues.mysaml.assertion;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlID;
import javax.xml.bind.annotation.XmlSchemaType;
import javax.xml.bind.annotation.XmlType;
import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.datatype.XMLGregorianCalendar;
import de.groothues.mysaml.xmldsig.SignatureType;
/**
* <p>Java class for AssertionType complex type.
*
* <p>The following schema fragment specifies the expected content contained within this class.
*
* <pre>
* <complexType name="AssertionType">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Issuer"/>
* <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" minOccurs="0"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Subject" minOccurs="0"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Conditions" minOccurs="0"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Advice" minOccurs="0"/>
* <choice maxOccurs="unbounded" minOccurs="0">
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Statement"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}AuthnStatement"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}AuthzDecisionStatement"/>
* <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}AttributeStatement"/>
* </choice>
* </sequence>
* <attribute name="Version" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
* <attribute name="ID" use="required" type="{http://www.w3.org/2001/XMLSchema}ID" />
* <attribute name="IssueInstant" use="required" type="{http://www.w3.org/2001/XMLSchema}dateTime" />
* </restriction>
* </complexContent>
* </complexType>
* </pre>
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "AssertionType", propOrder = {
"issuer",
"signature",
"subject",
"conditions",
"advice",
"statementOrAuthnStatementOrAuthzDecisionStatement"
})
public class AssertionType {
@XmlElement(name = "Issuer", required = true)
protected NameIDType issuer;
@XmlElement(name = "Signature", namespace = "http://www.w3.org/2000/09/xmldsig#")
protected SignatureType signature;
@XmlElement(name = "Subject")
protected SubjectType subject;
@XmlElement(name = "Conditions")
protected ConditionsType conditions;
@XmlElement(name = "Advice")
protected AdviceType advice;
@XmlElements({
@XmlElement(name = "Statement"),
@XmlElement(name = "AuthnStatement", type = AuthnStatementType.class),
@XmlElement(name = "AuthzDecisionStatement", type = AuthzDecisionStatementType.class),
@XmlElement(name = "AttributeStatement", type = AttributeStatementType.class)
})
protected List<StatementAbstractType> statementOrAuthnStatementOrAuthzDecisionStatement;
@XmlAttribute(name = "Version", required = true)
protected String version;
@XmlAttribute(name = "ID", required = true)
@XmlJavaTypeAdapter(CollapsedStringAdapter.class)
@XmlID
@XmlSchemaType(name = "ID")
protected String id;
@XmlAttribute(name = "IssueInstant", required = true)
@XmlSchemaType(name = "dateTime")
protected XMLGregorianCalendar issueInstant;
/**
* Gets the value of the issuer property.
*
* @return
* possible object is
* {@link NameIDType }
*
*/
public NameIDType getIssuer() {
return issuer;
}
/**
* Sets the value of the issuer property.
*
* @param value
* allowed object is
* {@link NameIDType }
*
*/
public void setIssuer(NameIDType value) {
this.issuer = value;
}
/**
* Gets the value of the signature property.
*
* @return
* possible object is
* {@link SignatureType }
*
*/
public SignatureType getSignature() {
return signature;
}
/**
* Sets the value of the signature property.
*
* @param value
* allowed object is
* {@link SignatureType }
*
*/
public void setSignature(SignatureType value) {
this.signature = value;
}
/**
* Gets the value of the subject property.
*
* @return
* possible object is
* {@link SubjectType }
*
*/
public SubjectType getSubject() {
return subject;
}
/**
* Sets the value of the subject property.
*
* @param value
* allowed object is
* {@link SubjectType }
*
*/
public void setSubject(SubjectType value) {
this.subject = value;
}
/**
* Gets the value of the conditions property.
*
* @return
* possible object is
* {@link ConditionsType }
*
*/
public ConditionsType getConditions() {
return conditions;
}
/**
* Sets the value of the conditions property.
*
* @param value
* allowed object is
* {@link ConditionsType }
*
*/
public void setConditions(ConditionsType value) {
this.conditions = value;
}
/**
* Gets the value of the advice property.
*
* @return
* possible object is
* {@link AdviceType }
*
*/
public AdviceType getAdvice() {
return advice;
}
/**
* Sets the value of the advice property.
*
* @param value
* allowed object is
* {@link AdviceType }
*
*/
public void setAdvice(AdviceType value) {
this.advice = value;
}
/**
* Gets the value of the statementOrAuthnStatementOrAuthzDecisionStatement property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the statementOrAuthnStatementOrAuthzDecisionStatement property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getStatementOrAuthnStatementOrAuthzDecisionStatement().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link StatementAbstractType }
* {@link AuthnStatementType }
* {@link AuthzDecisionStatementType }
* {@link AttributeStatementType }
*
*
*/
public List<StatementAbstractType> getStatementOrAuthnStatementOrAuthzDecisionStatement() {
if (statementOrAuthnStatementOrAuthzDecisionStatement == null) {
statementOrAuthnStatementOrAuthzDecisionStatement = new ArrayList<StatementAbstractType>();
}
return this.statementOrAuthnStatementOrAuthzDecisionStatement;
}
/**
* Gets the value of the version property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getVersion() {
return version;
}
/**
* Sets the value of the version property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setVersion(String value) {
this.version = value;
}
/**
* Gets the value of the id property.
*
* @return
* possible object is
* {@link String }
*
*/
public String getID() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value
* allowed object is
* {@link String }
*
*/
public void setID(String value) {
this.id = value;
}
/**
* Gets the value of the issueInstant property.
*
* @return
* possible object is
* {@link XMLGregorianCalendar }
*
*/
public XMLGregorianCalendar getIssueInstant() {
return issueInstant;
}
/**
* Sets the value of the issueInstant property.
*
* @param value
* allowed object is
* {@link XMLGregorianCalendar }
*
*/
public void setIssueInstant(XMLGregorianCalendar value) {
this.issueInstant = value;
}
}