package qa.qcri.aidr.dbmanager.dto; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import qa.qcri.aidr.common.exception.PropertyNotSetException; import qa.qcri.aidr.dbmanager.entities.misc.Collection; import qa.qcri.aidr.dbmanager.entities.misc.Users; import qa.qcri.aidr.dbmanager.entities.model.NominalAttribute; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; @XmlRootElement @JsonIgnoreProperties(ignoreUnknown=true) public class UsersDTO implements Serializable { /** * */ private static final long serialVersionUID = -3558944427272012856L; @XmlElement private Long userID; @XmlElement private String name; @XmlElement private String role; @XmlElement private List<NominalAttributeDTO> nominalAttributesDTO = null; @XmlElement private List<CollectionDTO> crisisesDTO = null; public Long getUserID() { return userID; } public void setUserID(Long userID) { if (userID != null) { this.userID = userID; } } public String getRole() { return role; } public void setRole(String role) { this.role = role; } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<NominalAttributeDTO> getNominalAttributesDTO() { return this.nominalAttributesDTO; } public void setNominalAttributesDTO(List<NominalAttributeDTO> nominalAttributesDTO) { this.nominalAttributesDTO = nominalAttributesDTO; } public List<CollectionDTO> getCrisisesDTO() { return this.crisisesDTO; } public void setCrisisesDTO(List<CollectionDTO> crisisesDTO) { this.crisisesDTO = crisisesDTO; } private List<CollectionDTO> toCrisisDTOList(List<Collection> list) throws PropertyNotSetException { if (list != null) { List<CollectionDTO> dtoList = new ArrayList<CollectionDTO>(); for (Collection d: list) { dtoList.add(new CollectionDTO(d)); } return dtoList; } return null; } private List<Collection> toCrisisList(List<CollectionDTO> list) throws PropertyNotSetException { if (list != null) { List<Collection> eList = new ArrayList<Collection>(); for (CollectionDTO dto: list) { eList.add(dto.toEntity()); } return eList; } return null; } private List<NominalAttributeDTO> toNominalAttributeDTOList(List<NominalAttribute> list) throws PropertyNotSetException { if (list != null) { List<NominalAttributeDTO> dtoList = new ArrayList<NominalAttributeDTO>(); for (NominalAttribute d: list) { dtoList.add(new NominalAttributeDTO(d)); } return dtoList; } return null; } private List<NominalAttribute> toNominalAttributeList(List<NominalAttributeDTO> list) throws PropertyNotSetException { if (list != null) { List<NominalAttribute> eList = new ArrayList<NominalAttribute>(); for (NominalAttributeDTO dto: list) { eList.add(dto.toEntity()); } return eList; } return null; } public UsersDTO() { } public UsersDTO(Long userID, String name, String role) { this.userID = userID; this.name = name; this.role = role; } public UsersDTO(String name, String role) { this.name = name; this.role = role; } public UsersDTO(Users user) { if (user != null) { this.name = user.getUserName(); this.setUserID(user.getId()); } } public Users toEntity() { Users user = new Users(); user.setUserName(this.getName()); if (this.getUserID() != null) { user.setId(this.getUserID()); } return user; } }