if (contactPerson == null) {
contactPerson = new ResponsiblePartyImpl();
}
TelephoneImpl telephone = null;
AddressImpl address = null;
ContactImpl contact = new ContactImpl();
for (int i = 0; i < value.length; i++) {
contactPerson.setContactInfo(contact);
if (sameName(elems[1], value[i])) {
String positionName = (String) value[i].getValue();
contactPerson.setPositionName(new SimpleInternationalString(positionName));
}
if (sameName(elems[2], value[i])) {
address = (AddressImpl) value[i].getValue();
}
if (sameName(elems[3], value[i])) {
Collection voices = Collections.singleton(value[i].getValue());
if (telephone == null) {
telephone = new TelephoneImpl();
}
telephone.setVoices(voices);
}
if (sameName(elems[4], value[i])) {
Collection fax = Collections.singleton(value[i].getValue());
if (telephone == null) {
telephone = new TelephoneImpl();
}
telephone.setFacsimiles(fax);
}
contact.setPhone(telephone);
}
for (int i = 0; i < value.length; i++) {
if (sameName(elems[5], value[i])) {
String email = (String) value[i].getValue();
if (address == null) {
address = new AddressImpl();
}
address.setElectronicMailAddresses(Collections.singleton(email));
}
}
contact.setAddress(address);
return contactPerson;