41 lines
1.2 KiB
Java
41 lines
1.2 KiB
Java
package org.opencdmp.filetransformer.rda.model.rda.mapper;
|
|
|
|
import org.opencdmp.commonmodels.models.dmp.DmpContactModel;
|
|
import org.opencdmp.filetransformer.rda.model.rda.Contact;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import java.util.Map;
|
|
|
|
@Component
|
|
public class DmpContactModelContactRDAMapper {
|
|
|
|
private final ContactRDAMapper contactRDAMapper;
|
|
public DmpContactModelContactRDAMapper(ContactRDAMapper contactRDAMapper) {
|
|
this.contactRDAMapper = contactRDAMapper;
|
|
}
|
|
|
|
public Contact toRDA(DmpContactModel model) {
|
|
if (model == null) return null;
|
|
Contact rda = new Contact();
|
|
if (model.getUser() != null){
|
|
rda = this.contactRDAMapper.toRDA(model.getUser());
|
|
} else {
|
|
if (model.getLastName() == null) throw new IllegalArgumentException("Last Name is missing");
|
|
if (model.getEmail() == null) throw new IllegalArgumentException("Email is missing");
|
|
|
|
rda.setName(model.getLastName() + " " + model.getFirstName());
|
|
|
|
rda.setMbox(model.getEmail());
|
|
}
|
|
|
|
return rda;
|
|
}
|
|
|
|
public DmpContactModel toEntity(Contact rda) {
|
|
if (rda == null) return null;
|
|
DmpContactModel entity = new DmpContactModel();
|
|
entity.setUser(this.contactRDAMapper.toEntity(rda));
|
|
return entity;
|
|
}
|
|
}
|