Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: a8d68cf8 by Tony Chemit at 2023-03-30T17:01:00+02:00 fix ReplicateRequestCallback accept method (dataType is an entity type and test is on dto type...) - See #2656 - - - - - b1cbde55 by Tony Chemit at 2023-03-30T17:40:44+02:00 Erreur d'interprétation du référentiel AVDTH FP_TYP_COND - Closes #2661 - - - - - 6 changed files: - core/persistence/java/src/main/java/fr/ird/observe/entities/data/ll/logbook/LogbookReplicateRequestCallback.java - core/persistence/java/src/main/java/fr/ird/observe/entities/data/ll/observation/ObservationReplicateRequestCallback.java - core/persistence/java/src/main/java/fr/ird/observe/entities/data/ps/observation/ObservationReplicateRequestCallback.java - core/persistence/migration/src/main/java/fr/ird/observe/spi/migration/v9/DataSourceMigrationForVersion_9_1.java - + core/persistence/migration/src/main/resources/db/migration/v9/9.1/12_fix_ps_localmarket_packaging-common.sql - toolkit/api-datasource/src/main/java/fr/ird/observe/datasource/request/ReplicateRequest.java Changes: ===================================== core/persistence/java/src/main/java/fr/ird/observe/entities/data/ll/logbook/LogbookReplicateRequestCallback.java ===================================== @@ -48,7 +48,7 @@ public class LogbookReplicateRequestCallback implements ReplicateRequestCallback public boolean accept(ReplicateRequest request) { return request.getOldParentId().contains(".Trip#") && request.getNewParentId().contains(".Trip#") - && request.getDataType().startsWith(fr.ird.observe.spi.module.ll.logbook.BusinessDataPackage.get().getPackageName()); + && request.isDataTypeInDtoPackage(fr.ird.observe.spi.module.ll.logbook.BusinessDataPackage.get()); } @Override ===================================== core/persistence/java/src/main/java/fr/ird/observe/entities/data/ll/observation/ObservationReplicateRequestCallback.java ===================================== @@ -48,7 +48,7 @@ public class ObservationReplicateRequestCallback implements ReplicateRequestCall public boolean accept(ReplicateRequest request) { return request.getOldParentId().contains(".Trip#") && request.getNewParentId().contains(".Trip#") - && request.getDataType().startsWith(fr.ird.observe.spi.module.ll.observation.BusinessDataPackage.get().getPackageName()); + && request.isDataTypeInDtoPackage(fr.ird.observe.spi.module.ll.observation.BusinessDataPackage.get()); } @Override ===================================== core/persistence/java/src/main/java/fr/ird/observe/entities/data/ps/observation/ObservationReplicateRequestCallback.java ===================================== @@ -52,7 +52,7 @@ public class ObservationReplicateRequestCallback implements ReplicateRequestCall public boolean accept(ReplicateRequest request) { return request.getOldParentId().contains(".Trip#") && request.getNewParentId().contains(".Trip#") - && request.getDataType().startsWith(fr.ird.observe.spi.module.ll.observation.BusinessDataPackage.get().getPackageName()); + && request.isDataTypeInDtoPackage(fr.ird.observe.spi.module.ps.observation.BusinessDataPackage.get()); } @Override ===================================== core/persistence/migration/src/main/java/fr/ird/observe/spi/migration/v9/DataSourceMigrationForVersion_9_1.java ===================================== @@ -302,6 +302,8 @@ public class DataSourceMigrationForVersion_9_1 extends ByMajorMigrationVersionRe executor.addScript("10", "adapt_table-common_vessel-rename-field"); // See https://gitlab.com/ultreiaio/ird-observe/-/issues/2659 executor.addScript("11", "adapt_table-common_fpazone-add-fields"); + // See https://gitlab.com/ultreiaio/ird-observe/-/issues/2661 + executor.addScript("12", "fix_ps_localmarket_packaging"); } ===================================== core/persistence/migration/src/main/resources/db/migration/v9/9.1/12_fix_ps_localmarket_packaging-common.sql ===================================== @@ -0,0 +1,23 @@ +--- +-- #%L +-- ObServe Core :: Persistence :: Migration +-- %% +-- Copyright (C) 2008 - 2023 IRD, Ultreia.io +-- %% +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as +-- published by the Free Software Foundation, either version 3 of the +-- License, or (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public +-- License along with this program. If not, see +-- <http://www.gnu.org/licenses/gpl-3.0.html>. +-- #L% +--- +UPDATE ps_localmarket.Packaging SET lastUpdateDate = ${CURRENT_TIMESTAMP}, topiaVersion = topiaVersion + 1, batchWeightType = 'fr.ird.referential.ps.localmarket.BatchWeightType#1464000000000#03' WHERE batchWeightType='fr.ird.referential.ps.localmarket.BatchWeightType#1464000000000#01' AND meanWeight IS NULL; +UPDATE common.LastUpdateDate SET lastUpdateDate = ${CURRENT_TIMESTAMP} WHERE type ='fr.ird.observe.entities.referential.common.ps.localmarket.Packaging'; ===================================== toolkit/api-datasource/src/main/java/fr/ird/observe/datasource/request/ReplicateRequest.java ===================================== @@ -22,6 +22,8 @@ package fr.ird.observe.datasource.request; * #L% */ +import fr.ird.observe.spi.module.BusinessDataPackage; + import java.util.Set; import java.util.StringJoiner; @@ -79,6 +81,10 @@ public class ReplicateRequest extends SqlServiceRequest { return new DeleteRequest(isPostgres(), getDataType(), dataIds.toArray(new String[0])); } + public boolean isDataTypeInDtoPackage(BusinessDataPackage dataPackage) { + return getDataType().replace("entities.", "dto.").startsWith(dataPackage.getPackageName()); + } + @Override public String toString() { return new StringJoiner(", ", ReplicateRequest.class.getSimpleName() + "[", "]") View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/77f0804b9a7685f8606955b76... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/77f0804b9a7685f8606955b76... You're receiving this email because of your account on gitlab.com.