package plugins.harmonization; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.List; import org.molgenis.framework.ui.EasyPluginModel; import org.molgenis.pheno.Measurement; import org.quartz.Scheduler; import plugins.HarmonizationComponent.LevenshteinDistanceModel; import plugins.catalogueTreeNewVersion.catalogueTreeComponent; import uk.ac.ebi.ontocat.bioportal.BioportalOntologyService; public class HarmonizationModel extends EasyPluginModel { /** * */ private static final long serialVersionUID = 4404912460247332113L; private int totalNumber = 0; private int finishedNumber = 0; private String retrieveResult = Boolean.FALSE.toString(); private String selectedValidationStudy = null; private String selectedPredictionModel = null; private Scheduler scheduler = null; private BioportalOntologyService os = null; private LevenshteinDistanceModel model = null; private catalogueTreeComponent catalogue = null; private HashMap<String, Measurement> measurements = null; private List<String> predictionModels = new ArrayList<String>(); private List<String> validationStudies = new ArrayList<String>(); private List<String> reservedInv = new ArrayList<String>(); private HashMap<String, PredictorInfo> predictors = new HashMap<String, PredictorInfo>(); // private String[] ontologies = { "1351", "1136", "1353", "2018", "1032" }; private String[] ontologies = { "1032" }; private List<String> ontologyAccessions = Arrays.asList(ontologies); private String freeMakerTemplate = "Harmonization.ftl"; private int finishedJobs = 0; private int totalJobs = 0; private long startTime = 0; private String estimatedTime = ""; private String processedTime = ""; public HarmonizationModel(Harmonization controller) { super(controller); } public String getFreeMakerTemplate() { return freeMakerTemplate; } public void setFreeMakerTemplate(String freeMakerTemplate) { this.freeMakerTemplate = freeMakerTemplate; } public List<String> getDataTypes() { List<String> dataTypeOptions = new ArrayList<String>(); dataTypeOptions.add("string"); dataTypeOptions.add("int"); dataTypeOptions.add("datetime"); dataTypeOptions.add("categorical"); dataTypeOptions.add("decimal"); return dataTypeOptions; } public List<String> getPredictionModels() { return predictionModels; } public String getUrl() { return "molgenis.do?__target=" + this.getName(); } public Scheduler getScheduler() { return scheduler; } public void setScheduler(Scheduler scheduler) { this.scheduler = scheduler; } public BioportalOntologyService getOs() { return os; } public void setOs(BioportalOntologyService os) { this.os = os; } public LevenshteinDistanceModel getMatchingModel() { return model; } public void setMatchingModel(LevenshteinDistanceModel model) { this.model = model; } public catalogueTreeComponent getCatalogue() { return catalogue; } public void setCatalogue(catalogueTreeComponent catalogue) { this.catalogue = catalogue; } public HashMap<String, Measurement> getMeasurements() { return measurements; } public void setMeasurements(HashMap<String, Measurement> measurements) { this.measurements = measurements; } public List<String> getValidationStudies() { return validationStudies; } public void setValidationStudies(List<String> validationStudies) { this.validationStudies = validationStudies; } public List<String> getReservedInv() { return reservedInv; } public HashMap<String, PredictorInfo> getPredictors() { return predictors; } public void setPredictors(HashMap<String, PredictorInfo> predictors) { this.predictors = predictors; } public List<String> getOntologyAccessions() { return ontologyAccessions; } public int getTotalNumber() { return totalNumber; } public void setTotalNumber(int totalNumber) { this.totalNumber = totalNumber; } public int getFinishedNumber() { return finishedNumber; } public void setFinishedNumber(int finishedNumber) { this.finishedNumber = finishedNumber; } public void setFinishedJobs(int finishedJobs) { this.finishedJobs = finishedJobs; } public int getFinishedJobs() { return finishedJobs; } public void setTotalJobs(int totalJobs) { this.totalJobs = totalJobs; } public int getTotalJobs() { return totalJobs; } public void setStartTime(long startTime) { this.startTime = startTime; } public long getStartTime() { return startTime; } public String getSelectedValidationStudy() { return selectedValidationStudy; } public void setSelectedValidationStudy(String selectedValidationStudy) { this.selectedValidationStudy = selectedValidationStudy; } public String getSelectedPredictionModel() { return selectedPredictionModel; } public void setSelectedPredictionModel(String selectedPredictionModel) { this.selectedPredictionModel = selectedPredictionModel; } public void setEstimatedTime(String estimatedTime) { this.estimatedTime = estimatedTime; } public String getEstimatedTime() { return estimatedTime; } public void setProcessedTime(String processedTime) { this.processedTime = processedTime; } public String getProcessedTime() { return processedTime; } public String isRetrieveResult() { return retrieveResult; } public void setRetrieveResult(boolean retrieveResult) { if (retrieveResult) { this.retrieveResult = Boolean.TRUE.toString(); } else { this.retrieveResult = Boolean.FALSE.toString(); } } }