@SuppressWarnings("unchecked") @Override public T readTraits(Recommender aRecommender) { if (aRecommender.getTraits() == null) { return createTraits(); } T traits = null; try { traits = fromJsonString((Class<T>) createTraits().getClass(), aRecommender.getTraits()); } catch (IOException e) { log.error("Error while reading traits", e); } if (traits == null) { traits = createTraits(); } return traits; }
@Override public void exportData(ProjectExportRequest aRequest, ExportedProject aExProject, File aFile) { Project project = aRequest.getProject(); List<ExportedRecommender> exportedRecommenders = new ArrayList<>(); for (Recommender recommender : recommendationService.listRecommenders(project)) { ExportedRecommender exportedRecommender = new ExportedRecommender(); exportedRecommender.setAlwaysSelected(recommender.isAlwaysSelected()); exportedRecommender.setFeature(recommender.getFeature().getName()); exportedRecommender.setEnabled(recommender.isEnabled()); exportedRecommender.setLayerName(recommender.getLayer().getName()); exportedRecommender.setName(recommender.getName()); exportedRecommender.setThreshold(recommender.getThreshold()); exportedRecommender.setTool(recommender.getTool()); exportedRecommender.setSkipEvaluation(recommender.isSkipEvaluation()); exportedRecommender.setMaxRecommendations(recommender.getMaxRecommendations()); exportedRecommender.setStatesIgnoredForTraining( recommender.getStatesIgnoredForTraining()); exportedRecommender.setTraits(recommender.getTraits()); exportedRecommenders.add(exportedRecommender); } aExProject.setProperty(KEY, exportedRecommenders); int n = exportedRecommenders.size(); LOG.info("Exported [{}] recommenders for project [{}]", n, project.getName()); }