package uk.ac.ox.zoo.seeg.abraid.mp.publicsite.domain;
import uk.ac.ox.zoo.seeg.abraid.mp.common.domain.Expert;
import uk.ac.ox.zoo.seeg.abraid.mp.common.domain.ValidatorDiseaseGroup;
import java.util.List;
import static ch.lambdaj.Lambda.extract;
import static ch.lambdaj.Lambda.on;
/**
* A DTO for the parts of uk.ac.ox.zoo.seeg.abraid.mp.common.domain.Expert provided on the account details page.
* Copyright (c) 2014 University of Oxford
*/
public class JsonExpertDetails {
private String name;
private Boolean visibilityRequested;
private List<Integer> diseaseInterests;
private String jobTitle;
private String institution;
public JsonExpertDetails() {
}
public JsonExpertDetails(Expert expert) {
this.setName(expert.getName());
this.setVisibilityRequested(expert.getVisibilityRequested());
this.setJobTitle(expert.getJobTitle());
this.setInstitution(expert.getInstitution());
this.setDiseaseInterests(extract(expert.getValidatorDiseaseGroups(), on(ValidatorDiseaseGroup.class).getId()));
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Boolean getVisibilityRequested() {
return visibilityRequested;
}
public void setVisibilityRequested(Boolean visibilityRequested) {
this.visibilityRequested = visibilityRequested;
}
public List<Integer> getDiseaseInterests() {
return diseaseInterests;
}
public void setDiseaseInterests(List<Integer> diseaseInterests) {
this.diseaseInterests = diseaseInterests;
}
public String getInstitution() {
return institution;
}
public void setInstitution(String institution) {
this.institution = institution;
}
public String getJobTitle() {
return jobTitle;
}
public void setJobTitle(String jobTitle) {
this.jobTitle = jobTitle;
}
}