diff options
author | 2025-02-11 18:44:48 +0000 | |
---|---|---|
committer | 2025-02-12 15:50:35 +0000 | |
commit | 61e1c70ebefc59356e8b6bf862ea2ba0b8e4efd9 (patch) | |
tree | 0e91ffce9d5c1fd80cfecda4e0d765936b46c46d /cps-ri/src/main | |
parent | ee4e49556be15ef5f881403f1cd70fab8daa68f4 (diff) |
Store yang resources with recommended RFC-6020 file-name
- Ignore input filename and create filename from module name and revision
- added integration test to verify names and edge cases (before and after change)
- Some code cleanup (vars etc)
- Implemented NB comments from last merge(https://gerrit.onap.org/r/c/cps/+/140180)
- fixed SQ warning
Out of scope:
- BLANK revision, test it but failed in ODL Yang Parser and many other places: not supported!
Issue-ID: CPS-138
Change-Id: I6fe6d0f8f3683196b183c6e6582ad8eefdfbb7d7
Signed-off-by: ToineSiebelink <toine.siebelink@est.tech>
Diffstat (limited to 'cps-ri/src/main')
3 files changed, 21 insertions, 21 deletions
diff --git a/cps-ri/src/main/java/org/onap/cps/ri/CpsModulePersistenceServiceImpl.java b/cps-ri/src/main/java/org/onap/cps/ri/CpsModulePersistenceServiceImpl.java index dbc6c28ec5..412c6f9c0b 100755 --- a/cps-ri/src/main/java/org/onap/cps/ri/CpsModulePersistenceServiceImpl.java +++ b/cps-ri/src/main/java/org/onap/cps/ri/CpsModulePersistenceServiceImpl.java @@ -24,6 +24,7 @@ package org.onap.cps.ri; import static com.google.common.base.Preconditions.checkNotNull; +import static org.opendaylight.yangtools.yang.common.YangConstants.RFC6020_YANG_FILE_EXTENSION; import com.google.common.base.MoreObjects; import com.google.common.collect.ImmutableSet; @@ -253,25 +254,24 @@ public class CpsModulePersistenceServiceImpl implements CpsModulePersistenceServ private static Map<String, YangResourceEntity> getYangResourceEntityPerChecksum( final Map<String, String> yangResourceContentPerName) { - final Map<String, YangResourceEntity> yangResourceEntityPerChecksum = - yangResourceContentPerName.entrySet().stream() - .map(entry -> { - final String checksum = DigestUtils.sha256Hex(entry.getValue().getBytes(StandardCharsets.UTF_8)); - final Map<String, String> moduleNameAndRevisionMap = createModuleNameAndRevisionMap(entry.getKey(), - entry.getValue()); - final YangResourceEntity yangResourceEntity = new YangResourceEntity(); - yangResourceEntity.setFileName(entry.getKey()); - yangResourceEntity.setContent(entry.getValue()); - yangResourceEntity.setModuleName(moduleNameAndRevisionMap.get("moduleName")); - yangResourceEntity.setRevision(moduleNameAndRevisionMap.get("revision")); - yangResourceEntity.setChecksum(checksum); - return yangResourceEntity; - }) - .collect(Collectors.toMap( - YangResourceEntity::getChecksum, - entity -> entity - )); - return yangResourceEntityPerChecksum; + return yangResourceContentPerName.entrySet().stream().map(entry -> { + final String checksum = DigestUtils.sha256Hex(entry.getValue().getBytes(StandardCharsets.UTF_8)); + final Map<String, String> moduleNameAndRevisionMap = createModuleNameAndRevisionMap(entry.getKey(), + entry.getValue()); + final YangResourceEntity yangResourceEntity = new YangResourceEntity(); + yangResourceEntity.setContent(entry.getValue()); + final String moduleName = moduleNameAndRevisionMap.get("moduleName"); + final String revision = moduleNameAndRevisionMap.get("revision"); + yangResourceEntity.setModuleName(moduleName); + yangResourceEntity.setRevision(revision); + yangResourceEntity.setFileName(moduleName + "@" + revision + RFC6020_YANG_FILE_EXTENSION); + yangResourceEntity.setChecksum(checksum); + return yangResourceEntity; + }) + .collect(Collectors.toMap( + YangResourceEntity::getChecksum, + entity -> entity + )); } private void createAndSaveSchemaSetEntity(final String dataspaceName, diff --git a/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentQueryBuilder.java b/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentQueryBuilder.java index bf354be024..5563ba6d50 100644 --- a/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentQueryBuilder.java +++ b/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentQueryBuilder.java @@ -1,6 +1,6 @@ /* * ============LICENSE_START======================================================= - * Copyright (C) 2022-2024 Nordix Foundation + * Copyright (C) 2022-2025 Nordix Foundation * Modifications Copyright (C) 2023 TechMahindra Ltd. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); diff --git a/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentRepositoryCpsPathQuery.java b/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentRepositoryCpsPathQuery.java index 4ee6555b79..50c7494b29 100644 --- a/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentRepositoryCpsPathQuery.java +++ b/cps-ri/src/main/java/org/onap/cps/ri/repository/FragmentRepositoryCpsPathQuery.java @@ -1,6 +1,6 @@ /*- * ============LICENSE_START======================================================= - * Copyright (C) 2021-2023 Nordix Foundation. + * Copyright (C) 2021-2025 Nordix Foundation. * Modifications Copyright (C) 2023 TechMahindra Ltd. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); |