+
+ private void validateDataspaceAndModuleNames(final String dataspaceName,
+ final Collection<String> inputModuleNames) {
+ final Collection<String> retrievedModuleReferences =
+ yangResourceRepository.findAllModuleReferencesByDataspaceAndModuleNames(dataspaceName, inputModuleNames)
+ .stream().map(YangResourceModuleReference::getModuleName)
+ .collect(Collectors.toList());
+ if (retrievedModuleReferences.isEmpty()) {
+ verifyDataspaceName(dataspaceName);
+ }
+ if (inputModuleNames.size() > retrievedModuleReferences.size()) {
+ final List<String> moduleNamesNotFound = inputModuleNames.stream()
+ .filter(moduleName -> !retrievedModuleReferences.contains(moduleName))
+ .collect(Collectors.toList());
+ if (!moduleNamesNotFound.isEmpty()) {
+ throw new ModuleNamesNotFoundException(dataspaceName, moduleNamesNotFound);
+ }
+ }
+ }
+
+ private void verifyDataspaceName(final String dataspaceName) {
+ dataspaceRepository.getByName(dataspaceName);
+ }
+}