@Override
protected List<String> validate(String defaultStudyStr, List<String> values, Integer release, VariantQueryParam param,
String sessionId) throws CatalogException {
if (release == null) {
String userId = catalogManager.getUserManager().getUserId(sessionId);
List<Study> studies = catalogManager.getStudyManager().resolveIds(values, userId);
return studies.stream().map(Study::getFqn).collect(Collectors.toList());
} else {
List<String> validatedValues = new ArrayList<>(values.size());
List<QueryResult<Study>> queryResults = catalogManager.getStudyManager().get(values, RELEASE_OPTIONS, false, sessionId);
for (QueryResult<Study> queryResult : queryResults) {
Study study = queryResult.first();
validatedValues.add(study.getFqn());
checkRelease(release, study.getRelease(), param, study.getFqn());
}
return validatedValues;
}
}
}