From bdca2a2e5cb90cb49eb46d0edaab78c44a158b75 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Jun 2022 11:20:56 +0000 Subject: [PATCH 1/9] Bump surefire-plugin.version from 3.0.0-M6 to 3.0.0-M7 Bumps `surefire-plugin.version` from 3.0.0-M6 to 3.0.0-M7. Updates `maven-surefire-plugin` from 3.0.0-M6 to 3.0.0-M7 - [Release notes](https://github.com/apache/maven-surefire/releases) - [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.0.0-M6...surefire-3.0.0-M7) Updates `maven-failsafe-plugin` from 3.0.0-M6 to 3.0.0-M7 - [Release notes](https://github.com/apache/maven-surefire/releases) - [Commits](https://github.com/apache/maven-surefire/compare/surefire-3.0.0-M6...surefire-3.0.0-M7) --- updated-dependencies: - dependency-name: org.apache.maven.plugins:maven-surefire-plugin dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.apache.maven.plugins:maven-failsafe-plugin dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 42fe7201..d335f800 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ SPDX-License-Identifier: Apache-2.0 UTF-8 3.10.1 - 3.0.0-M6 + 3.0.0-M7 3.2.0 0.9.0 From 4f65912647b92b5fd6264d098b1a68c519f84227 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 Jun 2022 11:47:17 +0000 Subject: [PATCH 2/9] Bump quarkus.platform.version from 2.9.2.Final to 2.10.0.Final Bumps `quarkus.platform.version` from 2.9.2.Final to 2.10.0.Final. Updates `quarkus-universe-bom` from 2.9.2.Final to 2.10.0.Final - [Release notes](https://github.com/quarkusio/quarkus-platform/releases) - [Commits](https://github.com/quarkusio/quarkus-platform/compare/2.9.2.Final...2.10.0.Final) Updates `quarkus-maven-plugin` from 2.9.2.Final to 2.10.0.Final --- updated-dependencies: - dependency-name: io.quarkus:quarkus-universe-bom dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: io.quarkus:quarkus-maven-plugin dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d335f800..3b4f7f9b 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ SPDX-License-Identifier: Apache-2.0 0.9.0 - 2.9.2.Final + 2.10.0.Final 2.3.6 3.0 1.7.36 From 309a5da1da9262b4a1bc63fa06b2dd259fed5472 Mon Sep 17 00:00:00 2001 From: Dennis Labordus Date: Thu, 23 Jun 2022 12:52:54 +0200 Subject: [PATCH 3/9] Added who/when/what to listing of all versions. Signed-off-by: Dennis Labordus --- .../data/rest/v1/model/VersionsResponse.java | 10 +-- .../mock/CompasSclDataRepositoryMock.java | 3 +- .../v1/CompasSclDataResourceAsEditorTest.java | 3 +- .../v1/CompasSclDataResourceAsReaderTest.java | 3 +- .../CompasSclDataBaseXRepository.java | 15 +++- .../CompasSclDataPostgreSQLRepository.java | 56 ++++++++++----- .../compas/scl/data/model/ItemHistory.java | 71 +++++++++++++++++++ .../compas/scl/data/model/ObjectFactory.java | 9 +++ .../repository/CompasSclDataRepository.java | 7 +- .../scl/data/util/SclDataModelMarshaller.java | 5 ++ .../scl/data/model/ItemHistoryTest.java | 36 ++++++++++ .../scl/data/model/ObjectFactoryTest.java | 13 ++++ .../AbstractCompasSclDataRepository.java | 26 ++++--- repository/src/test/resources/scl/scl.scd | 13 +++- .../data/service/CompasSclDataService.java | 3 +- .../impl/CompasSclDataServiceImpl.java | 7 +- .../impl/CompasSclDataServiceImplTest.java | 4 +- 17 files changed, 237 insertions(+), 47 deletions(-) create mode 100644 repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java create mode 100644 repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java diff --git a/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java b/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java index 0bde6389..ab3d467e 100644 --- a/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java +++ b/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java @@ -4,7 +4,7 @@ package org.lfenergy.compas.scl.data.rest.v1.model; import org.eclipse.microprofile.openapi.annotations.media.Schema; -import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; @@ -19,14 +19,14 @@ @XmlAccessorType(XmlAccessType.FIELD) public class VersionsResponse { @Schema(description = "List of found Versions of a specific SCL in the database.") - @XmlElement(name = "Item", namespace = SCL_DATA_SERVICE_V1_NS_URI) - private List items; + @XmlElement(name = "ItemHistory", namespace = SCL_DATA_SERVICE_V1_NS_URI) + private List items; - public List getItems() { + public List getItems() { return items; } - public void setItems(List items) { + public void setItems(List items) { this.items = items; } } diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java index df7b6fd1..b46d6deb 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java @@ -5,6 +5,7 @@ import io.quarkus.test.Mock; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -23,7 +24,7 @@ public List list(SclFileType type) { } @Override - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { throw new IllegalStateException("Mock method using Mockito. Only needed to startup."); } diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java index 6e27566c..a5ded4d3 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java @@ -13,6 +13,7 @@ import org.junit.jupiter.api.Test; import org.lfenergy.compas.scl.data.model.ChangeSetType; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.rest.v1.model.CreateRequest; import org.lfenergy.compas.scl.data.rest.v1.model.UpdateRequest; @@ -76,7 +77,7 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { var version = "1.0.0"; when(compasSclDataService.listVersionsByUUID(type, uuid)) - .thenReturn(Collections.singletonList(new Item(uuid.toString(), name, version))); + .thenReturn(Collections.singletonList(new ItemHistory(uuid.toString(), name, version, null, null, null))); var response = given() .pathParam(TYPE_PATH_PARAM, type) diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java index 7cabbc40..92cae65e 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java @@ -11,6 +11,7 @@ import org.junit.jupiter.api.Test; import org.lfenergy.compas.scl.data.model.ChangeSetType; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.rest.v1.model.CreateRequest; import org.lfenergy.compas.scl.data.rest.v1.model.UpdateRequest; @@ -68,7 +69,7 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { var version = "1.0.0"; when(compasSclDataService.listVersionsByUUID(type, uuid)) - .thenReturn(Collections.singletonList(new Item(uuid.toString(), name, version))); + .thenReturn(Collections.singletonList(new ItemHistory(uuid.toString(), name, version, null, null, null))); var response = given() .pathParam(TYPE_PATH_PARAM, type) diff --git a/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java b/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java index 23aacc6c..cb1fa807 100644 --- a/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java +++ b/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java @@ -9,6 +9,7 @@ import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.exception.CompasSclDataServiceException; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -105,7 +106,7 @@ public List list(SclFileType type) { } @Override - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { return executeQuery(type, DECLARE_SCL_NS_URI + DECLARE_COMPAS_NAMESPACE + format(DECLARE_DB_VARIABLE, type) + @@ -114,13 +115,21 @@ public List listVersionsByUUID(SclFileType type, UUID id) { " let $id := $resource" + SCL_HEADER_ID_XPATH + "\n" + " let $version := $resource" + SCL_HEADER_VERSION_XPATH + "\n" + " let $name := $resource" + COMPAS_NAME_EXTENSION_XPATH + "\n" + + " let $header := $resource/scl:SCL/scl:Header/scl:History/scl:Hitem[(not(@revision) or @revision=\"\") and @version=$version]\n" + " let $parts := tokenize($version, '\\.')\n" + " let $majorVersion := xs:int($parts[1])\n" + " let $minorVersion := xs:int($parts[2])\n" + " let $patchVersion := xs:int($parts[3])\n" + " order by $majorVersion, $minorVersion, $patchVersion\n" + - " return '' || $id || '' || $name || '' || $version || '' ", - sclDataMarshaller::unmarshalItem); + " return ''" + + " || ' ' || $id || ''" + + " || ' ' || $name || ''" + + " || ' ' || $version || '' " + + " || ' ' || $header/@who || '' " + + " || ' ' || $header/@when || '' " + + " || ' ' || $header/@what || '' " + + " || '' ", + sclDataMarshaller::unmarshalItemHistory); } @Override diff --git a/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java b/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java index f78a7ad2..39c7c039 100644 --- a/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java +++ b/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java @@ -7,6 +7,7 @@ import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.exception.CompasSclDataServiceException; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -22,16 +23,31 @@ import static org.lfenergy.compas.scl.data.exception.CompasSclDataServiceErrorCode.*; public class CompasSclDataPostgreSQLRepository implements CompasSclDataRepository { - private static final String SELECT_METADATA_CLAUSE = "select id, name, major_version, minor_version, patch_version "; - private static final String SELECT_DATA_CLAUSE = "select scl_data "; + private static final String SELECT_METADATA_CLAUSE = "select scl_file.id, scl_file.name, scl_file.major_version, scl_file.minor_version, scl_file.patch_version "; + private static final String SELECT_DATA_CLAUSE = "select scl_file.scl_data "; + private static final String SELECT_HEADER_INFO_CLAUSE = + ", (xpath('/scl:Hitem/@who', scl_data.header, ARRAY[ARRAY['scl', 'http://www.iec.ch/61850/2003/SCL']]))[1] hitem_who " + + ", (xpath('/scl:Hitem/@when', scl_data.header, ARRAY[ARRAY['scl', 'http://www.iec.ch/61850/2003/SCL']]))[1] hitem_when " + + ", (xpath('/scl:Hitem/@what', scl_data.header, ARRAY[ARRAY['scl', 'http://www.iec.ch/61850/2003/SCL']]))[1] hitem_what "; private static final String FROM_CLAUSE = " from scl_file "; + private static final String JOIN_HEADER_CLAUSE = " left outer join (" + + "SELECT id, major_version, minor_version, patch_version," + + " unnest(" + + " xpath('/scl:SCL/scl:Header//scl:Hitem[(not(@revision) or @revision=\"\") and @version=\"' || major_version || '.' || minor_version || '.' || patch_version || '\"]' " + + " , scl_data::xml " + + " , ARRAY[ARRAY['scl', 'http://www.iec.ch/61850/2003/SCL']])) as header " + + " from scl_file) scl_data " + + " on scl_data.id = scl_file.id " + + " and scl_data.major_version = scl_file.major_version " + + " and scl_data.minor_version = scl_file.minor_version " + + " and scl_data.patch_version = scl_file.patch_version "; private static final String DELETE_FROM_CLAUSE = "delete " + FROM_CLAUSE; private static final String WHERE_CLAUSE = " where "; private static final String AND_CLAUSE = " and "; - private static final String FILTER_ON_TYPE = "type = ?"; - private static final String FILTER_ON_ID = "id = ?"; - private static final String FILTER_ON_VERSION = "major_version = ? and minor_version = ? and patch_version = ? "; + private static final String FILTER_ON_TYPE = "scl_file.type = ?"; + private static final String FILTER_ON_ID = "scl_file.id = ?"; + private static final String FILTER_ON_VERSION = "scl_file.major_version = ? and scl_file.minor_version = ? and scl_file.patch_version = ? "; private static final String ID_FIELD = "id"; private static final String MAJOR_VERSION_FIELD = "major_version"; @@ -39,6 +55,9 @@ public class CompasSclDataPostgreSQLRepository implements CompasSclDataRepositor private static final String PATCH_VERSION_FIELD = "patch_version"; private static final String NAME_FIELD = "name"; private static final String SCL_DATA_FIELD = "scl_data"; + private static final String HITEM_WHO_FIELD = "hitem_who"; + private static final String HITEM_WHEN_FIELD = "hitem_when"; + private static final String HITEM_WHAT_FIELD = "hitem_what"; private final DataSource dataSource; @@ -51,7 +70,7 @@ public List list(SclFileType type) { var sql = SELECT_METADATA_CLAUSE + FROM_CLAUSE + WHERE_CLAUSE + FILTER_ON_TYPE - + " and (id, major_version, minor_version, patch_version) in (" + + " and (scl_file.id, scl_file.major_version, scl_file.minor_version, scl_file.patch_version) in (" // Last select the maximum patch version with the major/minor version per id. + " select id, major_version, minor_version, max(patch_version)" + " from scl_file patch_scl" @@ -72,7 +91,7 @@ public List list(SclFileType type) { + " )" + " group by id, major_version, minor_version" + " )" - + " order by name, major_version, minor_version, patch_version"; + + " order by scl_file.name, scl_file.major_version, scl_file.minor_version, scl_file.patch_version"; var items = new ArrayList(); try (var connection = dataSource.getConnection(); @@ -93,14 +112,16 @@ public List list(SclFileType type) { } @Override - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { var sql = SELECT_METADATA_CLAUSE + + SELECT_HEADER_INFO_CLAUSE + FROM_CLAUSE + + JOIN_HEADER_CLAUSE + WHERE_CLAUSE + FILTER_ON_ID + AND_CLAUSE + FILTER_ON_TYPE - + " order by major_version, minor_version, patch_version"; + + " order by scl_file.major_version, scl_file.minor_version, scl_file.patch_version"; - var items = new ArrayList(); + var items = new ArrayList(); try (var connection = dataSource.getConnection(); var stmt = connection.prepareStatement(sql)) { stmt.setObject(1, id); @@ -108,9 +129,12 @@ public List listVersionsByUUID(SclFileType type, UUID id) { try (var resultSet = stmt.executeQuery()) { while (resultSet.next()) { - items.add(new Item(id.toString(), + items.add(new ItemHistory(id.toString(), resultSet.getString(NAME_FIELD), - createVersion(resultSet))); + createVersion(resultSet), + resultSet.getString(HITEM_WHO_FIELD), + resultSet.getString(HITEM_WHEN_FIELD), + resultSet.getString(HITEM_WHAT_FIELD))); } } } catch (SQLException exp) { @@ -157,10 +181,10 @@ public String findByUUID(SclFileType type, UUID id, Version version) { @Override public boolean hasDuplicateSclName(SclFileType type, String name) { - var sql = "SELECT DISTINCT ON (id) * " + var sql = "SELECT DISTINCT ON (scl_file.id) * " + FROM_CLAUSE - + "WHERE type=? " - + "ORDER BY id, major_version desc, minor_version desc, patch_version desc"; + + "WHERE scl_file.type = ? " + + "ORDER BY scl_file.id, scl_file.major_version desc, scl_file.minor_version desc, scl_file.patch_version desc"; try (var connection = dataSource.getConnection(); var stmt = connection.prepareStatement(sql)) { @@ -184,7 +208,7 @@ public SclMetaInfo findMetaInfoByUUID(SclFileType type, UUID id) { + FROM_CLAUSE + WHERE_CLAUSE + FILTER_ON_ID + AND_CLAUSE + FILTER_ON_TYPE - + " order by major_version desc, minor_version desc, patch_version desc"; + + " order by scl_file.major_version desc, scl_file.minor_version desc, scl_file.patch_version desc"; try (var connection = dataSource.getConnection(); var stmt = connection.prepareStatement(sql)) { diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java b/repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java new file mode 100644 index 00000000..7185c0c1 --- /dev/null +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java @@ -0,0 +1,71 @@ +// SPDX-FileCopyrightText: 2021 Alliander N.V. +// +// SPDX-License-Identifier: Apache-2.0 +package org.lfenergy.compas.scl.data.model; + +import org.eclipse.microprofile.openapi.annotations.media.Schema; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; + +import static org.lfenergy.compas.scl.data.SclDataServiceConstants.SCL_DATA_SERVICE_V1_NS_URI; + +@Schema(description = "Item found in the database with all basic information including version info about a SCL.") +@XmlAccessorType(XmlAccessType.FIELD) +public class ItemHistory extends Item { + @Schema(description = "Who created this version of the SCL.", + example = "John Doe") + @XmlElement(name = "Who", + namespace = SCL_DATA_SERVICE_V1_NS_URI, + required = true) + private String who; + + @Schema(description = "When was this version of the SCL created.", + example = "2022-06-23T12:24:32") + @XmlElement(name = "When", + namespace = SCL_DATA_SERVICE_V1_NS_URI, + required = true) + private String when; + + @Schema(description = "What changed in this version of the SCL.", + example = "New substation added") + @XmlElement(name = "What", + namespace = SCL_DATA_SERVICE_V1_NS_URI, + required = true) + private String what; + + public ItemHistory() { + } + + public ItemHistory(String id, String name, String version, String who, String when, String what) { + super(id, name, version); + this.who = who; + this.when = when; + this.what = what; + } + + public String getWho() { + return who; + } + + public void setWho(String who) { + this.who = who; + } + + public String getWhen() { + return when; + } + + public void setWhen(String when) { + this.when = when; + } + + public String getWhat() { + return what; + } + + public void setWhat(String what) { + this.what = what; + } +} diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java b/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java index 1be89466..41c4a56e 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java @@ -14,11 +14,20 @@ public Item createItem() { return new Item(); } + public ItemHistory createItemHistory() { + return new ItemHistory(); + } + @XmlElementDecl(namespace = "", name = "Item") public JAXBElement createItem(Item value) { return new JAXBElement<>(new QName("", ""), Item.class, value); } + @XmlElementDecl(namespace = "", name = "ItemHistory") + public JAXBElement createItemHistory(ItemHistory value) { + return new JAXBElement<>(new QName("", ""), ItemHistory.class, value); + } + public SclMetaInfo createSclMetaInfo() { return new SclMetaInfo(); } diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java b/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java index b2201472..13d81fb2 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java @@ -4,6 +4,7 @@ package org.lfenergy.compas.scl.data.repository; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.extensions.model.SclFileType; @@ -37,7 +38,7 @@ public interface CompasSclDataRepository { * @return The list of versions found for that specific sCl Entry. */ @Transactional(SUPPORTS) - List listVersionsByUUID(SclFileType type, UUID id); + List listVersionsByUUID(SclFileType type, UUID id); /** * Return the latest version of a specific SCL Entry. @@ -73,8 +74,8 @@ public interface CompasSclDataRepository { /** * Return the specific version of a specific SCL Entry. * - * @param type The type of SCL to search for the specific SCL. - * @param name The name of the SCL used for checking duplicates. + * @param type The type of SCL to search for the specific SCL. + * @param name The name of the SCL used for checking duplicates. * @return True if name is already used by another SCL File of the same File type, otherwise false. */ @Transactional(SUPPORTS) diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java b/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java index 5f1ac12f..21753622 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java @@ -5,6 +5,7 @@ import org.lfenergy.compas.scl.data.exception.CompasSclDataServiceException; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,6 +38,10 @@ public Item unmarshalItem(String xml) { return unmarshal(xml, Item.class); } + public ItemHistory unmarshalItemHistory(String xml) { + return unmarshal(xml, ItemHistory.class); + } + public SclMetaInfo unmarshalSclMetaInfo(String xml) { return unmarshal(xml, SclMetaInfo.class); } diff --git a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java new file mode 100644 index 00000000..ae5b8136 --- /dev/null +++ b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java @@ -0,0 +1,36 @@ +// SPDX-FileCopyrightText: 2021 Alliander N.V. +// +// SPDX-License-Identifier: Apache-2.0 +package org.lfenergy.compas.scl.data.model; + +import org.junit.jupiter.api.Test; + +import java.util.UUID; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class ItemHistoryTest extends AbstractPojoTester { + @Override + protected Class getClassToBeTested() { + return ItemHistory.class; + } + + @Test + void constructor_WhenCalledWithParameters_ThenValuesAreFilled() { + var id = UUID.randomUUID().toString(); + var name = "Name"; + var version = "1.0.0"; + var who = "who"; + var when = "when"; + var what = "what"; + + var item = new ItemHistory(id, name, version, who, when, what); + + assertEquals(id, item.getId()); + assertEquals(name, item.getName()); + assertEquals(version, item.getVersion()); + assertEquals(who, item.getWho()); + assertEquals(when, item.getWhen()); + assertEquals(what, item.getWhat()); + } +} \ No newline at end of file diff --git a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java index 334497a2..406d1a3d 100644 --- a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java +++ b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java @@ -22,6 +22,19 @@ void createItem_WhenMethodsCalled_ThenObjectsAreCreated() { assertEquals(item, itemElement.getValue()); } + @Test + void createItemHistory_WhenMethodsCalled_ThenObjectsAreCreated() { + var objectFactory = new ObjectFactory(); + + var item = objectFactory.createItemHistory(); + assertNotNull(item); + + var itemElement = objectFactory.createItemHistory(item); + assertNotNull(itemElement); + assertEquals(Item.class, itemElement.getDeclaredType()); + assertEquals(item, itemElement.getValue()); + } + @Test void createSclMetaInfo_WhenMethodsCalled_ThenObjectsAreCreated() { var objectFactory = new ObjectFactory(); diff --git a/repository/src/test/java/org/lfenergy/compas/scl/data/repository/AbstractCompasSclDataRepository.java b/repository/src/test/java/org/lfenergy/compas/scl/data/repository/AbstractCompasSclDataRepository.java index e8e54315..9d0eda3c 100644 --- a/repository/src/test/java/org/lfenergy/compas/scl/data/repository/AbstractCompasSclDataRepository.java +++ b/repository/src/test/java/org/lfenergy/compas/scl/data/repository/AbstractCompasSclDataRepository.java @@ -16,7 +16,8 @@ import static org.junit.jupiter.api.Assertions.*; import static org.lfenergy.compas.scl.data.SclDataServiceConstants.*; -import static org.lfenergy.compas.scl.data.exception.CompasSclDataServiceErrorCode.*; +import static org.lfenergy.compas.scl.data.exception.CompasSclDataServiceErrorCode.HEADER_NOT_FOUND_ERROR_CODE; +import static org.lfenergy.compas.scl.data.exception.CompasSclDataServiceErrorCode.NO_DATA_FOUND_ERROR_CODE; public abstract class AbstractCompasSclDataRepository { protected static final SclFileType TYPE = SclFileType.SCD; @@ -54,7 +55,9 @@ void list_WhenRecordAdded_ThenRecordFound() { assertNotNull(items); assertEquals(1, items.size()); - assertEquals(uuid.toString(), items.get(0).getId()); + var item = items.get(0); + assertEquals(uuid.toString(), item.getId()); + assertEquals(NAME_1, item.getName()); } @Test @@ -87,9 +90,10 @@ void list_WhenTwoVersionsOfARecordAdded_ThenLatestRecordFound() { assertNotNull(items); assertEquals(1, items.size()); - assertEquals(uuid.toString(), items.get(0).getId()); - assertEquals(version.toString(), items.get(0).getVersion()); - assertEquals(NAME_2, items.get(0).getName()); + var item = items.get(0); + assertEquals(uuid.toString(), item.getId()); + assertEquals(version.toString(), item.getVersion()); + assertEquals(NAME_2, item.getName()); } @Test @@ -116,9 +120,15 @@ void listVersionsByUUID_WhenTwoVersionsOfARecordAdded_ThenAllRecordAreFound() { assertNotNull(items); assertEquals(2, items.size()); - assertEquals(uuid.toString(), items.get(1).getId()); - assertEquals(version.toString(), items.get(1).getVersion()); - assertEquals(NAME_2, items.get(1).getName()); + var item = items.get(1); + assertEquals(uuid.toString(), item.getId()); + assertEquals(version.toString(), item.getVersion()); + assertEquals(NAME_2, item.getName()); + + // Hardcoded Header from SCD File, so not related to parameters passed to create. + assertEquals("User 2", item.getWho()); + assertEquals("2021-12-15", item.getWhen()); + assertEquals("Some change 2", item.getWhat()); } @Test diff --git a/repository/src/test/resources/scl/scl.scd b/repository/src/test/resources/scl/scl.scd index 4b68e1b4..f527a925 100644 --- a/repository/src/test/resources/scl/scl.scd +++ b/repository/src/test/resources/scl/scl.scd @@ -3,8 +3,14 @@ - -
+ +
+ + + + +
@@ -59,7 +65,8 @@ - + diff --git a/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java b/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java index d7329143..3c1ee8b9 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java +++ b/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java @@ -5,6 +5,7 @@ import org.lfenergy.compas.scl.data.model.ChangeSetType; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.extensions.model.SclFileType; @@ -20,7 +21,7 @@ public interface CompasSclDataService { List list(SclFileType type); @Transactional(SUPPORTS) - List listVersionsByUUID(SclFileType type, UUID id); + List listVersionsByUUID(SclFileType type, UUID id); @Transactional(SUPPORTS) String findByUUID(SclFileType type, UUID id); diff --git a/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java b/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java index a10d736d..7b873df6 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java +++ b/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java @@ -9,6 +9,7 @@ import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.model.ChangeSetType; import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; import org.lfenergy.compas.scl.data.service.CompasSclDataService; @@ -67,7 +68,7 @@ public List list(SclFileType type) { */ @Override @Transactional(SUPPORTS) - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { var items = repository.listVersionsByUUID(type, id); if (items.isEmpty()) { var message = String.format("No versions found for type '%s' with ID '%s'", type, id); @@ -166,8 +167,8 @@ public String update(SclFileType type, UUID id, ChangeSetType changeSetType, Str var newFileName = getFilenameFromXML(scl); if (newFileName.isPresent() - && !newFileName.get().equals(currentSclMetaInfo.getName()) - && repository.hasDuplicateSclName(type, newFileName.get())) { + && !newFileName.get().equals(currentSclMetaInfo.getName()) + && repository.hasDuplicateSclName(type, newFileName.get())) { throw new CompasException(DUPLICATE_SCL_NAME_ERROR_CODE, "Given name of SCL File already used."); } diff --git a/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java b/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java index 6f5480c7..c5c446d1 100644 --- a/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java +++ b/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java @@ -13,7 +13,7 @@ import org.lfenergy.compas.core.commons.exception.CompasException; import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.model.ChangeSetType; -import org.lfenergy.compas.scl.data.model.Item; +import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -64,7 +64,7 @@ void list_WhenCalled_ThenRepositoryIsCalled() { @Test void listVersionsByUUID_WhenCalledAndRepositoryReturnItemList_ThenListIsReturned() { var uuid = UUID.randomUUID(); - var expectedResult = List.of(new Item()); + var expectedResult = List.of(new ItemHistory()); when(compasSclDataRepository.listVersionsByUUID(SCL_TYPE, uuid)).thenReturn(expectedResult); var result = compasSclDataService.listVersionsByUUID(SCL_TYPE, uuid); From f084dfd4a5f10e0acf347e8ff1a2f6ab7d6d0433 Mon Sep 17 00:00:00 2001 From: Dennis Labordus Date: Thu, 23 Jun 2022 12:55:53 +0200 Subject: [PATCH 4/9] Fixed test Signed-off-by: Dennis Labordus --- .../org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java index 406d1a3d..6a9b6e1a 100644 --- a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java +++ b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java @@ -31,7 +31,7 @@ void createItemHistory_WhenMethodsCalled_ThenObjectsAreCreated() { var itemElement = objectFactory.createItemHistory(item); assertNotNull(itemElement); - assertEquals(Item.class, itemElement.getDeclaredType()); + assertEquals(ItemHistory.class, itemElement.getDeclaredType()); assertEquals(item, itemElement.getValue()); } From 0ec7b341579450c7201331d58ab98c9f336403e8 Mon Sep 17 00:00:00 2001 From: Dennis Labordus Date: Thu, 23 Jun 2022 13:01:07 +0200 Subject: [PATCH 5/9] Fixed tests. Signed-off-by: Dennis Labordus --- .../scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java | 6 +++--- .../scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java index a5ded4d3..8355051f 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java @@ -89,9 +89,9 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { .response(); var xmlPath = response.xmlPath(); - assertEquals(uuid.toString(), xmlPath.get("ListResponse.Item[0].Id")); - assertEquals(name, xmlPath.get("ListResponse.Item[0].Name")); - assertEquals(version, xmlPath.get("ListResponse.Item[0].Version")); + assertEquals(uuid.toString(), xmlPath.get("VersionsResponse.ItemHistory[0].Id")); + assertEquals(name, xmlPath.get("VersionsResponse.ItemHistory[0].Name")); + assertEquals(version, xmlPath.get("VersionsResponse.ItemHistory[0].Version")); verify(compasSclDataService, times(1)).listVersionsByUUID(type, uuid); } diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java index 92cae65e..0bbd101c 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java @@ -81,9 +81,9 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { .response(); var xmlPath = response.xmlPath(); - assertEquals(uuid.toString(), xmlPath.get("ListResponse.Item[0].Id")); - assertEquals(name, xmlPath.get("ListResponse.Item[0].Name")); - assertEquals(version, xmlPath.get("ListResponse.Item[0].Version")); + assertEquals(uuid.toString(), xmlPath.get("VersionsResponse.ItemHistory[0].Id")); + assertEquals(name, xmlPath.get("VersionsResponse.ItemHistory[0].Name")); + assertEquals(version, xmlPath.get("VersionsResponse.ItemHistory[0].Version")); verify(compasSclDataService, times(1)).listVersionsByUUID(type, uuid); } From 29419c9443ef3fd77f9749f0e737b453191c38b2 Mon Sep 17 00:00:00 2001 From: Dennis Labordus Date: Thu, 23 Jun 2022 13:45:57 +0200 Subject: [PATCH 6/9] Rename POJO. Signed-off-by: Dennis Labordus --- .../scl/data/rest/v1/model/VersionsResponse.java | 10 +++++----- .../data/rest/mock/CompasSclDataRepositoryMock.java | 4 ++-- .../rest/v1/CompasSclDataResourceAsEditorTest.java | 10 +++++----- .../rest/v1/CompasSclDataResourceAsReaderTest.java | 10 +++++----- .../basex/repository/CompasSclDataBaseXRepository.java | 10 +++++----- .../postgresql/CompasSclDataPostgreSQLRepository.java | 8 ++++---- .../data/model/{ItemHistory.java => HistoryItem.java} | 6 +++--- .../lfenergy/compas/scl/data/model/ObjectFactory.java | 10 +++++----- .../scl/data/repository/CompasSclDataRepository.java | 4 ++-- .../compas/scl/data/util/SclDataModelMarshaller.java | 6 +++--- .../{ItemHistoryTest.java => HistoryItemTest.java} | 6 +++--- .../compas/scl/data/model/ObjectFactoryTest.java | 8 ++++---- .../compas/scl/data/service/CompasSclDataService.java | 4 ++-- .../data/service/impl/CompasSclDataServiceImpl.java | 4 ++-- .../service/impl/CompasSclDataServiceImplTest.java | 4 ++-- 15 files changed, 52 insertions(+), 52 deletions(-) rename repository/src/main/java/org/lfenergy/compas/scl/data/model/{ItemHistory.java => HistoryItem.java} (93%) rename repository/src/test/java/org/lfenergy/compas/scl/data/model/{ItemHistoryTest.java => HistoryItemTest.java} (85%) diff --git a/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java b/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java index ab3d467e..251f57e1 100644 --- a/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java +++ b/app/src/main/java/org/lfenergy/compas/scl/data/rest/v1/model/VersionsResponse.java @@ -4,7 +4,7 @@ package org.lfenergy.compas.scl.data.rest.v1.model; import org.eclipse.microprofile.openapi.annotations.media.Schema; -import org.lfenergy.compas.scl.data.model.ItemHistory; +import org.lfenergy.compas.scl.data.model.HistoryItem; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; @@ -19,14 +19,14 @@ @XmlAccessorType(XmlAccessType.FIELD) public class VersionsResponse { @Schema(description = "List of found Versions of a specific SCL in the database.") - @XmlElement(name = "ItemHistory", namespace = SCL_DATA_SERVICE_V1_NS_URI) - private List items; + @XmlElement(name = "HistoryItem", namespace = SCL_DATA_SERVICE_V1_NS_URI) + private List items; - public List getItems() { + public List getItems() { return items; } - public void setItems(List items) { + public void setItems(List items) { this.items = items; } } diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java index b46d6deb..ba898b3b 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/mock/CompasSclDataRepositoryMock.java @@ -4,8 +4,8 @@ package org.lfenergy.compas.scl.data.rest.mock; import io.quarkus.test.Mock; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -24,7 +24,7 @@ public List list(SclFileType type) { } @Override - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { throw new IllegalStateException("Mock method using Mockito. Only needed to startup."); } diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java index 8355051f..977f3435 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsEditorTest.java @@ -12,8 +12,8 @@ import io.restassured.http.ContentType; import org.junit.jupiter.api.Test; import org.lfenergy.compas.scl.data.model.ChangeSetType; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.rest.v1.model.CreateRequest; import org.lfenergy.compas.scl.data.rest.v1.model.UpdateRequest; @@ -77,7 +77,7 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { var version = "1.0.0"; when(compasSclDataService.listVersionsByUUID(type, uuid)) - .thenReturn(Collections.singletonList(new ItemHistory(uuid.toString(), name, version, null, null, null))); + .thenReturn(Collections.singletonList(new HistoryItem(uuid.toString(), name, version, null, null, null))); var response = given() .pathParam(TYPE_PATH_PARAM, type) @@ -89,9 +89,9 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { .response(); var xmlPath = response.xmlPath(); - assertEquals(uuid.toString(), xmlPath.get("VersionsResponse.ItemHistory[0].Id")); - assertEquals(name, xmlPath.get("VersionsResponse.ItemHistory[0].Name")); - assertEquals(version, xmlPath.get("VersionsResponse.ItemHistory[0].Version")); + assertEquals(uuid.toString(), xmlPath.get("VersionsResponse.HistoryItem[0].Id")); + assertEquals(name, xmlPath.get("VersionsResponse.HistoryItem[0].Name")); + assertEquals(version, xmlPath.get("VersionsResponse.HistoryItem[0].Version")); verify(compasSclDataService, times(1)).listVersionsByUUID(type, uuid); } diff --git a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java index 0bbd101c..ef2dd9d2 100644 --- a/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java +++ b/app/src/test/java/org/lfenergy/compas/scl/data/rest/v1/CompasSclDataResourceAsReaderTest.java @@ -10,8 +10,8 @@ import io.restassured.http.ContentType; import org.junit.jupiter.api.Test; import org.lfenergy.compas.scl.data.model.ChangeSetType; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.rest.v1.model.CreateRequest; import org.lfenergy.compas.scl.data.rest.v1.model.UpdateRequest; @@ -69,7 +69,7 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { var version = "1.0.0"; when(compasSclDataService.listVersionsByUUID(type, uuid)) - .thenReturn(Collections.singletonList(new ItemHistory(uuid.toString(), name, version, null, null, null))); + .thenReturn(Collections.singletonList(new HistoryItem(uuid.toString(), name, version, null, null, null))); var response = given() .pathParam(TYPE_PATH_PARAM, type) @@ -81,9 +81,9 @@ void listVersionsByUUID_WhenCalled_ThenItemResponseRetrieved() { .response(); var xmlPath = response.xmlPath(); - assertEquals(uuid.toString(), xmlPath.get("VersionsResponse.ItemHistory[0].Id")); - assertEquals(name, xmlPath.get("VersionsResponse.ItemHistory[0].Name")); - assertEquals(version, xmlPath.get("VersionsResponse.ItemHistory[0].Version")); + assertEquals(uuid.toString(), xmlPath.get("VersionsResponse.HistoryItem[0].Id")); + assertEquals(name, xmlPath.get("VersionsResponse.HistoryItem[0].Name")); + assertEquals(version, xmlPath.get("VersionsResponse.HistoryItem[0].Version")); verify(compasSclDataService, times(1)).listVersionsByUUID(type, uuid); } diff --git a/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java b/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java index cb1fa807..f77d419c 100644 --- a/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java +++ b/repository-basex/src/main/java/org/lfenergy/compas/scl/data/basex/repository/CompasSclDataBaseXRepository.java @@ -8,8 +8,8 @@ import org.lfenergy.compas.scl.data.basex.client.BaseXClientFactory; import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.exception.CompasSclDataServiceException; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -106,7 +106,7 @@ public List list(SclFileType type) { } @Override - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { return executeQuery(type, DECLARE_SCL_NS_URI + DECLARE_COMPAS_NAMESPACE + format(DECLARE_DB_VARIABLE, type) + @@ -121,15 +121,15 @@ public List listVersionsByUUID(SclFileType type, UUID id) { " let $minorVersion := xs:int($parts[2])\n" + " let $patchVersion := xs:int($parts[3])\n" + " order by $majorVersion, $minorVersion, $patchVersion\n" + - " return ''" + + " return ''" + " || ' ' || $id || ''" + " || ' ' || $name || ''" + " || ' ' || $version || '' " + " || ' ' || $header/@who || '' " + " || ' ' || $header/@when || '' " + " || ' ' || $header/@what || '' " + - " || '' ", - sclDataMarshaller::unmarshalItemHistory); + " || '' ", + sclDataMarshaller::unmarshalHistoryItem); } @Override diff --git a/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java b/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java index 39c7c039..4e0d4c6f 100644 --- a/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java +++ b/repository-postgresql/src/main/java/org/lfenergy/compas/scl/data/repository/postgresql/CompasSclDataPostgreSQLRepository.java @@ -6,8 +6,8 @@ import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.exception.CompasSclDataServiceException; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -112,7 +112,7 @@ public List list(SclFileType type) { } @Override - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { var sql = SELECT_METADATA_CLAUSE + SELECT_HEADER_INFO_CLAUSE + FROM_CLAUSE @@ -121,7 +121,7 @@ public List listVersionsByUUID(SclFileType type, UUID id) { + AND_CLAUSE + FILTER_ON_TYPE + " order by scl_file.major_version, scl_file.minor_version, scl_file.patch_version"; - var items = new ArrayList(); + var items = new ArrayList(); try (var connection = dataSource.getConnection(); var stmt = connection.prepareStatement(sql)) { stmt.setObject(1, id); @@ -129,7 +129,7 @@ public List listVersionsByUUID(SclFileType type, UUID id) { try (var resultSet = stmt.executeQuery()) { while (resultSet.next()) { - items.add(new ItemHistory(id.toString(), + items.add(new HistoryItem(id.toString(), resultSet.getString(NAME_FIELD), createVersion(resultSet), resultSet.getString(HITEM_WHO_FIELD), diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java b/repository/src/main/java/org/lfenergy/compas/scl/data/model/HistoryItem.java similarity index 93% rename from repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java rename to repository/src/main/java/org/lfenergy/compas/scl/data/model/HistoryItem.java index 7185c0c1..8666b095 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ItemHistory.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/model/HistoryItem.java @@ -13,7 +13,7 @@ @Schema(description = "Item found in the database with all basic information including version info about a SCL.") @XmlAccessorType(XmlAccessType.FIELD) -public class ItemHistory extends Item { +public class HistoryItem extends Item { @Schema(description = "Who created this version of the SCL.", example = "John Doe") @XmlElement(name = "Who", @@ -35,10 +35,10 @@ public class ItemHistory extends Item { required = true) private String what; - public ItemHistory() { + public HistoryItem() { } - public ItemHistory(String id, String name, String version, String who, String when, String what) { + public HistoryItem(String id, String name, String version, String who, String when, String what) { super(id, name, version); this.who = who; this.when = when; diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java b/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java index 41c4a56e..6a87ae89 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/model/ObjectFactory.java @@ -14,8 +14,8 @@ public Item createItem() { return new Item(); } - public ItemHistory createItemHistory() { - return new ItemHistory(); + public HistoryItem createHistoryItem() { + return new HistoryItem(); } @XmlElementDecl(namespace = "", name = "Item") @@ -23,9 +23,9 @@ public JAXBElement createItem(Item value) { return new JAXBElement<>(new QName("", ""), Item.class, value); } - @XmlElementDecl(namespace = "", name = "ItemHistory") - public JAXBElement createItemHistory(ItemHistory value) { - return new JAXBElement<>(new QName("", ""), ItemHistory.class, value); + @XmlElementDecl(namespace = "", name = "HistoryItem") + public JAXBElement createHistoryItem(HistoryItem value) { + return new JAXBElement<>(new QName("", ""), HistoryItem.class, value); } public SclMetaInfo createSclMetaInfo() { diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java b/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java index 13d81fb2..49674960 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/repository/CompasSclDataRepository.java @@ -3,8 +3,8 @@ // SPDX-License-Identifier: Apache-2.0 package org.lfenergy.compas.scl.data.repository; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.extensions.model.SclFileType; @@ -38,7 +38,7 @@ public interface CompasSclDataRepository { * @return The list of versions found for that specific sCl Entry. */ @Transactional(SUPPORTS) - List listVersionsByUUID(SclFileType type, UUID id); + List listVersionsByUUID(SclFileType type, UUID id); /** * Return the latest version of a specific SCL Entry. diff --git a/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java b/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java index 21753622..db6784cb 100644 --- a/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java +++ b/repository/src/main/java/org/lfenergy/compas/scl/data/util/SclDataModelMarshaller.java @@ -4,8 +4,8 @@ package org.lfenergy.compas.scl.data.util; import org.lfenergy.compas.scl.data.exception.CompasSclDataServiceException; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -38,8 +38,8 @@ public Item unmarshalItem(String xml) { return unmarshal(xml, Item.class); } - public ItemHistory unmarshalItemHistory(String xml) { - return unmarshal(xml, ItemHistory.class); + public HistoryItem unmarshalHistoryItem(String xml) { + return unmarshal(xml, HistoryItem.class); } public SclMetaInfo unmarshalSclMetaInfo(String xml) { diff --git a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java b/repository/src/test/java/org/lfenergy/compas/scl/data/model/HistoryItemTest.java similarity index 85% rename from repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java rename to repository/src/test/java/org/lfenergy/compas/scl/data/model/HistoryItemTest.java index ae5b8136..b5753205 100644 --- a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ItemHistoryTest.java +++ b/repository/src/test/java/org/lfenergy/compas/scl/data/model/HistoryItemTest.java @@ -9,10 +9,10 @@ import static org.junit.jupiter.api.Assertions.assertEquals; -class ItemHistoryTest extends AbstractPojoTester { +class HistoryItemTest extends AbstractPojoTester { @Override protected Class getClassToBeTested() { - return ItemHistory.class; + return HistoryItem.class; } @Test @@ -24,7 +24,7 @@ void constructor_WhenCalledWithParameters_ThenValuesAreFilled() { var when = "when"; var what = "what"; - var item = new ItemHistory(id, name, version, who, when, what); + var item = new HistoryItem(id, name, version, who, when, what); assertEquals(id, item.getId()); assertEquals(name, item.getName()); diff --git a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java index 6a9b6e1a..7b83fbfc 100644 --- a/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java +++ b/repository/src/test/java/org/lfenergy/compas/scl/data/model/ObjectFactoryTest.java @@ -23,15 +23,15 @@ void createItem_WhenMethodsCalled_ThenObjectsAreCreated() { } @Test - void createItemHistory_WhenMethodsCalled_ThenObjectsAreCreated() { + void createHistoryItem_WhenMethodsCalled_ThenObjectsAreCreated() { var objectFactory = new ObjectFactory(); - var item = objectFactory.createItemHistory(); + var item = objectFactory.createHistoryItem(); assertNotNull(item); - var itemElement = objectFactory.createItemHistory(item); + var itemElement = objectFactory.createHistoryItem(item); assertNotNull(itemElement); - assertEquals(ItemHistory.class, itemElement.getDeclaredType()); + assertEquals(HistoryItem.class, itemElement.getDeclaredType()); assertEquals(item, itemElement.getValue()); } diff --git a/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java b/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java index 3c1ee8b9..6621d8ea 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java +++ b/service/src/main/java/org/lfenergy/compas/scl/data/service/CompasSclDataService.java @@ -4,8 +4,8 @@ package org.lfenergy.compas.scl.data.service; import org.lfenergy.compas.scl.data.model.ChangeSetType; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.extensions.model.SclFileType; @@ -21,7 +21,7 @@ public interface CompasSclDataService { List list(SclFileType type); @Transactional(SUPPORTS) - List listVersionsByUUID(SclFileType type, UUID id); + List listVersionsByUUID(SclFileType type, UUID id); @Transactional(SUPPORTS) String findByUUID(SclFileType type, UUID id); diff --git a/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java b/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java index 7b873df6..3a53fe7d 100644 --- a/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java +++ b/service/src/main/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImpl.java @@ -8,8 +8,8 @@ import org.lfenergy.compas.core.commons.exception.CompasException; import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.model.ChangeSetType; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.Item; -import org.lfenergy.compas.scl.data.model.ItemHistory; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; import org.lfenergy.compas.scl.data.service.CompasSclDataService; @@ -68,7 +68,7 @@ public List list(SclFileType type) { */ @Override @Transactional(SUPPORTS) - public List listVersionsByUUID(SclFileType type, UUID id) { + public List listVersionsByUUID(SclFileType type, UUID id) { var items = repository.listVersionsByUUID(type, id); if (items.isEmpty()) { var message = String.format("No versions found for type '%s' with ID '%s'", type, id); diff --git a/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java b/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java index c5c446d1..d39ff24b 100644 --- a/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java +++ b/service/src/test/java/org/lfenergy/compas/scl/data/service/impl/CompasSclDataServiceImplTest.java @@ -13,7 +13,7 @@ import org.lfenergy.compas.core.commons.exception.CompasException; import org.lfenergy.compas.scl.data.exception.CompasNoDataFoundException; import org.lfenergy.compas.scl.data.model.ChangeSetType; -import org.lfenergy.compas.scl.data.model.ItemHistory; +import org.lfenergy.compas.scl.data.model.HistoryItem; import org.lfenergy.compas.scl.data.model.SclMetaInfo; import org.lfenergy.compas.scl.data.model.Version; import org.lfenergy.compas.scl.data.repository.CompasSclDataRepository; @@ -64,7 +64,7 @@ void list_WhenCalled_ThenRepositoryIsCalled() { @Test void listVersionsByUUID_WhenCalledAndRepositoryReturnItemList_ThenListIsReturned() { var uuid = UUID.randomUUID(); - var expectedResult = List.of(new ItemHistory()); + var expectedResult = List.of(new HistoryItem()); when(compasSclDataRepository.listVersionsByUUID(SCL_TYPE, uuid)).thenReturn(expectedResult); var result = compasSclDataService.listVersionsByUUID(SCL_TYPE, uuid); From e4eec1dc8678867bd152de39dc193a79d1986e9a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 28 Jun 2022 13:33:49 +0200 Subject: [PATCH 7/9] Bump compas.core.version from 0.9.0 to 0.9.1 (#228) * Bump compas.core.version from 0.9.0 to 0.9.1 Bumps `compas.core.version` from 0.9.0 to 0.9.1. Updates `commons` from 0.9.0 to 0.9.1 Updates `scl-extension` from 0.9.0 to 0.9.1 Updates `jaxrs-commons` from 0.9.0 to 0.9.1 --- updated-dependencies: - dependency-name: org.lfenergy.compas.core:commons dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.lfenergy.compas.core:scl-extension dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.lfenergy.compas.core:jaxrs-commons dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Fixed layout of table in MD File. Signed-off-by: Dennis Labordus Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Dennis Labordus --- doc/postgresql.md | 18 +++++++++--------- pom.xml | 2 +- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/doc/postgresql.md b/doc/postgresql.md index daaded29..e29a817a 100644 --- a/doc/postgresql.md +++ b/doc/postgresql.md @@ -28,15 +28,15 @@ For the SCL Data Service the following table is automatically created using FlyW Table: scl_file -| Column | Type | Required | Description | -| ----------------- | -------------------- | ----------| ------------------------------------------------------------------ | -| id | uuid | True | Unique ID generated according to standards | -| major_version | smallint | True | Versioning according to [Semantic Versioning](https://semver.org/) | -| minor_version | smallint | True | Versioning according to [Semantic Versioning](https://semver.org/) | -| patch_version | smallint | True | Versioning according to [Semantic Versioning](https://semver.org/) | -| type | varchar(3) | True | The type of SCL stored | -| name | varchar(255) | True | The name of the SCL File | -| scl_data | text | True | The SCL XML Content | +| Column | Type | Required | Description | +|---------------|--------------|----------|--------------------------------------------------------------------| +| id | uuid | True | Unique ID generated according to standards | +| major_version | smallint | True | Versioning according to [Semantic Versioning](https://semver.org/) | +| minor_version | smallint | True | Versioning according to [Semantic Versioning](https://semver.org/) | +| patch_version | smallint | True | Versioning according to [Semantic Versioning](https://semver.org/) | +| type | varchar(3) | True | The type of SCL stored | +| name | varchar(255) | True | The name of the SCL File | +| scl_data | text | True | The SCL XML Content | ## Development diff --git a/pom.xml b/pom.xml index 3b4f7f9b..5ee57aa4 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ SPDX-License-Identifier: Apache-2.0 3.0.0-M7 3.2.0 - 0.9.0 + 0.9.1 2.10.0.Final 2.3.6 From 40d54ae0fcd373cc4c66c04ee58a485156a71a39 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jun 2022 15:56:16 +0200 Subject: [PATCH 8/9] Bump jandex-maven-plugin from 1.2.2 to 1.2.3 (#231) Bumps [jandex-maven-plugin](https://github.com/wildfly/jandex-maven-plugin) from 1.2.2 to 1.2.3. - [Release notes](https://github.com/wildfly/jandex-maven-plugin/releases) - [Commits](https://github.com/wildfly/jandex-maven-plugin/compare/1.2.2...1.2.3) --- updated-dependencies: - dependency-name: org.jboss.jandex:jandex-maven-plugin dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 5ee57aa4..bcd53bc1 100644 --- a/pom.xml +++ b/pom.xml @@ -165,7 +165,7 @@ SPDX-License-Identifier: Apache-2.0 org.jboss.jandex jandex-maven-plugin - 1.2.2 + 1.2.3 make-index From 751724a2d2baed8c29cec5c4356cbb7988c8c320 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 30 Jun 2022 05:19:10 +0000 Subject: [PATCH 9/9] Bump quarkus.platform.version from 2.10.0.Final to 2.10.1.Final Bumps `quarkus.platform.version` from 2.10.0.Final to 2.10.1.Final. Updates `quarkus-universe-bom` from 2.10.0.Final to 2.10.1.Final - [Release notes](https://github.com/quarkusio/quarkus-platform/releases) - [Commits](https://github.com/quarkusio/quarkus-platform/compare/2.10.0.Final...2.10.1.Final) Updates `quarkus-maven-plugin` from 2.10.0.Final to 2.10.1.Final --- updated-dependencies: - dependency-name: io.quarkus:quarkus-universe-bom dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: io.quarkus:quarkus-maven-plugin dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bcd53bc1..5d2c2672 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ SPDX-License-Identifier: Apache-2.0 0.9.1 - 2.10.0.Final + 2.10.1.Final 2.3.6 3.0 1.7.36