public VariantMetadata toVariantMetadata(Collection<StudyConfiguration> studyConfigurations, ProjectMetadata projectMetadata, Map<Integer, List<Integer>> returnedSamples, Map<Integer, List<Integer>> returnedFiles) { List<VariantStudyMetadata> studies = new ArrayList<>(); String specie = projectMetadata.getSpecies(); String assembly = projectMetadata.getAssembly(); for (StudyConfiguration studyConfiguration : studyConfigurations) { VariantStudyMetadata studyMetadata = toVariantStudyMetadata(studyConfiguration, returnedSamples == null ? null : returnedSamples.get(studyConfiguration.getStudyId()), returnedFiles == null ? null : returnedFiles.get(studyConfiguration.getStudyId())); studies.add(studyMetadata); } Species species = Species.newBuilder() .setId(specie) .setAssembly(assembly) .build(); return VariantMetadata.newBuilder() // .setDate(Date.from(Instant.now()).toString()) .setCreationDate(TimeUtils.getTime()) .setStudies(studies) .setVersion(GitRepositoryState.get().getDescribeShort()) .setSpecies(species) .build(); }