package at.gv.egovernment.moa.id.auth.data;
import java.io.IOException;
import java.security.PublicKey;
import javax.xml.transform.TransformerException;
import org.w3c.dom.Element;
import at.gv.egovernment.moa.util.DOMUtils;
/**
* Data contained in an identity link issued by BMI, relevant to the MOA ID component.
*
"IdentityLink"
is the translation of "Personenbindung"
.
*
* @author Paul Ivancsics
* @version $Id$
*/
public class IdentityLink {
/**
* "identificationValue"
is the translation of "Stammzahl"
.
*/
private String identificationValue;
/**
* "identificationType"
type of the identificationValue in the IdentityLink.
*/
private String identificationType;
/**
* first name
*/
private String givenName;
/**
* family name
*/
private String familyName;
/**
* date of birth
*/
private String dateOfBirth;
/**
* the original saml:Assertion-Element
*/
private Element samlAssertion;
/**
* the serializes saml:Assertion
*/
private String serializedSamlAssertion;
/**
* Element /saml:Assertion/saml:AttributeStatement/saml:Subject/saml:SubjectConfirmation/saml:SubjectConfirmationData/pr:Person
*/
private Element prPerson;
/**
* we need for each dsig:Reference Element all
* transformation elements
*/
private Element[] dsigReferenceTransforms;
/**
* we need all public keys stored in
* the identity link
*/
private PublicKey[] publicKey;
/**
* Constructor for IdentityLink
*/
public IdentityLink() {
}
/**
* Returns the dateOfBirth.
* @return Calendar
*/
public String getDateOfBirth() {
return dateOfBirth;
}
/**
* Returns the familyName.
* @return String
*/
public String getFamilyName() {
return familyName;
}
/**
* Returns the givenName.
* @return String
*/
public String getGivenName() {
return givenName;
}
/**
* Returns the identificationValue.
* "identificationValue"
is the translation of "Stammzahl"
.
* @return String
*/
public String getIdentificationValue() {
return identificationValue;
}
/**
* Returns the identificationType.
* "identificationType"
type of the identificationValue in the IdentityLink.
* @return String
*/
public String getIdentificationType() {
return identificationType;
}
/**
* Sets the dateOfBirth.
* @param dateOfBirth The dateOfBirth to set
*/
public void setDateOfBirth(String dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}
/**
* Sets the familyName.
* @param familyName The familyName to set
*/
public void setFamilyName(String familyName) {
this.familyName = familyName;
}
/**
* Sets the givenName.
* @param givenName The givenName to set
*/
public void setGivenName(String givenName) {
this.givenName = givenName;
}
/**
* Sets the identificationValue.
* "identificationValue"
is the translation of "Stammzahl"
.
* @param identificationValue The identificationValue to set
*/
public void setIdentificationValue(String identificationValue) {
this.identificationValue = identificationValue;
}
/**
* Sets the Type of the identificationValue.
* @param identificationType The type of identificationValue to set
*/
public void setIdentificationType(String identificationType) {
this.identificationType = identificationType;
}
/**
* Returns the samlAssertion.
* @return Element
*/
public Element getSamlAssertion() {
return samlAssertion;
}
/**
* Returns the samlAssertion.
* @return Element
*/
public String getSerializedSamlAssertion() {
return serializedSamlAssertion;
}
/**
* Sets the samlAssertion and the serializedSamlAssertion.
* @param samlAssertion The samlAssertion to set
*/
public void setSamlAssertion(Element samlAssertion) throws TransformerException, IOException {
this.samlAssertion = samlAssertion;
this.serializedSamlAssertion = DOMUtils.serializeNode(samlAssertion);
}
/**
* Returns the dsigReferenceTransforms.
* @return Element[]
*/
public Element[] getDsigReferenceTransforms() {
return dsigReferenceTransforms;
}
/**
* Sets the dsigReferenceTransforms.
* @param dsigReferenceTransforms The dsigReferenceTransforms to set
*/
public void setDsigReferenceTransforms(Element[] dsigReferenceTransforms) {
this.dsigReferenceTransforms = dsigReferenceTransforms;
}
/**
* Returns the publicKey.
* @return PublicKey[]
*/
public PublicKey[] getPublicKey() {
return publicKey;
}
/**
* Sets the publicKey.
* @param publicKey The publicKey to set
*/
public void setPublicKey(PublicKey[] publicKey) {
this.publicKey = publicKey;
}
/**
* Returns the prPerson.
* @return Element
*/
public Element getPrPerson() {
return prPerson;
}
/**
* Sets the prPerson.
* @param prPerson The prPerson to set
*/
public void setPrPerson(Element prPerson) {
this.prPerson = prPerson;
}
}