file-transformer-rda-json/core/src/main/java/org/opencdmp/filetransformer/rda/model/rda/mapper/DmpContactModelContactRDAMa...

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;
}
}