branch feature/7520 updated (5dce55c -> 63cea72)
This is an automated email from the git hooks/post-receive script. New change to branch feature/7520 in repository observe. See http://git.codelutin.com/observe.git discards 5dce55c ajout de la date de mise a jour pour les Trip, Route, Activity, Set (refs #7470) discards 1f5c293 ajout de la date de mise a jour pour les entité dans le référentiel (refs #7520) adds 7a69101 test sauvegard de trip seine (refs #7463) adds 27f0d09 ajout la traduction (refs #7463) adds 6608e8e Ajout d'injecteurs pour récuperer les paramètres dans les controlleurs adds 5c0958d Rendre les configuration clonable adds 9a90711 Suppression d'un converter non utilisé adds 0ccce26 Ajout d'un test pour le service de Ping adds 148a817 Vérifier si le host existe bien adds 04279d6 L'injecteur de configuration de sources de données utilise le parametre de la requete adds cc0f39c Revue injecteurs de configuration adds 0f8b763 revue des configuration de test (j'ai remis les valeurs par defaut adds 49833e6 Changement d'api adds 3ddbb24 Changement d'api adds 0197833 Ajout de FIXME à corriger plus tard adds 8efc6af Revue de l'init d'une base sur l'application web adds b6555d5 Possibilité d'utiliser la connexion pour obtenir un service adds fd42767 Le test de ping refonctionne adds 01b2a88 Ajout de fixme sur le test de DatasourceService car la gestion d'esxception n'est pas encore gérée au niveau du serveur web adds e1754fe On ne soumet dans le header que le jeton de securite adds 2b4cab6 Simplification de la sécurité + Gestion des erreurs au niveau du serveur web (reste à gérer le retour dans le client REST) adds 4e74ded Test de validation et des équipements + correction (refs #7463) adds 250042d renommer les propriétées dans le context de validation (refs #7463) adds d6e11a2 ajout de la traduction des messages de validation côté serveur (refs #7463) adds 841c7c4 optimisation des tests topia (refs #7463) adds 5eeab8c Tout les objets transferables sur le web hérite de ObserveDto poour faclilité l'injection des paramètres (refs #7463) adds dee5817 Test de generation des rapports en mode REST + correction Ajout des annotayions @PostRequest et @DeleteRequest pour utiliser les méthodes POST ou DELETE dans les requêtes REST (refs #7463) adds 30aa0b1 Test de consilidation des données en mode REST (refs #7463) adds b7cff03 Test de consilidation des données en mode REST (refs #7463) adds 43cab37 Ajout de javadoc adds 01c67c9 Renommage aussi de editingReferentielList en editingReferentielListEntity adds c586f6f Ajout aussi de la méthode DELETE sur le mapping adds 6ceca24 Retour sur develop Merge branch 'feature/7463-3' into develop new 8b62ca0 ajout de la date de mise a jour pour les entité dans le référentiel (refs #7520) new 63cea72 ajout de la date de mise a jour pour les Trip, Route, Activity, Set (refs #7470) This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (5dce55c) \ N -- N -- N refs/heads/feature/7520 (63cea72) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omits" are not gone; other references still refer to them. Any revisions marked "discards" are gone forever. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 63cea729061a15fe4f46b43c2b511bf8d5ebc797 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Sep 10 16:08:39 2015 +0200 ajout de la date de mise a jour pour les Trip, Route, Activity, Set (refs #7470) commit 8b62ca0cb7373042998854d2030c03bf69f3725d Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Sep 10 15:18:33 2015 +0200 ajout de la date de mise a jour pour les entité dans le référentiel (refs #7520) Summary of changes: observe-application-web/pom.xml | 7 + .../ObserveDataSourceConfigurationConverter.java | 47 --- .../web/ObserveWebApplicationListener.java | 34 +- .../application/web/ObserveWebMotionFilter.java | 60 +-- .../web/controller/ObserveWebMotionController.java | 13 +- .../web/controller/v1/ConfigurationController.java | 2 +- .../controller/v1/DataSourceServiceController.java | 49 ++- ...serveAuthenticatedServiceControllerSupport.java | 30 ++ .../v1/ObserveServiceControllerSupport.java | 54 ++- .../controller/v1/ObserveWebErrorController.java | 97 +++++ .../v1/ReferentialServiceController.java | 9 +- .../ConsolidateDataServiceController.java | 4 +- .../v1/actions/report/ReportServiceController.java | 16 +- .../validate/ValidateServiceController.java | 12 +- .../ActivityLongLineEncouterServiceController.java | 4 +- ...ctivityLongLineSensorUsedServiceController.java | 4 +- .../ActivityLonglineServiceController.java | 4 +- .../GearUseFeaturesLonglineServiceController.java | 4 +- .../SetLonglineCatchServiceController.java | 4 +- ...LonglineDetailCompositionServiceController.java | 4 +- ...LonglineGlobalCompositionServiceController.java | 4 +- .../v1/longline/SetLonglineServiceController.java | 4 +- .../v1/longline/TdrServiceController.java | 4 +- .../v1/longline/TripLonglineServiceController.java | 4 +- ...tivitySeineObservedSystemServiceController.java | 4 +- .../v1/seine/ActivitySeineServiceController.java | 4 +- .../v1/seine/FloatingObjectServiceController.java | 4 +- .../GearUseFeaturesSeineServiceController.java | 4 +- .../v1/seine/NonTargetCatchServiceController.java | 4 +- .../v1/seine/NonTargetSampleServiceController.java | 4 +- .../ObjectObservedSpeciesServiceController.java | 4 +- .../ObjectSchoolEstimateServiceController.java | 4 +- .../v1/seine/RouteServiceController.java | 4 +- .../v1/seine/SchoolEstimateServiceController.java | 4 +- .../v1/seine/SetSeineServiceController.java | 4 +- .../v1/seine/TargetCatchServiceController.java | 4 +- .../v1/seine/TargetSampleServiceController.java | 4 +- ...TransmittingBuoyOperationServiceController.java | 4 +- .../v1/seine/TripSeineServiceController.java | 4 +- .../ObserveDataSourceConfigurationInjector.java | 57 +++ .../web/injector/ObserveDtoInjector.java | 50 +++ .../web/request/ObserveWebRequestContext.java | 70 ++-- .../request/ObserveWebRequestSecurityContext.java | 62 --- .../web/security/AdminApiKeyNotFoundException.java | 11 + .../AuthenticationTokenNotFoundException.java | 11 + .../BadObserveWebUserPasswordException.java | 5 +- .../InvalidAdminKeyApiException.java | 4 +- .../InvalidAuthenticationTokenException.java | 2 +- .../ObserveWebSecurityApplicationContext.java | 13 +- .../ObserveWebSecurityExceptionSupport.java | 26 ++ .../SecurityRequestContextNotFoundException.java | 11 + .../security/UnknownObserveWebUserException.java | 4 +- .../UnknownObserveWebUserForDatabaseException.java | 3 +- .../web/security/UserLoginNotFoundException.java | 11 + .../security/UserPasswordNotFoundException.java | 11 + observe-application-web/src/main/resources/mapping | 10 +- .../field/ActivityDebutDePecheSaneValidator.java | 4 +- .../field/ActivityFinDePecheSaneValidator.java | 4 +- .../field/ActivityFinDeVeilleExistsValidator.java | 4 +- .../field/ActivitySimpleSpeedValidator.java | 2 +- .../field/RouteActivitysFieldValidator.java | 4 +- .../field/SetLonglineUniqueHomeIdValidator.java | 2 +- .../field/SetLonglineUniqueNumberValidator.java | 2 +- .../field/VesselActivityFieldValidator.java | 8 +- ...ActivityLongline-n1-create-error-validation.xml | 12 +- ...ActivityLongline-n1-update-error-validation.xml | 10 +- .../SetLongline-n1-create-error-validation.xml | 40 +- .../SetLongline-n1-update-error-validation.xml | 40 +- .../Country-n1-create-error-validation.xml | 8 +- .../Country-n1-update-error-validation.xml | 8 +- .../FpaZone-n1-create-error-validation.xml | 4 +- .../FpaZone-n1-update-error-validation.xml | 4 +- .../Gear-n1-create-error-validation.xml | 4 +- .../Gear-n1-update-error-validation.xml | 4 +- ...earCaracteristic-n1-create-error-validation.xml | 4 +- ...earCaracteristic-n1-update-error-validation.xml | 4 +- ...aracteristicType-n1-create-error-validation.xml | 4 +- ...aracteristicType-n1-update-error-validation.xml | 4 +- .../Harbour-n1-create-error-validation.xml | 4 +- .../Harbour-n1-update-error-validation.xml | 4 +- ...hWeightParameter-n1-create-error-validation.xml | 10 +- ...hWeightParameter-n1-update-error-validation.xml | 10 +- .../Ocean-n1-create-error-validation.xml | 4 +- .../Ocean-n1-update-error-validation.xml | 4 +- .../Organism-n1-create-error-validation.xml | 4 +- .../Organism-n1-update-error-validation.xml | 4 +- .../Person-n1-create-error-validation.xml | 4 +- .../Person-n1-update-error-validation.xml | 4 +- .../Program-n1-create-error-validation.xml | 4 +- .../Program-n1-update-error-validation.xml | 4 +- .../referentiel/Sex-n1-create-error-validation.xml | 4 +- .../referentiel/Sex-n1-update-error-validation.xml | 4 +- .../Species-n1-create-error-validation.xml | 12 +- .../Species-n1-update-error-validation.xml | 12 +- .../SpeciesGroup-n1-create-error-validation.xml | 4 +- .../SpeciesGroup-n1-update-error-validation.xml | 4 +- .../SpeciesList-n1-create-error-validation.xml | 4 +- .../SpeciesList-n1-update-error-validation.xml | 4 +- .../Vessel-n1-create-error-validation.xml | 4 +- .../Vessel-n1-update-error-validation.xml | 4 +- ...sselSizeCategory-n1-create-error-validation.xml | 4 +- ...sselSizeCategory-n1-update-error-validation.xml | 4 +- .../VesselType-n1-create-error-validation.xml | 4 +- .../VesselType-n1-update-error-validation.xml | 4 +- ...aitHaulingStatus-n1-create-error-validation.xml | 4 +- ...aitHaulingStatus-n1-update-error-validation.xml | 4 +- ...aitSettingStatus-n1-create-error-validation.xml | 4 +- ...aitSettingStatus-n1-update-error-validation.xml | 4 +- .../BaitType-n1-create-error-validation.xml | 4 +- .../BaitType-n1-update-error-validation.xml | 4 +- ...atchFateLongline-n1-create-error-validation.xml | 4 +- ...atchFateLongline-n1-update-error-validation.xml | 4 +- .../EncounterType-n1-create-error-validation.xml | 4 +- .../EncounterType-n1-update-error-validation.xml | 4 +- .../Healthness-n1-create-error-validation.xml | 4 +- .../Healthness-n1-update-error-validation.xml | 4 +- .../HookPosition-n1-create-error-validation.xml | 4 +- .../HookPosition-n1-update-error-validation.xml | 4 +- .../HookSize-n1-create-error-validation.xml | 4 +- .../HookSize-n1-update-error-validation.xml | 4 +- .../HookType-n1-create-error-validation.xml | 4 +- .../HookType-n1-update-error-validation.xml | 4 +- ...rizontalPosition-n1-create-error-validation.xml | 4 +- ...rizontalPosition-n1-update-error-validation.xml | 4 +- ...VerticalPosition-n1-create-error-validation.xml | 4 +- ...VerticalPosition-n1-update-error-validation.xml | 4 +- ...LightsticksColor-n1-create-error-validation.xml | 4 +- ...LightsticksColor-n1-update-error-validation.xml | 4 +- .../LightsticksType-n1-create-error-validation.xml | 4 +- .../LightsticksType-n1-update-error-validation.xml | 4 +- .../LineType-n1-create-error-validation.xml | 4 +- .../LineType-n1-update-error-validation.xml | 4 +- .../MaturityStatus-n1-create-error-validation.xml | 4 +- .../MaturityStatus-n1-update-error-validation.xml | 4 +- .../MitigationType-n1-create-error-validation.xml | 4 +- .../MitigationType-n1-update-error-validation.xml | 4 +- .../SensorBrand-n1-create-error-validation.xml | 4 +- .../SensorBrand-n1-update-error-validation.xml | 4 +- ...SensorDataFormat-n1-create-error-validation.xml | 4 +- ...SensorDataFormat-n1-update-error-validation.xml | 4 +- .../SensorType-n1-create-error-validation.xml | 4 +- .../SensorType-n1-update-error-validation.xml | 4 +- .../SettingShape-n1-create-error-validation.xml | 4 +- .../SettingShape-n1-update-error-validation.xml | 4 +- .../SizeMeasureType-n1-create-error-validation.xml | 4 +- .../SizeMeasureType-n1-update-error-validation.xml | 4 +- .../StomacFullness-n1-create-error-validation.xml | 4 +- .../StomacFullness-n1-update-error-validation.xml | 4 +- .../TripType-n1-create-error-validation.xml | 4 +- .../TripType-n1-update-error-validation.xml | 4 +- ...ActivityLongline-n1-create-error-validation.xml | 4 +- ...ActivityLongline-n1-update-error-validation.xml | 4 +- ...eightMeasureType-n1-create-error-validation.xml | 4 +- ...eightMeasureType-n1-update-error-validation.xml | 4 +- .../DetectionMode-n1-create-error-validation.xml | 4 +- .../DetectionMode-n1-update-error-validation.xml | 4 +- .../ObjectFate-n1-create-error-validation.xml | 4 +- .../ObjectFate-n1-update-error-validation.xml | 4 +- .../ObjectOperation-n1-create-error-validation.xml | 4 +- .../ObjectOperation-n1-update-error-validation.xml | 4 +- .../ObjectType-n1-create-error-validation.xml | 4 +- .../ObjectType-n1-update-error-validation.xml | 4 +- .../ObservedSystem-n1-create-error-validation.xml | 4 +- .../ObservedSystem-n1-update-error-validation.xml | 4 +- ...ReasonForDiscard-n1-create-error-validation.xml | 4 +- ...ReasonForDiscard-n1-update-error-validation.xml | 4 +- ...asonForNoFishing-n1-create-error-validation.xml | 4 +- ...asonForNoFishing-n1-update-error-validation.xml | 4 +- ...ReasonForNullSet-n1-create-error-validation.xml | 4 +- ...ReasonForNullSet-n1-update-error-validation.xml | 4 +- .../SpeciesFate-n1-create-error-validation.xml | 4 +- .../SpeciesFate-n1-update-error-validation.xml | 4 +- .../SpeciesStatus-n1-create-error-validation.xml | 4 +- .../SpeciesStatus-n1-update-error-validation.xml | 4 +- ...roundingActivity-n1-create-error-validation.xml | 4 +- ...roundingActivity-n1-update-error-validation.xml | 4 +- ...ingBuoyOperation-n1-create-error-validation.xml | 4 +- ...ingBuoyOperation-n1-update-error-validation.xml | 4 +- ...smittingBuoyType-n1-create-error-validation.xml | 4 +- ...smittingBuoyType-n1-update-error-validation.xml | 4 +- ...selActivitySeine-n1-create-error-validation.xml | 4 +- ...selActivitySeine-n1-update-error-validation.xml | 4 +- .../WeightCategory-n1-create-error-validation.xml | 4 +- .../WeightCategory-n1-update-error-validation.xml | 4 +- .../seine/Wind-n1-create-error-validation.xml | 4 +- .../seine/Wind-n1-update-error-validation.xml | 4 +- .../ActivitySeine-n1-create-error-validation.xml | 12 +- .../ActivitySeine-n1-update-error-validation.xml | 12 +- .../seine/Route-n1-create-error-validation.xml | 6 +- .../seine/Route-n1-create-warning-validation.xml | 2 +- .../seine/Route-n1-update-error-validation.xml | 16 +- .../seine/Route-n1-update-warning-validation.xml | 2 +- .../seine/SetSeine-n1-create-error-validation.xml | 6 +- .../seine/SetSeine-n1-update-error-validation.xml | 8 +- ...> observe-entities-validation_es_ES.properties} | 0 .../src/main/filters/observe-reports.properties | 10 +- .../services/service/ReferentialService.java | 5 + .../ConsolidateActivitySeineDataResult.java | 3 +- .../consolidate/ConsolidateDataService.java | 2 + .../ConsolidateTripSeineDataRequest.java | 3 +- .../ConsolidateTripSeineDataResult.java | 3 +- .../service/actions/report/ReportBuilder.java | 49 +-- .../service/actions/report/ReportService.java | 14 +- .../actions/report/model/ReportOperation.java | 106 ----- .../actions/report/model/ReportRequest.java | 406 ------------------- .../report/model/operations/ExecuteRequests.java | 120 ------ .../report/model/operations/GroupByLength.java | 111 ------ .../actions/report/model/operations/SumColumn.java | 129 ------ .../report/model/operations/SumIntColumn.java | 129 ------ .../actions/report/model/operations/SumIntRow.java | 129 ------ .../actions/report/model/operations/SumRow.java | 129 ------ .../actions/validate/ValidateDataRequest.java | 3 +- .../actions/validate/ValidateDataResult.java | 3 +- .../validate/ValidateReferentialsRequest.java | 3 +- .../validate/ValidateReferentialsResult.java | 3 +- .../actions/validate/ValidateResultForDto.java | 3 +- .../actions/validate/ValidateResultForDtoType.java | 3 +- .../service/actions/validate/ValidateService.java | 7 +- .../actions/validate/ValidationMessage.java | 3 +- .../longline/ActivityLongLineEncouterService.java | 2 + .../ActivityLongLineSensorUsedService.java | 2 + .../service/longline/ActivityLonglineService.java | 4 + .../longline/GearUseFeaturesLonglineService.java | 4 + .../service/longline/SetLonglineCatchService.java | 2 + .../SetLonglineDetailCompositionService.java | 2 + .../SetLonglineGlobalCompositionService.java | 2 + .../service/longline/SetLonglineService.java | 4 + .../services/service/longline/TdrService.java | 2 + .../service/longline/TripLonglineService.java | 4 + .../seine/ActivitySeineObservedSystemService.java | 2 + .../service/seine/ActivitySeineService.java | 4 + .../service/seine/FloatingObjectService.java | 4 + .../service/seine/GearUseFeaturesSeineService.java | 4 + .../service/seine/NonTargetCatchService.java | 2 + .../service/seine/NonTargetSampleService.java | 2 + .../seine/ObjectObservedSpeciesService.java | 2 + .../service/seine/ObjectSchoolEstimateService.java | 2 + .../services/service/seine/RouteService.java | 4 + .../service/seine/SchoolEstimateService.java | 2 + .../services/service/seine/SetSeineService.java | 4 + .../services/service/seine/TargetCatchService.java | 2 + .../service/seine/TargetSampleService.java | 2 + .../seine/TransmittingBuoyOperationService.java | 2 + .../services/service/seine/TripSeineService.java | 4 + .../spi/{NoDataAccess.java => DeleteRequest.java} | 9 +- .../spi/{NoDataAccess.java => PostRequest.java} | 8 +- .../service/actions/report/ReportBuilderTest.java | 11 +- .../ObserveDataSourceConfigurationRest.java | 26 +- ...bserveDataSourceConfigurationRestConstants.java | 6 - .../ObserveDataSourceConfigurationTopiaH2.java | 8 +- .../ObserveDataSourceConfigurationTopiaPG.java | 8 +- .../java/fr/ird/observe/services/dto/IdDtos.java | 11 + .../fr/ird/observe/services/dto/ObserveDto.java | 7 + .../fr/ird/observe/services/dto/ReferenceDto.java | 7 + .../services/dto/actions/report}/DataMatrix.java | 5 +- .../services/dto/actions/report}/Report.java | 5 +- .../dto/actions/report/ReportOperation.java | 17 +- .../services/dto/actions/report/ReportRequest.java | 187 +++++++++ .../dto/actions/report}/ReportVariable.java | 34 +- .../services/dto/gson/ImmutableListAdapter.java | 21 +- .../services/dto/gson/ImmutableMapAdapter.java | 39 ++ .../services/dto/gson/ImmutableSetAdapter.java | 37 ++ .../services/dto/gson/ObserveDtoGsonSupplier.java | 7 + .../services/dto/gson/ReferenceDtoAdapter.java | 21 +- .../dto/gson/ReferentialReferenceDtoAdapter.java | 10 +- .../services/dto/gson/ReportVariableAdapter.java | 55 +++ .../services/ObserveServiceFactoryRest.java | 26 +- .../services/http/ObserveResponseBuilder.java | 3 +- .../fr/ird/observe/services/TestClassResource.java | 16 +- .../ird/observe/services/TestMethodResource.java | 17 +- .../services/service/AbstractServiceRestTest.java | 57 +++ .../service/DataSourceServiceRestTest.java | 10 +- .../services/service/PingServiceRestTest.java | 51 +++ .../ConsolidateDataServiceRestTest.java | 22 +- .../report/AbstractReportServiceRestTest.java | 28 +- .../report/ReportAccessoryCatchRestTest.java | 9 +- .../actions/validate/ValidateServiceTest.java | 60 ++- .../seine/GearUseFeaturesSeineServiceTest.java | 273 +++++++++++++ .../service/seine/TripSeineServiceTest.java | 197 ++++----- .../ObserveDataSourceConfigurationMainFactory.java | 3 +- .../services/ObserveServiceMainFactory.java | 16 +- .../ird/observe/services/ObserveServiceTopia.java | 2 +- .../EntityToReferentialReferenceDtoBuilder.java | 17 + .../service/actions/report/ReportServiceTopia.java | 441 ++++++++++++++++++++- .../actions/validate/ValidateServiceTopia.java | 13 +- .../actions/validate/ValidationDataContext.java | 136 +++---- .../validate/ValidationMessageDetector.java | 64 ++- .../services/ApplicationContextResource.java | 29 ++ .../ird/observe/services/DataSourceResource.java | 31 +- .../services/service/AbstractServiceTopiaTest.java | 30 +- .../report/AbstractReportServiceTopiaTest.java | 8 +- .../actions/report/ReportAccessoryCatch2Test.java | 2 +- .../report/ReportAccessoryCatchByGroup2Test.java | 2 +- .../report/ReportAccessoryCatchByGroupTest.java | 7 +- .../actions/report/ReportAccessoryCatchTest.java | 7 +- .../report/ReportActivityWithCommentTest.java | 6 +- .../actions/report/ReportAllActivitysTest.java | 7 +- .../actions/report/ReportDailySetAndCatchTest.java | 6 +- .../service/actions/report/ReportDcpUsageTest.java | 6 +- .../report/ReportSetByAssociation2Test.java | 2 +- .../actions/report/ReportSetByAssociationTest.java | 6 +- .../report/ReportTargetCatchByAssociationTest.java | 6 +- .../ReportTargetDiscardedByAssociationTest.java | 6 +- .../actions/validate/ValidateServiceTopiaTest.java | 6 +- 304 files changed, 2719 insertions(+), 2493 deletions(-) delete mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/ObserveDataSourceConfigurationConverter.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ObserveAuthenticatedServiceControllerSupport.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ObserveWebErrorController.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/injector/ObserveDataSourceConfigurationInjector.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/injector/ObserveDtoInjector.java delete mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/request/ObserveWebRequestSecurityContext.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/security/AdminApiKeyNotFoundException.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/security/AuthenticationTokenNotFoundException.java rename observe-application-web/src/main/java/fr/ird/observe/application/web/{ => security}/InvalidAdminKeyApiException.java (72%) create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/security/ObserveWebSecurityExceptionSupport.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/security/SecurityRequestContextNotFoundException.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/security/UserLoginNotFoundException.java create mode 100644 observe-application-web/src/main/java/fr/ird/observe/application/web/security/UserPasswordNotFoundException.java rename observe-entities-validation/src/main/resources/i18n/{observe-entities-validation_es_ES_.properties => observe-entities-validation_es_ES.properties} (100%) delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/ReportOperation.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/ReportRequest.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/operations/ExecuteRequests.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/operations/GroupByLength.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/operations/SumColumn.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/operations/SumIntColumn.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/operations/SumIntRow.java delete mode 100644 observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model/operations/SumRow.java copy observe-services-api/src/main/java/fr/ird/observe/services/spi/{NoDataAccess.java => DeleteRequest.java} (51%) copy observe-services-api/src/main/java/fr/ird/observe/services/spi/{NoDataAccess.java => PostRequest.java} (51%) create mode 100644 observe-services-model/src/main/java/fr/ird/observe/services/dto/IdDtos.java create mode 100644 observe-services-model/src/main/java/fr/ird/observe/services/dto/ObserveDto.java rename {observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model => observe-services-model/src/main/java/fr/ird/observe/services/dto/actions/report}/DataMatrix.java (97%) rename {observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model => observe-services-model/src/main/java/fr/ird/observe/services/dto/actions/report}/Report.java (96%) copy observe-business/src/main/java/fr/ird/observe/db/util/TopiaExecutor.java => observe-services-model/src/main/java/fr/ird/observe/services/dto/actions/report/ReportOperation.java (73%) create mode 100644 observe-services-model/src/main/java/fr/ird/observe/services/dto/actions/report/ReportRequest.java rename {observe-services-api/src/main/java/fr/ird/observe/services/service/actions/report/model => observe-services-model/src/main/java/fr/ird/observe/services/dto/actions/report}/ReportVariable.java (63%) create mode 100644 observe-services-model/src/main/java/fr/ird/observe/services/dto/gson/ImmutableMapAdapter.java create mode 100644 observe-services-model/src/main/java/fr/ird/observe/services/dto/gson/ImmutableSetAdapter.java create mode 100644 observe-services-model/src/main/java/fr/ird/observe/services/dto/gson/ReportVariableAdapter.java create mode 100644 observe-services-rest/src/test/java/fr/ird/observe/services/service/AbstractServiceRestTest.java create mode 100644 observe-services-rest/src/test/java/fr/ird/observe/services/service/PingServiceRestTest.java copy observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/consolidate/ConsolidateDataServiceTopiaTest.java => observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/consolidate/ConsolidateDataServiceRestTest.java (61%) copy observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceTopiaTest.java => observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceRestTest.java (89%) copy observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/report/ReportAccessoryCatchTest.java => observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/report/ReportAccessoryCatchRestTest.java (95%) copy observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/validate/ValidateServiceTopiaTest.java => observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/validate/ValidateServiceTest.java (88%) create mode 100644 observe-services-rest/src/test/java/fr/ird/observe/services/service/seine/GearUseFeaturesSeineServiceTest.java -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7520 in repository observe. See http://git.codelutin.com/observe.git commit 8b62ca0cb7373042998854d2030c03bf69f3725d Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Sep 10 15:18:33 2015 +0200 ajout de la date de mise a jour pour les entité dans le référentiel (refs #7520) --- .../v1/ReferentialServiceController.java | 6 + .../migration/AbstractDataSourceMigration.java | 3 +- .../DataSourceMigrationForVersion_5_0.java | 6 +- .../resources/db/5.0/add_lastUpdate_field-H2.sql | 133 ++++++++++++++++++++ .../resources/db/5.0/add_lastUpdate_field-PG.sql | 134 +++++++++++++++++++++ observe-entities/src/main/xmi/observe-common.zargo | Bin 35191 -> 36629 bytes .../services/service/ReferentialService.java | 4 + .../ird/observe/services/dto/ReferenceSetDtos.java | 8 +- .../xmi/observe-services-dto-common.properties | 2 +- .../src/main/xmi/observe-services-dto-common.zargo | Bin 34629 -> 33934 bytes .../xmi/observe-services-dto-longline.properties | 2 +- .../main/xmi/observe-services-dto-seine.properties | 2 +- .../ird/observe/services/ObserveServiceTopia.java | 63 +++++++++- .../services/service/ReferentialServiceTopia.java | 17 +++ .../service/ReferentialServiceTopiaTest.java | 50 ++++++++ 15 files changed, 420 insertions(+), 10 deletions(-) diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java index 6189071..bcb93f4 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/v1/ReferentialServiceController.java @@ -7,6 +7,7 @@ import fr.ird.observe.services.service.DataNotFoundException; import fr.ird.observe.services.service.ReferentialService; import java.util.Collection; +import java.util.Date; /** * Created on 19/08/15. @@ -25,6 +26,11 @@ public class ReferentialServiceController extends ObserveAuthenticatedServiceCon } @Override + public <R extends ReferentialDto> ReferenceSetDto<R> getReferentialReferenceSetIfModify(Class<R> type, Date updateAfter) { + return service.getReferentialReferenceSetIfModify(type, updateAfter); + } + + @Override public <R extends ReferentialDto> FormDto<R> loadToRead(Class<R> type, String id) throws DataNotFoundException { return service.loadToRead(type, id); } diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/migration/AbstractDataSourceMigration.java b/observe-entities/src/main/java/fr/ird/observe/entities/migration/AbstractDataSourceMigration.java index 34d7e84..d89d5fe 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/migration/AbstractDataSourceMigration.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/migration/AbstractDataSourceMigration.java @@ -81,12 +81,13 @@ public abstract class AbstractDataSourceMigration extends TopiaMigrationCallback public static final Version V_4_0_RC7 = Versions.valueOf("4.0-RC7"); public static final Version V_4_0 = Versions.valueOf("4.0"); - public static final Version V_5_0 = Versions.valueOf("5.0"); public static final Version V_4_0_1 = Versions.valueOf("4.0.1"); public static final Version V_4_0_2 = Versions.valueOf("4.0.2"); + public static final Version V_5_0 = Versions.valueOf("5.0"); + /** Les versions de mise à jour disponibles. */ public static final Version[] availableVersions = new Version[]{ V_3_1, V_3_5, V_3_7, V_3_8, V_3_9, V_3_10, V_3_11, V_3_12, V_3_14, V_3_15, V_3_16, V_4_0_RC2, diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_0.java b/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_0.java index f0a26ee..89195e9 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_0.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_5_0.java @@ -31,11 +31,11 @@ public class DataSourceMigrationForVersion_5_0 extends AbstractObserveMigrationC // Ajout des champs lastUpdate // See https://forge.codelutin.com/issues/7470 - //TODO addScript("add_last_date_update", queries); + addScript("add_lastUpdate_field", queries); } - public static class H2DataSourceMigrationForVersion extends DataSourceMigrationForVersion_4_0 { + public static class H2DataSourceMigrationForVersion extends DataSourceMigrationForVersion_5_0 { public H2DataSourceMigrationForVersion(AbstractDataSourceMigration callBack) { super(callBack, H2DataSourceMigration.TYPE); @@ -43,7 +43,7 @@ public class DataSourceMigrationForVersion_5_0 extends AbstractObserveMigrationC } - public static class PGDataSourceMigrationForVersion extends DataSourceMigrationForVersion_4_0 { + public static class PGDataSourceMigrationForVersion extends DataSourceMigrationForVersion_5_0 { public PGDataSourceMigrationForVersion(AbstractDataSourceMigration callBack) { super(callBack, PGDataSourceMigration.TYPE); diff --git a/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql new file mode 100644 index 0000000..c2c3ca7 --- /dev/null +++ b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql @@ -0,0 +1,133 @@ + + +-- Referentiel commum +ALTER TABLE OBSERVE_COMMON.COUNTRY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.FPAZONE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.GEAR ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.GEARCARACTERISTIC ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.GEARCARACTERISTICTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.HARBOUR ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.LENGTHWEIGHTPARAMETER ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.OCEAN ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.ORGANISM ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.PERSON ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.PROGRAM ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SEX ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SPECIES ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SPECIESGROUP ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SPECIESLIST ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.VESSEL ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.VESSELSIZECATEGORY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.VESSELTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + +-- Référentiel senne +ALTER TABLE OBSERVE_SEINE.DETECTIONMODE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBJECTFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBJECTOPERATION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBJECTTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBSERVEDSYSTEM ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.REASONFORDISCARD ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.REASONFORNOFISHING ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.REASONFORNULLSET ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SPECIESFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SPECIESSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SURROUNDINGACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.TRANSMITTINGBUOYOPERATION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.TRANSMITTINGBUOYTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.VESSELACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.WEIGHTCATEGORY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.WIND ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + +-- Référentiel Palangre +ALTER TABLE OBSERVE_LONGLINE.BAITHAULINGSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.BAITSETTINGSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.BAITTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.CATCHFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.ENCOUNTERTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HEALTHNESS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HOOKPOSITION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HOOKSIZE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HOOKTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.ITEMHORIZONTALPOSITION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.ITEMVERTICALPOSITION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.LIGHTSTICKSCOLOR ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.LIGHTSTICKSTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.LINETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.MATURITYSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.MITIGATIONTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SENSORBRAND ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SENSORDATAFORMAT ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SENSORTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SETTINGSHAPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SIZEMEASURETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.STOMACFULLNESS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.TRIPTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.VESSELACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.WEIGHTMEASURETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + + +-- Création de la table d'historisation +CREATE TABLE OBSERVE_COMMON.LASTUPDATETYPE (TOPIAID VARCHAR(255) NOT NULL, TOPIAVERSION BIGINT NOT NULL, TOPIACREATEDATE TIMESTAMP, TYPE VARCHAR(255) NOT NULL, LASTUPDATE TIMESTAMP NOT NULL); +ALTER TABLE OBSERVE_COMMON.LASTUPDATETYPE ADD CONSTRAINT PK_LASTUPDATETYPE PRIMARY KEY(TOPIAID); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Country', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.FpaZone', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Gear', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.GearCaracteristic', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.05', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.GearCaracteristicType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.06', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Harbour', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.07', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.LengthWeightParameter', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.08', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Ocean', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.09', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Organism', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.10', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Person', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.11', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Program', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.12', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Sex', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.13', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Species', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.14', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.SpeciesGroup', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.15', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.SpeciesList', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.16', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Vessel', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.17', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.VesselSizeCategory', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.18', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.VesselType', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.DetectionMode', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObjectFate', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObjectOperation', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObjectType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.05', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObservedSystem', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.06', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ReasonForDiscard', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.07', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ReasonForNoFishing', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.08', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ReasonForNullSet', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.09', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.SpeciesFate', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.10', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.SpeciesStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.12', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.SurroundingActivity', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.13', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.TransmittingBuoyOperation', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.14', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.TransmittingBuoyType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.15', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.VesselActivitySeine', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.16', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.WeightCategory', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.17', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.Wind', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.BaitHaulingStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.BaitSettingStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.BaitType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.CatchFateLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.05', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.EncounterType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.06', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.Healthness', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.07', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.HookPosition', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.08', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.HookSize', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.09', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.HookType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.10', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.ItemHorizontalPosition', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.11', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.ItemVerticalPosition', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.12', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.LightsticksColor', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.13', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.LightsticksType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.14', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.LineType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.15', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.MaturityStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.16', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.MitigationType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.17', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SensorBrand', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.18', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SensorDataFormat', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.19', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SensorType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.20', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SettingShape', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.21', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SizeMeasureType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.22', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.StomacFullness', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.23', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.TripType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.24', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.VesselActivityLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.25', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType', CURRENT_TIMESTAMP); \ No newline at end of file diff --git a/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql new file mode 100644 index 0000000..77edb86 --- /dev/null +++ b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql @@ -0,0 +1,134 @@ + + +-- Referentiel commum +ALTER TABLE OBSERVE_COMMON.COUNTRY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.FPAZONE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.GEAR ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.GEARCARACTERISTIC ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.GEARCARACTERISTICTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.HARBOUR ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.LENGTHWEIGHTPARAMETER ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.OCEAN ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.ORGANISM ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.PERSON ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.PROGRAM ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SEX ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SPECIES ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SPECIESGROUP ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.SPECIESLIST ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.VESSEL ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.VESSELSIZECATEGORY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_COMMON.VESSELTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + +-- Référentiel senne +ALTER TABLE OBSERVE_SEINE.DETECTIONMODE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBJECTFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBJECTOPERATION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBJECTTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.OBSERVEDSYSTEM ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.REASONFORDISCARD ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.REASONFORNOFISHING ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.REASONFORNULLSET ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SPECIESFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SPECIESSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SURROUNDINGACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.TRANSMITTINGBUOYOPERATION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.TRANSMITTINGBUOYTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.VESSELACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.WEIGHTCATEGORY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.WIND ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + +-- Référentiel Palangre +ALTER TABLE OBSERVE_LONGLINE.BAITHAULINGSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.BAITSETTINGSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.BAITTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.CATCHFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.ENCOUNTERTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HEALTHNESS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HOOKPOSITION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HOOKSIZE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.HOOKTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.ITEMHORIZONTALPOSITION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.ITEMVERTICALPOSITION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.LIGHTSTICKSCOLOR ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.LIGHTSTICKSTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.LINETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.MATURITYSTATUS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.MITIGATIONTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SENSORBRAND ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SENSORDATAFORMAT ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SENSORTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SETTINGSHAPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SIZEMEASURETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.STOMACFULLNESS ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.TRIPTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.VESSELACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.WEIGHTMEASURETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + + +-- Création de la table d'historisation + +CREATE TABLE OBSERVE_COMMON.LASTUPDATETYPE (TOPIAID CHARACTER VARYING(255) NOT NULL, TOPIAVERSION BIGINT NOT NULL, TOPIACREATEDATE TIMESTAMP, TYPE CHARACTER VARYING(255) NOT NULL, LASTUPDATE TIMESTAMP NOT NULL); +ALTER TABLE OBSERVE_COMMON.LASTUPDATETYPE ADD CONSTRAINT PK_LASTUPDATETYPE PRIMARY KEY(TOPIAID); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Country', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.FpaZone', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Gear', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.GearCaracteristic', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.05', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.GearCaracteristicType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.06', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Harbour', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.07', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.LengthWeightParameter', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.08', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Ocean', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.09', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Organism', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.10', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Person', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.11', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Program', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.12', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Sex', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.13', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Species', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.14', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.SpeciesGroup', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.15', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.SpeciesList', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.16', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.Vessel', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.17', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.VesselSizeCategory', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#0.18', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.VesselType', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.DetectionMode', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObjectFate', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObjectOperation', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObjectType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.05', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ObservedSystem', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.06', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ReasonForDiscard', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.07', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ReasonForNoFishing', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.08', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.ReasonForNullSet', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.09', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.SpeciesFate', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.10', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.SpeciesStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.12', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.SurroundingActivity', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.13', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.TransmittingBuoyOperation', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.14', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.TransmittingBuoyType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.15', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.VesselActivitySeine', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.16', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.WeightCategory', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#1.17', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.seine.Wind', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.BaitHaulingStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.BaitSettingStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.BaitType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.CatchFateLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.05', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.EncounterType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.06', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.Healthness', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.07', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.HookPosition', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.08', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.HookSize', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.09', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.HookType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.10', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.ItemHorizontalPosition', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.11', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.ItemVerticalPosition', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.12', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.LightsticksColor', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.13', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.LightsticksType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.14', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.LineType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.15', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.MaturityStatus', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.16', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.MitigationType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.17', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SensorBrand', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.18', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SensorDataFormat', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.19', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SensorType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.20', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SettingShape', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.21', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.SizeMeasureType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.22', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.StomacFullness', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.23', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.TripType', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.24', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.VesselActivityLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.25', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType', CURRENT_TIMESTAMP); diff --git a/observe-entities/src/main/xmi/observe-common.zargo b/observe-entities/src/main/xmi/observe-common.zargo index e30a24c..db9fa01 100644 Binary files a/observe-entities/src/main/xmi/observe-common.zargo and b/observe-entities/src/main/xmi/observe-common.zargo differ diff --git a/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java b/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java index 53a957b..f2435fd 100644 --- a/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java +++ b/observe-services-api/src/main/java/fr/ird/observe/services/service/ReferentialService.java @@ -11,6 +11,7 @@ import fr.ird.observe.services.spi.Write; import fr.ird.observe.services.spi.WriteReferentialPermission; import java.util.Collection; +import java.util.Date; /** * Created on 16/08/15. @@ -23,6 +24,9 @@ public interface ReferentialService extends ObserveService { <R extends ReferentialDto> ReferenceSetDto<R> getReferentialReferenceSet(Class<R> type); @ReadReferentialPermission + <R extends ReferentialDto> ReferenceSetDto<R> getReferentialReferenceSetIfModify(Class<R> type, Date updateAfter); + + @ReadReferentialPermission <R extends ReferentialDto> FormDto<R> loadToRead(Class<R> type, String id) throws DataNotFoundException; @WriteReferentialPermission diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/ReferenceSetDtos.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/ReferenceSetDtos.java index b8ddb17..f715bfe 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/services/dto/ReferenceSetDtos.java +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/ReferenceSetDtos.java @@ -3,6 +3,7 @@ package fr.ird.observe.services.dto; import com.google.common.base.Function; import com.google.common.base.Predicate; +import java.util.Date; import java.util.LinkedHashSet; import java.util.Objects; @@ -16,10 +17,13 @@ public class ReferenceSetDtos extends AbstractReferenceSetDtos { return dto; } - public static <D extends IdDto, R extends ReferenceDto<D>> ReferenceSetDto<D> newReferenceSetDto(Class<D> type, - LinkedHashSet<R> labels) { + public static <D extends IdDto, R extends ReferenceDto<D>> ReferenceSetDto<D> newReferenceSetDto( + Class<D> type, + LinkedHashSet<R> labels, + Date lastUpdate) { ReferenceSetDto<D> dto = new ReferenceSetDto<>(type); dto.setReference((LinkedHashSet) labels); + dto.setLastUpdate(lastUpdate); return dto; } diff --git a/observe-services-model/src/main/xmi/observe-services-dto-common.properties b/observe-services-model/src/main/xmi/observe-services-dto-common.properties index e73b825..94bb0d4 100644 --- a/observe-services-model/src/main/xmi/observe-services-dto-common.properties +++ b/observe-services-model/src/main/xmi/observe-services-dto-common.properties @@ -1,4 +1,4 @@ -model.tagvalue.version=7.0 +model.tagvalue.version=5.0 model.tagvalue.simpleBeanWithNoInterfaceSuperClass=fr.ird.observe.services.dto.AbstractObserveDto model.tagvalue.simpleBeanWithNoInterfaceDefaultsClassNameSuffix=Dtos diff --git a/observe-services-model/src/main/xmi/observe-services-dto-common.zargo b/observe-services-model/src/main/xmi/observe-services-dto-common.zargo index fadfb2d..fa18225 100644 Binary files a/observe-services-model/src/main/xmi/observe-services-dto-common.zargo and b/observe-services-model/src/main/xmi/observe-services-dto-common.zargo differ diff --git a/observe-services-model/src/main/xmi/observe-services-dto-longline.properties b/observe-services-model/src/main/xmi/observe-services-dto-longline.properties index 430a8a0..ced8b3f 100644 --- a/observe-services-model/src/main/xmi/observe-services-dto-longline.properties +++ b/observe-services-model/src/main/xmi/observe-services-dto-longline.properties @@ -1,4 +1,4 @@ -model.tagvalue.version=7.0 +model.tagvalue.version=5.0 model.tagvalue.simpleBeanWithNoInterfaceSuperClass=fr.ird.observe.services.dto.AbstractObserveDto model.tagvalue.simpleBeanWithNoInterfaceDefaultsClassNameSuffix=Dtos diff --git a/observe-services-model/src/main/xmi/observe-services-dto-seine.properties b/observe-services-model/src/main/xmi/observe-services-dto-seine.properties index 16fe69f..11c2b0f 100644 --- a/observe-services-model/src/main/xmi/observe-services-dto-seine.properties +++ b/observe-services-model/src/main/xmi/observe-services-dto-seine.properties @@ -1,4 +1,4 @@ -model.tagvalue.version=7.0 +model.tagvalue.version=5.0 model.tagvalue.simpleBeanWithNoInterfaceSuperClass=fr.ird.observe.services.dto.AbstractObserveDto model.tagvalue.simpleBeanWithNoInterfaceDefaultsClassNameSuffix=Dtos diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java index 781da6b..a71a061 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/ObserveServiceTopia.java @@ -8,6 +8,9 @@ import com.google.common.collect.Multimap; import fr.ird.observe.ObserveTopiaApplicationContext; import fr.ird.observe.ObserveTopiaPersistenceContext; import fr.ird.observe.entities.Entities; +import fr.ird.observe.entities.FollowedUpdateEntity; +import fr.ird.observe.entities.LastUpdateType; +import fr.ird.observe.entities.LastUpdateTypeTopiaDao; import fr.ird.observe.entities.constants.ReferenceLocale; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.referentiel.ReferenceEntity; @@ -174,12 +177,62 @@ public class ObserveServiceTopia implements ObserveService { } protected <E extends TopiaEntity> E saveEntity(Class<E> entityType, E entity) { + if (entity instanceof FollowedUpdateEntity) { + ((FollowedUpdateEntity) entity).setLastUpdate(now()); + } ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); TopiaDao<E> dao = persistenceContext.getDao(entityType); entity = dao.update(entity); + if (entity instanceof FollowedUpdateEntity) { + Class<? extends FollowedUpdateEntity> followedUpdateType = (Class<? extends FollowedUpdateEntity>) entityType; + setLastUpdate(followedUpdateType, ((FollowedUpdateEntity) entity).getLastUpdate()); + } + return entity; } + protected <E extends FollowedUpdateEntity> void setLastUpdate(Class<E> entityType, Date lastUpdate) { + + ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + + LastUpdateTypeTopiaDao dao = persistenceContext.getLastUpdateTypeDao(); + + LastUpdateType lastUpdateType = dao.forTypeEquals(entityType.getCanonicalName()).findUniqueOrNull(); + + if (lastUpdateType == null) { + + lastUpdateType = dao.newInstance(); + + lastUpdateType.setType(entityType.getCanonicalName()); + + } + + lastUpdateType.setLastUpdate(lastUpdate); + + dao.update(lastUpdateType); + } + + protected <E extends TopiaEntity> Optional<Date> getLastUpdate(Class<E> entityType) { + + Optional<Date> result = Optional.absent(); + + if (FollowedUpdateEntity.class.isAssignableFrom(entityType)) { + + ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); + + LastUpdateTypeTopiaDao dao = persistenceContext.getLastUpdateTypeDao(); + + Optional<LastUpdateType> lastUpdateTypeOptional = dao.forTypeEquals(entityType.getCanonicalName()).tryFindUnique(); + + if (lastUpdateTypeOptional.isPresent()) { + result = Optional.of(lastUpdateTypeOptional.get().getLastUpdate()); + } + + } + + return result; + } + protected <D extends IdDto, E extends TopiaEntity> void deleteEntity(Class<D> dtoType, Class<E> entityType, Iterable<String> ids) { ObserveTopiaPersistenceContext persistenceContext = serviceContext.getTopiaPersistenceContext(); TopiaDao<E> dao = persistenceContext.getDao(entityType); @@ -189,6 +242,10 @@ public class ObserveServiceTopia implements ObserveService { throw new DataNotFoundException(dtoType, id); } dao.delete(entity); + if (FollowedUpdateEntity.class.isAssignableFrom(entityType)) { + Class<? extends FollowedUpdateEntity> followedUpdateType = (Class<? extends FollowedUpdateEntity>) entityType; + setLastUpdate(followedUpdateType, now()); + } } } @@ -302,7 +359,11 @@ public class ObserveServiceTopia implements ObserveService { labels.add(dto); } - ReferenceSetDto labelSetDto = ReferenceSetDtos.newReferenceSetDto(dtoType, labels); + + Optional<Date> lastUpdateOptional = getLastUpdate(entityType); + + ReferenceSetDto labelSetDto = ReferenceSetDtos.newReferenceSetDto(dtoType, labels, lastUpdateOptional.orNull()); + return labelSetDto; } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java b/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java index 6d60f2c..1fbb57c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/service/ReferentialServiceTopia.java @@ -1,5 +1,6 @@ package fr.ird.observe.services.service; +import com.google.common.base.Optional; import fr.ird.observe.services.ObserveServiceTopia; import fr.ird.observe.services.dto.FormDto; import fr.ird.observe.services.dto.ReferenceSetDto; @@ -8,6 +9,7 @@ import org.nuiton.topia.persistence.TopiaEntity; import java.util.Collection; import java.util.Collections; +import java.util.Date; /** * Created on 16/08/15. @@ -22,6 +24,21 @@ public class ReferentialServiceTopia extends ObserveServiceTopia implements Refe } @Override + public <D extends ReferentialDto> ReferenceSetDto<D> getReferentialReferenceSetIfModify(Class<D> dtoType, Date updateAfter) { + ReferenceSetDto<D> result = null; + + Class<TopiaEntity> entityType = getEntityType(dtoType); + + Optional<Date> lastUpdateOptional = getLastUpdate(entityType); + + if (lastUpdateOptional.isPresent() && lastUpdateOptional.get().after(updateAfter)) { + result = getReferenceSet(dtoType); + } + + return result; + } + + @Override public <D extends ReferentialDto> FormDto<D> loadToRead(Class<D> dtoType, String id) { Class<TopiaEntity> entityType = getEntityType(dtoType); TopiaEntity entity = loadEntity(dtoType, entityType, id); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java index 9a7f764..c703007 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java @@ -2,6 +2,8 @@ package fr.ird.observe.services.service; import com.google.common.collect.ImmutableSet; import fr.ird.observe.ObserveTopiaPersistenceContext; +import fr.ird.observe.entities.LastUpdateType; +import fr.ird.observe.entities.LastUpdateTypeTopiaDao; import fr.ird.observe.entities.referentiel.LengthWeightParameter; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.services.dto.FormDto; @@ -10,13 +12,17 @@ import fr.ird.observe.services.dto.ReferenceSetDto; import fr.ird.observe.services.dto.referential.LengthWeightParameterDto; import fr.ird.observe.services.dto.referential.ProgramDto; import fr.ird.observe.services.dto.referential.ReferentialDto; +import fr.ird.observe.services.dto.referential.VesselDto; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.junit.Assert; import org.junit.Test; import org.nuiton.topia.persistence.TopiaDao; import org.nuiton.topia.persistence.TopiaEntity; +import org.nuiton.util.DateUtil; +import java.util.Calendar; +import java.util.Date; import java.util.Map; import java.util.Set; @@ -72,12 +78,39 @@ public class ReferentialServiceTopiaTest extends AbstractServiceTopiaTest { ReferenceSetDto referentialLabelSet = service.getReferentialReferenceSet(dtoType); Assert.assertNotNull(referentialLabelSet); Assert.assertEquals(expectedCount, referentialLabelSet.sizeReference()); + Assert.assertNotNull(referentialLabelSet.getLastUpdate()); } } @Test + public void testgetReferentialReferenceSetIfModify() { + + Date updateAfter = DateUtil.createDate(1,1, 2015); + + ReferenceSetDto<VesselDto> vesselReferenceSet = service.getReferentialReferenceSetIfModify(VesselDto.class, updateAfter); + + Assert.assertNotNull(vesselReferenceSet); + Assert.assertNotNull(vesselReferenceSet.getLastUpdate()); + Assert.assertTrue(vesselReferenceSet.sizeReference() > 0); + + updateAfter = vesselReferenceSet.getLastUpdate(); + + vesselReferenceSet = service.getReferentialReferenceSetIfModify(VesselDto.class, updateAfter); + Assert.assertNull(vesselReferenceSet); + + Calendar calendar = Calendar.getInstance(); + calendar.setTime(updateAfter); + calendar.add(Calendar.DATE, 1); + updateAfter = calendar.getTime(); + + vesselReferenceSet = service.getReferentialReferenceSetIfModify(VesselDto.class, updateAfter); + Assert.assertNull(vesselReferenceSet); + + } + + @Test public void testLoadToRead() throws Exception { ObserveTopiaPersistenceContext persistenceContext = dataSourceResource.newPersistenceContext(); @@ -200,10 +233,15 @@ public class ReferentialServiceTopiaTest extends AbstractServiceTopiaTest { Assert.assertNotNull(formDto.getForm()); Assert.assertNotNull(formDto.getForm().getId()); + Date lastUpdateBefore = getLastUpdate(entityType); + service.delete(dtoType, entity.getTopiaId()); Assert.assertEquals(expectedCount - 1, dao.count()); + Date lastUpdateAfter = getLastUpdate(entityType); + Assert.assertNotEquals(lastUpdateBefore, lastUpdateAfter); + try { service.loadToRead(dtoType, entity.getTopiaId()); Assert.fail(); @@ -212,4 +250,16 @@ public class ReferentialServiceTopiaTest extends AbstractServiceTopiaTest { } } + + protected Date getLastUpdate(Class entityType) { + ObserveTopiaPersistenceContext persistenceContext = dataSourceResource.newPersistenceContext(); + + LastUpdateTypeTopiaDao dao = persistenceContext.getLastUpdateTypeDao(); + + LastUpdateType lastUpdateType = dao.forTypeEquals(entityType.getCanonicalName()).findUnique(); + + return lastUpdateType.getLastUpdate(); + + + } } \ No newline at end of file -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7520 in repository observe. See http://git.codelutin.com/observe.git commit 63cea729061a15fe4f46b43c2b511bf8d5ebc797 Author: Sylvain Bavencoff <bavencoff@codelutin.com> Date: Thu Sep 10 16:08:39 2015 +0200 ajout de la date de mise a jour pour les Trip, Route, Activity, Set (refs #7470) --- .../java/fr/ird/observe/entities/Activity.java | 2 +- .../java/fr/ird/observe/entities/ObserveSet.java | 2 +- .../main/java/fr/ird/observe/entities/Trip.java | 2 +- .../resources/db/5.0/add_lastUpdate_field-H2.sql | 24 +++++++++++++++++++-- .../resources/db/5.0/add_lastUpdate_field-PG.sql | 20 +++++++++++++++++ observe-entities/src/main/xmi/observe-common.zargo | Bin 36629 -> 37033 bytes .../src/main/xmi/observe-longline.zargo | Bin 95691 -> 96937 bytes observe-entities/src/main/xmi/observe-seine.zargo | Bin 83247 -> 84597 bytes .../services/service/AbstractServiceTopiaTest.java | 16 ++++++++++++++ .../service/ReferentialServiceTopiaTest.java | 14 ------------ .../service/seine/TripSeineServiceTopiaTest.java | 15 +++++++++++++ 11 files changed, 76 insertions(+), 19 deletions(-) diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/Activity.java b/observe-entities/src/main/java/fr/ird/observe/entities/Activity.java index 77540f7..806df87 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/Activity.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/Activity.java @@ -24,7 +24,7 @@ package fr.ird.observe.entities; import org.nuiton.topia.persistence.TopiaEntity; -public interface Activity extends TopiaEntity{ +public interface Activity extends TopiaEntity, FollowedUpdateEntity{ String PROPERTY_QUADRANT = "quadrant"; diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/ObserveSet.java b/observe-entities/src/main/java/fr/ird/observe/entities/ObserveSet.java index 961497a..e82d13c 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/ObserveSet.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/ObserveSet.java @@ -30,7 +30,7 @@ import org.nuiton.topia.persistence.TopiaEntity; * @author Tony Chemit - chemit@codelutin.com * @since 3.7 */ -public interface ObserveSet extends TopiaEntity { +public interface ObserveSet extends TopiaEntity, FollowedUpdateEntity { void initCoordinates(); diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/Trip.java b/observe-entities/src/main/java/fr/ird/observe/entities/Trip.java index 0bcfbe6..bc7cf53 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/Trip.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/Trip.java @@ -39,7 +39,7 @@ import java.util.Date; * @author Tony Chemit - chemit@codelutin.com * @since 3.7 */ -public interface Trip extends CommentableEntity { +public interface Trip extends CommentableEntity, FollowedUpdateEntity { String PROPERTY_START_DATE = "startDate"; diff --git a/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql index c2c3ca7..e26235f 100644 --- a/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql +++ b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-H2.sql @@ -20,7 +20,7 @@ ALTER TABLE OBSERVE_COMMON.VESSEL ADD COLUMN LASTUPDATE TIMEST ALTER TABLE OBSERVE_COMMON.VESSELSIZECATEGORY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; ALTER TABLE OBSERVE_COMMON.VESSELTYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; --- Référentiel senne +-- Référentiel Senne ALTER TABLE OBSERVE_SEINE.DETECTIONMODE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; ALTER TABLE OBSERVE_SEINE.OBJECTFATE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; ALTER TABLE OBSERVE_SEINE.OBJECTOPERATION ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; @@ -65,6 +65,17 @@ ALTER TABLE OBSERVE_LONGLINE.TRIPTYPE ADD COLUMN LASTUPDATE TIMEST ALTER TABLE OBSERVE_LONGLINE.VESSELACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; ALTER TABLE OBSERVE_LONGLINE.WEIGHTMEASURETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +-- Entitées Senne +ALTER TABLE OBSERVE_SEINE.ACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.ROUTE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SET ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.TRIP ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + +-- Entitées Palangre +ALTER TABLE OBSERVE_LONGLINE.ACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SET ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.TRIP ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + -- Création de la table d'historisation CREATE TABLE OBSERVE_COMMON.LASTUPDATETYPE (TOPIAID VARCHAR(255) NOT NULL, TOPIAVERSION BIGINT NOT NULL, TOPIACREATEDATE TIMESTAMP, TYPE VARCHAR(255) NOT NULL, LASTUPDATE TIMESTAMP NOT NULL); @@ -130,4 +141,13 @@ INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastU INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.22', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.StomacFullness', CURRENT_TIMESTAMP); INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.23', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.TripType', CURRENT_TIMESTAMP); INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.24', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.VesselActivityLongline', CURRENT_TIMESTAMP); -INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.25', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType', CURRENT_TIMESTAMP); \ No newline at end of file +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.25', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.ActivitySeine', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.Route', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.SetSeine', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.TripSeine', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#4.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.longline.ActivityLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#4.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.longline.SetLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#4.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.longline.TripLongline', CURRENT_TIMESTAMP); diff --git a/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql index 77edb86..cd1a3f6 100644 --- a/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql +++ b/observe-entities/src/main/resources/db/5.0/add_lastUpdate_field-PG.sql @@ -65,6 +65,17 @@ ALTER TABLE OBSERVE_LONGLINE.TRIPTYPE ADD COLUMN LASTUPDATE TIMEST ALTER TABLE OBSERVE_LONGLINE.VESSELACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; ALTER TABLE OBSERVE_LONGLINE.WEIGHTMEASURETYPE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +-- Entitées Senne +ALTER TABLE OBSERVE_SEINE.ACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.ROUTE ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.SET ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_SEINE.TRIP ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + +-- Entitées Palangre +ALTER TABLE OBSERVE_LONGLINE.ACTIVITY ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.SET ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; +ALTER TABLE OBSERVE_LONGLINE.TRIP ADD COLUMN LASTUPDATE TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL; + -- Création de la table d'historisation @@ -132,3 +143,12 @@ INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastU INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.23', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.TripType', CURRENT_TIMESTAMP); INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.24', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.VesselActivityLongline', CURRENT_TIMESTAMP); INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#2.25', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.referentiel.longline.WeightMeasureType', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.ActivitySeine', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.Route', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.SetSeine', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#3.04', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.seine.TripSeine', CURRENT_TIMESTAMP); + +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#4.01', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.longline.ActivityLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#4.02', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.longline.SetLongline', CURRENT_TIMESTAMP); +INSERT INTO OBSERVE_COMMON.LASTUPDATETYPE VALUES ('fr.ird.observe.entities.LastUpdateType#1236861982132#4.03', 0, CURRENT_TIMESTAMP, 'fr.ird.observe.entities.longline.TripLongline', CURRENT_TIMESTAMP); diff --git a/observe-entities/src/main/xmi/observe-common.zargo b/observe-entities/src/main/xmi/observe-common.zargo index db9fa01..aadf6fe 100644 Binary files a/observe-entities/src/main/xmi/observe-common.zargo and b/observe-entities/src/main/xmi/observe-common.zargo differ diff --git a/observe-entities/src/main/xmi/observe-longline.zargo b/observe-entities/src/main/xmi/observe-longline.zargo index fd7841b..9af82f6 100644 Binary files a/observe-entities/src/main/xmi/observe-longline.zargo and b/observe-entities/src/main/xmi/observe-longline.zargo differ diff --git a/observe-entities/src/main/xmi/observe-seine.zargo b/observe-entities/src/main/xmi/observe-seine.zargo index 540369e..de2e7c4 100644 Binary files a/observe-entities/src/main/xmi/observe-seine.zargo and b/observe-entities/src/main/xmi/observe-seine.zargo differ diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/AbstractServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/AbstractServiceTopiaTest.java index 727ba7a..74c3fa5 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/AbstractServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/AbstractServiceTopiaTest.java @@ -1,5 +1,8 @@ package fr.ird.observe.services.service; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import fr.ird.observe.entities.LastUpdateType; +import fr.ird.observe.entities.LastUpdateTypeTopiaDao; import fr.ird.observe.entities.migration.H2DataSourceMigration; import fr.ird.observe.services.ApplicationContextResource; import fr.ird.observe.services.DataSourceResource; @@ -17,6 +20,7 @@ import org.nuiton.util.FileUtil; import java.io.File; import java.nio.file.Files; +import java.util.Date; import java.util.Set; /** @@ -102,4 +106,16 @@ public abstract class AbstractServiceTopiaTest { } + protected Date getLastUpdate(Class entityType) { + ObserveTopiaPersistenceContext persistenceContext = dataSourceResource.newPersistenceContext(); + + LastUpdateTypeTopiaDao dao = persistenceContext.getLastUpdateTypeDao(); + + LastUpdateType lastUpdateType = dao.forTypeEquals(entityType.getCanonicalName()).findUnique(); + + return lastUpdateType.getLastUpdate(); + + + } + } diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java index c703007..e53e215 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/ReferentialServiceTopiaTest.java @@ -2,8 +2,6 @@ package fr.ird.observe.services.service; import com.google.common.collect.ImmutableSet; import fr.ird.observe.ObserveTopiaPersistenceContext; -import fr.ird.observe.entities.LastUpdateType; -import fr.ird.observe.entities.LastUpdateTypeTopiaDao; import fr.ird.observe.entities.referentiel.LengthWeightParameter; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.services.dto.FormDto; @@ -250,16 +248,4 @@ public class ReferentialServiceTopiaTest extends AbstractServiceTopiaTest { } } - - protected Date getLastUpdate(Class entityType) { - ObserveTopiaPersistenceContext persistenceContext = dataSourceResource.newPersistenceContext(); - - LastUpdateTypeTopiaDao dao = persistenceContext.getLastUpdateTypeDao(); - - LastUpdateType lastUpdateType = dao.forTypeEquals(entityType.getCanonicalName()).findUnique(); - - return lastUpdateType.getLastUpdate(); - - - } } \ No newline at end of file diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineServiceTopiaTest.java index 9b86140..38141a5 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineServiceTopiaTest.java @@ -21,6 +21,7 @@ import org.junit.Test; import org.nuiton.util.DateUtil; import java.util.Collection; +import java.util.Date; import java.util.List; import java.util.Set; @@ -245,6 +246,8 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { tripSeineDto.setComment("Un commentaire"); + Date lastUpdateBefore = getLastUpdate(TripSeine.class); + String tripSeineId = service.save(formDto); TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, tripSeineId); @@ -263,6 +266,8 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { Assert.assertEquals(tripSeineDto.getReportsUrl(), tripSeine.getReportsUrl()); Assert.assertEquals(tripSeineDto.getComment(), tripSeine.getComment()); + Date lastUpdateAfter = getLastUpdate(TripSeine.class); + Assert.assertNotEquals(lastUpdateBefore, lastUpdateAfter); } @@ -296,6 +301,8 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { tripSeineDto.setComment("Un commentaire"); + Date lastUpdateBefore = getLastUpdate(TripSeine.class); + service.save(formDto); TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_1); @@ -314,11 +321,16 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { Assert.assertEquals(tripSeineDto.getReportsUrl(), tripSeine.getReportsUrl()); Assert.assertEquals(tripSeineDto.getComment(), tripSeine.getComment()); + Date lastUpdateAfter = getLastUpdate(TripSeine.class); + Assert.assertNotEquals(lastUpdateBefore, lastUpdateAfter); + } @Test public void deleteTest() { + Date lastUpdateBefore = getLastUpdate(TripSeine.class); + service.delete(TRIP_SEINE_ID_1); List<TripSeineStubDto> tripSeineByProgram = service.getTripSeineByProgram(PROGRAM_ID); @@ -327,6 +339,9 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { Assert.assertFalse(dataSourceResource.exists(TripSeine.class, TRIP_SEINE_ID_1)); + Date lastUpdateAfter = getLastUpdate(TripSeine.class); + Assert.assertNotEquals(lastUpdateBefore, lastUpdateAfter); + } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm