This is an automated email from the git hooks/post-receive script. New change to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git from b6804fd o Introduction ObserveEntity et ObserveDataEntity o Mise en place de la date de dernière mise à jour sur toutes les entités o Alignement du code pour les dto o Optionmisation des dépendences new a736d26 Refactor des binders new 1fc64bb Implantation efficace de réplication de données new 4747da5 Ajout de fixtures new 026b9a6 Ajout d'un tes de replication de données new cec9b0b Correction de base de référentiels new 18717f0 Ajout d'une base vide pour les tests new 6100451 Utilisation du service topia pour la réplication new d051db8 Ajout de fixtures new 2eb350b Ajout de tests pour la réplication de données ng new 9cb09ec Configuration du nouveau service de réplication new f9c2470 Ajout méthode pour compter le nombre d'éléments d'une table new ca8daea Debut de correction de la javadoc The 12 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 ca8daeafc9b350b6e51f97a7b90d4ffa49f267da Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 17:01:14 2015 +0100 Debut de correction de la javadoc commit f9c2470d6a7255d15537049b35d38d80c6700dd1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:58:24 2015 +0100 Ajout méthode pour compter le nombre d'éléments d'une table commit 9cb09ecd322da00eaf7f18f37178930dc3925fd1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:57:47 2015 +0100 Configuration du nouveau service de réplication commit 2eb350bde3c37e483d1827358f77102a34b16114 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:54:37 2015 +0100 Ajout de tests pour la réplication de données ng commit d051db817aea147d3f3497a9bc59a6af456aab75 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:54:05 2015 +0100 Ajout de fixtures commit 610045103383d7119aefebc690178f2a012fabc2 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:53:25 2015 +0100 Utilisation du service topia pour la réplication commit 18717f0908d797e50d855b50938a78f465b8a7bc Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 21:48:48 2015 +0100 Ajout d'une base vide pour les tests commit cec9b0be626a0cb4ae451b3aa4714c4849584571 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 21:48:02 2015 +0100 Correction de base de référentiels commit 026b9a6b880b3776b33e313f3795d4d454162905 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 01:18:50 2015 +0100 Ajout d'un tes de replication de données commit 4747da54faf040e78ac3f464c1368c97cee26f7b Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 01:18:28 2015 +0100 Ajout de fixtures commit 1fc64bb2d669887492e84bf983ef42a192da667c Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 01:14:58 2015 +0100 Implantation efficace de réplication de données commit a736d267ac97730bbf50c8436cd1569a552144b2 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Dec 27 22:27:27 2015 +0100 Refactor des binders Summary of changes: .../java/fr/ird/observe/ObserveActionExecutor.java | 2 +- .../main/java/fr/ird/observe/ObserveCLAction.java | 2 +- .../main/java/fr/ird/observe/ObserveRunner.java | 4 +- .../observe/ObserveSwingApplicationContext.java | 6 +- .../ObserveSwingApplicationConfig.java | 2 +- .../ird/observe/db/constants/DataContextType.java | 2 +- .../src/main/java/fr/ird/observe/ui/UIHelper.java | 6 +- .../java/fr/ird/observe/ui/admin/AdminStep.java | 2 +- .../fr/ird/observe/ui/admin/AdminUIHandler.java | 2 +- .../java/fr/ird/observe/ui/admin/AdminUIModel.java | 2 +- .../ird/observe/ui/content/ContentUIHandler.java | 2 +- .../ui/content/ref/ContentReferenceUIHandler.java | 2 +- .../ui/content/table/ContentTableModel.java | 12 +- .../ui/content/table/ContentTableUIModel.java | 8 +- .../impl/seine/ModeSaisieEchantillonEnum.java | 4 +- .../ird/observe/ui/storage/ObstunaAdminAction.java | 6 +- .../ird/observe/ui/storage/StorageUIHandler.java | 8 +- .../ird/observe/ui/storage/StorageUILauncher.java | 4 +- .../fr/ird/observe/ui/storage/StorageUIModel.java | 2 +- .../ui/tree/AbstractObserveTreeCellRenderer.java | 2 +- .../ui/tree/DataSelectionTreeSelectionModel.java | 14 +- .../java/fr/ird/observe/ui/tree/ObserveNode.java | 2 +- .../fr/ird/observe/ui/tree/ObserveTreeHelper.java | 6 +- .../fr/ird/observe/ui/util/FloatConverter.java | 2 +- .../fr/ird/observe/ui/util/SpringUtilities.java | 8 +- .../ird/observe/validation/ValidationService.java | 2 +- .../dto/AbstractEspeceFieldDtoValidator.java | 8 +- .../dto/ActivityFinDeVeilleExistsDtoValidator.java | 12 +- .../dto/ActivitySimpleSpeedDtoValidator.java | 6 +- .../validator/dto/ActivitySpeedDtoValidator.java | 6 +- .../web/ObserveWebApplicationListener.java | 2 +- .../web/controller/ObserveWebMotionController.java | 2 +- .../entities/AbstractEspeceFieldValidator.java | 8 +- .../ActivityFinDeVeilleExistsValidator.java | 12 +- .../entities/ActivitySimpleSpeedValidator.java | 6 +- .../validator/entities/ActivitySpeedValidator.java | 6 +- .../observe/ObserveTopiaApplicationContext.java | 7 + .../observe/ObserveTopiaConfigurationFactory.java | 2 + .../observe/ObserveTopiaPersistenceContext.java | 35 +++ .../java/fr/ird/observe/entities/Entities.java | 4 +- .../fr/ird/observe/entities/gps/GPSRouteImpl.java | 8 +- .../fr/ird/observe/entities/gps/GpsPoints.java | 12 +- .../DataSourceMigrationForVersion_3_1.java | 2 +- .../referentiel/LengthWeightParameters.java | 8 +- .../referentiel/ObserveReferentialEntities.java | 4 +- .../ird/observe/entities/referentiel/Programs.java | 2 +- .../replication/ObserveReplicationTables.java | 169 ++++++++++++ .../ird/observe/entities/seine/ActivitySeines.java | 4 +- .../observe/entities/seine/NonTargetCatchImpl.java | 2 +- .../services/dto/constants/ReferentialLocale.java | 4 +- .../services/dto/referential/ReferentialDtos.java | 6 +- .../fr/ird/observe/util/gps/GPSFileReader.java | 10 +- .../java/fr/ird/observe/util/gps/GPSRouteImpl.java | 8 +- .../java/fr/ird/observe/util/gps/GPSService.java | 12 +- .../java/fr/ird/observe/util/gps/GpsPoints.java | 12 +- .../report/AbstractReportServiceRestTest.java | 4 +- .../observe/services/ReplicationServiceImpl.java | 4 +- .../referential/ReferentialServiceImpl.java | 8 +- .../binder/data/ActivityLonglineBinder.java | 8 +- .../data/ActivityLonglineEncouterDtoBinder.java | 8 +- .../data/ActivityLonglineSensorUsedDtoBinder.java | 8 +- .../binder/data/ActivityLonglineStubDtoBinder.java | 4 +- .../services/binder/data/ActivitySeineBinder.java | 8 +- .../data/ActivitySeineObservedSystemDtoBinder.java | 8 +- .../binder/data/ActivitySeineStubDtoBinder.java | 2 +- .../binder/data/BaitsCompositionBinder.java | 4 +- .../observe/services/binder/data/BasketBinder.java | 4 +- .../services/binder/data/BranchlineBinder.java | 6 +- .../binder/data/BranchlinesCompositionBinder.java | 4 +- .../services/binder/data/CatchLonglineBinder.java | 6 +- .../services/binder/data/DataBinderSupport.java | 21 ++ .../services/binder/data/EncounterBinder.java | 5 +- .../services/binder/data/FloatingObjectBinder.java | 6 +- .../FloatingObjectObservedSpeciesDtoBinder.java | 6 +- .../FloatingObjectSchoolEstimateDtoBinder.java | 6 +- .../FloatingObjectTransmittingBuoyDtoBinder.java | 6 +- .../binder/data/FloatlinesCompositionBinder.java | 4 +- .../binder/data/GearUseFeaturesLonglineBinder.java | 6 +- .../GearUseFeaturesMeasurementLonglineBinder.java | 4 +- .../GearUseFeaturesMeasurementSeineBinder.java | 4 +- .../binder/data/GearUseFeaturesSeineBinder.java | 6 +- .../binder/data/HooksCompositionBinder.java | 4 +- .../services/binder/data/NonTargetCatchBinder.java | 6 +- .../binder/data/NonTargetLengthBinder.java | 4 +- .../binder/data/NonTargetSampleBinder.java | 6 +- .../binder/data/ObjectObservedSpeciesBinder.java | 6 +- .../binder/data/ObjectSchoolEstimateBinder.java | 4 +- .../observe/services/binder/data/RouteBinder.java | 10 +- .../services/binder/data/RouteStubDtoBinder.java | 4 +- .../services/binder/data/SchoolEstimateBinder.java | 4 +- .../services/binder/data/SectionBinder.java | 4 +- .../services/binder/data/SensorUsedBinder.java | 4 +- .../services/binder/data/SetLonglineBinder.java | 10 +- .../binder/data/SetLonglineCatchDtoBinder.java | 6 +- .../SetLonglineDetailCompositionDtoBinder.java | 6 +- .../SetLonglineGlobalCompositionDtoBinder.java | 8 +- .../binder/data/SetLonglineStubDtoBinder.java | 2 +- .../binder/data/SetLonglineTdrDtoBinder.java | 6 +- .../services/binder/data/SetSeineBinder.java | 10 +- .../data/SetSeineNonTargetCatchDtoBinder.java | 4 +- .../data/SetSeineSchoolEstimateDtoBinder.java | 8 +- .../binder/data/SetSeineTargetCatchDtoBinder.java | 6 +- .../services/binder/data/SizeMeasureBinder.java | 4 +- .../services/binder/data/TargetCatchBinder.java | 6 +- .../services/binder/data/TargetLengthBinder.java | 4 +- .../services/binder/data/TargetSampleBinder.java | 6 +- .../observe/services/binder/data/TdrBinder.java | 4 +- .../binder/data/TransmittingBuoyBinder.java | 4 +- .../binder/data/TripLonglineActivityDtoBinder.java | 4 +- .../services/binder/data/TripLonglineBinder.java | 8 +- .../binder/data/TripLonglineGearUseDtoBinder.java | 6 +- .../services/binder/data/TripSeineBinder.java | 8 +- .../binder/data/TripSeineGearUseDtoBinder.java | 6 +- .../services/binder/data/WeightMeasureBinder.java | 4 +- .../replication/ReplicateReferentialsTest.java | 36 +++ .../entities/replication/ReplicateTestSupport.java | 128 +++++++++ .../replication/ReplicateTripLonglineTest.java | 79 ++++++ .../replication/ReplicateTripSeineTest.java | 77 ++++++ .../services/ApplicationContextResource.java | 19 +- .../services/service/AbstractServiceTopiaTest.java | 13 +- .../DataSourceDumpProducerServiceTopiaTest.java | 3 +- .../service/DataSourceServiceTopiaTest.java | 5 +- .../services/service/MigrateTestsDatabases.java | 14 +- .../report/AbstractReportServiceTopiaTest.java | 9 +- .../actions/validate/ValidateServiceTopiaTest.java | 5 +- ...tLonglineDetailCompositionServiceTopiaTest.java | 9 +- .../service/seine/RouteServiceTopiaTest.java | 3 +- .../seine/TripSeineGearUseServiceTopiaTest.java | 7 +- .../service/seine/TripSeineServiceTopiaTest.java | 29 +- .../src/test/resources/log4j.properties | 2 + .../java/fr/ird/observe/test/DatabaseName.java | 1 + .../java/fr/ird/observe/test/ObserveFixtures.java | 298 +++++++++++++++++++++ .../src/main/resources/db/5.0-3/empty.sql.gz | Bin 0 -> 7858 bytes .../src/main/resources/db/5.0-3/referentiel.sql.gz | Bin 143337 -> 162896 bytes 134 files changed, 1179 insertions(+), 397 deletions(-) create mode 100644 observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationTables.java create mode 100644 observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateReferentialsTest.java create mode 100644 observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTestSupport.java create mode 100644 observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripLonglineTest.java create mode 100644 observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripSeineTest.java create mode 100644 observe-test-data/src/main/java/fr/ird/observe/test/ObserveFixtures.java create mode 100644 observe-test-data/src/main/resources/db/5.0-3/empty.sql.gz -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit a736d267ac97730bbf50c8436cd1569a552144b2 Author: Tony CHEMIT <chemit@codelutin.com> Date: Sun Dec 27 22:27:27 2015 +0100 Refactor des binders --- .../binder/data/ActivityLonglineBinder.java | 8 ++------ .../data/ActivityLonglineEncouterDtoBinder.java | 8 ++------ .../data/ActivityLonglineSensorUsedDtoBinder.java | 8 ++------ .../binder/data/ActivityLonglineStubDtoBinder.java | 4 ++-- .../services/binder/data/ActivitySeineBinder.java | 8 ++------ .../data/ActivitySeineObservedSystemDtoBinder.java | 8 ++------ .../binder/data/ActivitySeineStubDtoBinder.java | 2 +- .../binder/data/BaitsCompositionBinder.java | 4 ++-- .../observe/services/binder/data/BasketBinder.java | 4 ++-- .../services/binder/data/BranchlineBinder.java | 6 ++---- .../binder/data/BranchlinesCompositionBinder.java | 4 ++-- .../services/binder/data/CatchLonglineBinder.java | 6 ++---- .../services/binder/data/DataBinderSupport.java | 21 +++++++++++++++++++++ .../services/binder/data/EncounterBinder.java | 5 +++-- .../services/binder/data/FloatingObjectBinder.java | 6 ++---- .../FloatingObjectObservedSpeciesDtoBinder.java | 6 ++---- .../data/FloatingObjectSchoolEstimateDtoBinder.java | 6 ++---- .../FloatingObjectTransmittingBuoyDtoBinder.java | 6 ++---- .../binder/data/FloatlinesCompositionBinder.java | 4 ++-- .../binder/data/GearUseFeaturesLonglineBinder.java | 6 ++---- .../GearUseFeaturesMeasurementLonglineBinder.java | 4 ++-- .../data/GearUseFeaturesMeasurementSeineBinder.java | 4 ++-- .../binder/data/GearUseFeaturesSeineBinder.java | 6 ++---- .../binder/data/HooksCompositionBinder.java | 4 ++-- .../services/binder/data/NonTargetCatchBinder.java | 6 ++---- .../services/binder/data/NonTargetLengthBinder.java | 4 ++-- .../services/binder/data/NonTargetSampleBinder.java | 6 ++---- .../binder/data/ObjectObservedSpeciesBinder.java | 6 ++---- .../binder/data/ObjectSchoolEstimateBinder.java | 4 ++-- .../observe/services/binder/data/RouteBinder.java | 10 +++------- .../services/binder/data/RouteStubDtoBinder.java | 4 ++-- .../services/binder/data/SchoolEstimateBinder.java | 4 ++-- .../observe/services/binder/data/SectionBinder.java | 4 ++-- .../services/binder/data/SensorUsedBinder.java | 4 ++-- .../services/binder/data/SetLonglineBinder.java | 10 +++------- .../binder/data/SetLonglineCatchDtoBinder.java | 6 ++---- .../data/SetLonglineDetailCompositionDtoBinder.java | 6 ++---- .../data/SetLonglineGlobalCompositionDtoBinder.java | 8 ++------ .../binder/data/SetLonglineStubDtoBinder.java | 2 +- .../binder/data/SetLonglineTdrDtoBinder.java | 6 ++---- .../services/binder/data/SetSeineBinder.java | 10 +++------- .../data/SetSeineNonTargetCatchDtoBinder.java | 4 ++-- .../data/SetSeineSchoolEstimateDtoBinder.java | 8 ++------ .../binder/data/SetSeineTargetCatchDtoBinder.java | 6 ++---- .../services/binder/data/SizeMeasureBinder.java | 4 ++-- .../services/binder/data/TargetCatchBinder.java | 6 ++---- .../services/binder/data/TargetLengthBinder.java | 4 ++-- .../services/binder/data/TargetSampleBinder.java | 6 ++---- .../ird/observe/services/binder/data/TdrBinder.java | 4 ++-- .../binder/data/TransmittingBuoyBinder.java | 4 ++-- .../binder/data/TripLonglineActivityDtoBinder.java | 4 ++-- .../services/binder/data/TripLonglineBinder.java | 8 ++------ .../binder/data/TripLonglineGearUseDtoBinder.java | 6 ++---- .../services/binder/data/TripSeineBinder.java | 8 ++------ .../binder/data/TripSeineGearUseDtoBinder.java | 6 ++---- .../services/binder/data/WeightMeasureBinder.java | 4 ++-- 56 files changed, 133 insertions(+), 197 deletions(-) diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineBinder.java index f3481f7..b9beb1a 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineBinder.java @@ -23,9 +23,7 @@ public class ActivityLonglineBinder extends DataBinderSupport<ActivityLongline, @Override public void copyToEntity(ReferentialLocale referentialLocale, ActivityLonglineDto dto, ActivityLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTimeStamp(dto.getTimeStamp()); entity.setLatitude(dto.getLatitude()); @@ -39,9 +37,7 @@ public class ActivityLonglineBinder extends DataBinderSupport<ActivityLongline, @Override public void copyToDto(ReferentialLocale referentialLocale, ActivityLongline entity, ActivityLonglineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setTimeStamp(entity.getTimeStamp()); dto.setLatitude(entity.getLatitude()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineEncouterDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineEncouterDtoBinder.java index 087fd8c..73ec21f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineEncouterDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineEncouterDtoBinder.java @@ -21,9 +21,7 @@ public class ActivityLonglineEncouterDtoBinder extends DataBinderSupport<Activit @Override public void copyToEntity(ReferentialLocale referentialLocale, ActivityLonglineEncouterDto dto, ActivityLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setEncounter(toEntityCollection(referentialLocale, dto.getEncounter(), Encounter.class, entity.getEncounter())); @@ -32,9 +30,7 @@ public class ActivityLonglineEncouterDtoBinder extends DataBinderSupport<Activit @Override public void copyToDto(ReferentialLocale referentialLocale, ActivityLongline entity, ActivityLonglineEncouterDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setEncounter(toLinkedHashSetData(referentialLocale, entity.getEncounter(), EncounterDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineSensorUsedDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineSensorUsedDtoBinder.java index 50673ad..9138c04 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineSensorUsedDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineSensorUsedDtoBinder.java @@ -20,9 +20,7 @@ public class ActivityLonglineSensorUsedDtoBinder extends DataBinderSupport<Activ @Override public void copyToEntity(ReferentialLocale referentialLocale, ActivityLonglineSensorUsedDto dto, ActivityLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSensorUsed(toEntityCollection(referentialLocale, dto.getSensorUsed(), SensorUsed.class, entity.getSensorUsed())); @@ -31,9 +29,7 @@ public class ActivityLonglineSensorUsedDtoBinder extends DataBinderSupport<Activ @Override public void copyToDto(ReferentialLocale referentialLocale, ActivityLongline entity, ActivityLonglineSensorUsedDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setSensorUsed(toLinkedHashSetData(referentialLocale, entity.getSensorUsed(), SensorUsedDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineStubDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineStubDtoBinder.java index 30c2f1a..1ad7a31 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineStubDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivityLonglineStubDtoBinder.java @@ -18,7 +18,7 @@ public class ActivityLonglineStubDtoBinder extends DataBinderSupport<ActivityLon @Override public void copyToEntity(ReferentialLocale referentialLocale, ActivityLonglineStubDto dto, ActivityLongline entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); } @@ -26,7 +26,7 @@ public class ActivityLonglineStubDtoBinder extends DataBinderSupport<ActivityLon @Override public void copyToDto(ReferentialLocale referentialLocale, ActivityLongline entity, ActivityLonglineStubDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setVesselActivityLonglineLabel(getLabel(referentialLocale, entity.getVesselActivityLongline())); dto.setHasSetLongline(entity.getSetLongline() != null); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineBinder.java index 95f8dc1..3ed93ba 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineBinder.java @@ -32,9 +32,7 @@ public class ActivitySeineBinder extends DataBinderSupport<ActivitySeine, Activi @Override public void copyToEntity(ReferentialLocale referentialLocale, ActivitySeineDto dto, ActivitySeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTime(dto.getTime()); entity.setLatitude(dto.getLatitude()); @@ -58,9 +56,7 @@ public class ActivitySeineBinder extends DataBinderSupport<ActivitySeine, Activi @Override public void copyToDto(ReferentialLocale referentialLocale, ActivitySeine entity, ActivitySeineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setTime(dto.getTime()); dto.setLatitude(dto.getLatitude()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineObservedSystemDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineObservedSystemDtoBinder.java index dc7b5c9..72b5661 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineObservedSystemDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineObservedSystemDtoBinder.java @@ -20,9 +20,7 @@ public class ActivitySeineObservedSystemDtoBinder extends DataBinderSupport<Acti @Override public void copyToEntity(ReferentialLocale referentialLocale, ActivitySeineObservedSystemDto dto, ActivitySeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setObservedSystem(toEntitySet(dto.getObservedSystem(), ObservedSystem.class)); @@ -31,9 +29,7 @@ public class ActivitySeineObservedSystemDtoBinder extends DataBinderSupport<Acti @Override public void copyToDto(ReferentialLocale referentialLocale, ActivitySeine entity, ActivitySeineObservedSystemDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setObservedSystem(toReferentialReferenceList(referentialLocale, entity.getObservedSystem(), ObservedSystemDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineStubDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineStubDtoBinder.java index efe677a..94ebb92 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineStubDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ActivitySeineStubDtoBinder.java @@ -23,7 +23,7 @@ public class ActivitySeineStubDtoBinder extends DataBinderSupport<ActivitySeine, @Override public void copyToDto(ReferentialLocale referentialLocale, ActivitySeine entity, ActivitySeineStubDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setTime(entity.getTime()); dto.setTime(entity.getLastUpdateDate()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BaitsCompositionBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BaitsCompositionBinder.java index 087b809..f7fdd54 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BaitsCompositionBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BaitsCompositionBinder.java @@ -22,7 +22,7 @@ public class BaitsCompositionBinder extends DataBinderSupport<BaitsComposition, @Override public void copyToEntity(ReferentialLocale referentialLocale, BaitsCompositionDto dto, BaitsComposition entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setProportion(dto.getProportion()); entity.setIndividualSize(dto.getIndividualSize()); @@ -35,7 +35,7 @@ public class BaitsCompositionBinder extends DataBinderSupport<BaitsComposition, @Override public void copyToDto(ReferentialLocale referentialLocale, BaitsComposition entity, BaitsCompositionDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setProportion(entity.getProportion()); dto.setIndividualSize(entity.getIndividualSize()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BasketBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BasketBinder.java index 4e7837b..e681e29 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BasketBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BasketBinder.java @@ -21,7 +21,7 @@ public class BasketBinder extends DataBinderSupport<Basket, BasketDto> { @Override public void copyToEntity(ReferentialLocale referentialLocale, BasketDto dto, Basket entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSettingIdentifier(dto.getSettingIdentifier()); entity.setHaulingIdentifier(dto.getHaulingIdentifier()); @@ -34,7 +34,7 @@ public class BasketBinder extends DataBinderSupport<Basket, BasketDto> { @Override public void copyToDto(ReferentialLocale referentialLocale, Basket entity, BasketDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setSettingIdentifier(entity.getSettingIdentifier()); dto.setHaulingIdentifier(entity.getHaulingIdentifier()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlineBinder.java index 03dec1a..d7dd9c4 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlineBinder.java @@ -31,8 +31,7 @@ public class BranchlineBinder extends DataBinderSupport<Branchline, BranchlineDt @Override public void copyToEntity(ReferentialLocale referentialLocale, BranchlineDto dto, Branchline entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSettingIdentifier(dto.getSettingIdentifier()); entity.setHaulingIdentifier(dto.getHaulingIdentifier()); @@ -63,8 +62,7 @@ public class BranchlineBinder extends DataBinderSupport<Branchline, BranchlineDt @Override public void copyToDto(ReferentialLocale referentialLocale, Branchline entity, BranchlineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setSettingIdentifier(entity.getSettingIdentifier()); dto.setHaulingIdentifier(entity.getHaulingIdentifier()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlinesCompositionBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlinesCompositionBinder.java index 1452288..0259589 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlinesCompositionBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/BranchlinesCompositionBinder.java @@ -20,7 +20,7 @@ public class BranchlinesCompositionBinder extends DataBinderSupport<BranchlinesC @Override public void copyToEntity(ReferentialLocale referentialLocale, BranchlinesCompositionDto dto, BranchlinesComposition entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setLength(dto.getLength()); entity.setProportion(dto.getProportion()); @@ -32,7 +32,7 @@ public class BranchlinesCompositionBinder extends DataBinderSupport<BranchlinesC @Override public void copyToDto(ReferentialLocale referentialLocale, BranchlinesComposition entity, BranchlinesCompositionDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setLength(entity.getLength()); dto.setProportion(entity.getProportion()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/CatchLonglineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/CatchLonglineBinder.java index af83484..d8e11bd 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/CatchLonglineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/CatchLonglineBinder.java @@ -43,8 +43,7 @@ public class CatchLonglineBinder extends DataBinderSupport<CatchLongline, CatchL @Override public void copyToEntity(ReferentialLocale referentialLocale, CatchLonglineDto dto, CatchLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setHomeId(dto.getHomeId()); entity.setCount(dto.getCount()); @@ -76,8 +75,7 @@ public class CatchLonglineBinder extends DataBinderSupport<CatchLongline, CatchL @Override public void copyToDto(ReferentialLocale referentialLocale, CatchLongline entity, CatchLonglineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setHomeId(entity.getHomeId()); dto.setCount(entity.getCount()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/DataBinderSupport.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/DataBinderSupport.java index ca41c91..dce95d3 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/DataBinderSupport.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/DataBinderSupport.java @@ -4,9 +4,11 @@ import com.google.common.collect.ImmutableMap; import com.google.common.collect.Iterables; import com.google.common.collect.Maps; import com.google.common.collect.Sets; +import fr.ird.observe.entities.CommentableEntity; import fr.ird.observe.entities.ObserveDataEntity; import fr.ird.observe.services.binder.BinderEngine; import fr.ird.observe.services.binder.BinderSupport; +import fr.ird.observe.services.dto.CommentableDto; import fr.ird.observe.services.dto.DataDto; import fr.ird.observe.services.dto.DataReference; import fr.ird.observe.services.dto.constants.ReferentialLocale; @@ -50,6 +52,15 @@ public abstract class DataBinderSupport<E extends ObserveDataEntity, D extends D } + protected void copyEntityDataFieldsToDto(E entity, D dto) { + dto.setId(entity.getTopiaId()); + dto.setLastUpdateDate(entity.getLastUpdateDate()); + + if (dto instanceof CommentableDto && entity instanceof CommentableEntity) { + ((CommentableDto)dto).setComment(((CommentableEntity)entity).getComment()); + } + } + // -------------------------------------------------------------------------------------------------------------- // // -- ENTITY → DATA REFERENCE ----------------------------------------------------------------------------------- // // -------------------------------------------------------------------------------------------------------------- // @@ -135,6 +146,14 @@ public abstract class DataBinderSupport<E extends ObserveDataEntity, D extends D return entity; } + protected void copyDtoDataFieldsToEntity(D dto, E entity) { + entity.setTopiaId(dto.getId()); + entity.setLastUpdateDate(dto.getLastUpdateDate()); + if (dto instanceof CommentableDto && entity instanceof CommentableEntity) { + ((CommentableEntity)entity).setComment(((CommentableDto)dto).getComment()); + } + } + protected <DD extends DataDto, EE extends ObserveDataEntity> Set<EE> toEntitySet(ReferentialLocale referentialLocale, Collection<DD> dtos, Class<EE> entityType, Set<EE> entityList) { if (entityList == null) { @@ -208,6 +227,7 @@ public abstract class DataBinderSupport<E extends ObserveDataEntity, D extends D public E toEntity(DataReference<D> reference) { E entity = newEntity(); entity.setTopiaId(reference.getId()); + entity.setLastUpdateDate(reference.getLastUpdateDate()); return entity; } @@ -218,6 +238,7 @@ public abstract class DataBinderSupport<E extends ObserveDataEntity, D extends D DataBinderSupport<EE, DD> binder = BinderEngine.get().getDataBinder(type); EE entity = binder.toEntity(reference); entity.setTopiaId(reference.getId()); + entity.setLastUpdateDate(reference.getLastUpdateDate()); return entity; } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/EncounterBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/EncounterBinder.java index 83d5418..97e6197 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/EncounterBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/EncounterBinder.java @@ -23,7 +23,7 @@ public class EncounterBinder extends DataBinderSupport<Encounter, EncounterDto> @Override public void copyToEntity(ReferentialLocale referentialLocale, EncounterDto dto, Encounter entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSpecies(toEntity(dto.getSpecies(), Species.class)); entity.setEncounterType(toEntity(dto.getEncounterType(), EncounterType.class)); @@ -36,7 +36,8 @@ public class EncounterBinder extends DataBinderSupport<Encounter, EncounterDto> @Override public void copyToDto(ReferentialLocale referentialLocale, Encounter entity, EncounterDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); + dto.setSpecies(toReferentialReference(referentialLocale, entity.getSpecies(), SpeciesDto.class)); dto.setEncounterType(toReferentialReference(referentialLocale, entity.getEncounterType(), EncounterTypeDto.class)); dto.setDistance(entity.getDistance()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectBinder.java index a9e8fb0..683d5e4 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectBinder.java @@ -25,8 +25,7 @@ public class FloatingObjectBinder extends DataBinderSupport<FloatingObject, Floa @Override public void copyToEntity(ReferentialLocale referentialLocale, FloatingObjectDto dto, FloatingObject entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setDaysAtSeaCount(dto.getDaysAtSeaCount()); entity.setSupportVesselName(dto.getSupportVesselName()); @@ -39,8 +38,7 @@ public class FloatingObjectBinder extends DataBinderSupport<FloatingObject, Floa @Override public void copyToDto(ReferentialLocale referentialLocale, FloatingObject entity, FloatingObjectDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setDaysAtSeaCount(entity.getDaysAtSeaCount()); dto.setSupportVesselName(entity.getSupportVesselName()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectObservedSpeciesDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectObservedSpeciesDtoBinder.java index 0e765c7..b542707 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectObservedSpeciesDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectObservedSpeciesDtoBinder.java @@ -20,8 +20,7 @@ public class FloatingObjectObservedSpeciesDtoBinder extends DataBinderSupport<Fl @Override public void copyToEntity(ReferentialLocale referentialLocale, FloatingObjectObservedSpeciesDto dto, FloatingObject entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setObjectObservedSpecies(toEntityCollection(referentialLocale, dto.getObjectObservedSpecies(), ObjectObservedSpecies.class, entity.getObjectObservedSpecies())); @@ -30,8 +29,7 @@ public class FloatingObjectObservedSpeciesDtoBinder extends DataBinderSupport<Fl @Override public void copyToDto(ReferentialLocale referentialLocale, FloatingObject entity, FloatingObjectObservedSpeciesDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setObjectObservedSpecies(toLinkedHashSetData(referentialLocale, entity.getObjectObservedSpecies(), ObjectObservedSpeciesDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectSchoolEstimateDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectSchoolEstimateDtoBinder.java index b2e75d0..9f169a3 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectSchoolEstimateDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectSchoolEstimateDtoBinder.java @@ -20,8 +20,7 @@ public class FloatingObjectSchoolEstimateDtoBinder extends DataBinderSupport<Flo @Override public void copyToEntity(ReferentialLocale referentialLocale, FloatingObjectSchoolEstimateDto dto, FloatingObject entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setObjectSchoolEstimate(toEntityCollection(referentialLocale, dto.getObjectSchoolEstimate(), ObjectSchoolEstimate.class, entity.getObjectSchoolEstimate())); @@ -30,8 +29,7 @@ public class FloatingObjectSchoolEstimateDtoBinder extends DataBinderSupport<Flo @Override public void copyToDto(ReferentialLocale referentialLocale, FloatingObject entity, FloatingObjectSchoolEstimateDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setObjectSchoolEstimate(toLinkedHashSetData(referentialLocale, entity.getObjectSchoolEstimate(), ObjectSchoolEstimateDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectTransmittingBuoyDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectTransmittingBuoyDtoBinder.java index 7f43381..120f9a6 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectTransmittingBuoyDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatingObjectTransmittingBuoyDtoBinder.java @@ -20,8 +20,7 @@ public class FloatingObjectTransmittingBuoyDtoBinder extends DataBinderSupport<F @Override public void copyToEntity(ReferentialLocale referentialLocale, FloatingObjectTransmittingBuoyDto dto, FloatingObject entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTransmittingBuoy(toEntitySet(referentialLocale, dto.getTransmittingBuoy(), TransmittingBuoy.class, entity.getTransmittingBuoy())); @@ -30,8 +29,7 @@ public class FloatingObjectTransmittingBuoyDtoBinder extends DataBinderSupport<F @Override public void copyToDto(ReferentialLocale referentialLocale, FloatingObject entity, FloatingObjectTransmittingBuoyDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setTransmittingBuoy(toLinkedHashSetData(referentialLocale, entity.getTransmittingBuoy(), TransmittingBuoyDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatlinesCompositionBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatlinesCompositionBinder.java index 09fe24e..fb05bd3 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatlinesCompositionBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/FloatlinesCompositionBinder.java @@ -20,7 +20,7 @@ public class FloatlinesCompositionBinder extends DataBinderSupport<FloatlinesCom @Override public void copyToEntity(ReferentialLocale referentialLocale, FloatlinesCompositionDto dto, FloatlinesComposition entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setLength(dto.getLength()); entity.setProportion(dto.getProportion()); @@ -31,7 +31,7 @@ public class FloatlinesCompositionBinder extends DataBinderSupport<FloatlinesCom @Override public void copyToDto(ReferentialLocale referentialLocale, FloatlinesComposition entity, FloatlinesCompositionDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setLength(entity.getLength()); dto.setProportion(entity.getProportion()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesLonglineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesLonglineBinder.java index 9c05d7d..7e3b659 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesLonglineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesLonglineBinder.java @@ -22,8 +22,7 @@ public class GearUseFeaturesLonglineBinder extends DataBinderSupport<GearUseFeat @Override public void copyToEntity(ReferentialLocale referentialLocale, GearUseFeaturesLonglineDto dto, GearUseFeaturesLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setNumber(dto.getNumber()); entity.setUsedInTrip(dto.getUsedInTrip()); @@ -34,8 +33,7 @@ public class GearUseFeaturesLonglineBinder extends DataBinderSupport<GearUseFeat @Override public void copyToDto(ReferentialLocale referentialLocale, GearUseFeaturesLongline entity, GearUseFeaturesLonglineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setNumber(entity.getNumber()); dto.setUsedInTrip(entity.getUsedInTrip()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementLonglineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementLonglineBinder.java index 5ac6435..ad83ddf 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementLonglineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementLonglineBinder.java @@ -20,7 +20,7 @@ public class GearUseFeaturesMeasurementLonglineBinder extends DataBinderSupport< @Override public void copyToEntity(ReferentialLocale referentialLocale, GearUseFeaturesMeasurementLonglineDto dto, GearUseFeaturesMeasurementLongline entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setMeasurementValue(dto.getMeasurementValue()); entity.setGearCaracteristic(toEntity(dto.getGearCaracteristic(), GearCaracteristic.class)); @@ -30,7 +30,7 @@ public class GearUseFeaturesMeasurementLonglineBinder extends DataBinderSupport< @Override public void copyToDto(ReferentialLocale referentialLocale, GearUseFeaturesMeasurementLongline entity, GearUseFeaturesMeasurementLonglineDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setMeasurementValue(entity.getMeasurementValue()); dto.setGearCaracteristic(toReferentialReference(referentialLocale, entity.getGearCaracteristic(), GearCaracteristicDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementSeineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementSeineBinder.java index 98ff84d..000d686 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementSeineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesMeasurementSeineBinder.java @@ -20,7 +20,7 @@ public class GearUseFeaturesMeasurementSeineBinder extends DataBinderSupport<Gea @Override public void copyToEntity(ReferentialLocale referentialLocale, GearUseFeaturesMeasurementSeineDto dto, GearUseFeaturesMeasurementSeine entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setMeasurementValue(dto.getMeasurementValue()); entity.setGearCaracteristic(toEntity(dto.getGearCaracteristic(), GearCaracteristic.class)); @@ -31,7 +31,7 @@ public class GearUseFeaturesMeasurementSeineBinder extends DataBinderSupport<Gea @Override public void copyToDto(ReferentialLocale referentialLocale, GearUseFeaturesMeasurementSeine entity, GearUseFeaturesMeasurementSeineDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setMeasurementValue(entity.getMeasurementValue()); dto.setGearCaracteristic(toReferentialReference(referentialLocale, entity.getGearCaracteristic(), GearCaracteristicDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesSeineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesSeineBinder.java index ecb11c2..2df4e9a 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesSeineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/GearUseFeaturesSeineBinder.java @@ -22,8 +22,7 @@ public class GearUseFeaturesSeineBinder extends DataBinderSupport<GearUseFeature @Override public void copyToEntity(ReferentialLocale referentialLocale, GearUseFeaturesSeineDto dto, GearUseFeaturesSeine entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setNumber(dto.getNumber()); entity.setUsedInTrip(dto.getUsedInTrip()); @@ -35,8 +34,7 @@ public class GearUseFeaturesSeineBinder extends DataBinderSupport<GearUseFeature @Override public void copyToDto(ReferentialLocale referentialLocale, GearUseFeaturesSeine entity, GearUseFeaturesSeineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setNumber(entity.getNumber()); dto.setUsedInTrip(entity.getUsedInTrip()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/HooksCompositionBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/HooksCompositionBinder.java index 061d94d..661f17f 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/HooksCompositionBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/HooksCompositionBinder.java @@ -22,7 +22,7 @@ public class HooksCompositionBinder extends DataBinderSupport<HooksComposition, @Override public void copyToEntity(ReferentialLocale referentialLocale, HooksCompositionDto dto, HooksComposition entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setProportion(dto.getProportion()); entity.setHookOffset(dto.getHookOffset()); @@ -34,7 +34,7 @@ public class HooksCompositionBinder extends DataBinderSupport<HooksComposition, @Override public void copyToDto(ReferentialLocale referentialLocale, HooksComposition entity, HooksCompositionDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setProportion(entity.getProportion()); dto.setHookOffset(entity.getHookOffset()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetCatchBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetCatchBinder.java index 1c08288..74b2208 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetCatchBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetCatchBinder.java @@ -25,8 +25,7 @@ public class NonTargetCatchBinder extends DataBinderSupport<NonTargetCatch, NonT @Override public void copyToEntity(ReferentialLocale referentialLocale, NonTargetCatchDto dto, NonTargetCatch entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setCatchWeight(dto.getCatchWeight()); entity.setMeanWeight(dto.getMeanWeight()); @@ -46,8 +45,7 @@ public class NonTargetCatchBinder extends DataBinderSupport<NonTargetCatch, NonT @Override public void copyToDto(ReferentialLocale referentialLocale, NonTargetCatch entity, NonTargetCatchDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setCatchWeight(entity.getCatchWeight()); dto.setMeanWeight(entity.getMeanWeight()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetLengthBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetLengthBinder.java index 05f8e35..5a25365 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetLengthBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetLengthBinder.java @@ -22,7 +22,7 @@ public class NonTargetLengthBinder extends DataBinderSupport<NonTargetLength, No @Override public void copyToEntity(ReferentialLocale referentialLocale, NonTargetLengthDto dto, NonTargetLength entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setLength(dto.getLength()); entity.setWeight(dto.getWeight()); @@ -40,7 +40,7 @@ public class NonTargetLengthBinder extends DataBinderSupport<NonTargetLength, No @Override public void copyToDto(ReferentialLocale referentialLocale, NonTargetLength entity, NonTargetLengthDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setLength(entity.getLength()); dto.setWeight(entity.getWeight()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetSampleBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetSampleBinder.java index c0d8cc6..094ee8c 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetSampleBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/NonTargetSampleBinder.java @@ -20,8 +20,7 @@ public class NonTargetSampleBinder extends DataBinderSupport<NonTargetSample, No @Override public void copyToEntity(ReferentialLocale referentialLocale, NonTargetSampleDto dto, NonTargetSample entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setNonTargetLength(toEntitySet(referentialLocale, dto.getNonTargetLength(), NonTargetLength.class, entity.getNonTargetLength())); @@ -30,8 +29,7 @@ public class NonTargetSampleBinder extends DataBinderSupport<NonTargetSample, No @Override public void copyToDto(ReferentialLocale referentialLocale, NonTargetSample entity, NonTargetSampleDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setNonTargetLength(toLinkedHashSetData(referentialLocale, entity.getNonTargetLength(), NonTargetLengthDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectObservedSpeciesBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectObservedSpeciesBinder.java index 76d559f..52387ac 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectObservedSpeciesBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectObservedSpeciesBinder.java @@ -22,8 +22,7 @@ public class ObjectObservedSpeciesBinder extends DataBinderSupport<ObjectObserve @Override public void copyToEntity(ReferentialLocale referentialLocale, ObjectObservedSpeciesDto dto, ObjectObservedSpecies entity) { - entity.setTopiaId(dto.getId()); - + copyDtoDataFieldsToEntity(dto, entity); entity.setCount(entity.getCount()); entity.setStatut(entity.getStatut()); @@ -35,8 +34,7 @@ public class ObjectObservedSpeciesBinder extends DataBinderSupport<ObjectObserve @Override public void copyToDto(ReferentialLocale referentialLocale, ObjectObservedSpecies entity, ObjectObservedSpeciesDto dto) { - dto.setId(entity.getTopiaId()); - + copyEntityDataFieldsToDto(entity, dto); dto.setCount(entity.getCount()); dto.setStatut(entity.getStatut()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectSchoolEstimateBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectSchoolEstimateBinder.java index bb429b3..6790643 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectSchoolEstimateBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/ObjectSchoolEstimateBinder.java @@ -20,7 +20,7 @@ public class ObjectSchoolEstimateBinder extends DataBinderSupport<ObjectSchoolEs @Override public void copyToEntity(ReferentialLocale referentialLocale, ObjectSchoolEstimateDto dto, ObjectSchoolEstimate entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTotalWeight(dto.getTotalWeight()); entity.setSpecies(toEntity(dto.getSpecies(), Species.class)); @@ -30,7 +30,7 @@ public class ObjectSchoolEstimateBinder extends DataBinderSupport<ObjectSchoolEs @Override public void copyToDto(ReferentialLocale referentialLocale, ObjectSchoolEstimate entity, ObjectSchoolEstimateDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setTotalWeight(entity.getTotalWeight()); dto.setSpecies(toReferentialReference(referentialLocale, entity.getSpecies(), SpeciesDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteBinder.java index 0fe15d9..3afb393 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteBinder.java @@ -20,10 +20,8 @@ public class RouteBinder extends DataBinderSupport<Route, RouteDto> { @Override public void copyToEntity(ReferentialLocale referentialLocale, RouteDto dto, Route entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); - entity.setComment(dto.getComment()); entity.setDate(dto.getDate()); entity.setStartLogValue(dto.getStartLogValue()); entity.setEndLogValue(dto.getEndLogValue()); @@ -35,15 +33,13 @@ public class RouteBinder extends DataBinderSupport<Route, RouteDto> { @Override public void copyToDto(ReferentialLocale referentialLocale, Route entity, RouteDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); - dto.setComment(entity.getComment()); dto.setDate(entity.getDate()); dto.setStartLogValue(entity.getStartLogValue()); dto.setEndLogValue(entity.getEndLogValue()); dto.setCheckLevel(entity.getCheckLevel()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + dto.setActivitySeine(toLinkedHashSetData(referentialLocale, entity.getActivitySeine(), ActivitySeineStubDto.class)); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteStubDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteStubDtoBinder.java index 6f5c765..7691089 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteStubDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/RouteStubDtoBinder.java @@ -18,7 +18,7 @@ public class RouteStubDtoBinder extends DataBinderSupport<Route, RouteStubDto> { @Override public void copyToEntity(ReferentialLocale referentialLocale, RouteStubDto dto, Route entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setDate(dto.getDate()); entity.setStartLogValue(dto.getStartLogValue()); @@ -29,7 +29,7 @@ public class RouteStubDtoBinder extends DataBinderSupport<Route, RouteStubDto> { @Override public void copyToDto(ReferentialLocale referentialLocale, Route entity, RouteStubDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setDate(entity.getDate()); dto.setStartLogValue(entity.getStartLogValue()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SchoolEstimateBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SchoolEstimateBinder.java index d5c908c..8fe6dde 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SchoolEstimateBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SchoolEstimateBinder.java @@ -21,7 +21,7 @@ public class SchoolEstimateBinder extends DataBinderSupport<SchoolEstimate, Scho @Override public void copyToEntity(ReferentialLocale referentialLocale, SchoolEstimateDto dto, SchoolEstimate entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTotalWeight(dto.getTotalWeight()); entity.setMeanWeight(dto.getMeanWeight()); @@ -32,7 +32,7 @@ public class SchoolEstimateBinder extends DataBinderSupport<SchoolEstimate, Scho @Override public void copyToDto(ReferentialLocale referentialLocale, SchoolEstimate entity, SchoolEstimateDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setTotalWeight(entity.getTotalWeight()); dto.setMeanWeight(entity.getMeanWeight()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SectionBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SectionBinder.java index 986d51e..4102ccb 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SectionBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SectionBinder.java @@ -21,7 +21,7 @@ public class SectionBinder extends DataBinderSupport<Section, SectionDto> { @Override public void copyToEntity(ReferentialLocale referentialLocale, SectionDto dto, Section entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSettingIdentifier(dto.getSettingIdentifier()); entity.setHaulingIdentifier(dto.getHaulingIdentifier()); @@ -32,7 +32,7 @@ public class SectionBinder extends DataBinderSupport<Section, SectionDto> { @Override public void copyToDto(ReferentialLocale referentialLocale, Section entity, SectionDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setSettingIdentifier(entity.getSettingIdentifier()); dto.setHaulingIdentifier(entity.getHaulingIdentifier()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SensorUsedBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SensorUsedBinder.java index 5df54cf..5983504 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SensorUsedBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SensorUsedBinder.java @@ -24,7 +24,7 @@ public class SensorUsedBinder extends DataBinderSupport<SensorUsed, SensorUsedDt @Override public void copyToEntity(ReferentialLocale referentialLocale, SensorUsedDto dto, SensorUsed entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setData(dto.getData()); entity.setDataFilename(dto.getDataFilename()); @@ -39,7 +39,7 @@ public class SensorUsedBinder extends DataBinderSupport<SensorUsed, SensorUsedDt @Override public void copyToDto(ReferentialLocale referentialLocale, SensorUsed entity, SensorUsedDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setData(entity.getData()); dto.setDataFilename(entity.getDataFilename()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineBinder.java index e1f1350..d25dace 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineBinder.java @@ -27,9 +27,7 @@ public class SetLonglineBinder extends DataBinderSupport<SetLongline, SetLonglin @Override public void copyToEntity(ReferentialLocale referentialLocale, SetLonglineDto dto, SetLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setHomeId(dto.getHomeId()); entity.setNumber(dto.getNumber()); @@ -74,9 +72,7 @@ public class SetLonglineBinder extends DataBinderSupport<SetLongline, SetLonglin @Override public void copyToDto(ReferentialLocale referentialLocale, SetLongline entity, SetLonglineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setHomeId(entity.getHomeId()); dto.setNumber(entity.getNumber()); @@ -110,7 +106,7 @@ public class SetLonglineBinder extends DataBinderSupport<SetLongline, SetLonglin dto.setHaulingEndLongitude(entity.getHaulingEndLongitude()); dto.setHaulingBreaks(entity.getHaulingBreaks()); dto.setMonitored(entity.getMonitored()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + dto.setSettingShape(toReferentialReference(referentialLocale, entity.getSettingShape(), SettingShapeDto.class)); dto.setLineType(toReferentialReference(referentialLocale, entity.getLineType(), LineTypeDto.class)); dto.setLightsticksType(toReferentialReference(referentialLocale, entity.getLightsticksType(), LightsticksTypeDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineCatchDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineCatchDtoBinder.java index 021db91..10dad09 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineCatchDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineCatchDtoBinder.java @@ -20,8 +20,7 @@ public class SetLonglineCatchDtoBinder extends DataBinderSupport<SetLongline, Se @Override public void copyToEntity(ReferentialLocale referentialLocale, SetLonglineCatchDto dto, SetLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); entity.setCatchLongline(toEntitySet(referentialLocale, dto.getCatchLongline(), CatchLongline.class, entity.getCatchLongline())); @@ -30,8 +29,7 @@ public class SetLonglineCatchDtoBinder extends DataBinderSupport<SetLongline, Se @Override public void copyToDto(ReferentialLocale referentialLocale, SetLongline entity, SetLonglineCatchDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); dto.setCatchLongline(toLinkedHashSetData(referentialLocale, entity.getCatchLongline(), CatchLonglineDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineDetailCompositionDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineDetailCompositionDtoBinder.java index 589287b..ad9a2b1 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineDetailCompositionDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineDetailCompositionDtoBinder.java @@ -20,8 +20,7 @@ public class SetLonglineDetailCompositionDtoBinder extends DataBinderSupport<Set @Override public void copyToEntity(ReferentialLocale referentialLocale, SetLonglineDetailCompositionDto dto, SetLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSection(toEntitySet(referentialLocale, dto.getSection(), Section.class, entity.getSection())); entity.setSettingStartTimeStamp(dto.getSettingStartTimeStamp()); @@ -37,8 +36,7 @@ public class SetLonglineDetailCompositionDtoBinder extends DataBinderSupport<Set @Override public void copyToDto(ReferentialLocale referentialLocale, SetLongline entity, SetLonglineDetailCompositionDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); dto.setSection(toLinkedHashSetData(referentialLocale, entity.getSection(), SectionDto.class)); dto.setSettingStartTimeStamp(entity.getSettingStartTimeStamp()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineGlobalCompositionDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineGlobalCompositionDtoBinder.java index a94da46..f079563 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineGlobalCompositionDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineGlobalCompositionDtoBinder.java @@ -28,9 +28,7 @@ public class SetLonglineGlobalCompositionDtoBinder extends DataBinderSupport<Set @Override public void copyToEntity(ReferentialLocale referentialLocale, SetLonglineGlobalCompositionDto dto, SetLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setFloatlinesComposition(toEntityCollection(referentialLocale, dto.getFloatlinesComposition(), FloatlinesComposition.class, entity.getFloatlinesComposition())); entity.setBranchlinesComposition(toEntityCollection(referentialLocale, dto.getBranchlinesComposition(), BranchlinesComposition.class, entity.getBranchlinesComposition())); @@ -43,9 +41,7 @@ public class SetLonglineGlobalCompositionDtoBinder extends DataBinderSupport<Set @Override public void copyToDto(ReferentialLocale referentialLocale, SetLongline entity, SetLonglineGlobalCompositionDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setFloatlinesComposition(toLinkedHashSetData(referentialLocale, entity.getFloatlinesComposition(), FloatlinesCompositionDto.class)); dto.setBranchlinesComposition(toLinkedHashSetData(referentialLocale, entity.getBranchlinesComposition(), BranchlinesCompositionDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineStubDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineStubDtoBinder.java index 9fe3c24..11c6139 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineStubDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineStubDtoBinder.java @@ -24,7 +24,7 @@ public class SetLonglineStubDtoBinder extends DataBinderSupport<SetLongline, Set @Override public void copyToDto(ReferentialLocale referentialLocale, SetLongline entity, SetLonglineStubDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setHomeId(entity.getHomeId()); dto.setNumber(entity.getNumber()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineTdrDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineTdrDtoBinder.java index b4ad017..c4f3253 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineTdrDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetLonglineTdrDtoBinder.java @@ -18,8 +18,7 @@ public class SetLonglineTdrDtoBinder extends DataBinderSupport<SetLongline, SetL @Override public void copyToEntity(ReferentialLocale referentialLocale, SetLonglineTdrDto dto, SetLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSettingStartTimeStamp(dto.getSettingStartTimeStamp()); @@ -28,8 +27,7 @@ public class SetLonglineTdrDtoBinder extends DataBinderSupport<SetLongline, SetL @Override public void copyToDto(ReferentialLocale referentialLocale, SetLongline entity, SetLonglineTdrDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); dto.setSettingStartTimeStamp(entity.getSettingStartTimeStamp()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineBinder.java index 4cfbf59..824e1c0 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineBinder.java @@ -21,9 +21,7 @@ public class SetSeineBinder extends DataBinderSupport<SetSeine, SetSeineDto> { @Override public void copyToEntity(ReferentialLocale referentialLocale, SetSeineDto dto, SetSeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setStartTime(dto.getStartTime()); entity.setEndPursingTimeStamp(dto.getEndPursingTimeStamp()); @@ -48,9 +46,7 @@ public class SetSeineBinder extends DataBinderSupport<SetSeine, SetSeineDto> { @Override public void copyToDto(ReferentialLocale referentialLocale, SetSeine entity, SetSeineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setStartTime(entity.getStartTime()); dto.setEndPursingTimeStamp(entity.getEndPursingTimeStamp()); @@ -66,7 +62,7 @@ public class SetSeineBinder extends DataBinderSupport<SetSeine, SetSeineDto> { dto.setTargetDiscarded(entity.getTargetDiscarded()); dto.setNonTargetDiscarded(entity.getNonTargetDiscarded()); dto.setCurrentMeasureDepth(entity.getCurrentMeasureDepth()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + dto.setSchoolType(SCHOOL_TYPE_TO_DTO.apply(entity.getSchoolType())); dto.setReasonForNullSet(toReferentialReference(referentialLocale, entity.getReasonForNullSet(), ReasonForNullSetDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineNonTargetCatchDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineNonTargetCatchDtoBinder.java index 9637541..e5041b6 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineNonTargetCatchDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineNonTargetCatchDtoBinder.java @@ -20,7 +20,7 @@ public class SetSeineNonTargetCatchDtoBinder extends DataBinderSupport<SetSeine, @Override public void copyToEntity(ReferentialLocale referentialLocale, SetSeineNonTargetCatchDto dto, SetSeine entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setNonTargetCatch(toEntityCollection(referentialLocale, dto.getNonTargetCatch(), NonTargetCatch.class, entity.getNonTargetCatch())); @@ -29,7 +29,7 @@ public class SetSeineNonTargetCatchDtoBinder extends DataBinderSupport<SetSeine, @Override public void copyToDto(ReferentialLocale referentialLocale, SetSeine entity, SetSeineNonTargetCatchDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setNonTargetCatch(toLinkedHashSetData(referentialLocale, entity.getNonTargetCatch(), NonTargetCatchDto.class)); } diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineSchoolEstimateDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineSchoolEstimateDtoBinder.java index 30186cd..104b1fa 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineSchoolEstimateDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineSchoolEstimateDtoBinder.java @@ -20,9 +20,7 @@ public class SetSeineSchoolEstimateDtoBinder extends DataBinderSupport<SetSeine, @Override public void copyToEntity(ReferentialLocale referentialLocale, SetSeineSchoolEstimateDto dto, SetSeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSchoolEstimate(toEntityCollection(referentialLocale, dto.getSchoolEstimate(), SchoolEstimate.class, entity.getSchoolEstimate())); } @@ -30,9 +28,7 @@ public class SetSeineSchoolEstimateDtoBinder extends DataBinderSupport<SetSeine, @Override public void copyToDto(ReferentialLocale referentialLocale, SetSeine entity, SetSeineSchoolEstimateDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setSchoolEstimate(toLinkedHashSetData(referentialLocale, entity.getSchoolEstimate(), SchoolEstimateDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineTargetCatchDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineTargetCatchDtoBinder.java index 623e223..f4ef420 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineTargetCatchDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SetSeineTargetCatchDtoBinder.java @@ -20,8 +20,7 @@ public class SetSeineTargetCatchDtoBinder extends DataBinderSupport<SetSeine, Se @Override public void copyToEntity(ReferentialLocale referentialLocale, SetSeineTargetCatchDto dto, SetSeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTargetCatch(toEntityCollection(referentialLocale, dto.getTargetCatch(), TargetCatch.class, entity.getTargetCatch())); @@ -30,8 +29,7 @@ public class SetSeineTargetCatchDtoBinder extends DataBinderSupport<SetSeine, Se @Override public void copyToDto(ReferentialLocale referentialLocale, SetSeine entity, SetSeineTargetCatchDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); dto.setTargetCatch(toLinkedHashSetData(referentialLocale, entity.getTargetCatch(), TargetCatchDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SizeMeasureBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SizeMeasureBinder.java index 35c3bf0..7eebb80 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SizeMeasureBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/SizeMeasureBinder.java @@ -20,7 +20,7 @@ public class SizeMeasureBinder extends DataBinderSupport<SizeMeasure, SizeMeasur @Override public void copyToEntity(ReferentialLocale referentialLocale, SizeMeasureDto dto, SizeMeasure entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSize(dto.getSize()); entity.setSizeMeasureType(toEntity(dto.getSizeMeasureType(), SizeMeasureType.class)); @@ -31,7 +31,7 @@ public class SizeMeasureBinder extends DataBinderSupport<SizeMeasure, SizeMeasur @Override public void copyToDto(ReferentialLocale referentialLocale, SizeMeasure entity, SizeMeasureDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setSize(entity.getSize()); dto.setSizeMeasureType(toReferentialReference(referentialLocale, entity.getSizeMeasureType(), SizeMeasureTypeDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetCatchBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetCatchBinder.java index 33724dd..dd59de1 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetCatchBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetCatchBinder.java @@ -24,8 +24,7 @@ public class TargetCatchBinder extends DataBinderSupport<TargetCatch, TargetCatc @Override public void copyToEntity(ReferentialLocale referentialLocale, TargetCatchDto dto, TargetCatch entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setCatchWeight(dto.getCatchWeight()); entity.setWell(dto.getWell()); @@ -40,8 +39,7 @@ public class TargetCatchBinder extends DataBinderSupport<TargetCatch, TargetCatc @Override public void copyToDto(ReferentialLocale referentialLocale, TargetCatch entity, TargetCatchDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setCatchWeight(entity.getCatchWeight()); dto.setWell(entity.getWell()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetLengthBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetLengthBinder.java index 79338c6..348fac3 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetLengthBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetLengthBinder.java @@ -21,7 +21,7 @@ public class TargetLengthBinder extends DataBinderSupport<TargetLength, TargetLe @Override public void copyToEntity(ReferentialLocale referentialLocale, TargetLengthDto dto, TargetLength entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setSpecies(toEntity(dto.getSpecies(), Species.class)); entity.setMeasureType(dto.getMeasureType()); @@ -39,7 +39,7 @@ public class TargetLengthBinder extends DataBinderSupport<TargetLength, TargetLe @Override public void copyToDto(ReferentialLocale referentialLocale, TargetLength entity, TargetLengthDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setSpecies(toReferentialReference(referentialLocale, entity.getSpecies(), SpeciesDto.class)); dto.setMeasureType(entity.getMeasureType()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetSampleBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetSampleBinder.java index 0b5d176..b2a36ae 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetSampleBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TargetSampleBinder.java @@ -20,8 +20,7 @@ public class TargetSampleBinder extends DataBinderSupport<TargetSample, TargetSa @Override public void copyToEntity(ReferentialLocale referentialLocale, TargetSampleDto dto, TargetSample entity) { - entity.setTopiaId(dto.getId()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setNature(dto.getNature()); entity.setDiscarded(dto.getDiscarded()); @@ -32,8 +31,7 @@ public class TargetSampleBinder extends DataBinderSupport<TargetSample, TargetSa @Override public void copyToDto(ReferentialLocale referentialLocale, TargetSample entity, TargetSampleDto dto) { - dto.setId(entity.getTopiaId()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setNature(entity.getNature()); dto.setDiscarded(entity.getDiscarded()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TdrBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TdrBinder.java index 66ed5a4..92d1ca1 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TdrBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TdrBinder.java @@ -32,7 +32,7 @@ public class TdrBinder extends DataBinderSupport<Tdr, TdrDto> { @Override public void copyToEntity(ReferentialLocale referentialLocale, TdrDto dto, Tdr entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setHomeId(dto.getHomeId()); entity.setFloatline1Length(dto.getFloatline1Length()); @@ -66,7 +66,7 @@ public class TdrBinder extends DataBinderSupport<Tdr, TdrDto> { @Override public void copyToDto(ReferentialLocale referentialLocale, Tdr entity, TdrDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setHomeId(entity.getHomeId()); dto.setFloatline1Length(entity.getFloatline1Length()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TransmittingBuoyBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TransmittingBuoyBinder.java index cd1a70b..3fa5660 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TransmittingBuoyBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TransmittingBuoyBinder.java @@ -25,7 +25,7 @@ public class TransmittingBuoyBinder extends DataBinderSupport<TransmittingBuoy, @Override public void copyToEntity(ReferentialLocale referentialLocale, TransmittingBuoyDto dto, TransmittingBuoy entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setCode(dto.getCode()); entity.setBrand(dto.getBrand()); @@ -39,7 +39,7 @@ public class TransmittingBuoyBinder extends DataBinderSupport<TransmittingBuoy, @Override public void copyToDto(ReferentialLocale referentialLocale, TransmittingBuoy entity, TransmittingBuoyDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setCode(entity.getCode()); dto.setBrand(entity.getBrand()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineActivityDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineActivityDtoBinder.java index 5c39510..51b5b8e 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineActivityDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineActivityDtoBinder.java @@ -18,7 +18,7 @@ public class TripLonglineActivityDtoBinder extends DataBinderSupport<ActivityLon @Override public void copyToEntity(ReferentialLocale referentialLocale, TripLonglineActivityDto dto, ActivityLongline entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setTimeStamp(dto.getTimeStamp()); @@ -27,7 +27,7 @@ public class TripLonglineActivityDtoBinder extends DataBinderSupport<ActivityLon @Override public void copyToDto(ReferentialLocale referentialLocale, ActivityLongline entity, TripLonglineActivityDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setTimeStamp(entity.getTimeStamp()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineBinder.java index c12eab5..e238d37 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineBinder.java @@ -33,9 +33,7 @@ public class TripLonglineBinder extends DataBinderSupport<TripLongline, TripLong @Override public void copyToEntity(ReferentialLocale referentialLocale, TripLonglineDto dto, TripLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setStartDate(dto.getStartDate()); entity.setEndDate(dto.getEndDate()); @@ -57,9 +55,7 @@ public class TripLonglineBinder extends DataBinderSupport<TripLongline, TripLong @Override public void copyToDto(ReferentialLocale referentialLocale, TripLongline entity, TripLonglineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setStartDate(entity.getStartDate()); dto.setEndDate(entity.getEndDate()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineGearUseDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineGearUseDtoBinder.java index 4781322..fab4dba 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineGearUseDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripLonglineGearUseDtoBinder.java @@ -20,8 +20,7 @@ public class TripLonglineGearUseDtoBinder extends DataBinderSupport<TripLongline @Override public void copyToEntity(ReferentialLocale referentialLocale, TripLonglineGearUseDto dto, TripLongline entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); entity.setGearUseFeaturesLongline(toEntitySet(referentialLocale, dto.getGearUseFeaturesLongline(), GearUseFeaturesLongline.class, entity.getGearUseFeaturesLongline())); @@ -30,8 +29,7 @@ public class TripLonglineGearUseDtoBinder extends DataBinderSupport<TripLongline @Override public void copyToDto(ReferentialLocale referentialLocale, TripLongline entity, TripLonglineGearUseDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); dto.setGearUseFeaturesLongline(toLinkedHashSetData(referentialLocale, entity.getGearUseFeaturesLongline(), GearUseFeaturesLonglineDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineBinder.java index 946f0a2..0279961 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineBinder.java @@ -31,9 +31,7 @@ public class TripSeineBinder extends DataBinderSupport<TripSeine, TripSeineDto> @Override public void copyToEntity(ReferentialLocale referentialLocale, TripSeineDto dto, TripSeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); - entity.setComment(dto.getComment()); + copyDtoDataFieldsToEntity(dto, entity); entity.setStartDate(dto.getStartDate()); entity.setEndDate(dto.getEndDate()); @@ -57,9 +55,7 @@ public class TripSeineBinder extends DataBinderSupport<TripSeine, TripSeineDto> @Override public void copyToDto(ReferentialLocale referentialLocale, TripSeine entity, TripSeineDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); - dto.setComment(entity.getComment()); + copyEntityDataFieldsToDto(entity, dto); dto.setStartDate(entity.getStartDate()); dto.setEndDate(entity.getEndDate()); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineGearUseDtoBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineGearUseDtoBinder.java index 1e21186..bc7720b 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineGearUseDtoBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/TripSeineGearUseDtoBinder.java @@ -20,8 +20,7 @@ public class TripSeineGearUseDtoBinder extends DataBinderSupport<TripSeine, Trip @Override public void copyToEntity(ReferentialLocale referentialLocale, TripSeineGearUseDto dto, TripSeine entity) { - entity.setTopiaId(dto.getId()); - entity.setLastUpdateDate(dto.getLastUpdateDate()); + copyDtoDataFieldsToEntity(dto, entity); entity.setGearUseFeaturesSeine(toEntityCollection(referentialLocale, dto.getGearUseFeaturesSeine(), GearUseFeaturesSeine.class, entity.getGearUseFeaturesSeine())); @@ -30,8 +29,7 @@ public class TripSeineGearUseDtoBinder extends DataBinderSupport<TripSeine, Trip @Override public void copyToDto(ReferentialLocale referentialLocale, TripSeine entity, TripSeineGearUseDto dto) { - dto.setId(entity.getTopiaId()); - dto.setLastUpdateDate(entity.getLastUpdateDate()); + copyEntityDataFieldsToDto(entity, dto); dto.setGearUseFeaturesSeine(toLinkedHashSetData(referentialLocale, entity.getGearUseFeaturesSeine(), GearUseFeaturesSeineDto.class)); diff --git a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/WeightMeasureBinder.java b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/WeightMeasureBinder.java index 4173926..81ccb85 100644 --- a/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/WeightMeasureBinder.java +++ b/observe-services-topia/src/main/java/fr/ird/observe/services/binder/data/WeightMeasureBinder.java @@ -20,7 +20,7 @@ public class WeightMeasureBinder extends DataBinderSupport<WeightMeasure, Weight @Override public void copyToEntity(ReferentialLocale referentialLocale, WeightMeasureDto dto, WeightMeasure entity) { - entity.setTopiaId(dto.getId()); + copyDtoDataFieldsToEntity(dto, entity); entity.setWeight(dto.getWeight()); entity.setWeightMeasureType(toEntity(dto.getWeightMeasureType(), WeightMeasureType.class)); @@ -30,7 +30,7 @@ public class WeightMeasureBinder extends DataBinderSupport<WeightMeasure, Weight @Override public void copyToDto(ReferentialLocale referentialLocale, WeightMeasure entity, WeightMeasureDto dto) { - dto.setId(entity.getTopiaId()); + copyEntityDataFieldsToDto(entity, dto); dto.setWeight(entity.getWeight()); dto.setWeightMeasureType(toReferentialReference(referentialLocale, entity.getWeightMeasureType(), WeightMeasureTypeDto.class)); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 1fc64bb2d669887492e84bf983ef42a192da667c Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 01:14:58 2015 +0100 Implantation efficace de réplication de données --- .../replication/ObserveReplicationAction.java | 127 +++++++++++ .../ObserveReplicationActionContext.java | 236 +++++++++++++++++++++ .../replication/ObserveReplicationContext.java | 48 +++++ .../replication/ObserveReplicationEngine.java | 58 +++++ .../ReplicationActionContextsBuilderSupport.java | 91 ++++++++ ...ipLonglineReplicationActionContextsBuilder.java | 174 +++++++++++++++ .../TripSeineReplicationActionContextsBuilder.java | 145 +++++++++++++ 7 files changed, 879 insertions(+) diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationAction.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationAction.java new file mode 100644 index 0000000..bcbaf44 --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationAction.java @@ -0,0 +1,127 @@ +package fr.ird.observe.entities.replication; + +import fr.ird.observe.ObserveTopiaPersistenceContext; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.nuiton.topia.persistence.support.TopiaSqlSupport; +import org.nuiton.topia.persistence.support.TopiaSqlWork; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveReplicationAction { + + /** Logger. */ + private static final Log log = LogFactory.getLog(ObserveReplicationAction.class); + + protected final ObserveReplicationActionContext replicationActionContext; + + public static void replicate(ObserveReplicationActionContext replicationActionContext) { + ObserveReplicationAction action = new ObserveReplicationAction(replicationActionContext); + action.replicate(); + } + + public ObserveReplicationAction(ObserveReplicationActionContext replicationActionContext) { + this.replicationActionContext = replicationActionContext; + } + + public void replicate() { + + ObserveTopiaPersistenceContext sourcePersistenceContext = replicationActionContext.getSourcePersistenceContext(); + TopiaSqlSupport sqlSupport = sourcePersistenceContext.getSqlSupport(); + ReadSqlWork sqlWork = new ReadSqlWork(); + sqlSupport.doSqlWork(sqlWork); + + } + + protected class ReadSqlWork implements TopiaSqlWork { + + @Override + public void execute(Connection connection) throws SQLException { + + ObserveTopiaPersistenceContext targetPersistenceContext = replicationActionContext.getTargetPersistenceContext(); + + try (PreparedStatement readStatement = replicationActionContext.createReadStatement(connection)) { + + readStatement.execute(); + CopySqlWork sqlWork = new CopySqlWork(readStatement); + targetPersistenceContext.getSqlSupport().doSqlWork(sqlWork); + + } + + } + + } + + protected class CopySqlWork implements TopiaSqlWork { + + protected final Statement readStatement; + + public CopySqlWork(Statement readStatement) { + this.readStatement = readStatement; + } + + @Override + public void execute(Connection connection) throws SQLException { + + ResultSet readResultSet = readStatement.getResultSet(); + + ResultSetMetaData readResultSetMetaData = readResultSet.getMetaData(); + int columnCount = readResultSetMetaData.getColumnCount(); + + int fetchSize = replicationActionContext.getFetchSize(); + String tableName = replicationActionContext.getFullyTableName(); + + try (PreparedStatement writeStatement = replicationActionContext.createWriteStatement(connection, readResultSetMetaData)) { + + + long index = 0; + while (readResultSet.next()) { + + copyRow(readResultSet, writeStatement, columnCount); + + if ((++index % fetchSize) == 0) { + + flush(writeStatement, tableName, index); + + } + } + + flush(writeStatement, tableName, index); + } + + } + + protected void copyRow(ResultSet readResultSet, PreparedStatement writeStatement, int columnCount) throws SQLException { + writeStatement.clearParameters(); + + if (log.isDebugEnabled()) { + log.debug("Copy " + readResultSet.getString(1)); + } + for (int i = 1; i <= columnCount; i++) { + Object object = readResultSet.getObject(i); + writeStatement.setObject(i, object); + } + writeStatement.addBatch(); + } + + protected void flush(PreparedStatement writeStatement, String tableName, long index) throws SQLException { + + if (log.isInfoEnabled()) { + log.info("Flush for : " + tableName + " (size: " + index + ")"); + } + writeStatement.executeBatch(); + writeStatement.clearBatch(); + + } + } +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationActionContext.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationActionContext.java new file mode 100644 index 0000000..a6da8ed --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationActionContext.java @@ -0,0 +1,236 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.Sets; +import fr.ird.observe.ObserveEntityEnum; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.util.LinkedHashSet; +import java.util.Set; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveReplicationActionContext { + + /** Logger. */ + private static final Log log = LogFactory.getLog(ObserveReplicationActionContext.class); + + protected final ObserveReplicationContext replicationContext; + + protected final ObserveReplicationActionContext parentActionContext; + + protected final Set<String> joinClauses; + + protected String whereClause; + + protected String fromClause; + + protected final String queryArg; + + protected final String schemaName; + + protected final String tableName; + + protected final String parentTableName; + + protected final int order; + + public static ObserveReplicationActionContext onJoin( + ObserveReplicationActionContext parentActionContext, + String tableName, + int order) { + + String schemaName = parentActionContext.schemaName; + + return new ObserveReplicationActionContext( + parentActionContext.replicationContext, + schemaName, + tableName, + parentActionContext, + parentActionContext.joinClauses, + parentActionContext.fromClause, + parentActionContext.whereClause, + parentActionContext.queryArg, + order + ); + + } + + public static ObserveReplicationActionContext onAssociationJoin( + ObserveReplicationActionContext parentActionContext, + String tableName, + int order) { + + String schemaName = parentActionContext.schemaName; + tableName = getAssociationTableName(tableName, parentActionContext.tableName); + + return new ObserveReplicationActionContext( + parentActionContext.replicationContext, + schemaName, + tableName, + parentActionContext, + parentActionContext.joinClauses, + parentActionContext.fromClause, + parentActionContext.whereClause, + parentActionContext.queryArg, + order + ); + } + + public static ObserveReplicationActionContext onTrip(ObserveReplicationContext replicationContext, + ObserveEntityEnum entityEnum, + String id, + int order) { + + + return new ObserveReplicationActionContext( + replicationContext, + entityEnum.dbSchemaName(), + entityEnum.dbTableName(), + null, + new LinkedHashSet<String>(), + null, + null, + id, + order); + } + + private ObserveReplicationActionContext(ObserveReplicationContext replicationContext, + String schemaName, + String tableName, + ObserveReplicationActionContext parentActionContext, + Set<String> joinClauses, + String fromClause, + String whereClause, + String queryArg, + int order) { + this.replicationContext = replicationContext; + this.parentActionContext = parentActionContext; + this.joinClauses = Sets.newLinkedHashSet(joinClauses); + this.fromClause = fromClause; + this.whereClause = whereClause; + this.queryArg = queryArg; + this.order = order; + this.parentTableName = parentActionContext == null ? null : parentActionContext.tableName; + this.schemaName = schemaName; + this.tableName = tableName; + } + + public ObserveTopiaPersistenceContext getSourcePersistenceContext() { + return replicationContext.getSourcePersistenceContext(); + } + + public ObserveTopiaPersistenceContext getTargetPersistenceContext() { + return replicationContext.getTargetPersistenceContext(); + } + + public int getFetchSize() { + return replicationContext.getFetchSize(); + } + + public String getTableName() { + return tableName; + } + + public String getFullyTableName() { + return schemaName + "." + tableName; + } + + public PreparedStatement createReadStatement(Connection connection) throws SQLException { + + StringBuilder sqlBuilder = new StringBuilder("SELECT " + tableName + ".*"); + + sqlBuilder.append(" FROM ").append(fromClause); + for (String joinClause : joinClauses) { + sqlBuilder.append(" ").append(joinClause); + } + sqlBuilder.append(" WHERE ").append(whereClause); + + String sql = sqlBuilder.toString(); + if (log.isInfoEnabled()) { + log.info("Read sql: " + sql); + } + PreparedStatement statement = connection.prepareStatement(sql); + statement.setString(1, queryArg); + statement.setFetchSize(replicationContext.getFetchSize()); + return statement; + } + + public PreparedStatement createWriteStatement(Connection connection, ResultSetMetaData readResultTatMetaData) throws SQLException { + + int columnCount = readResultTatMetaData.getColumnCount(); + + StringBuilder sqlBuilder = new StringBuilder("INSERT INTO "); + sqlBuilder.append(schemaName).append(".").append(tableName); + + StringBuilder columnNamesBuilder = new StringBuilder(); + StringBuilder argsBuilder = new StringBuilder(); + + columnNamesBuilder.append(" ").append(readResultTatMetaData.getColumnName(1)); + argsBuilder.append("?"); + + for (int i = 2; i <= columnCount; i++) { + + String columnName = readResultTatMetaData.getColumnName(i); + columnNamesBuilder.append(", ").append(columnName); + argsBuilder.append(", ?"); + } + + sqlBuilder.append("(") + .append(columnNamesBuilder) + .append(")") + .append("VALUES (") + .append(argsBuilder) + .append(")"); + + String sql = sqlBuilder.toString(); + if (log.isInfoEnabled()) { + log.info("Write sql: " + sql); + } + PreparedStatement statement = connection.prepareStatement(sql); + + return statement; + + } + + public void addInnerJoinClause() { + String joinClause = " INNER JOIN " + schemaName + "." + tableName + " " + tableName + " ON " + tableName + "." + parentTableName + " = " + parentTableName + ".topiaId"; + joinClauses.add(joinClause); + } + + public void addInverseInnerJoinClause() { + String joinClause = " INNER JOIN " + schemaName + "." + tableName + " " + tableName + " ON " + tableName + ".topiaId = " + parentTableName + "." + tableName; + joinClauses.add(joinClause); + } + + public void setWhereTopiaIdEqualsClause() { + this.whereClause = tableName + ".topiaid = ?"; + } + + public void setWhereJoinTopiaIdEqualsClause() { + this.whereClause = tableName + "." + parentTableName + " = ?"; + } + + public void setFromClause() { + this.fromClause = schemaName + "." + tableName + " " + tableName; + } + + protected static String getAssociationTableName(String tableName, String parentTableName) { + String associationTableName; + if (tableName.toLowerCase().compareTo(parentTableName.toLowerCase()) < 0) { + associationTableName = tableName + "_" + parentTableName; + } else { + associationTableName = parentTableName + "_" + tableName; + } + return associationTableName; + } + +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationContext.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationContext.java new file mode 100644 index 0000000..ff26576 --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationContext.java @@ -0,0 +1,48 @@ +package fr.ird.observe.entities.replication; + +import fr.ird.observe.ObserveTopiaApplicationContext; +import fr.ird.observe.ObserveTopiaPersistenceContext; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveReplicationContext { + + protected final ObserveTopiaApplicationContext sourceTopiaApplicationContext; + + protected final ObserveTopiaApplicationContext targetTopiaApplicationContext; + + protected final int fetchSize; + + protected ObserveTopiaPersistenceContext sourcePersistenceContext; + + protected ObserveTopiaPersistenceContext targetPersistenceContext; + + public ObserveReplicationContext(ObserveTopiaApplicationContext sourceTopiaApplicationContext, + ObserveTopiaApplicationContext targetTopiaApplicationContext, + int fetchSize) { + this.sourceTopiaApplicationContext = sourceTopiaApplicationContext; + this.targetTopiaApplicationContext = targetTopiaApplicationContext; + this.fetchSize=fetchSize; + } + + public ObserveTopiaPersistenceContext getSourcePersistenceContext() { + if (sourcePersistenceContext == null) { + sourcePersistenceContext = sourceTopiaApplicationContext.newPersistenceContext(); + } + return sourcePersistenceContext; + } + + public ObserveTopiaPersistenceContext getTargetPersistenceContext() { + if (targetPersistenceContext == null) { + targetPersistenceContext = targetTopiaApplicationContext.newPersistenceContext(); + } + return targetPersistenceContext; + } + + public int getFetchSize() { + return fetchSize; + } +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationEngine.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationEngine.java new file mode 100644 index 0000000..9a283bc --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationEngine.java @@ -0,0 +1,58 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableSet; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveReplicationEngine { + + /** Logger. */ + private static final Log log = LogFactory.getLog(ObserveReplicationEngine.class); + + protected final ObserveReplicationContext replicationContext; + + public ObserveReplicationEngine(ObserveReplicationContext replicationContext) { + this.replicationContext = replicationContext; + } + + public ImmutableSet<ObserveReplicationActionContext> replicateTripSeine(String id) { + + ImmutableSet<ObserveReplicationActionContext> actionContexts = TripSeineReplicationActionContextsBuilder + .of(replicationContext, id); + + execute(actionContexts); + + return actionContexts; + + } + + public ImmutableSet<ObserveReplicationActionContext> replicateTripLongline(String id) { + + ImmutableSet<ObserveReplicationActionContext> actionContexts = TripLonglineReplicationActionContextsBuilder + .of(replicationContext, id); + + execute(actionContexts); + + return actionContexts; + } + + protected void execute(ImmutableSet<ObserveReplicationActionContext> actionContexts) { + + for (ObserveReplicationActionContext actionContext : actionContexts) { + + if (log.isInfoEnabled()) { + log.info("Replicate: " + actionContext.tableName); + } + ObserveReplicationAction.replicate(actionContext); + } + + replicationContext.getTargetPersistenceContext().commit(); + + } + +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ReplicationActionContextsBuilderSupport.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ReplicationActionContextsBuilderSupport.java new file mode 100644 index 0000000..b7f9b3a --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ReplicationActionContextsBuilderSupport.java @@ -0,0 +1,91 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableSet; +import com.google.common.collect.Lists; +import fr.ird.observe.ObserveEntityEnum; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.util.LinkedHashMap; +import java.util.Map; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public abstract class ReplicationActionContextsBuilderSupport<Context extends ReplicationActionContextsBuilderSupport> { + + protected final ObserveReplicationContext replicationContext; + + protected final Map<String, ObserveReplicationActionContext> actionContexts; + + protected ReplicationActionContextsBuilderSupport(ObserveReplicationContext replicationContext) { + this.replicationContext = replicationContext; + this.actionContexts = new LinkedHashMap<>(); + } + + public ImmutableSet<ObserveReplicationActionContext> build() { + + ArrayList<ObserveReplicationActionContext> actionContextList = Lists.newArrayList(this.actionContexts.values()); + Collections.sort(actionContextList, new Comparator<ObserveReplicationActionContext>() { + + @Override + public int compare(ObserveReplicationActionContext o1, ObserveReplicationActionContext o2) { + return o1.order - o2.order; + } + }); + return ImmutableSet.copyOf(actionContextList); + } + + protected Context createFirstActionContext(ObserveEntityEnum entityEnum, String id) { + ObserveReplicationActionContext actionContext = + ObserveReplicationActionContext.onTrip( + replicationContext, + entityEnum, + id, + 0); + + actionContext.setFromClause(); + actionContext.setWhereTopiaIdEqualsClause(); + + registerActionContext(actionContext); + return (Context) this; + } + + protected ObserveReplicationActionContext createActionContext(ObserveEntityEnum parentEntityEnum, ObserveEntityEnum entityEnum, int order) { + + ObserveReplicationActionContext parentActionContext = getActionContext(parentEntityEnum); + + ObserveReplicationActionContext actionContext = + ObserveReplicationActionContext.onJoin(parentActionContext, + entityEnum.dbTableName(), + order); + registerActionContext(actionContext); + return actionContext; + } + + protected ObserveReplicationActionContext createAssociationActionContext(ObserveEntityEnum parentEntityEnum, String associationName, int order) { + + ObserveReplicationActionContext parentActionContext = getActionContext(parentEntityEnum); + + ObserveReplicationActionContext actionContext = + ObserveReplicationActionContext.onAssociationJoin(parentActionContext, + associationName, + order); + registerActionContext(actionContext); + return actionContext; + } + + protected ObserveReplicationActionContext getActionContext(ObserveEntityEnum entityEnum) { + String fullyTableName = entityEnum.dbSchemaName().toLowerCase() + "." + entityEnum.dbTableName().toLowerCase(); + ObserveReplicationActionContext parentactioncontext = actionContexts.get(fullyTableName); + return parentactioncontext; + } + + protected void registerActionContext(ObserveReplicationActionContext actionContext) { + actionContexts.put(actionContext.getFullyTableName(), actionContext); + } + +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripLonglineReplicationActionContextsBuilder.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripLonglineReplicationActionContextsBuilder.java new file mode 100644 index 0000000..90cfc5c --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripLonglineReplicationActionContextsBuilder.java @@ -0,0 +1,174 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableSet; +import fr.ird.observe.ObserveEntityEnum; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class TripLonglineReplicationActionContextsBuilder extends ReplicationActionContextsBuilderSupport<TripLonglineReplicationActionContextsBuilder> { + + public static ImmutableSet<ObserveReplicationActionContext> of(ObserveReplicationContext replicationContext, String tripId) { + return new TripLonglineReplicationActionContextsBuilder(replicationContext) + .createFirstActionContext(ObserveEntityEnum.TripLongline, tripId) + .addGearUseFeaturesActionContext() + .addGearUseFeatureMeasurementActionContext() + .addActivityActionContext() + .addSetActionContext() + .addEncounterActionContext() + .addSensorUsedActionContext() + .addTdrActionContext() + .addBaitsCompositionActionContext() + .addFloatlinesCompositionActionContext() + .addHooksCompositionActionContext() + .addBranchlinesCompositionActionContext() + .addCatchActionContext() + + .addSectionActionContext() + .addBasketActionContext() + .addBranchlineActionContext() + + .addSetMitigationTypeActionContext() + .addSizeMeasureActionContext() + .addWeightMeasureActionContext() + .addCatchPredatorActionContext() + .addTdrRecordActionContext() + .addTdrSpeciesActionContext() + .build(); + } + + protected TripLonglineReplicationActionContextsBuilder(ObserveReplicationContext replicationContext) { + super(replicationContext); + } + + public TripLonglineReplicationActionContextsBuilder addGearUseFeaturesActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripLongline, ObserveEntityEnum.GearUseFeaturesLongline, 1); + actionContext.setFromClause(); + actionContext.setWhereJoinTopiaIdEqualsClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addGearUseFeatureMeasurementActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.GearUseFeaturesLongline, ObserveEntityEnum.GearUseFeaturesMeasurementLongline, 2); + actionContext.addInnerJoinClause(); + return this; + } + + + public TripLonglineReplicationActionContextsBuilder addSetActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.SetLongline, 10); + actionContext.addInverseInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addActivityActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripLongline, ObserveEntityEnum.ActivityLongline, 11); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addEncounterActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.Encounter, 12); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addSensorUsedActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.SensorUsed, 13); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addTdrActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.Tdr, 20); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addBaitsCompositionActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.BaitsComposition, 21); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addFloatlinesCompositionActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.FloatlinesComposition, 22); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addHooksCompositionActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.HooksComposition, 23); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addBranchlinesCompositionActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.BranchlinesComposition, 24); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addSectionActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.Section, 25); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addBasketActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Section, ObserveEntityEnum.Basket, 26); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addBranchlineActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Basket, ObserveEntityEnum.Branchline, 27); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addCatchActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.CatchLongline, 28); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addSetMitigationTypeActionContext() { + ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.MitigationType.name(), 29); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addSizeMeasureActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.CatchLongline, ObserveEntityEnum.SizeMeasure, 30); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addWeightMeasureActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.CatchLongline, ObserveEntityEnum.WeightMeasure, 31); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addCatchPredatorActionContext() { + ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.CatchLongline, "Predator", 32); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addTdrRecordActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Tdr, ObserveEntityEnum.TdrRecord, 40); + actionContext.addInnerJoinClause(); + return this; + } + + public TripLonglineReplicationActionContextsBuilder addTdrSpeciesActionContext() { + ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.Tdr, ObserveEntityEnum.Species.name(), 41); + actionContext.addInnerJoinClause(); + return this; + } + +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripSeineReplicationActionContextsBuilder.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripSeineReplicationActionContextsBuilder.java new file mode 100644 index 0000000..9f92fce --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripSeineReplicationActionContextsBuilder.java @@ -0,0 +1,145 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableSet; +import fr.ird.observe.ObserveEntityEnum; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class TripSeineReplicationActionContextsBuilder extends ReplicationActionContextsBuilderSupport<TripSeineReplicationActionContextsBuilder> { + + public static ImmutableSet<ObserveReplicationActionContext> of(ObserveReplicationContext replicationContext, String tripId) { + return new TripSeineReplicationActionContextsBuilder(replicationContext) + .createFirstActionContext(ObserveEntityEnum.TripSeine, tripId) + .addGearUseFeaturesActionContext() + .addGearUseFeatureMeasurementActionContext() + .addRouteActionContext() + .addActivityActionContext() + .addActivityObservedSystemActionContext() + .addSetActionContext() + .addSchoolEstimateActionContext() + .addNonTargetCatchActionContext() + .addNonTargetSampleActionContext() + .addNonTargetLengthActionContext() + .addTargetCatchActionContext() + .addTargetSampleActionContext() + .addTargetLengthActionContext() + + .addFloatingObjectActionContext() + .addObjectObservedSpeciesActionContext() + .addObjectSchoolEstimateActionContext() + .addTransmittingBuoyActionContext() + .build(); + } + + protected TripSeineReplicationActionContextsBuilder(ObserveReplicationContext replicationContext) { + super(replicationContext); + } + + public TripSeineReplicationActionContextsBuilder addGearUseFeaturesActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripSeine, ObserveEntityEnum.GearUseFeaturesSeine, 1); + actionContext.setFromClause(); + actionContext.setWhereJoinTopiaIdEqualsClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addGearUseFeatureMeasurementActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.GearUseFeaturesSeine, ObserveEntityEnum.GearUseFeaturesMeasurementSeine, 2); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addRouteActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripSeine, ObserveEntityEnum.Route, 3); + actionContext.setFromClause(); + actionContext.setWhereJoinTopiaIdEqualsClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addSetActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.SetSeine, 4); + actionContext.addInverseInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addActivityActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Route, ObserveEntityEnum.ActivitySeine, 5); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addActivityObservedSystemActionContext() { + ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.ActivitySeine, "ObservedSystem", 6); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addFloatingObjectActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.FloatingObject, 7); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addSchoolEstimateActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.SchoolEstimate, 10); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addNonTargetCatchActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.NonTargetCatch, 11); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addNonTargetSampleActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.NonTargetSample, 12); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addNonTargetLengthActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.NonTargetSample, ObserveEntityEnum.NonTargetLength, 13); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addTargetCatchActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.TargetCatch, 14); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addTargetSampleActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.TargetSample, 15); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addTargetLengthActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TargetSample, ObserveEntityEnum.TargetLength, 16); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addObjectObservedSpeciesActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.ObjectObservedSpecies, 20); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addObjectSchoolEstimateActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.ObjectSchoolEstimate, 21); + actionContext.addInnerJoinClause(); + return this; + } + + public TripSeineReplicationActionContextsBuilder addTransmittingBuoyActionContext() { + ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.TransmittingBuoy, 22); + actionContext.addInnerJoinClause(); + return this; + } + +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 4747da54faf040e78ac3f464c1368c97cee26f7b Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 01:18:28 2015 +0100 Ajout de fixtures --- .../fr/ird/observe/services/service/AbstractServiceTopiaTest.java | 8 ++++++++ .../longline/SetLonglineDetailCompositionServiceTopiaTest.java | 8 +++----- 2 files changed, 11 insertions(+), 5 deletions(-) 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 cfc5c0d..b39899d 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 @@ -36,6 +36,14 @@ public class AbstractServiceTopiaTest { public static final String PROGRAM_ID = "fr.ird.observe.entities.referentiel.Program#1239832686262#0.31033946454061234"; + public static final String TRIP_LONGLINE_ID_1 = "fr.ird.observe.entities.longline.TripLongline#1429538088091#0.763886003987864"; + + public static final String TRIP_LONGLINE_ID_2 = "fr.ird.observe.entities.longline.TripLongline#1429540363472#0.517173705156893"; + + public static final String TRIP_LONGLINE_ID_3 = "fr.ird.observe.entities.longline.TripLongline#1429537115030#0.493692863034084"; + + public static final String SET_LONGLINE_ID_1 = "fr.ird.observe.entities.longline.SetLongline#1429538714446#0.0876020351424813"; + @ClassRule public static final ApplicationContextResource applicationContextResource = new ApplicationContextResource(); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java index e38cf70..8a1155b 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java @@ -55,8 +55,6 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic protected SetLonglineDetailCompositionService service; - public static final String SET_LONGLINE_ID = "fr.ird.observe.entities.longline.SetLongline#1429538714446#0.0876020351424813"; - @Before public void setUp() throws Exception { @@ -67,7 +65,7 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic @Test public void loadToEditTest() { - Form<SetLonglineDetailCompositionDto> form = service.loadForm(SET_LONGLINE_ID); + Form<SetLonglineDetailCompositionDto> form = service.loadForm(SET_LONGLINE_ID_1); Assert.assertNotNull(form); @@ -95,7 +93,7 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic @CopyDatabaseConfiguration public void saveTest() { - Form<SetLonglineDetailCompositionDto> form = service.loadForm(SET_LONGLINE_ID); + Form<SetLonglineDetailCompositionDto> form = service.loadForm(SET_LONGLINE_ID_1); SetLonglineDetailCompositionDto compositionDto = form.getObject(); SectionDto sectionDto = compositionDto.getSection(4); @@ -145,7 +143,7 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic service.save(compositionDto); - SetLongline setLongline = dataSourceResource.findById(SetLongline.class, SET_LONGLINE_ID); + SetLongline setLongline = dataSourceResource.findById(SetLongline.class, SET_LONGLINE_ID_1); Section section = setLongline.getSectionByTopiaId(sectionDto.getId()); Assert.assertEquals(sectionDto.getSettingIdentifier(), section.getSettingIdentifier()); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 026b9a6b880b3776b33e313f3795d4d454162905 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 01:18:50 2015 +0100 Ajout d'un tes de replication de données --- .../replication/ObserveReplicationEngineTest.java | 314 +++++++++++++++++++++ 1 file changed, 314 insertions(+) diff --git a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ObserveReplicationEngineTest.java b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ObserveReplicationEngineTest.java new file mode 100644 index 0000000..bde6b91 --- /dev/null +++ b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ObserveReplicationEngineTest.java @@ -0,0 +1,314 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableSet; +import fr.ird.observe.ObserveTopiaApplicationContext; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import fr.ird.observe.services.ObserveTopiaApplicationContextFactory; +import fr.ird.observe.services.configuration.ObserveDataSourceConfigurationTopiaH2; +import fr.ird.observe.services.service.AbstractServiceTopiaTest; +import fr.ird.observe.services.service.DataSourceService; +import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.spi.DatabaseNameConfiguration; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import org.nuiton.topia.persistence.support.TopiaSqlQuery; + +import java.io.File; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Map; + +/** + * Created on 28/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveReplicationEngineTest extends AbstractServiceTopiaTest { + + protected DataSourceService service; + + private static final ImmutableMap<String, Long> TRIP_SEINE_1_RESULT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.trip", 1L) + .put("observe_seine.gearusefeatures", 2L) + .put("observe_seine.gearusefeaturesmeasurement", 4L) + .put("observe_seine.route", 34L) + .put("observe_seine.set", 35L) + .put("observe_seine.activity", 862L) + .put("observe_seine.observedsystem", 21L) + .put("observe_seine.floatingobject", 54L) + .put("observe_seine.schoolestimate", 27L) + .put("observe_seine.nontargetcatch", 109L) + .put("observe_seine.nontargetsample", 20L) + .put("observe_seine.nontargetlength", 767L) + .put("observe_seine.targetcatch", 73L) + .put("observe_seine.targetsample", 10L) + .put("observe_seine.targetlength", 85L) + .put("observe_seine.objectobservedspecies", 3L) + .put("observe_seine.objectschoolestimate", 1L) + .put("observe_seine.transmittingbuoy", 62L) + .put("observe_seine.activity_observedsystem", 1182L) + .build(); + + private static final ImmutableMap<String, Long> TRIP_SEINE_2_RESULT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.trip", 1L) + .put("observe_seine.gearusefeatures", 0L) + .put("observe_seine.gearusefeaturesmeasurement", 0L) + .put("observe_seine.route", 46L) + .put("observe_seine.set", 42L) + .put("observe_seine.activity", 657L) + .put("observe_seine.observedsystem", 21L) + .put("observe_seine.activity_observedsystem", 652L) + .put("observe_seine.floatingobject", 50L) + .put("observe_seine.schoolestimate", 10L) + .put("observe_seine.nontargetcatch", 112L) + .put("observe_seine.nontargetsample", 19L) + .put("observe_seine.nontargetlength", 242L) + .put("observe_seine.targetcatch", 73L) + .put("observe_seine.targetsample", 0L) + .put("observe_seine.targetlength", 0L) + .put("observe_seine.objectobservedspecies", 2L) + .put("observe_seine.objectschoolestimate", 3L) + .put("observe_seine.transmittingbuoy", 68L) + .build(); + + private static final ImmutableMap<String, Long> TRIP_SEINE_3_RESULT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.trip", 1L) + .put("observe_seine.gearusefeatures", 0L) + .put("observe_seine.gearusefeaturesmeasurement", 0L) + .put("observe_seine.route", 45L) + .put("observe_seine.set", 35L) + .put("observe_seine.activity", 816L) + .put("observe_seine.observedsystem", 21L) + .put("observe_seine.floatingobject", 41L) + .put("observe_seine.schoolestimate", 35L) + .put("observe_seine.nontargetcatch", 104L) + .put("observe_seine.nontargetsample", 16L) + .put("observe_seine.nontargetlength", 1193L) + .put("observe_seine.targetcatch", 118L) + .put("observe_seine.targetsample", 14L) + .put("observe_seine.targetlength", 53L) + .put("observe_seine.objectobservedspecies", 0L) + .put("observe_seine.objectschoolestimate", 24L) + .put("observe_seine.transmittingbuoy", 39L) + .put("observe_seine.activity_observedsystem", 321L) + .build(); + + private static final ImmutableMap<String, Long> TRIP_LONGLINE_1_RESULT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.trip", 1L) + .put("observe_longline.set", 13L) + .put("observe_longline.activity", 13L) + .put("observe_longline.gearusefeatures", 0L) + .put("observe_longline.gearusefeaturesmeasurement", 0L) + .put("observe_longline.encounter", 27L) + .put("observe_longline.sensorused", 0L) + .put("observe_longline.tdr", 0L) + .put("observe_longline.baitscomposition", 13L) + .put("observe_longline.floatlinescomposition", 65L) + .put("observe_longline.hookscomposition", 39L) + .put("observe_longline.branchlinescomposition", 13L) + .put("observe_longline.section", 234L) + .put("observe_longline.basket", 3042L) + .put("observe_longline.branchline", 18252L) + .put("observe_longline.catch", 435L) + .put("observe_longline.catch_predator", 49L) + .put("observe_longline.mitigationtype", 15L) + .put("observe_longline.sizemeasure", 340L) + .put("observe_longline.weightmeasure", 0L) + .put("observe_longline.tdrrecord", 0L) + .put("observe_longline.species_tdr", 0L) + .put("observe_longline.mitigationtype_set", 0L) + .build(); + + private static final ImmutableMap<String, Long> TRIP_LONGLINE_2_RESULT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.trip", 1L) + .put("observe_longline.set", 5L) + .put("observe_longline.activity", 5L) + .put("observe_longline.gearusefeatures", 0L) + .put("observe_longline.gearusefeaturesmeasurement", 0L) + .put("observe_longline.encounter", 3L) + .put("observe_longline.sensorused", 0L) + .put("observe_longline.tdr", 0L) + .put("observe_longline.baitscomposition", 10L) + .put("observe_longline.floatlinescomposition", 0L) + .put("observe_longline.hookscomposition", 10L) + .put("observe_longline.branchlinescomposition", 2L) + .put("observe_longline.section", 95L) + .put("observe_longline.basket", 1140L) + .put("observe_longline.branchline", 6840L) + .put("observe_longline.catch", 152L) + .put("observe_longline.mitigationtype", 15L) + .put("observe_longline.sizemeasure", 116L) + .put("observe_longline.weightmeasure", 0L) + .put("observe_longline.tdrrecord", 0L) + .put("observe_longline.species_tdr", 0L) + .put("observe_longline.mitigationtype_set", 0L) + .put("observe_longline.catch_predator", 9L) + .build(); + + private static final ImmutableMap<String, Long> TRIP_LONGLINE_3_RESULT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.trip", 1L) + .put("observe_longline.set", 14L) + .put("observe_longline.activity", 14L) + .put("observe_longline.gearusefeatures", 0L) + .put("observe_longline.gearusefeaturesmeasurement", 0L) + .put("observe_longline.encounter", 12L) + .put("observe_longline.sensorused", 0L) + .put("observe_longline.tdr", 0L) + .put("observe_longline.baitscomposition", 14L) + .put("observe_longline.floatlinescomposition", 36L) + .put("observe_longline.hookscomposition", 42L) + .put("observe_longline.branchlinescomposition", 14L) + .put("observe_longline.section", 243L) + .put("observe_longline.basket", 3229L) + .put("observe_longline.branchline", 19374L) + .put("observe_longline.catch", 677L) + .put("observe_longline.MitigationType_set", 0L) + .put("observe_longline.sizemeasure", 647L) + .put("observe_longline.weightmeasure", 0L) + .put("observe_longline.catch_Predator", 25L) + .put("observe_longline.tdrrecord", 0L) + .put("observe_longline.Species_tdr", 0L) + .build(); + + protected ObserveReplicationEngine engine; + + protected ObserveReplicationContext replicationContext; + + protected ObserveTopiaApplicationContext targetTopiaApplicationContext; + + protected ObserveTopiaApplicationContext sourceTopiaApplicationContext; + + @Before + public void setUp() throws Exception { + service = dataSourceResource.newService(DataSourceService.class); + + File targetDatabaseDirectory = new File(dataSourceResource.getTestDirectory(), "targetReplication"); + ObserveDataSourceConfigurationTopiaH2 targetTopiaConfiguration = applicationContextResource.createDataSource(dataSourceResource.getDbVersion(), DatabaseName.referentiel.name(), targetDatabaseDirectory); + + targetTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext(targetTopiaConfiguration); + + sourceTopiaApplicationContext = dataSourceResource.getTopiaApplicationContext(); + + replicationContext = new ObserveReplicationContext(sourceTopiaApplicationContext, targetTopiaApplicationContext, 1000); + engine = new ObserveReplicationEngine(replicationContext); + + } + + @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) + @Test + public void testReplicateTripSeine1() throws Exception { + testTripSeine(engine, TRIP_SEINE_ID_1, TRIP_SEINE_1_RESULT); + } + + @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) + @Test + public void testReplicateTripSeine2() throws Exception { + testTripSeine(engine, TRIP_SEINE_ID_2, TRIP_SEINE_2_RESULT); + } + + @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) + @Test + public void testReplicateTripSeine3() throws Exception { + testTripSeine(engine, TRIP_SEINE_ID_3, TRIP_SEINE_3_RESULT); + } + + @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) + @Test + public void testReplicateTripLonline1() throws Exception { + testTripLongline(engine, TRIP_LONGLINE_ID_1, TRIP_LONGLINE_1_RESULT); + } + + @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) + @Test + public void testReplicateTripLonline2() throws Exception { + testTripLongline(engine, TRIP_LONGLINE_ID_2, TRIP_LONGLINE_2_RESULT); + } + + @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) + @Test + public void testReplicateTripLonline3() throws Exception { + testTripLongline(engine, TRIP_LONGLINE_ID_3, TRIP_LONGLINE_3_RESULT); + } + + protected void testTripSeine(ObserveReplicationEngine engine, String tripId, ImmutableMap<String, Long> expectedResults) { + + ImmutableSet<ObserveReplicationActionContext> actionContexts = engine.replicateTripSeine(tripId); + + assertReplicateTripResults(expectedResults, actionContexts); + + } + + protected void testTripLongline(ObserveReplicationEngine engine, String tripId, ImmutableMap<String, Long> expectedResults) { + + ImmutableSet<ObserveReplicationActionContext> actionContexts = engine.replicateTripLongline(tripId); + + assertReplicateTripResults(expectedResults, actionContexts); + + } + + private void assertReplicateTripResults(ImmutableMap<String, Long> expectedResults, ImmutableSet<ObserveReplicationActionContext> actionContexts) { + + try (ObserveTopiaPersistenceContext persistenceContext = targetTopiaApplicationContext.newPersistenceContext()) { + + for (ObserveReplicationActionContext actionContext : actionContexts) { + + String fullyTableName = actionContext.getFullyTableName(); + + if (!expectedResults.containsKey(fullyTableName.toLowerCase())) { + + CountTableSqlWork countQuery = new CountTableSqlWork(fullyTableName); + Long count = persistenceContext.getSqlSupport().findSingleResult(countQuery); + + System.out.println(fullyTableName + " , " + count); + } + + } + + for (Map.Entry<String, Long> entry : expectedResults.entrySet()) { + String fullyTableName = entry.getKey(); + Long expectedCount = entry.getValue(); + CountTableSqlWork countQuery = new CountTableSqlWork(fullyTableName); + Long count = persistenceContext.getSqlSupport().findSingleResult(countQuery); + + System.out.println("Found: " + fullyTableName + " , " + count); + Assert.assertEquals("Should have found " + expectedCount + " on " + fullyTableName + ", but was " + count, expectedCount, count); + + } + + } + } + + + protected class CountTableSqlWork extends TopiaSqlQuery<Long> { + + private final String fullyTableName; + + public CountTableSqlWork(String fullyTableName) { + this.fullyTableName = fullyTableName; + } + + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + String sql = "SELECT count(*) FROM " + fullyTableName; + PreparedStatement statement = connection.prepareStatement(sql); + + return statement; + } + + @Override + public Long prepareResult(ResultSet set) throws SQLException { + return set.getLong(1); + } + } + +} \ No newline at end of file -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit cec9b0be626a0cb4ae451b3aa4714c4849584571 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 21:48:02 2015 +0100 Correction de base de référentiels --- .../src/main/resources/db/5.0-3/referentiel.sql.gz | Bin 143337 -> 162896 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/observe-test-data/src/main/resources/db/5.0-3/referentiel.sql.gz b/observe-test-data/src/main/resources/db/5.0-3/referentiel.sql.gz index 508bb0a..613251c 100644 Binary files a/observe-test-data/src/main/resources/db/5.0-3/referentiel.sql.gz and b/observe-test-data/src/main/resources/db/5.0-3/referentiel.sql.gz differ -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 18717f0908d797e50d855b50938a78f465b8a7bc Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Dec 29 21:48:48 2015 +0100 Ajout d'une base vide pour les tests --- .../observe/services/service/MigrateTestsDatabases.java | 14 ++++++++++---- .../src/main/java/fr/ird/observe/test/DatabaseName.java | 1 + .../src/main/resources/db/5.0-3/empty.sql.gz | Bin 0 -> 7858 bytes 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/MigrateTestsDatabases.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/MigrateTestsDatabases.java index c67b4d5..1080b96 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/MigrateTestsDatabases.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/MigrateTestsDatabases.java @@ -34,22 +34,28 @@ public class MigrateTestsDatabases extends AbstractServiceTopiaTest { @DatabaseNameConfiguration(DatabaseName.referentiel) @Test public void migrateReferentielDb() throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { - migrateReferentielDb(TO_VERSION); + migrate(TO_VERSION); } @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) @Test public void migrateDataForTestSeineDb() throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { - migrateReferentielDb(TO_VERSION); + migrate(TO_VERSION); } @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) @Test public void migrateDataForTestLonglineDb() throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { - migrateReferentielDb(TO_VERSION); + migrate(TO_VERSION); } - protected void migrateReferentielDb(String toVersion) throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { + @DatabaseNameConfiguration(DatabaseName.empty) + @Test + public void migrateEmptyDb() throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { + migrate(TO_VERSION); + } + + protected void migrate(String toVersion) throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { String dbName = dataSourceResource.getDbName(); File databasesRootDirectory = dataSourceResource.getDataSourceConfiguration().getDatabaseFile(); diff --git a/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java b/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java index 289e554..338aaac 100644 --- a/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java +++ b/observe-test-data/src/main/java/fr/ird/observe/test/DatabaseName.java @@ -6,6 +6,7 @@ package fr.ird.observe.test; * @author Tony Chemit - chemit@codelutin.com */ public enum DatabaseName { + empty, referentiel, dataForTestLongline, dataSourceTest, dataForTestSeine diff --git a/observe-test-data/src/main/resources/db/5.0-3/empty.sql.gz b/observe-test-data/src/main/resources/db/5.0-3/empty.sql.gz new file mode 100644 index 0000000..6e0d66c Binary files /dev/null and b/observe-test-data/src/main/resources/db/5.0-3/empty.sql.gz differ -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 610045103383d7119aefebc690178f2a012fabc2 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:53:25 2015 +0100 Utilisation du service topia pour la réplication --- .../replication/ObserveReplicationAction.java | 127 ----------- .../ObserveReplicationActionContext.java | 236 --------------------- .../replication/ObserveReplicationContext.java | 48 ----- .../replication/ObserveReplicationEngine.java | 58 ----- .../replication/ObserveReplicationTables.java | 169 +++++++++++++++ .../ReplicationActionContextsBuilderSupport.java | 91 -------- ...ipLonglineReplicationActionContextsBuilder.java | 174 --------------- .../TripSeineReplicationActionContextsBuilder.java | 145 ------------- 8 files changed, 169 insertions(+), 879 deletions(-) diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationAction.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationAction.java deleted file mode 100644 index bcbaf44..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationAction.java +++ /dev/null @@ -1,127 +0,0 @@ -package fr.ird.observe.entities.replication; - -import fr.ird.observe.ObserveTopiaPersistenceContext; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.nuiton.topia.persistence.support.TopiaSqlSupport; -import org.nuiton.topia.persistence.support.TopiaSqlWork; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.ResultSetMetaData; -import java.sql.SQLException; -import java.sql.Statement; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class ObserveReplicationAction { - - /** Logger. */ - private static final Log log = LogFactory.getLog(ObserveReplicationAction.class); - - protected final ObserveReplicationActionContext replicationActionContext; - - public static void replicate(ObserveReplicationActionContext replicationActionContext) { - ObserveReplicationAction action = new ObserveReplicationAction(replicationActionContext); - action.replicate(); - } - - public ObserveReplicationAction(ObserveReplicationActionContext replicationActionContext) { - this.replicationActionContext = replicationActionContext; - } - - public void replicate() { - - ObserveTopiaPersistenceContext sourcePersistenceContext = replicationActionContext.getSourcePersistenceContext(); - TopiaSqlSupport sqlSupport = sourcePersistenceContext.getSqlSupport(); - ReadSqlWork sqlWork = new ReadSqlWork(); - sqlSupport.doSqlWork(sqlWork); - - } - - protected class ReadSqlWork implements TopiaSqlWork { - - @Override - public void execute(Connection connection) throws SQLException { - - ObserveTopiaPersistenceContext targetPersistenceContext = replicationActionContext.getTargetPersistenceContext(); - - try (PreparedStatement readStatement = replicationActionContext.createReadStatement(connection)) { - - readStatement.execute(); - CopySqlWork sqlWork = new CopySqlWork(readStatement); - targetPersistenceContext.getSqlSupport().doSqlWork(sqlWork); - - } - - } - - } - - protected class CopySqlWork implements TopiaSqlWork { - - protected final Statement readStatement; - - public CopySqlWork(Statement readStatement) { - this.readStatement = readStatement; - } - - @Override - public void execute(Connection connection) throws SQLException { - - ResultSet readResultSet = readStatement.getResultSet(); - - ResultSetMetaData readResultSetMetaData = readResultSet.getMetaData(); - int columnCount = readResultSetMetaData.getColumnCount(); - - int fetchSize = replicationActionContext.getFetchSize(); - String tableName = replicationActionContext.getFullyTableName(); - - try (PreparedStatement writeStatement = replicationActionContext.createWriteStatement(connection, readResultSetMetaData)) { - - - long index = 0; - while (readResultSet.next()) { - - copyRow(readResultSet, writeStatement, columnCount); - - if ((++index % fetchSize) == 0) { - - flush(writeStatement, tableName, index); - - } - } - - flush(writeStatement, tableName, index); - } - - } - - protected void copyRow(ResultSet readResultSet, PreparedStatement writeStatement, int columnCount) throws SQLException { - writeStatement.clearParameters(); - - if (log.isDebugEnabled()) { - log.debug("Copy " + readResultSet.getString(1)); - } - for (int i = 1; i <= columnCount; i++) { - Object object = readResultSet.getObject(i); - writeStatement.setObject(i, object); - } - writeStatement.addBatch(); - } - - protected void flush(PreparedStatement writeStatement, String tableName, long index) throws SQLException { - - if (log.isInfoEnabled()) { - log.info("Flush for : " + tableName + " (size: " + index + ")"); - } - writeStatement.executeBatch(); - writeStatement.clearBatch(); - - } - } -} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationActionContext.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationActionContext.java deleted file mode 100644 index a6da8ed..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationActionContext.java +++ /dev/null @@ -1,236 +0,0 @@ -package fr.ird.observe.entities.replication; - -import com.google.common.collect.Sets; -import fr.ird.observe.ObserveEntityEnum; -import fr.ird.observe.ObserveTopiaPersistenceContext; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSetMetaData; -import java.sql.SQLException; -import java.util.LinkedHashSet; -import java.util.Set; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class ObserveReplicationActionContext { - - /** Logger. */ - private static final Log log = LogFactory.getLog(ObserveReplicationActionContext.class); - - protected final ObserveReplicationContext replicationContext; - - protected final ObserveReplicationActionContext parentActionContext; - - protected final Set<String> joinClauses; - - protected String whereClause; - - protected String fromClause; - - protected final String queryArg; - - protected final String schemaName; - - protected final String tableName; - - protected final String parentTableName; - - protected final int order; - - public static ObserveReplicationActionContext onJoin( - ObserveReplicationActionContext parentActionContext, - String tableName, - int order) { - - String schemaName = parentActionContext.schemaName; - - return new ObserveReplicationActionContext( - parentActionContext.replicationContext, - schemaName, - tableName, - parentActionContext, - parentActionContext.joinClauses, - parentActionContext.fromClause, - parentActionContext.whereClause, - parentActionContext.queryArg, - order - ); - - } - - public static ObserveReplicationActionContext onAssociationJoin( - ObserveReplicationActionContext parentActionContext, - String tableName, - int order) { - - String schemaName = parentActionContext.schemaName; - tableName = getAssociationTableName(tableName, parentActionContext.tableName); - - return new ObserveReplicationActionContext( - parentActionContext.replicationContext, - schemaName, - tableName, - parentActionContext, - parentActionContext.joinClauses, - parentActionContext.fromClause, - parentActionContext.whereClause, - parentActionContext.queryArg, - order - ); - } - - public static ObserveReplicationActionContext onTrip(ObserveReplicationContext replicationContext, - ObserveEntityEnum entityEnum, - String id, - int order) { - - - return new ObserveReplicationActionContext( - replicationContext, - entityEnum.dbSchemaName(), - entityEnum.dbTableName(), - null, - new LinkedHashSet<String>(), - null, - null, - id, - order); - } - - private ObserveReplicationActionContext(ObserveReplicationContext replicationContext, - String schemaName, - String tableName, - ObserveReplicationActionContext parentActionContext, - Set<String> joinClauses, - String fromClause, - String whereClause, - String queryArg, - int order) { - this.replicationContext = replicationContext; - this.parentActionContext = parentActionContext; - this.joinClauses = Sets.newLinkedHashSet(joinClauses); - this.fromClause = fromClause; - this.whereClause = whereClause; - this.queryArg = queryArg; - this.order = order; - this.parentTableName = parentActionContext == null ? null : parentActionContext.tableName; - this.schemaName = schemaName; - this.tableName = tableName; - } - - public ObserveTopiaPersistenceContext getSourcePersistenceContext() { - return replicationContext.getSourcePersistenceContext(); - } - - public ObserveTopiaPersistenceContext getTargetPersistenceContext() { - return replicationContext.getTargetPersistenceContext(); - } - - public int getFetchSize() { - return replicationContext.getFetchSize(); - } - - public String getTableName() { - return tableName; - } - - public String getFullyTableName() { - return schemaName + "." + tableName; - } - - public PreparedStatement createReadStatement(Connection connection) throws SQLException { - - StringBuilder sqlBuilder = new StringBuilder("SELECT " + tableName + ".*"); - - sqlBuilder.append(" FROM ").append(fromClause); - for (String joinClause : joinClauses) { - sqlBuilder.append(" ").append(joinClause); - } - sqlBuilder.append(" WHERE ").append(whereClause); - - String sql = sqlBuilder.toString(); - if (log.isInfoEnabled()) { - log.info("Read sql: " + sql); - } - PreparedStatement statement = connection.prepareStatement(sql); - statement.setString(1, queryArg); - statement.setFetchSize(replicationContext.getFetchSize()); - return statement; - } - - public PreparedStatement createWriteStatement(Connection connection, ResultSetMetaData readResultTatMetaData) throws SQLException { - - int columnCount = readResultTatMetaData.getColumnCount(); - - StringBuilder sqlBuilder = new StringBuilder("INSERT INTO "); - sqlBuilder.append(schemaName).append(".").append(tableName); - - StringBuilder columnNamesBuilder = new StringBuilder(); - StringBuilder argsBuilder = new StringBuilder(); - - columnNamesBuilder.append(" ").append(readResultTatMetaData.getColumnName(1)); - argsBuilder.append("?"); - - for (int i = 2; i <= columnCount; i++) { - - String columnName = readResultTatMetaData.getColumnName(i); - columnNamesBuilder.append(", ").append(columnName); - argsBuilder.append(", ?"); - } - - sqlBuilder.append("(") - .append(columnNamesBuilder) - .append(")") - .append("VALUES (") - .append(argsBuilder) - .append(")"); - - String sql = sqlBuilder.toString(); - if (log.isInfoEnabled()) { - log.info("Write sql: " + sql); - } - PreparedStatement statement = connection.prepareStatement(sql); - - return statement; - - } - - public void addInnerJoinClause() { - String joinClause = " INNER JOIN " + schemaName + "." + tableName + " " + tableName + " ON " + tableName + "." + parentTableName + " = " + parentTableName + ".topiaId"; - joinClauses.add(joinClause); - } - - public void addInverseInnerJoinClause() { - String joinClause = " INNER JOIN " + schemaName + "." + tableName + " " + tableName + " ON " + tableName + ".topiaId = " + parentTableName + "." + tableName; - joinClauses.add(joinClause); - } - - public void setWhereTopiaIdEqualsClause() { - this.whereClause = tableName + ".topiaid = ?"; - } - - public void setWhereJoinTopiaIdEqualsClause() { - this.whereClause = tableName + "." + parentTableName + " = ?"; - } - - public void setFromClause() { - this.fromClause = schemaName + "." + tableName + " " + tableName; - } - - protected static String getAssociationTableName(String tableName, String parentTableName) { - String associationTableName; - if (tableName.toLowerCase().compareTo(parentTableName.toLowerCase()) < 0) { - associationTableName = tableName + "_" + parentTableName; - } else { - associationTableName = parentTableName + "_" + tableName; - } - return associationTableName; - } - -} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationContext.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationContext.java deleted file mode 100644 index ff26576..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationContext.java +++ /dev/null @@ -1,48 +0,0 @@ -package fr.ird.observe.entities.replication; - -import fr.ird.observe.ObserveTopiaApplicationContext; -import fr.ird.observe.ObserveTopiaPersistenceContext; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class ObserveReplicationContext { - - protected final ObserveTopiaApplicationContext sourceTopiaApplicationContext; - - protected final ObserveTopiaApplicationContext targetTopiaApplicationContext; - - protected final int fetchSize; - - protected ObserveTopiaPersistenceContext sourcePersistenceContext; - - protected ObserveTopiaPersistenceContext targetPersistenceContext; - - public ObserveReplicationContext(ObserveTopiaApplicationContext sourceTopiaApplicationContext, - ObserveTopiaApplicationContext targetTopiaApplicationContext, - int fetchSize) { - this.sourceTopiaApplicationContext = sourceTopiaApplicationContext; - this.targetTopiaApplicationContext = targetTopiaApplicationContext; - this.fetchSize=fetchSize; - } - - public ObserveTopiaPersistenceContext getSourcePersistenceContext() { - if (sourcePersistenceContext == null) { - sourcePersistenceContext = sourceTopiaApplicationContext.newPersistenceContext(); - } - return sourcePersistenceContext; - } - - public ObserveTopiaPersistenceContext getTargetPersistenceContext() { - if (targetPersistenceContext == null) { - targetPersistenceContext = targetTopiaApplicationContext.newPersistenceContext(); - } - return targetPersistenceContext; - } - - public int getFetchSize() { - return fetchSize; - } -} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationEngine.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationEngine.java deleted file mode 100644 index 9a283bc..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationEngine.java +++ /dev/null @@ -1,58 +0,0 @@ -package fr.ird.observe.entities.replication; - -import com.google.common.collect.ImmutableSet; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class ObserveReplicationEngine { - - /** Logger. */ - private static final Log log = LogFactory.getLog(ObserveReplicationEngine.class); - - protected final ObserveReplicationContext replicationContext; - - public ObserveReplicationEngine(ObserveReplicationContext replicationContext) { - this.replicationContext = replicationContext; - } - - public ImmutableSet<ObserveReplicationActionContext> replicateTripSeine(String id) { - - ImmutableSet<ObserveReplicationActionContext> actionContexts = TripSeineReplicationActionContextsBuilder - .of(replicationContext, id); - - execute(actionContexts); - - return actionContexts; - - } - - public ImmutableSet<ObserveReplicationActionContext> replicateTripLongline(String id) { - - ImmutableSet<ObserveReplicationActionContext> actionContexts = TripLonglineReplicationActionContextsBuilder - .of(replicationContext, id); - - execute(actionContexts); - - return actionContexts; - } - - protected void execute(ImmutableSet<ObserveReplicationActionContext> actionContexts) { - - for (ObserveReplicationActionContext actionContext : actionContexts) { - - if (log.isInfoEnabled()) { - log.info("Replicate: " + actionContext.tableName); - } - ObserveReplicationAction.replicate(actionContext); - } - - replicationContext.getTargetPersistenceContext().commit(); - - } - -} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationTables.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationTables.java new file mode 100644 index 0000000..68243fa --- /dev/null +++ b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ObserveReplicationTables.java @@ -0,0 +1,169 @@ +package fr.ird.observe.entities.replication; + +import fr.ird.observe.ObserveEntityEnum; +import org.nuiton.topia.replication.sql.action.ReplicateActionBuilderSupport; +import org.nuiton.topia.replication.sql.table.TopiaReplicationTables; +import org.nuiton.topia.replication.sql.table.TopiaReplicationTablesBuilder; + +/** + * Created on 30/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveReplicationTables { + + protected static <B extends ReplicateActionBuilderSupport> void addReferentialTables(B actionBuilder) { + actionBuilder.setTables(getReferentialTables()); + } + + protected static <B extends ReplicateActionBuilderSupport> void addTripLongline(B actionBuilder, String tripId) { + actionBuilder.setTables(getTripLonglineTables(tripId != null)).setArg(tripId); + + } + + protected static <B extends ReplicateActionBuilderSupport> void addTripSeine(B actionBuilder, String tripId) { + actionBuilder.setTables(getTripSeineTables(tripId != null)).setArg(tripId); + } + + public static TopiaReplicationTables getTripSeineTables(boolean withId) { + + return TopiaReplicationTablesBuilder + .builder(withId) + .addTopTable(ObserveEntityEnum.TripSeine) + .addTopJoinTable(ObserveEntityEnum.TripSeine, ObserveEntityEnum.GearUseFeaturesSeine) + .addJoinTable(ObserveEntityEnum.GearUseFeaturesSeine, ObserveEntityEnum.GearUseFeaturesMeasurementSeine) + .addTopJoinTable(ObserveEntityEnum.TripSeine, ObserveEntityEnum.Route) + .orderPlusOne() + .addJoinTable(ObserveEntityEnum.Route, ObserveEntityEnum.ActivitySeine) + .orderMinusTwo() + .addInversedJoinTable(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.SetSeine) + .orderPlusOne() + .addAssociationTable(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.ObservedSystem.name(), true) + .addJoinTable(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.FloatingObject) + .addJoinTable(ObserveEntityEnum.SetSeine, ObserveEntityEnum.SchoolEstimate) + .addJoinTable(ObserveEntityEnum.SetSeine, ObserveEntityEnum.NonTargetCatch) + .addJoinTable(ObserveEntityEnum.SetSeine, ObserveEntityEnum.NonTargetSample) + .addJoinTable(ObserveEntityEnum.NonTargetSample, ObserveEntityEnum.NonTargetLength) + .addJoinTable(ObserveEntityEnum.SetSeine, ObserveEntityEnum.TargetCatch) + .addJoinTable(ObserveEntityEnum.SetSeine, ObserveEntityEnum.TargetSample) + .addJoinTable(ObserveEntityEnum.TargetSample, ObserveEntityEnum.TargetLength) + .addJoinTable(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.ObjectObservedSpecies) + .addJoinTable(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.ObjectSchoolEstimate) + .addJoinTable(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.TransmittingBuoy) + .build(); + + } + + public static TopiaReplicationTables getTripLonglineTablesForAll() { + return getTripLonglineTables(false); + } + + public static TopiaReplicationTables getTripLonglineTablesForOne() { + return getTripLonglineTables(true); + } + + public static TopiaReplicationTables getTripLonglineTables(boolean withId) { + + return TopiaReplicationTablesBuilder + .builder(withId) + .addTopTable(ObserveEntityEnum.TripLongline) + .addTopJoinTable(ObserveEntityEnum.TripLongline, ObserveEntityEnum.GearUseFeaturesLongline) + .addJoinTable(ObserveEntityEnum.GearUseFeaturesLongline, ObserveEntityEnum.GearUseFeaturesMeasurementLongline) + .orderPlusOne() + .addJoinTable(ObserveEntityEnum.TripLongline, ObserveEntityEnum.ActivityLongline) + .orderMinusTwo() + .addInversedJoinTable(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.SetLongline) + .orderPlusOne() + .addJoinTable(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.Encounter) + .addJoinTable(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.SensorUsed) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.Tdr) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.BaitsComposition) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.FloatlinesComposition) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.HooksComposition) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.BranchlinesComposition) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.Section) + .addJoinTable(ObserveEntityEnum.Section, ObserveEntityEnum.Basket) + .addJoinTable(ObserveEntityEnum.Basket, ObserveEntityEnum.Branchline) + .addJoinTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.CatchLongline) + .addAssociationTable(ObserveEntityEnum.SetLongline, ObserveEntityEnum.MitigationType.name(), true) + .addJoinTable(ObserveEntityEnum.CatchLongline, ObserveEntityEnum.SizeMeasure) + .addJoinTable(ObserveEntityEnum.CatchLongline, ObserveEntityEnum.WeightMeasure) + .addAssociationTable(ObserveEntityEnum.CatchLongline, "Predator", true) + .addJoinTable(ObserveEntityEnum.Tdr, ObserveEntityEnum.TdrRecord) + .addAssociationTable(ObserveEntityEnum.Tdr, ObserveEntityEnum.Species.name(), true) + .build(); + + } + + public static TopiaReplicationTables getReferentialTables() { + + return TopiaReplicationTablesBuilder + .builder(false) + .addTopTable(ObserveEntityEnum.VesselSizeCategory) + .addTopTable(ObserveEntityEnum.Country) + .addTopTable(ObserveEntityEnum.Harbour) + .addTopTable(ObserveEntityEnum.VesselType) + .addTopTable(ObserveEntityEnum.Vessel) + .addTopTable(ObserveEntityEnum.Ocean) + .addTopTable(ObserveEntityEnum.SpeciesGroup) + .addTopTable(ObserveEntityEnum.Species) + .addAssociationTable(ObserveEntityEnum.Species, ObserveEntityEnum.Ocean.name(), false) + .addTopTable(ObserveEntityEnum.Sex) + .addTopTable(ObserveEntityEnum.FpaZone) + .addTopTable(ObserveEntityEnum.SpeciesList) + .addAssociationTable(ObserveEntityEnum.SpeciesList, ObserveEntityEnum.Species.name(), false) + .addTopTable(ObserveEntityEnum.Person) + .addTopTable(ObserveEntityEnum.Organism) + .addTopTable(ObserveEntityEnum.LengthWeightParameter) + .addTopTable(ObserveEntityEnum.Program) + .addTopTable(ObserveEntityEnum.GearCaracteristicType) + .addTopTable(ObserveEntityEnum.GearCaracteristic) + .addTopTable(ObserveEntityEnum.Gear) + .addAssociationTable(ObserveEntityEnum.Gear, ObserveEntityEnum.GearCaracteristic.name(), false) + .addTopTable(ObserveEntityEnum.LastUpdateDate) + .addTopTable(ObserveEntityEnum.VesselActivitySeine) + .addTopTable(ObserveEntityEnum.SurroundingActivity) + .addTopTable(ObserveEntityEnum.ReasonForNullSet) + .addTopTable(ObserveEntityEnum.ReasonForNoFishing) + .addTopTable(ObserveEntityEnum.SpeciesFate) + .addTopTable(ObserveEntityEnum.ObjectFate) + .addTopTable(ObserveEntityEnum.WeightCategory) + .addTopTable(ObserveEntityEnum.DetectionMode) + .addTopTable(ObserveEntityEnum.TransmittingBuoyOperation) + .addTopTable(ObserveEntityEnum.ObjectOperation) + .addTopTable(ObserveEntityEnum.ReasonForDiscard) + .addTopTable(ObserveEntityEnum.SpeciesStatus) + .addTopTable(ObserveEntityEnum.ObservedSystem) + .addTopTable(ObserveEntityEnum.TransmittingBuoyType) + .addTopTable(ObserveEntityEnum.ObjectType) + .addTopTable(ObserveEntityEnum.Wind) + .addTopTable(ObserveEntityEnum.BaitHaulingStatus) + .addTopTable(ObserveEntityEnum.BaitSettingStatus) + .addTopTable(ObserveEntityEnum.BaitType) + .addTopTable(ObserveEntityEnum.CatchFateLongline) + .addTopTable(ObserveEntityEnum.EncounterType) + .addTopTable(ObserveEntityEnum.Healthness) + .addTopTable(ObserveEntityEnum.HookPosition) + .addTopTable(ObserveEntityEnum.HookSize) + .addTopTable(ObserveEntityEnum.HookType) + .addTopTable(ObserveEntityEnum.ItemVerticalPosition) + .addTopTable(ObserveEntityEnum.ItemHorizontalPosition) + .addTopTable(ObserveEntityEnum.LightsticksColor) + .addTopTable(ObserveEntityEnum.LightsticksType) + .addTopTable(ObserveEntityEnum.LineType) + .addTopTable(ObserveEntityEnum.MaturityStatus) + .addTopTable(ObserveEntityEnum.MitigationType) + .addTopTable(ObserveEntityEnum.SensorBrand) + .addTopTable(ObserveEntityEnum.SensorDataFormat) + .addTopTable(ObserveEntityEnum.SensorType) + .addTopTable(ObserveEntityEnum.SettingShape) + .addTopTable(ObserveEntityEnum.SizeMeasureType) + .addTopTable(ObserveEntityEnum.StomacFullness) + .addTopTable(ObserveEntityEnum.TripType) + .addTopTable(ObserveEntityEnum.VesselActivityLongline) + .addTopTable(ObserveEntityEnum.WeightMeasureType) + + .build(); + + } +} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ReplicationActionContextsBuilderSupport.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/ReplicationActionContextsBuilderSupport.java deleted file mode 100644 index b7f9b3a..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/ReplicationActionContextsBuilderSupport.java +++ /dev/null @@ -1,91 +0,0 @@ -package fr.ird.observe.entities.replication; - -import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Lists; -import fr.ird.observe.ObserveEntityEnum; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.LinkedHashMap; -import java.util.Map; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public abstract class ReplicationActionContextsBuilderSupport<Context extends ReplicationActionContextsBuilderSupport> { - - protected final ObserveReplicationContext replicationContext; - - protected final Map<String, ObserveReplicationActionContext> actionContexts; - - protected ReplicationActionContextsBuilderSupport(ObserveReplicationContext replicationContext) { - this.replicationContext = replicationContext; - this.actionContexts = new LinkedHashMap<>(); - } - - public ImmutableSet<ObserveReplicationActionContext> build() { - - ArrayList<ObserveReplicationActionContext> actionContextList = Lists.newArrayList(this.actionContexts.values()); - Collections.sort(actionContextList, new Comparator<ObserveReplicationActionContext>() { - - @Override - public int compare(ObserveReplicationActionContext o1, ObserveReplicationActionContext o2) { - return o1.order - o2.order; - } - }); - return ImmutableSet.copyOf(actionContextList); - } - - protected Context createFirstActionContext(ObserveEntityEnum entityEnum, String id) { - ObserveReplicationActionContext actionContext = - ObserveReplicationActionContext.onTrip( - replicationContext, - entityEnum, - id, - 0); - - actionContext.setFromClause(); - actionContext.setWhereTopiaIdEqualsClause(); - - registerActionContext(actionContext); - return (Context) this; - } - - protected ObserveReplicationActionContext createActionContext(ObserveEntityEnum parentEntityEnum, ObserveEntityEnum entityEnum, int order) { - - ObserveReplicationActionContext parentActionContext = getActionContext(parentEntityEnum); - - ObserveReplicationActionContext actionContext = - ObserveReplicationActionContext.onJoin(parentActionContext, - entityEnum.dbTableName(), - order); - registerActionContext(actionContext); - return actionContext; - } - - protected ObserveReplicationActionContext createAssociationActionContext(ObserveEntityEnum parentEntityEnum, String associationName, int order) { - - ObserveReplicationActionContext parentActionContext = getActionContext(parentEntityEnum); - - ObserveReplicationActionContext actionContext = - ObserveReplicationActionContext.onAssociationJoin(parentActionContext, - associationName, - order); - registerActionContext(actionContext); - return actionContext; - } - - protected ObserveReplicationActionContext getActionContext(ObserveEntityEnum entityEnum) { - String fullyTableName = entityEnum.dbSchemaName().toLowerCase() + "." + entityEnum.dbTableName().toLowerCase(); - ObserveReplicationActionContext parentactioncontext = actionContexts.get(fullyTableName); - return parentactioncontext; - } - - protected void registerActionContext(ObserveReplicationActionContext actionContext) { - actionContexts.put(actionContext.getFullyTableName(), actionContext); - } - -} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripLonglineReplicationActionContextsBuilder.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripLonglineReplicationActionContextsBuilder.java deleted file mode 100644 index 90cfc5c..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripLonglineReplicationActionContextsBuilder.java +++ /dev/null @@ -1,174 +0,0 @@ -package fr.ird.observe.entities.replication; - -import com.google.common.collect.ImmutableSet; -import fr.ird.observe.ObserveEntityEnum; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class TripLonglineReplicationActionContextsBuilder extends ReplicationActionContextsBuilderSupport<TripLonglineReplicationActionContextsBuilder> { - - public static ImmutableSet<ObserveReplicationActionContext> of(ObserveReplicationContext replicationContext, String tripId) { - return new TripLonglineReplicationActionContextsBuilder(replicationContext) - .createFirstActionContext(ObserveEntityEnum.TripLongline, tripId) - .addGearUseFeaturesActionContext() - .addGearUseFeatureMeasurementActionContext() - .addActivityActionContext() - .addSetActionContext() - .addEncounterActionContext() - .addSensorUsedActionContext() - .addTdrActionContext() - .addBaitsCompositionActionContext() - .addFloatlinesCompositionActionContext() - .addHooksCompositionActionContext() - .addBranchlinesCompositionActionContext() - .addCatchActionContext() - - .addSectionActionContext() - .addBasketActionContext() - .addBranchlineActionContext() - - .addSetMitigationTypeActionContext() - .addSizeMeasureActionContext() - .addWeightMeasureActionContext() - .addCatchPredatorActionContext() - .addTdrRecordActionContext() - .addTdrSpeciesActionContext() - .build(); - } - - protected TripLonglineReplicationActionContextsBuilder(ObserveReplicationContext replicationContext) { - super(replicationContext); - } - - public TripLonglineReplicationActionContextsBuilder addGearUseFeaturesActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripLongline, ObserveEntityEnum.GearUseFeaturesLongline, 1); - actionContext.setFromClause(); - actionContext.setWhereJoinTopiaIdEqualsClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addGearUseFeatureMeasurementActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.GearUseFeaturesLongline, ObserveEntityEnum.GearUseFeaturesMeasurementLongline, 2); - actionContext.addInnerJoinClause(); - return this; - } - - - public TripLonglineReplicationActionContextsBuilder addSetActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.SetLongline, 10); - actionContext.addInverseInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addActivityActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripLongline, ObserveEntityEnum.ActivityLongline, 11); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addEncounterActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.Encounter, 12); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addSensorUsedActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivityLongline, ObserveEntityEnum.SensorUsed, 13); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addTdrActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.Tdr, 20); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addBaitsCompositionActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.BaitsComposition, 21); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addFloatlinesCompositionActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.FloatlinesComposition, 22); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addHooksCompositionActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.HooksComposition, 23); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addBranchlinesCompositionActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.BranchlinesComposition, 24); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addSectionActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.Section, 25); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addBasketActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Section, ObserveEntityEnum.Basket, 26); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addBranchlineActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Basket, ObserveEntityEnum.Branchline, 27); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addCatchActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.CatchLongline, 28); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addSetMitigationTypeActionContext() { - ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.SetLongline, ObserveEntityEnum.MitigationType.name(), 29); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addSizeMeasureActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.CatchLongline, ObserveEntityEnum.SizeMeasure, 30); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addWeightMeasureActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.CatchLongline, ObserveEntityEnum.WeightMeasure, 31); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addCatchPredatorActionContext() { - ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.CatchLongline, "Predator", 32); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addTdrRecordActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Tdr, ObserveEntityEnum.TdrRecord, 40); - actionContext.addInnerJoinClause(); - return this; - } - - public TripLonglineReplicationActionContextsBuilder addTdrSpeciesActionContext() { - ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.Tdr, ObserveEntityEnum.Species.name(), 41); - actionContext.addInnerJoinClause(); - return this; - } - -} diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripSeineReplicationActionContextsBuilder.java b/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripSeineReplicationActionContextsBuilder.java deleted file mode 100644 index 9f92fce..0000000 --- a/observe-entities/src/main/java/fr/ird/observe/entities/replication/TripSeineReplicationActionContextsBuilder.java +++ /dev/null @@ -1,145 +0,0 @@ -package fr.ird.observe.entities.replication; - -import com.google.common.collect.ImmutableSet; -import fr.ird.observe.ObserveEntityEnum; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class TripSeineReplicationActionContextsBuilder extends ReplicationActionContextsBuilderSupport<TripSeineReplicationActionContextsBuilder> { - - public static ImmutableSet<ObserveReplicationActionContext> of(ObserveReplicationContext replicationContext, String tripId) { - return new TripSeineReplicationActionContextsBuilder(replicationContext) - .createFirstActionContext(ObserveEntityEnum.TripSeine, tripId) - .addGearUseFeaturesActionContext() - .addGearUseFeatureMeasurementActionContext() - .addRouteActionContext() - .addActivityActionContext() - .addActivityObservedSystemActionContext() - .addSetActionContext() - .addSchoolEstimateActionContext() - .addNonTargetCatchActionContext() - .addNonTargetSampleActionContext() - .addNonTargetLengthActionContext() - .addTargetCatchActionContext() - .addTargetSampleActionContext() - .addTargetLengthActionContext() - - .addFloatingObjectActionContext() - .addObjectObservedSpeciesActionContext() - .addObjectSchoolEstimateActionContext() - .addTransmittingBuoyActionContext() - .build(); - } - - protected TripSeineReplicationActionContextsBuilder(ObserveReplicationContext replicationContext) { - super(replicationContext); - } - - public TripSeineReplicationActionContextsBuilder addGearUseFeaturesActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripSeine, ObserveEntityEnum.GearUseFeaturesSeine, 1); - actionContext.setFromClause(); - actionContext.setWhereJoinTopiaIdEqualsClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addGearUseFeatureMeasurementActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.GearUseFeaturesSeine, ObserveEntityEnum.GearUseFeaturesMeasurementSeine, 2); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addRouteActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TripSeine, ObserveEntityEnum.Route, 3); - actionContext.setFromClause(); - actionContext.setWhereJoinTopiaIdEqualsClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addSetActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.SetSeine, 4); - actionContext.addInverseInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addActivityActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.Route, ObserveEntityEnum.ActivitySeine, 5); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addActivityObservedSystemActionContext() { - ObserveReplicationActionContext actionContext = createAssociationActionContext(ObserveEntityEnum.ActivitySeine, "ObservedSystem", 6); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addFloatingObjectActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.ActivitySeine, ObserveEntityEnum.FloatingObject, 7); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addSchoolEstimateActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.SchoolEstimate, 10); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addNonTargetCatchActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.NonTargetCatch, 11); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addNonTargetSampleActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.NonTargetSample, 12); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addNonTargetLengthActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.NonTargetSample, ObserveEntityEnum.NonTargetLength, 13); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addTargetCatchActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.TargetCatch, 14); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addTargetSampleActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.SetSeine, ObserveEntityEnum.TargetSample, 15); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addTargetLengthActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.TargetSample, ObserveEntityEnum.TargetLength, 16); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addObjectObservedSpeciesActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.ObjectObservedSpecies, 20); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addObjectSchoolEstimateActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.ObjectSchoolEstimate, 21); - actionContext.addInnerJoinClause(); - return this; - } - - public TripSeineReplicationActionContextsBuilder addTransmittingBuoyActionContext() { - ObserveReplicationActionContext actionContext = createActionContext(ObserveEntityEnum.FloatingObject, ObserveEntityEnum.TransmittingBuoy, 22); - actionContext.addInnerJoinClause(); - return this; - } - -} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit d051db817aea147d3f3497a9bc59a6af456aab75 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:54:05 2015 +0100 Ajout de fixtures --- .../services/service/AbstractServiceTopiaTest.java | 21 +- .../DataSourceDumpProducerServiceTopiaTest.java | 3 +- .../service/DataSourceServiceTopiaTest.java | 5 +- .../report/AbstractReportServiceTopiaTest.java | 9 +- .../actions/validate/ValidateServiceTopiaTest.java | 5 +- ...tLonglineDetailCompositionServiceTopiaTest.java | 7 +- .../service/seine/RouteServiceTopiaTest.java | 3 +- .../seine/TripSeineGearUseServiceTopiaTest.java | 7 +- .../service/seine/TripSeineServiceTopiaTest.java | 29 +- .../java/fr/ird/observe/test/ObserveFixtures.java | 298 +++++++++++++++++++++ 10 files changed, 338 insertions(+), 49 deletions(-) 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 b39899d..71eba10 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 @@ -9,6 +9,7 @@ import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.dto.referential.ReferentialReference; import fr.ird.observe.services.dto.referential.ReferentialReferenceSet; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import fr.ird.observe.test.spi.DatabaseVersionConfiguration; import org.junit.Assert; @@ -23,27 +24,9 @@ import java.util.Date; * @author Tony Chemit - chemit@codelutin.com */ @DatabaseNameConfiguration(DatabaseName.referentiel) -@DatabaseVersionConfiguration(AbstractServiceTopiaTest.DEFAULT_VERSION) +@DatabaseVersionConfiguration(ObserveFixtures.DEFAULT_VERSION) public class AbstractServiceTopiaTest { - public static final String DEFAULT_VERSION = "5.0-3"; - - public static final String TRIP_SEINE_ID_1 = "fr.ird.observe.entities.seine.TripSeine#1359167789871#0.6765335978809843"; - - public static final String TRIP_SEINE_ID_2 = "fr.ird.observe.entities.seine.TripSeine#1359280279156#0.41771067982188215"; - - public static final String TRIP_SEINE_ID_3 = "fr.ird.observe.entities.seine.TripSeine#1360156698296#0.6097793743126777"; - - public static final String PROGRAM_ID = "fr.ird.observe.entities.referentiel.Program#1239832686262#0.31033946454061234"; - - public static final String TRIP_LONGLINE_ID_1 = "fr.ird.observe.entities.longline.TripLongline#1429538088091#0.763886003987864"; - - public static final String TRIP_LONGLINE_ID_2 = "fr.ird.observe.entities.longline.TripLongline#1429540363472#0.517173705156893"; - - public static final String TRIP_LONGLINE_ID_3 = "fr.ird.observe.entities.longline.TripLongline#1429537115030#0.493692863034084"; - - public static final String SET_LONGLINE_ID_1 = "fr.ird.observe.entities.longline.SetLongline#1429538714446#0.0876020351424813"; - @ClassRule public static final ApplicationContextResource applicationContextResource = new ApplicationContextResource(); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceDumpProducerServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceDumpProducerServiceTopiaTest.java index 78e445f..a67b644 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceDumpProducerServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceDumpProducerServiceTopiaTest.java @@ -24,6 +24,7 @@ package fr.ird.observe.services.service; import com.google.common.collect.ImmutableSet; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.junit.Assert; import org.junit.Before; @@ -58,7 +59,7 @@ public class DataSourceDumpProducerServiceTopiaTest extends AbstractServiceTopia @Test public void testGetDataDump() throws Exception { - byte[] dataDump = service.getDataDump(ImmutableSet.of(TRIP_SEINE_ID_1)); + byte[] dataDump = service.getDataDump(ImmutableSet.of(ObserveFixtures.TRIP_SEINE_ID_1)); Assert.assertNotNull(dataDump); } diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceServiceTopiaTest.java index e95c9ec..6afd455 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/DataSourceServiceTopiaTest.java @@ -33,6 +33,7 @@ import fr.ird.observe.services.dto.DataSourceCreateWithNoReferentialImportExcept import fr.ird.observe.services.dto.IncompatibleDataSourceCreateConfigurationException; import fr.ird.observe.services.dto.referential.GearDto; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.TestHelper; import fr.ird.observe.test.spi.CopyDatabaseConfiguration; import fr.ird.observe.test.spi.DatabaseNameConfiguration; @@ -223,7 +224,7 @@ public class DataSourceServiceTopiaTest extends AbstractServiceTopiaTest { DataSourceCreateConfigurationDto dataSourceCreateConfiguration = new DataSourceCreateConfigurationDto(); dataSourceCreateConfiguration.setImportReferentialDataSourceConfiguration(dataSourceConfiguration); - dataSourceCreateConfiguration.setImportDataConfiguration(dataSourceConfiguration, ImmutableSet.of(AbstractServiceTopiaTest.TRIP_SEINE_ID_1)); + dataSourceCreateConfiguration.setImportDataConfiguration(dataSourceConfiguration, ImmutableSet.of(ObserveFixtures.TRIP_SEINE_ID_1)); ObserveDataSourceConfigurationTopiaH2 createdDatabaseDataSourceConfiguration = dataSourceResource.createDataSourceConfigurationH2(getClass(), "resultDatabase"); @@ -234,7 +235,7 @@ public class DataSourceServiceTopiaTest extends AbstractServiceTopiaTest { ObserveTopiaApplicationContext createdDatabaseTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext(createdDatabaseDataSourceConfiguration); applicationContextResource.assertSchemaCreated(createdDatabaseTopiaApplicationContext); - applicationContextResource.assertEntitiesExist(createdDatabaseTopiaApplicationContext, AbstractServiceTopiaTest.TRIP_SEINE_ID_1); + applicationContextResource.assertEntitiesExist(createdDatabaseTopiaApplicationContext, ObserveFixtures.TRIP_SEINE_ID_1); } protected void closeDatabase(ObserveDataSourceConfigurationTopiaH2 dataSourceConfiguration) throws InterruptedException { diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceTopiaTest.java index 73bd3be..7deaa3a 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceTopiaTest.java @@ -30,6 +30,7 @@ import fr.ird.observe.services.dto.actions.report.ReportRequest; import fr.ird.observe.services.dto.actions.report.ReportVariable; import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -45,7 +46,7 @@ import java.util.Map; /** * Classe abstraite de test d'un report. - * <p/> + * * On définit ici le mécanisme pour tester unitairement un report et son * résultat. * @@ -85,7 +86,7 @@ public abstract class AbstractReportServiceTopiaTest extends AbstractServiceTopi /** * L'unique test à lancer. - * <p/> + * * On vérifie : * <ul> * <li>la syntaxe du report via {@link #testReportSyntax(Report)}</li> @@ -101,7 +102,7 @@ public abstract class AbstractReportServiceTopiaTest extends AbstractServiceTopi testReportSyntax(report); // creation de l'executeur de report - report = service.populateVariables(report, TRIP_SEINE_ID_1); + report = service.populateVariables(report, ObserveFixtures.TRIP_SEINE_ID_1); // les variables a utiliser (par defaut, pas de variable) Map<String, Object> variables = new HashMap<String, Object>(); @@ -111,7 +112,7 @@ public abstract class AbstractReportServiceTopiaTest extends AbstractServiceTopi // on execute le report - DataMatrix result = service.executeReport(report, TRIP_SEINE_ID_1); + DataMatrix result = service.executeReport(report, ObserveFixtures.TRIP_SEINE_ID_1); if (log.isInfoEnabled()) { log.info("Result :\n" + result.getClipbordContent(true, true)); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/validate/ValidateServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/validate/ValidateServiceTopiaTest.java index 95f5e5d..0b28883 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/validate/ValidateServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/actions/validate/ValidateServiceTopiaTest.java @@ -29,6 +29,7 @@ import fr.ird.observe.services.dto.IdDto; import fr.ird.observe.services.dto.referential.ReferentialDto; import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.junit.Assert; import org.junit.Before; @@ -138,7 +139,7 @@ public class ValidateServiceTopiaTest extends AbstractServiceTopiaTest { request.setValidationContext(ValidateService.N1_CREATE_CONTEXT); request.setScopes(ImmutableSet.copyOf(NuitonValidatorScope.values())); - request.setDataIds(ImmutableSet.of(TRIP_SEINE_ID_1, TRIP_SEINE_ID_2)); + request.setDataIds(ImmutableSet.of(ObserveFixtures.TRIP_SEINE_ID_1, ObserveFixtures.TRIP_SEINE_ID_2)); ValidateDataResult result = service.validateData(request); Assert.assertNotNull(result); @@ -165,7 +166,7 @@ public class ValidateServiceTopiaTest extends AbstractServiceTopiaTest { request.setValidationContext(ValidateService.N1_UPDATE_CONTEXT); request.setScopes(ImmutableSet.copyOf(NuitonValidatorScope.values())); - request.setDataIds(ImmutableSet.of(TRIP_SEINE_ID_1, TRIP_SEINE_ID_2)); + request.setDataIds(ImmutableSet.of(ObserveFixtures.TRIP_SEINE_ID_1, ObserveFixtures.TRIP_SEINE_ID_2)); ValidateDataResult result = service.validateData(request); Assert.assertNotNull(result); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java index 8a1155b..15f6ca0 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/longline/SetLonglineDetailCompositionServiceTopiaTest.java @@ -40,6 +40,7 @@ import fr.ird.observe.services.dto.referential.longline.HookTypeDto; import fr.ird.observe.services.dto.referential.longline.LineTypeDto; import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.CopyDatabaseConfiguration; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.junit.Assert; @@ -65,7 +66,7 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic @Test public void loadToEditTest() { - Form<SetLonglineDetailCompositionDto> form = service.loadForm(SET_LONGLINE_ID_1); + Form<SetLonglineDetailCompositionDto> form = service.loadForm(ObserveFixtures.SET_LONGLINE_ID_1); Assert.assertNotNull(form); @@ -93,7 +94,7 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic @CopyDatabaseConfiguration public void saveTest() { - Form<SetLonglineDetailCompositionDto> form = service.loadForm(SET_LONGLINE_ID_1); + Form<SetLonglineDetailCompositionDto> form = service.loadForm(ObserveFixtures.SET_LONGLINE_ID_1); SetLonglineDetailCompositionDto compositionDto = form.getObject(); SectionDto sectionDto = compositionDto.getSection(4); @@ -143,7 +144,7 @@ public class SetLonglineDetailCompositionServiceTopiaTest extends AbstractServic service.save(compositionDto); - SetLongline setLongline = dataSourceResource.findById(SetLongline.class, SET_LONGLINE_ID_1); + SetLongline setLongline = dataSourceResource.findById(SetLongline.class, ObserveFixtures.SET_LONGLINE_ID_1); Section section = setLongline.getSectionByTopiaId(sectionDto.getId()); Assert.assertEquals(sectionDto.getSettingIdentifier(), section.getSettingIdentifier()); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/RouteServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/RouteServiceTopiaTest.java index fd383e9..f722612 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/RouteServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/RouteServiceTopiaTest.java @@ -26,6 +26,7 @@ import fr.ird.observe.services.dto.Form; import fr.ird.observe.services.dto.seine.RouteDto; import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.junit.Assert; import org.junit.Before; @@ -50,7 +51,7 @@ public class RouteServiceTopiaTest extends AbstractServiceTopiaTest { @Test public void preCreateTest() { - Form<RouteDto> form = service.preCreate(TRIP_SEINE_ID_1); + Form<RouteDto> form = service.preCreate(ObserveFixtures.TRIP_SEINE_ID_1); Assert.assertNotNull(form); RouteDto routeDto = form.getObject(); diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopiaTest.java b/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopiaTest.java index 6613642..e249708 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopiaTest.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/service/seine/TripSeineGearUseServiceTopiaTest.java @@ -34,6 +34,7 @@ import fr.ird.observe.services.dto.seine.TripSeineGearUseDto; import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.services.service.ReferentialService; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.CopyDatabaseConfiguration; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.junit.Assert; @@ -65,9 +66,9 @@ public class TripSeineGearUseServiceTopiaTest extends AbstractServiceTopiaTest { @Test public void loadToEditTest() { - TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_1); + TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_1); - Form<TripSeineGearUseDto> form = service.loadForm(TRIP_SEINE_ID_1); + Form<TripSeineGearUseDto> form = service.loadForm(ObserveFixtures.TRIP_SEINE_ID_1); Assert.assertNotNull(form); TripSeineGearUseDto tripSeineGearUseDto = form.getObject(); @@ -113,7 +114,7 @@ public class TripSeineGearUseServiceTopiaTest extends AbstractServiceTopiaTest { @Test @CopyDatabaseConfiguration public void saveUpdateTest() { - Form<TripSeineGearUseDto> form = service.loadForm(TRIP_SEINE_ID_1); + Form<TripSeineGearUseDto> form = service.loadForm(ObserveFixtures.TRIP_SEINE_ID_1); TripSeineGearUseDto tripSeineGearUseDto = form.getObject(); 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 0d8b333..9aba86f 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 @@ -40,6 +40,7 @@ import fr.ird.observe.services.service.DatabaseConnexionNotAuthorizedException; import fr.ird.observe.services.service.DatabaseNotFoundException; import fr.ird.observe.services.service.ReferentialService; import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.spi.CopyDatabaseConfiguration; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import org.junit.Assert; @@ -72,14 +73,14 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { @Test public void getTripSeineByProgramTest() { - DataReferenceSet<TripSeineDto> stubDtos = service.getTripSeineByProgram(PROGRAM_ID); + DataReferenceSet<TripSeineDto> stubDtos = service.getTripSeineByProgram(ObserveFixtures.PROGRAM_ID); Assert.assertNotNull(stubDtos); Assert.assertEquals(3, stubDtos.sizeReference()); DataReference<TripSeineDto> tripSeineStubDto = stubDtos.getReferenceByPosition(0); - TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_1); + TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_1); Assert.assertEquals(tripSeine.getTopiaId(), tripSeineStubDto.getId()); Assert.assertEquals(0, tripSeine.getStartDate().compareTo((Date) tripSeineStubDto.getPropertyValue(TripSeineDto.PROPERTY_START_DATE))); @@ -88,7 +89,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { Assert.assertEquals(tripSeine.getObserverLabel(), tripSeineStubDto.getPropertyValue(TripSeineDto.PROPERTY_OBSERVER)); tripSeineStubDto = stubDtos.getReferenceByPosition(1); - tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_2); + tripSeine = dataSourceResource.findById(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_2); Assert.assertEquals(tripSeine.getTopiaId(), tripSeineStubDto.getId()); Assert.assertEquals(0, tripSeine.getStartDate().compareTo((Date) tripSeineStubDto.getPropertyValue(TripSeineDto.PROPERTY_START_DATE))); @@ -97,7 +98,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { Assert.assertEquals(tripSeine.getObserverLabel(), tripSeineStubDto.getPropertyValue(TripSeineDto.PROPERTY_OBSERVER)); tripSeineStubDto = stubDtos.getReferenceByPosition(2); - tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_3); + tripSeine = dataSourceResource.findById(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_3); Assert.assertEquals(tripSeine.getTopiaId(), tripSeineStubDto.getId()); Assert.assertEquals(0, tripSeine.getStartDate().compareTo((Date) tripSeineStubDto.getPropertyValue(TripSeineDto.PROPERTY_START_DATE))); @@ -110,8 +111,8 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { @Test public void loadFormTest() throws Exception { - TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_1); - Form<TripSeineDto> form = service.loadForm(TRIP_SEINE_ID_1); + TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_1); + Form<TripSeineDto> form = service.loadForm(ObserveFixtures.TRIP_SEINE_ID_1); Assert.assertNotNull(form); TripSeineDto tripSeineDto = form.getObject(); @@ -146,7 +147,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { @Test public void preCreateTest() { - Form<TripSeineDto> form = service.preCreate(PROGRAM_ID); + Form<TripSeineDto> form = service.preCreate(ObserveFixtures.PROGRAM_ID); Assert.assertNotNull(form); TripSeineDto tripSeineDto = form.getObject(); @@ -181,7 +182,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { @CopyDatabaseConfiguration public void saveCreateTest() throws BabModelVersionException, DatabaseConnexionNotAuthorizedException, DatabaseNotFoundException { - Form<TripSeineDto> form = service.preCreate(PROGRAM_ID); + Form<TripSeineDto> form = service.preCreate(ObserveFixtures.PROGRAM_ID); TripSeineDto tripSeineDto = form.getObject(); @@ -235,7 +236,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { @CopyDatabaseConfiguration public void saveUpdateTest() throws BabModelVersionException, DatabaseConnexionNotAuthorizedException, DatabaseNotFoundException { - Form<TripSeineDto> form = service.loadForm(TRIP_SEINE_ID_1); + Form<TripSeineDto> form = service.loadForm(ObserveFixtures.TRIP_SEINE_ID_1); loadReferenceSets(referentialService, form); @@ -263,7 +264,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { service.save(form.getObject()); - TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, TRIP_SEINE_ID_1); + TripSeine tripSeine = dataSourceResource.findById(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_1); assertReferenceDtoEqualsEntity(tripSeineDto.getCaptain(), tripSeine.getCaptain()); assertReferenceDtoEqualsEntity(tripSeineDto.getObserver(), tripSeine.getObserver()); @@ -290,7 +291,7 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { @CopyDatabaseConfiguration public void saveConcurrentTest() throws BabModelVersionException, DatabaseConnexionNotAuthorizedException, DatabaseNotFoundException { - Form<TripSeineDto> form = service.loadForm(TRIP_SEINE_ID_1); + Form<TripSeineDto> form = service.loadForm(ObserveFixtures.TRIP_SEINE_ID_1); TripSeineDto tripSeineDto = form.getObject(); @@ -320,13 +321,13 @@ public class TripSeineServiceTopiaTest extends AbstractServiceTopiaTest { Date lastUpdateBefore = getLastUpdateDate(TripSeine.class); - service.delete(TRIP_SEINE_ID_1); + service.delete(ObserveFixtures.TRIP_SEINE_ID_1); - DataReferenceSet<TripSeineDto> tripSeineByProgram = service.getTripSeineByProgram(PROGRAM_ID); + DataReferenceSet<TripSeineDto> tripSeineByProgram = service.getTripSeineByProgram(ObserveFixtures.PROGRAM_ID); Assert.assertEquals(2, tripSeineByProgram.sizeReference()); - Assert.assertFalse(dataSourceResource.exists(TripSeine.class, TRIP_SEINE_ID_1)); + Assert.assertFalse(dataSourceResource.exists(TripSeine.class, ObserveFixtures.TRIP_SEINE_ID_1)); Date lastUpdateAfter = getLastUpdateDate(TripSeine.class); Assert.assertNotEquals(lastUpdateBefore, lastUpdateAfter); diff --git a/observe-test-data/src/main/java/fr/ird/observe/test/ObserveFixtures.java b/observe-test-data/src/main/java/fr/ird/observe/test/ObserveFixtures.java new file mode 100644 index 0000000..a15d653 --- /dev/null +++ b/observe-test-data/src/main/java/fr/ird/observe/test/ObserveFixtures.java @@ -0,0 +1,298 @@ +package fr.ird.observe.test; + +import com.google.common.collect.ImmutableMap; +import org.apache.commons.lang3.mutable.MutableLong; + +import java.util.Map; +import java.util.TreeMap; + +/** + * Created on 29/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ObserveFixtures { + + public static final String DEFAULT_VERSION = "5.0-3"; + + public static final String TRIP_SEINE_ID_1 = "fr.ird.observe.entities.seine.TripSeine#1359167789871#0.6765335978809843"; + + public static final String TRIP_SEINE_ID_2 = "fr.ird.observe.entities.seine.TripSeine#1359280279156#0.41771067982188215"; + + public static final String TRIP_SEINE_ID_3 = "fr.ird.observe.entities.seine.TripSeine#1360156698296#0.6097793743126777"; + + public static final String PROGRAM_ID = "fr.ird.observe.entities.referentiel.Program#1239832686262#0.31033946454061234"; + + public static final String TRIP_LONGLINE_ID_1 = "fr.ird.observe.entities.longline.TripLongline#1429538088091#0.763886003987864"; + + public static final String TRIP_LONGLINE_ID_2 = "fr.ird.observe.entities.longline.TripLongline#1429540363472#0.517173705156893"; + + public static final String TRIP_LONGLINE_ID_3 = "fr.ird.observe.entities.longline.TripLongline#1429537115030#0.493692863034084"; + + public static final String SET_LONGLINE_ID_1 = "fr.ird.observe.entities.longline.SetLongline#1429538714446#0.0876020351424813"; + + public static final ImmutableMap<String, Long> REFERENTIAL_COMMON_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_common.vesselsizecategory", 13L) + .put("observe_common.country", 53L) + .put("observe_common.harbour", 74L) + .put("observe_common.vesseltype", 14L) + .put("observe_common.vessel", 977L) + .put("observe_common.speciesgroup", 8L) + .put("observe_common.species", 275L) + .put("observe_common.ocean_species", 482L) + .put("observe_common.sex", 5L) + .put("observe_common.fpazone", 41L) + .put("observe_common.specieslist", 5L) + .put("observe_common.species_specieslist", 372L) + .put("observe_common.person", 390L) + .put("observe_common.ocean", 3L) + .put("observe_common.organism", 8L) + .put("observe_common.lengthweightparameter", 352L) + .put("observe_common.program", 27L) + .put("observe_common.gearcaracteristictype", 6L) + .put("observe_common.gearcaracteristic", 22L) + .put("observe_common.gear", 26L) + .put("observe_common.gear_gearcaracteristic", 29L) + .put("observe_common.lastupdatedate", 95L) + .build(); + + public static final ImmutableMap<String, Long> REFERENTIAL_SEINE_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.vesselactivity", 23L) + .put("observe_seine.surroundingactivity", 8L) + .put("observe_seine.reasonfornullset", 10L) + .put("observe_seine.reasonfornofishing", 13L) + .put("observe_seine.speciesfate", 9L) + .put("observe_seine.objectfate", 9L) + .put("observe_seine.weightcategory", 101L) + .put("observe_seine.detectionmode", 10L) + .put("observe_seine.transmittingbuoyoperation", 3L) + .put("observe_seine.objectoperation", 4L) + .put("observe_seine.reasonfordiscard", 5L) + .put("observe_seine.speciesstatus", 3L) + .put("observe_seine.observedsystem", 21L) + .put("observe_seine.transmittingbuoytype", 12L) + .put("observe_seine.objecttype", 23L) + .put("observe_seine.wind", 13L) + .build(); + + public static final ImmutableMap<String, Long> REFERENTIAL_LONGLINE_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.baithaulingstatus", 5L) + .put("observe_longline.baitsettingstatus", 5L) + .put("observe_longline.baittype", 16L) + .put("observe_longline.catchfate", 5L) + .put("observe_longline.encountertype", 12L) + .put("observe_longline.healthness", 6L) + .put("observe_longline.hookposition", 13L) + .put("observe_longline.hooksize", 22L) + .put("observe_longline.hooktype", 13L) + .put("observe_longline.itemverticalposition", 3L) + .put("observe_longline.itemhorizontalposition", 3L) + .put("observe_longline.lightstickscolor", 7L) + .put("observe_longline.lightstickstype", 2L) + .put("observe_longline.linetype", 8L) + .put("observe_longline.maturitystatus", 12L) + .put("observe_longline.mitigationtype", 15L) + .put("observe_longline.sensorbrand", 4L) + .put("observe_longline.sensordataformat", 2L) + .put("observe_longline.sensortype", 4L) + .put("observe_longline.settingshape", 6L) + .put("observe_longline.sizemeasuretype", 17L) + .put("observe_longline.stomacfullness", 7L) + .put("observe_longline.triptype", 3L) + .put("observe_longline.vesselactivity", 5L) + .put("observe_longline.weightmeasuretype", 3L) + .build(); + + public static final ImmutableMap<String, Long> REFERENTIAL_TABLES_COUNT = mergeResults( + REFERENTIAL_COMMON_TABLES_COUNT, + REFERENTIAL_LONGLINE_TABLES_COUNT, + REFERENTIAL_SEINE_TABLES_COUNT + ); + + public static final ImmutableMap<String, Long> TRIP_SEINE_1_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.trip", 1L) + .put("observe_seine.gearusefeatures", 2L) + .put("observe_seine.gearusefeaturesmeasurement", 4L) + .put("observe_seine.route", 34L) + .put("observe_seine.set", 35L) + .put("observe_seine.activity", 862L) + .put("observe_seine.floatingobject", 54L) + .put("observe_seine.schoolestimate", 27L) + .put("observe_seine.nontargetcatch", 109L) + .put("observe_seine.nontargetsample", 20L) + .put("observe_seine.nontargetlength", 767L) + .put("observe_seine.targetcatch", 73L) + .put("observe_seine.targetsample", 10L) + .put("observe_seine.targetlength", 85L) + .put("observe_seine.objectobservedspecies", 3L) + .put("observe_seine.objectschoolestimate", 1L) + .put("observe_seine.transmittingbuoy", 62L) + .put("observe_seine.activity_observedsystem", 1182L) + .build(); + + public static final ImmutableMap<String, Long> TRIP_SEINE_2_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.trip", 1L) + .put("observe_seine.gearusefeatures", 0L) + .put("observe_seine.gearusefeaturesmeasurement", 0L) + .put("observe_seine.route", 46L) + .put("observe_seine.set", 42L) + .put("observe_seine.activity", 657L) + .put("observe_seine.activity_observedsystem", 652L) + .put("observe_seine.floatingobject", 50L) + .put("observe_seine.schoolestimate", 10L) + .put("observe_seine.nontargetcatch", 112L) + .put("observe_seine.nontargetsample", 19L) + .put("observe_seine.nontargetlength", 242L) + .put("observe_seine.targetcatch", 73L) + .put("observe_seine.targetsample", 0L) + .put("observe_seine.targetlength", 0L) + .put("observe_seine.objectobservedspecies", 2L) + .put("observe_seine.objectschoolestimate", 3L) + .put("observe_seine.transmittingbuoy", 68L) + .build(); + + public static final ImmutableMap<String, Long> TRIP_SEINE_3_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_seine.trip", 1L) + .put("observe_seine.gearusefeatures", 0L) + .put("observe_seine.gearusefeaturesmeasurement", 0L) + .put("observe_seine.route", 45L) + .put("observe_seine.set", 35L) + .put("observe_seine.activity", 816L) + .put("observe_seine.floatingobject", 41L) + .put("observe_seine.schoolestimate", 35L) + .put("observe_seine.nontargetcatch", 104L) + .put("observe_seine.nontargetsample", 16L) + .put("observe_seine.nontargetlength", 1193L) + .put("observe_seine.targetcatch", 118L) + .put("observe_seine.targetsample", 14L) + .put("observe_seine.targetlength", 53L) + .put("observe_seine.objectobservedspecies", 0L) + .put("observe_seine.objectschoolestimate", 24L) + .put("observe_seine.transmittingbuoy", 39L) + .put("observe_seine.activity_observedsystem", 321L) + .build(); + + public static final ImmutableMap<String, Long> ALL_TRIP_SEINE_COUNT = mergeResults( + TRIP_SEINE_1_TABLES_COUNT, + TRIP_SEINE_2_TABLES_COUNT, + TRIP_SEINE_3_TABLES_COUNT + ); + + public static final ImmutableMap<String, Long> TRIP_LONGLINE_1_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.trip", 1L) + .put("observe_longline.set", 13L) + .put("observe_longline.activity", 13L) + .put("observe_longline.gearusefeatures", 0L) + .put("observe_longline.gearusefeaturesmeasurement", 0L) + .put("observe_longline.encounter", 27L) + .put("observe_longline.sensorused", 0L) + .put("observe_longline.tdr", 0L) + .put("observe_longline.baitscomposition", 13L) + .put("observe_longline.floatlinescomposition", 65L) + .put("observe_longline.hookscomposition", 39L) + .put("observe_longline.branchlinescomposition", 13L) + .put("observe_longline.section", 234L) + .put("observe_longline.basket", 3042L) + .put("observe_longline.branchline", 18252L) + .put("observe_longline.catch", 435L) + .put("observe_longline.catch_predator", 49L) + .put("observe_longline.sizemeasure", 340L) + .put("observe_longline.weightmeasure", 0L) + .put("observe_longline.tdrrecord", 0L) + .put("observe_longline.species_tdr", 0L) + .put("observe_longline.mitigationtype_set", 0L) + .build(); + + public static final ImmutableMap<String, Long> TRIP_LONGLINE_2_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.trip", 1L) + .put("observe_longline.set", 5L) + .put("observe_longline.activity", 5L) + .put("observe_longline.gearusefeatures", 0L) + .put("observe_longline.gearusefeaturesmeasurement", 0L) + .put("observe_longline.encounter", 3L) + .put("observe_longline.sensorused", 0L) + .put("observe_longline.tdr", 0L) + .put("observe_longline.baitscomposition", 10L) + .put("observe_longline.floatlinescomposition", 0L) + .put("observe_longline.hookscomposition", 10L) + .put("observe_longline.branchlinescomposition", 2L) + .put("observe_longline.section", 95L) + .put("observe_longline.basket", 1140L) + .put("observe_longline.branchline", 6840L) + .put("observe_longline.catch", 152L) + .put("observe_longline.sizemeasure", 116L) + .put("observe_longline.weightmeasure", 0L) + .put("observe_longline.tdrrecord", 0L) + .put("observe_longline.species_tdr", 0L) + .put("observe_longline.mitigationtype_set", 0L) + .put("observe_longline.catch_predator", 9L) + .build(); + + public static final ImmutableMap<String, Long> TRIP_LONGLINE_3_TABLES_COUNT = ImmutableMap + .<String, Long>builder() + .put("observe_longline.trip", 1L) + .put("observe_longline.set", 14L) + .put("observe_longline.activity", 14L) + .put("observe_longline.gearusefeatures", 0L) + .put("observe_longline.gearusefeaturesmeasurement", 0L) + .put("observe_longline.encounter", 12L) + .put("observe_longline.sensorused", 0L) + .put("observe_longline.tdr", 0L) + .put("observe_longline.baitscomposition", 14L) + .put("observe_longline.floatlinescomposition", 36L) + .put("observe_longline.hookscomposition", 42L) + .put("observe_longline.branchlinescomposition", 14L) + .put("observe_longline.section", 243L) + .put("observe_longline.basket", 3229L) + .put("observe_longline.branchline", 19374L) + .put("observe_longline.catch", 677L) + .put("observe_longline.mitigationtype_set", 0L) + .put("observe_longline.sizemeasure", 647L) + .put("observe_longline.weightmeasure", 0L) + .put("observe_longline.catch_predator", 25L) + .put("observe_longline.tdrrecord", 0L) + .put("observe_longline.species_tdr", 0L) + .build(); + + public static final ImmutableMap<String, Long> ALL_TRIP_LONGLINE_COUNT = mergeResults( + TRIP_LONGLINE_1_TABLES_COUNT, + TRIP_LONGLINE_2_TABLES_COUNT, + TRIP_LONGLINE_3_TABLES_COUNT + ); + + + @SafeVarargs + protected static ImmutableMap<String, Long> mergeResults(ImmutableMap<String, Long>... expectedTablesCounts) { + TreeMap<String, MutableLong> expectedTablesCountTmp = new TreeMap<>(); + for (ImmutableMap<String, Long> tablesCounts : expectedTablesCounts) { + + for (Map.Entry<String, Long> entry : tablesCounts.entrySet()) { + String key = entry.getKey(); + Long value = entry.getValue(); + MutableLong count = expectedTablesCountTmp.get(key); + if (count == null) { + count = new MutableLong(value); + expectedTablesCountTmp.put(key, count); + + } else { + count.add(value); + } + } + } + ImmutableMap.Builder<String, Long> expectedTablesCountBuilder = ImmutableMap.builder(); + for (Map.Entry<String, MutableLong> entry : expectedTablesCountTmp.entrySet()) { + expectedTablesCountBuilder.put(entry.getKey(), entry.getValue().longValue()); + } + ImmutableMap<String, Long> expectedResults = expectedTablesCountBuilder.build(); + return expectedResults; + } + +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 2eb350bde3c37e483d1827358f77102a34b16114 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:54:37 2015 +0100 Ajout de tests pour la réplication de données ng --- .../replication/ObserveReplicationEngineTest.java | 314 --------------------- .../replication/ReplicateReferentialsTest.java | 36 +++ .../entities/replication/ReplicateTestSupport.java | 128 +++++++++ .../replication/ReplicateTripLonglineTest.java | 79 ++++++ .../replication/ReplicateTripSeineTest.java | 77 +++++ 5 files changed, 320 insertions(+), 314 deletions(-) diff --git a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ObserveReplicationEngineTest.java b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ObserveReplicationEngineTest.java deleted file mode 100644 index bde6b91..0000000 --- a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ObserveReplicationEngineTest.java +++ /dev/null @@ -1,314 +0,0 @@ -package fr.ird.observe.entities.replication; - -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.ImmutableSet; -import fr.ird.observe.ObserveTopiaApplicationContext; -import fr.ird.observe.ObserveTopiaPersistenceContext; -import fr.ird.observe.services.ObserveTopiaApplicationContextFactory; -import fr.ird.observe.services.configuration.ObserveDataSourceConfigurationTopiaH2; -import fr.ird.observe.services.service.AbstractServiceTopiaTest; -import fr.ird.observe.services.service.DataSourceService; -import fr.ird.observe.test.DatabaseName; -import fr.ird.observe.test.spi.DatabaseNameConfiguration; -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.nuiton.topia.persistence.support.TopiaSqlQuery; - -import java.io.File; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.Map; - -/** - * Created on 28/12/15. - * - * @author Tony Chemit - chemit@codelutin.com - */ -public class ObserveReplicationEngineTest extends AbstractServiceTopiaTest { - - protected DataSourceService service; - - private static final ImmutableMap<String, Long> TRIP_SEINE_1_RESULT = ImmutableMap - .<String, Long>builder() - .put("observe_seine.trip", 1L) - .put("observe_seine.gearusefeatures", 2L) - .put("observe_seine.gearusefeaturesmeasurement", 4L) - .put("observe_seine.route", 34L) - .put("observe_seine.set", 35L) - .put("observe_seine.activity", 862L) - .put("observe_seine.observedsystem", 21L) - .put("observe_seine.floatingobject", 54L) - .put("observe_seine.schoolestimate", 27L) - .put("observe_seine.nontargetcatch", 109L) - .put("observe_seine.nontargetsample", 20L) - .put("observe_seine.nontargetlength", 767L) - .put("observe_seine.targetcatch", 73L) - .put("observe_seine.targetsample", 10L) - .put("observe_seine.targetlength", 85L) - .put("observe_seine.objectobservedspecies", 3L) - .put("observe_seine.objectschoolestimate", 1L) - .put("observe_seine.transmittingbuoy", 62L) - .put("observe_seine.activity_observedsystem", 1182L) - .build(); - - private static final ImmutableMap<String, Long> TRIP_SEINE_2_RESULT = ImmutableMap - .<String, Long>builder() - .put("observe_seine.trip", 1L) - .put("observe_seine.gearusefeatures", 0L) - .put("observe_seine.gearusefeaturesmeasurement", 0L) - .put("observe_seine.route", 46L) - .put("observe_seine.set", 42L) - .put("observe_seine.activity", 657L) - .put("observe_seine.observedsystem", 21L) - .put("observe_seine.activity_observedsystem", 652L) - .put("observe_seine.floatingobject", 50L) - .put("observe_seine.schoolestimate", 10L) - .put("observe_seine.nontargetcatch", 112L) - .put("observe_seine.nontargetsample", 19L) - .put("observe_seine.nontargetlength", 242L) - .put("observe_seine.targetcatch", 73L) - .put("observe_seine.targetsample", 0L) - .put("observe_seine.targetlength", 0L) - .put("observe_seine.objectobservedspecies", 2L) - .put("observe_seine.objectschoolestimate", 3L) - .put("observe_seine.transmittingbuoy", 68L) - .build(); - - private static final ImmutableMap<String, Long> TRIP_SEINE_3_RESULT = ImmutableMap - .<String, Long>builder() - .put("observe_seine.trip", 1L) - .put("observe_seine.gearusefeatures", 0L) - .put("observe_seine.gearusefeaturesmeasurement", 0L) - .put("observe_seine.route", 45L) - .put("observe_seine.set", 35L) - .put("observe_seine.activity", 816L) - .put("observe_seine.observedsystem", 21L) - .put("observe_seine.floatingobject", 41L) - .put("observe_seine.schoolestimate", 35L) - .put("observe_seine.nontargetcatch", 104L) - .put("observe_seine.nontargetsample", 16L) - .put("observe_seine.nontargetlength", 1193L) - .put("observe_seine.targetcatch", 118L) - .put("observe_seine.targetsample", 14L) - .put("observe_seine.targetlength", 53L) - .put("observe_seine.objectobservedspecies", 0L) - .put("observe_seine.objectschoolestimate", 24L) - .put("observe_seine.transmittingbuoy", 39L) - .put("observe_seine.activity_observedsystem", 321L) - .build(); - - private static final ImmutableMap<String, Long> TRIP_LONGLINE_1_RESULT = ImmutableMap - .<String, Long>builder() - .put("observe_longline.trip", 1L) - .put("observe_longline.set", 13L) - .put("observe_longline.activity", 13L) - .put("observe_longline.gearusefeatures", 0L) - .put("observe_longline.gearusefeaturesmeasurement", 0L) - .put("observe_longline.encounter", 27L) - .put("observe_longline.sensorused", 0L) - .put("observe_longline.tdr", 0L) - .put("observe_longline.baitscomposition", 13L) - .put("observe_longline.floatlinescomposition", 65L) - .put("observe_longline.hookscomposition", 39L) - .put("observe_longline.branchlinescomposition", 13L) - .put("observe_longline.section", 234L) - .put("observe_longline.basket", 3042L) - .put("observe_longline.branchline", 18252L) - .put("observe_longline.catch", 435L) - .put("observe_longline.catch_predator", 49L) - .put("observe_longline.mitigationtype", 15L) - .put("observe_longline.sizemeasure", 340L) - .put("observe_longline.weightmeasure", 0L) - .put("observe_longline.tdrrecord", 0L) - .put("observe_longline.species_tdr", 0L) - .put("observe_longline.mitigationtype_set", 0L) - .build(); - - private static final ImmutableMap<String, Long> TRIP_LONGLINE_2_RESULT = ImmutableMap - .<String, Long>builder() - .put("observe_longline.trip", 1L) - .put("observe_longline.set", 5L) - .put("observe_longline.activity", 5L) - .put("observe_longline.gearusefeatures", 0L) - .put("observe_longline.gearusefeaturesmeasurement", 0L) - .put("observe_longline.encounter", 3L) - .put("observe_longline.sensorused", 0L) - .put("observe_longline.tdr", 0L) - .put("observe_longline.baitscomposition", 10L) - .put("observe_longline.floatlinescomposition", 0L) - .put("observe_longline.hookscomposition", 10L) - .put("observe_longline.branchlinescomposition", 2L) - .put("observe_longline.section", 95L) - .put("observe_longline.basket", 1140L) - .put("observe_longline.branchline", 6840L) - .put("observe_longline.catch", 152L) - .put("observe_longline.mitigationtype", 15L) - .put("observe_longline.sizemeasure", 116L) - .put("observe_longline.weightmeasure", 0L) - .put("observe_longline.tdrrecord", 0L) - .put("observe_longline.species_tdr", 0L) - .put("observe_longline.mitigationtype_set", 0L) - .put("observe_longline.catch_predator", 9L) - .build(); - - private static final ImmutableMap<String, Long> TRIP_LONGLINE_3_RESULT = ImmutableMap - .<String, Long>builder() - .put("observe_longline.trip", 1L) - .put("observe_longline.set", 14L) - .put("observe_longline.activity", 14L) - .put("observe_longline.gearusefeatures", 0L) - .put("observe_longline.gearusefeaturesmeasurement", 0L) - .put("observe_longline.encounter", 12L) - .put("observe_longline.sensorused", 0L) - .put("observe_longline.tdr", 0L) - .put("observe_longline.baitscomposition", 14L) - .put("observe_longline.floatlinescomposition", 36L) - .put("observe_longline.hookscomposition", 42L) - .put("observe_longline.branchlinescomposition", 14L) - .put("observe_longline.section", 243L) - .put("observe_longline.basket", 3229L) - .put("observe_longline.branchline", 19374L) - .put("observe_longline.catch", 677L) - .put("observe_longline.MitigationType_set", 0L) - .put("observe_longline.sizemeasure", 647L) - .put("observe_longline.weightmeasure", 0L) - .put("observe_longline.catch_Predator", 25L) - .put("observe_longline.tdrrecord", 0L) - .put("observe_longline.Species_tdr", 0L) - .build(); - - protected ObserveReplicationEngine engine; - - protected ObserveReplicationContext replicationContext; - - protected ObserveTopiaApplicationContext targetTopiaApplicationContext; - - protected ObserveTopiaApplicationContext sourceTopiaApplicationContext; - - @Before - public void setUp() throws Exception { - service = dataSourceResource.newService(DataSourceService.class); - - File targetDatabaseDirectory = new File(dataSourceResource.getTestDirectory(), "targetReplication"); - ObserveDataSourceConfigurationTopiaH2 targetTopiaConfiguration = applicationContextResource.createDataSource(dataSourceResource.getDbVersion(), DatabaseName.referentiel.name(), targetDatabaseDirectory); - - targetTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext(targetTopiaConfiguration); - - sourceTopiaApplicationContext = dataSourceResource.getTopiaApplicationContext(); - - replicationContext = new ObserveReplicationContext(sourceTopiaApplicationContext, targetTopiaApplicationContext, 1000); - engine = new ObserveReplicationEngine(replicationContext); - - } - - @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) - @Test - public void testReplicateTripSeine1() throws Exception { - testTripSeine(engine, TRIP_SEINE_ID_1, TRIP_SEINE_1_RESULT); - } - - @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) - @Test - public void testReplicateTripSeine2() throws Exception { - testTripSeine(engine, TRIP_SEINE_ID_2, TRIP_SEINE_2_RESULT); - } - - @DatabaseNameConfiguration(DatabaseName.dataForTestSeine) - @Test - public void testReplicateTripSeine3() throws Exception { - testTripSeine(engine, TRIP_SEINE_ID_3, TRIP_SEINE_3_RESULT); - } - - @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) - @Test - public void testReplicateTripLonline1() throws Exception { - testTripLongline(engine, TRIP_LONGLINE_ID_1, TRIP_LONGLINE_1_RESULT); - } - - @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) - @Test - public void testReplicateTripLonline2() throws Exception { - testTripLongline(engine, TRIP_LONGLINE_ID_2, TRIP_LONGLINE_2_RESULT); - } - - @DatabaseNameConfiguration(DatabaseName.dataForTestLongline) - @Test - public void testReplicateTripLonline3() throws Exception { - testTripLongline(engine, TRIP_LONGLINE_ID_3, TRIP_LONGLINE_3_RESULT); - } - - protected void testTripSeine(ObserveReplicationEngine engine, String tripId, ImmutableMap<String, Long> expectedResults) { - - ImmutableSet<ObserveReplicationActionContext> actionContexts = engine.replicateTripSeine(tripId); - - assertReplicateTripResults(expectedResults, actionContexts); - - } - - protected void testTripLongline(ObserveReplicationEngine engine, String tripId, ImmutableMap<String, Long> expectedResults) { - - ImmutableSet<ObserveReplicationActionContext> actionContexts = engine.replicateTripLongline(tripId); - - assertReplicateTripResults(expectedResults, actionContexts); - - } - - private void assertReplicateTripResults(ImmutableMap<String, Long> expectedResults, ImmutableSet<ObserveReplicationActionContext> actionContexts) { - - try (ObserveTopiaPersistenceContext persistenceContext = targetTopiaApplicationContext.newPersistenceContext()) { - - for (ObserveReplicationActionContext actionContext : actionContexts) { - - String fullyTableName = actionContext.getFullyTableName(); - - if (!expectedResults.containsKey(fullyTableName.toLowerCase())) { - - CountTableSqlWork countQuery = new CountTableSqlWork(fullyTableName); - Long count = persistenceContext.getSqlSupport().findSingleResult(countQuery); - - System.out.println(fullyTableName + " , " + count); - } - - } - - for (Map.Entry<String, Long> entry : expectedResults.entrySet()) { - String fullyTableName = entry.getKey(); - Long expectedCount = entry.getValue(); - CountTableSqlWork countQuery = new CountTableSqlWork(fullyTableName); - Long count = persistenceContext.getSqlSupport().findSingleResult(countQuery); - - System.out.println("Found: " + fullyTableName + " , " + count); - Assert.assertEquals("Should have found " + expectedCount + " on " + fullyTableName + ", but was " + count, expectedCount, count); - - } - - } - } - - - protected class CountTableSqlWork extends TopiaSqlQuery<Long> { - - private final String fullyTableName; - - public CountTableSqlWork(String fullyTableName) { - this.fullyTableName = fullyTableName; - } - - @Override - public PreparedStatement prepareQuery(Connection connection) throws SQLException { - String sql = "SELECT count(*) FROM " + fullyTableName; - PreparedStatement statement = connection.prepareStatement(sql); - - return statement; - } - - @Override - public Long prepareResult(ResultSet set) throws SQLException { - return set.getLong(1); - } - } - -} \ No newline at end of file diff --git a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateReferentialsTest.java b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateReferentialsTest.java new file mode 100644 index 0000000..64e2ec3 --- /dev/null +++ b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateReferentialsTest.java @@ -0,0 +1,36 @@ +package fr.ird.observe.entities.replication; + +import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; +import fr.ird.observe.test.spi.DatabaseNameConfiguration; +import org.junit.Test; +import org.nuiton.topia.replication.sql.action.todb.ReplicateToDbActionBuilder; +import org.nuiton.topia.replication.sql.action.tosql.ReplicateToSqlActionBuilder; + +/** + * Created on 29/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +@DatabaseNameConfiguration(DatabaseName.referentiel) +public class ReplicateReferentialsTest extends ReplicateTestSupport { + + @Test + public void testReplicateToDb() throws Exception { + + ReplicateToDbActionBuilder actionBuilder = createReplicateToDbActionBuilder(DatabaseName.empty); + ObserveReplicationTables.addReferentialTables(actionBuilder); + testReplicateToDb0(actionBuilder, ObserveFixtures.REFERENTIAL_TABLES_COUNT); + + } + + @Test + public void testReplicateToSql() throws Exception { + + ReplicateToSqlActionBuilder actionBuilder = createReplicateToSqlActionBuilder(); + ObserveReplicationTables.addReferentialTables(actionBuilder); + testReplicateToSql0(actionBuilder); + + } + +} diff --git a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTestSupport.java b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTestSupport.java new file mode 100644 index 0000000..6ce7987 --- /dev/null +++ b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTestSupport.java @@ -0,0 +1,128 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableMap; +import com.google.common.io.Files; +import fr.ird.observe.ObserveTopiaApplicationContext; +import fr.ird.observe.ObserveTopiaPersistenceContext; +import fr.ird.observe.services.ObserveTopiaApplicationContextFactory; +import fr.ird.observe.services.configuration.ObserveDataSourceConfigurationTopiaH2; +import fr.ird.observe.services.dto.DataSourceCreateWithNoReferentialImportException; +import fr.ird.observe.services.dto.IncompatibleDataSourceCreateConfigurationException; +import fr.ird.observe.services.service.AbstractServiceTopiaTest; +import fr.ird.observe.test.DatabaseName; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.junit.Assert; +import org.junit.Before; +import org.nuiton.topia.replication.sql.TopiaSqlReplicationService; +import org.nuiton.topia.replication.sql.action.todb.ReplicateToDbAction; +import org.nuiton.topia.replication.sql.action.todb.ReplicateToDbActionBuilder; +import org.nuiton.topia.replication.sql.action.todb.ReplicateToDbActionRequest; +import org.nuiton.topia.replication.sql.action.tosql.ReplicateToSqlActionBuilder; +import org.nuiton.topia.replication.sql.table.TopiaReplicationTable; +import org.nuiton.topia.replication.sql.table.TopiaReplicationTables; +import org.nuiton.util.StringUtil; + +import java.io.File; +import java.io.IOException; +import java.io.Writer; +import java.nio.charset.StandardCharsets; +import java.util.Map; + +/** + * Created on 29/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +public class ReplicateTestSupport extends AbstractServiceTopiaTest { + + /** Logger. */ + private static final Log log = LogFactory.getLog(ReplicateTestSupport.class); + + protected TopiaSqlReplicationService sqlReplicationService; + + protected File scriptFile; + + @Before + public void setUp() throws Exception { + + ObserveTopiaApplicationContext sourceTopiaApplicationContext = dataSourceResource.getTopiaApplicationContext(); + + sqlReplicationService = sourceTopiaApplicationContext.getSqlReplicationService(); + + } + + protected ReplicateToDbActionBuilder createReplicateToDbActionBuilder(DatabaseName databaseName) throws DataSourceCreateWithNoReferentialImportException, IOException, IncompatibleDataSourceCreateConfigurationException { + + File targetDatabaseDirectory = new File(dataSourceResource.getTestDirectory(), "targetReplication"); + ObserveDataSourceConfigurationTopiaH2 targetTopiaConfiguration = applicationContextResource.createDataSource(dataSourceResource.getDbVersion(), databaseName.name(), targetDatabaseDirectory); + ObserveTopiaApplicationContext targetTopiaApplicationContext = ObserveTopiaApplicationContextFactory.getOrCreateTopiaApplicationContext(targetTopiaConfiguration); + + return sqlReplicationService.newReplicateToDbActionBuilder(targetTopiaApplicationContext); + } + + protected ReplicateToSqlActionBuilder createReplicateToSqlActionBuilder() throws IOException { + + scriptFile = new File(dataSourceResource.getTestDirectory(), "script.sql"); + + Writer writer = Files.newWriter(scriptFile, StandardCharsets.UTF_8); + + return sqlReplicationService.newReplicatetoSqlActionBuilder(writer); + + } + + protected static void assertReplicateTripResults(ReplicateToDbActionRequest replicationRequest, ImmutableMap<String, Long> expectedResults) { + + TopiaReplicationTables tables = replicationRequest.getTables(); + try (ObserveTopiaPersistenceContext persistenceContext = (ObserveTopiaPersistenceContext) replicationRequest.getTargetTopiaApplicationContext().newPersistenceContext()) { + + for (TopiaReplicationTable table : tables) { + + String fullyTableName = table.getFullyTableName(); + + if (!expectedResults.containsKey(fullyTableName.toLowerCase())) { + + Long count = persistenceContext.countTable(fullyTableName); + System.out.println(fullyTableName + " , " + count); + + } + + } + + for (Map.Entry<String, Long> entry : expectedResults.entrySet()) { + String fullyTableName = entry.getKey(); + Long expectedCount = entry.getValue(); + Long count = persistenceContext.countTable(fullyTableName); + + System.out.println("Found: " + fullyTableName + " , " + count); + Assert.assertEquals("Should have found " + expectedCount + " on " + fullyTableName + ", but was " + count, expectedCount, count); + + } + + } + + } + + protected void testReplicateToSql0(ReplicateToSqlActionBuilder actionBuilder) { + + actionBuilder + .build() + .run(); + + if (log.isInfoEnabled()) { + log.info(String.format("Replicate to script (length: %s) :\n%s", StringUtil.convertMemory(scriptFile.length()), scriptFile)); + } + + } + + protected void testReplicateToDb0(ReplicateToDbActionBuilder actionBuilder, ImmutableMap<String, Long> expectedTablesCount) { + + ReplicateToDbAction action = actionBuilder.build(); + + action.run(); + + assertReplicateTripResults(action.getRequest(), expectedTablesCount); + + } + +} diff --git a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripLonglineTest.java b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripLonglineTest.java new file mode 100644 index 0000000..663248d --- /dev/null +++ b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripLonglineTest.java @@ -0,0 +1,79 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableMap; +import fr.ird.observe.services.dto.DataSourceCreateWithNoReferentialImportException; +import fr.ird.observe.services.dto.IncompatibleDataSourceCreateConfigurationException; +import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; +import fr.ird.observe.test.spi.DatabaseNameConfiguration; +import org.junit.Test; +import org.nuiton.topia.replication.sql.action.todb.ReplicateToDbActionBuilder; +import org.nuiton.topia.replication.sql.action.tosql.ReplicateToSqlActionBuilder; + +import java.io.IOException; + +/** + * Created on 29/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +@DatabaseNameConfiguration(DatabaseName.dataForTestLongline) +public class ReplicateTripLonglineTest extends ReplicateTestSupport { + + @Test + public void testReplicateAllTripLonglineToDb() throws Exception { + testReplicateToDb(null, ObserveFixtures.ALL_TRIP_LONGLINE_COUNT); + } + + @Test + public void testReplicateTripLonline1ToDb() throws Exception { + testReplicateToDb(ObserveFixtures.TRIP_LONGLINE_ID_1, ObserveFixtures.TRIP_LONGLINE_1_TABLES_COUNT); + } + + @Test + public void testReplicateTripLonline2ToDb() throws Exception { + testReplicateToDb(ObserveFixtures.TRIP_LONGLINE_ID_2, ObserveFixtures.TRIP_LONGLINE_2_TABLES_COUNT); + } + + @Test + public void testReplicateTripLonline3ToDb() throws Exception { + testReplicateToDb(ObserveFixtures.TRIP_LONGLINE_ID_3, ObserveFixtures.TRIP_LONGLINE_3_TABLES_COUNT); + } + + @Test + public void testReplicateAllTripLonglineToSql() throws Exception { + testReplicateToSql(null); + } + + @Test + public void testReplicateTripLonline1ToSql() throws Exception { + testReplicateToSql(ObserveFixtures.TRIP_LONGLINE_ID_1); + } + + @Test + public void testReplicateTripLonline2ToSql() throws Exception { + testReplicateToSql(ObserveFixtures.TRIP_LONGLINE_ID_2); + } + + @Test + public void testReplicateTripLonline3ToSql() throws Exception { + testReplicateToSql(ObserveFixtures.TRIP_LONGLINE_ID_3); + } + + protected void testReplicateToSql(String tripId) throws IOException, IncompatibleDataSourceCreateConfigurationException, DataSourceCreateWithNoReferentialImportException { + + ReplicateToSqlActionBuilder actionBuilder = createReplicateToSqlActionBuilder(); + ObserveReplicationTables.addTripLongline(actionBuilder, tripId); + testReplicateToSql0(actionBuilder); + + } + + protected void testReplicateToDb(String tripId, ImmutableMap<String, Long> expectedTablesCount) throws DataSourceCreateWithNoReferentialImportException, IOException, IncompatibleDataSourceCreateConfigurationException { + + ReplicateToDbActionBuilder actionBuilder = createReplicateToDbActionBuilder(DatabaseName.referentiel); + ObserveReplicationTables.addTripLongline(actionBuilder, tripId); + testReplicateToDb0(actionBuilder, expectedTablesCount); + + } + +} diff --git a/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripSeineTest.java b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripSeineTest.java new file mode 100644 index 0000000..e5e0eeb --- /dev/null +++ b/observe-services-topia/src/test/java/fr/ird/observe/entities/replication/ReplicateTripSeineTest.java @@ -0,0 +1,77 @@ +package fr.ird.observe.entities.replication; + +import com.google.common.collect.ImmutableMap; +import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; +import fr.ird.observe.test.spi.DatabaseNameConfiguration; +import org.junit.Test; +import org.nuiton.topia.replication.sql.action.todb.ReplicateToDbActionBuilder; +import org.nuiton.topia.replication.sql.action.tosql.ReplicateToSqlActionBuilder; + +import java.io.IOException; + +/** + * Created on 29/12/15. + * + * @author Tony Chemit - chemit@codelutin.com + */ +@DatabaseNameConfiguration(DatabaseName.dataForTestSeine) +public class ReplicateTripSeineTest extends ReplicateTestSupport { + + @Test + public void testReplicateToDbAllTripSeine() throws Exception { + testReplicateToDb(null, ObserveFixtures.ALL_TRIP_SEINE_COUNT); + } + + @Test + public void testReplicateTripSeine1ToDb() throws Exception { + testReplicateToDb(ObserveFixtures.TRIP_SEINE_ID_1, ObserveFixtures.TRIP_SEINE_1_TABLES_COUNT); + } + + @Test + public void testReplicateTripSeine2ToDb() throws Exception { + testReplicateToDb(ObserveFixtures.TRIP_SEINE_ID_2, ObserveFixtures.TRIP_SEINE_2_TABLES_COUNT); + } + + @Test + public void testReplicateTripSeine3ToDb() throws Exception { + testReplicateToDb(ObserveFixtures.TRIP_SEINE_ID_3, ObserveFixtures.TRIP_SEINE_3_TABLES_COUNT); + } + + @Test + public void testReplicateToSqlScriptAllTripSeine() throws Exception { + testReplicateToSql(null); + } + + @Test + public void testReplicateTripSeine1ToSql() throws Exception { + testReplicateToSql(ObserveFixtures.TRIP_SEINE_ID_1); + } + + @Test + public void testReplicateTripSeine2ToSql() throws Exception { + testReplicateToSql(ObserveFixtures.TRIP_SEINE_ID_2); + } + + @Test + public void testReplicateTripSeine3ToSql() throws Exception { + testReplicateToSql(ObserveFixtures.TRIP_SEINE_ID_3); + } + + protected void testReplicateToSql(String tripId) throws IOException { + + ReplicateToSqlActionBuilder actionBuilder = createReplicateToSqlActionBuilder(); + ObserveReplicationTables.addTripSeine(actionBuilder, tripId); + testReplicateToSql0(actionBuilder); + + } + + protected void testReplicateToDb(String tripId, ImmutableMap<String, Long> expectedTablesCount) throws Exception { + + ReplicateToDbActionBuilder actionBuilder = createReplicateToDbActionBuilder(DatabaseName.referentiel); + ObserveReplicationTables.addTripSeine(actionBuilder, tripId); + testReplicateToDb0(actionBuilder, expectedTablesCount); + + } + +} -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit 9cb09ecd322da00eaf7f18f37178930dc3925fd1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:57:47 2015 +0100 Configuration du nouveau service de réplication --- .../main/java/fr/ird/observe/ObserveTopiaApplicationContext.java | 7 +++++++ .../main/java/fr/ird/observe/ObserveTopiaConfigurationFactory.java | 2 ++ 2 files changed, 9 insertions(+) diff --git a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaApplicationContext.java b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaApplicationContext.java index aba848f..38862ab 100644 --- a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaApplicationContext.java +++ b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaApplicationContext.java @@ -32,6 +32,7 @@ import org.nuiton.topia.persistence.TopiaException; import org.nuiton.topia.persistence.jdbc.JdbcH2Helper; import org.nuiton.topia.persistence.jdbc.JdbcHelper; import org.nuiton.topia.replication.TopiaReplicationService; +import org.nuiton.topia.replication.sql.TopiaSqlReplicationService; import org.nuiton.util.GZUtil; import java.io.BufferedInputStream; @@ -54,6 +55,8 @@ public class ObserveTopiaApplicationContext extends AbstractObserveTopiaApplicat public static final String REPLICATION_SERVICE_NAME = "replication"; + public static final String SQL_REPLICATION_SERVICE_NAME = "sqlReplication"; + public static final String DB_VERSION = "db.version"; public static final String AUTO_MIGRATE = "auto.migrate"; @@ -104,6 +107,10 @@ public class ObserveTopiaApplicationContext extends AbstractObserveTopiaApplicat return getServices(TopiaReplicationService.class).get(REPLICATION_SERVICE_NAME); } + public TopiaSqlReplicationService getSqlReplicationService() { + return getServices(TopiaSqlReplicationService.class).get(SQL_REPLICATION_SERVICE_NAME); + } + @Override public void createSchema() { try { diff --git a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaConfigurationFactory.java b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaConfigurationFactory.java index 06a15c8..498acb2 100644 --- a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaConfigurationFactory.java +++ b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaConfigurationFactory.java @@ -30,6 +30,7 @@ import org.apache.commons.logging.LogFactory; import org.nuiton.topia.persistence.jdbc.JdbcConfiguration; import org.nuiton.topia.persistence.jdbc.JdbcConfigurationBuilder; import org.nuiton.topia.replication.TopiaReplicationServiceImpl; +import org.nuiton.topia.replication.sql.TopiaSqlReplicationServiceImpl; import java.io.File; @@ -158,6 +159,7 @@ public class ObserveTopiaConfigurationFactory { ); topiaConfiguration.addDeclaredService(ObserveTopiaApplicationContext.MIGRATION_SERVICE_NAME, ObserveMigrationEngine.class, migrationServiceConfiguration); topiaConfiguration.addDeclaredService(ObserveTopiaApplicationContext.REPLICATION_SERVICE_NAME, TopiaReplicationServiceImpl.class); + topiaConfiguration.addDeclaredService(ObserveTopiaApplicationContext.SQL_REPLICATION_SERVICE_NAME, TopiaSqlReplicationServiceImpl .class); // if (h2Configuration) { // //FIXME J'ai mis ça mais sans conviction car y'a d'autres pb à régler et c3p0 n'est peut-être pas la cause // // On ne veut pas utiliser c3pO dans ce cas -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit f9c2470d6a7255d15537049b35d38d80c6700dd1 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 16:58:24 2015 +0100 Ajout méthode pour compter le nombre d'éléments d'une table --- .../observe/ObserveTopiaPersistenceContext.java | 35 ++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java index 841e2e0..7e2cf3c 100644 --- a/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java +++ b/observe-entities/src/main/java/fr/ird/observe/ObserveTopiaPersistenceContext.java @@ -30,7 +30,12 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.topia.persistence.TopiaDao; import org.nuiton.topia.persistence.internal.AbstractTopiaPersistenceContextConstructorParameter; +import org.nuiton.topia.persistence.support.TopiaSqlQuery; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; import java.util.Date; public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersistenceContext { @@ -91,4 +96,34 @@ public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersiste public <E extends ObserveEntity> TopiaDao<E> getDao(E entity) { return getDao(getType(entity)); } + + public long countTable(String fullyTableName) { + + CountTableSqlWork countQuery = new CountTableSqlWork(fullyTableName); + Long count = getSqlSupport().findSingleResult(countQuery); + return count; + + } + + protected class CountTableSqlWork extends TopiaSqlQuery<Long> { + + private final String fullyTableName; + + public CountTableSqlWork(String fullyTableName) { + this.fullyTableName = fullyTableName; + } + + @Override + public PreparedStatement prepareQuery(Connection connection) throws SQLException { + String sql = "SELECT count(*) FROM " + fullyTableName; + PreparedStatement statement = connection.prepareStatement(sql); + + return statement; + } + + @Override + public Long prepareResult(ResultSet set) throws SQLException { + return set.getLong(1); + } + } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7470_mise_en_place_de_la_date_de_derniere_mise_a_jour in repository tutti. See http://git.codelutin.com/tutti.git commit ca8daeafc9b350b6e51f97a7b90d4ffa49f267da Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Dec 30 17:01:14 2015 +0100 Debut de correction de la javadoc --- .../java/fr/ird/observe/ObserveActionExecutor.java | 2 +- .../src/main/java/fr/ird/observe/ObserveCLAction.java | 2 +- .../src/main/java/fr/ird/observe/ObserveRunner.java | 4 ++-- .../ird/observe/ObserveSwingApplicationContext.java | 6 +++--- .../configuration/ObserveSwingApplicationConfig.java | 2 +- .../fr/ird/observe/db/constants/DataContextType.java | 2 +- .../src/main/java/fr/ird/observe/ui/UIHelper.java | 6 +++--- .../main/java/fr/ird/observe/ui/admin/AdminStep.java | 2 +- .../java/fr/ird/observe/ui/admin/AdminUIHandler.java | 2 +- .../java/fr/ird/observe/ui/admin/AdminUIModel.java | 2 +- .../fr/ird/observe/ui/content/ContentUIHandler.java | 2 +- .../ui/content/ref/ContentReferenceUIHandler.java | 2 +- .../observe/ui/content/table/ContentTableModel.java | 12 ++++++------ .../observe/ui/content/table/ContentTableUIModel.java | 8 ++++---- .../table/impl/seine/ModeSaisieEchantillonEnum.java | 4 ++-- .../fr/ird/observe/ui/storage/ObstunaAdminAction.java | 6 +++--- .../fr/ird/observe/ui/storage/StorageUIHandler.java | 8 ++++---- .../fr/ird/observe/ui/storage/StorageUILauncher.java | 4 ++-- .../fr/ird/observe/ui/storage/StorageUIModel.java | 2 +- .../ui/tree/AbstractObserveTreeCellRenderer.java | 2 +- .../ui/tree/DataSelectionTreeSelectionModel.java | 14 +++++++------- .../main/java/fr/ird/observe/ui/tree/ObserveNode.java | 2 +- .../fr/ird/observe/ui/tree/ObserveTreeHelper.java | 6 +++--- .../java/fr/ird/observe/ui/util/FloatConverter.java | 2 +- .../java/fr/ird/observe/ui/util/SpringUtilities.java | 8 ++++---- .../fr/ird/observe/validation/ValidationService.java | 2 +- .../dto/AbstractEspeceFieldDtoValidator.java | 8 ++++---- .../dto/ActivityFinDeVeilleExistsDtoValidator.java | 12 ++++++------ .../dto/ActivitySimpleSpeedDtoValidator.java | 6 +++--- .../validator/dto/ActivitySpeedDtoValidator.java | 6 +++--- .../web/ObserveWebApplicationListener.java | 2 +- .../web/controller/ObserveWebMotionController.java | 2 +- .../entities/AbstractEspeceFieldValidator.java | 8 ++++---- .../entities/ActivityFinDeVeilleExistsValidator.java | 12 ++++++------ .../entities/ActivitySimpleSpeedValidator.java | 6 +++--- .../validator/entities/ActivitySpeedValidator.java | 6 +++--- .../main/java/fr/ird/observe/entities/Entities.java | 4 ++-- .../fr/ird/observe/entities/gps/GPSRouteImpl.java | 8 ++++---- .../java/fr/ird/observe/entities/gps/GpsPoints.java | 12 ++++++------ .../versions/DataSourceMigrationForVersion_3_1.java | 2 +- .../entities/referentiel/LengthWeightParameters.java | 8 ++++---- .../referentiel/ObserveReferentialEntities.java | 4 ++-- .../fr/ird/observe/entities/referentiel/Programs.java | 2 +- .../fr/ird/observe/entities/seine/ActivitySeines.java | 4 ++-- .../observe/entities/seine/NonTargetCatchImpl.java | 2 +- .../services/dto/constants/ReferentialLocale.java | 4 ++-- .../services/dto/referential/ReferentialDtos.java | 6 +++--- .../java/fr/ird/observe/util/gps/GPSFileReader.java | 10 +++++----- .../java/fr/ird/observe/util/gps/GPSRouteImpl.java | 8 ++++---- .../main/java/fr/ird/observe/util/gps/GPSService.java | 12 ++++++------ .../main/java/fr/ird/observe/util/gps/GpsPoints.java | 12 ++++++------ .../actions/report/AbstractReportServiceRestTest.java | 4 ++-- .../ird/observe/services/ReplicationServiceImpl.java | 4 ++-- .../services/referential/ReferentialServiceImpl.java | 8 ++++---- .../observe/services/ApplicationContextResource.java | 19 ++++++++++++++----- .../src/test/resources/log4j.properties | 2 ++ 56 files changed, 164 insertions(+), 153 deletions(-) diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveActionExecutor.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveActionExecutor.java index dd89d5f..e337ec3 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveActionExecutor.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveActionExecutor.java @@ -242,7 +242,7 @@ public class ObserveActionExecutor extends ActionExecutor { * On surcharge celui offer par SwingWorker car le corepool est à 1 et cela * ne permet pas d'exécuter plusieurs actions en même temps... * returns workersExecutorService. - * <p/> + * * returns the service stored in the appContext or creates it if * necessary. * diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveCLAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveCLAction.java index d9c78c6..4e9afd1 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveCLAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveCLAction.java @@ -42,7 +42,7 @@ import static org.nuiton.i18n.I18n.t; /** * Les actions appellables via {@link ObserveRunner}. - * <p/> + * * Consulter la classe {@link ActionDefinition} pour connaitre les actions * possibles. * diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveRunner.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveRunner.java index 104ceef..c990720 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveRunner.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveRunner.java @@ -636,7 +636,7 @@ public abstract class ObserveRunner extends ApplicationRunner { /** * Permet l'initialisation du contexte applicatif et positionne l'instance * partagée. - * <p/> + * * Note : Cette méthode ne peut être appelée qu'une seule fois. * * @param config la configuration de l'application @@ -678,7 +678,7 @@ public abstract class ObserveRunner extends ApplicationRunner { /** * Method pour vérifier que le moteur de scripting est bien présent. - * <p/> + * * Voir http://forge.codelutin.com/issues/829 * * @since 2.5 diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java index 73c9c02..e523539 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ObserveSwingApplicationContext.java @@ -109,9 +109,9 @@ import static org.nuiton.i18n.I18n.t; /** * Le contexte de l'application. - * <p/> + * * On définit ici toutes les entrées du contexte. - * <p/> + * * Note : cette classe possède une instance partagée accéssible via la méthode * {@link #get()}. * @@ -905,7 +905,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im /** * Construit une source de données sur la base locale de l'application. - * <p/> + * * <b>Note:</b> La base locale doit exister, sinon on soulève une * exeception * diff --git a/observe-application-swing/src/main/java/fr/ird/observe/configuration/ObserveSwingApplicationConfig.java b/observe-application-swing/src/main/java/fr/ird/observe/configuration/ObserveSwingApplicationConfig.java index 5d7d6c5..fb3c09d 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/configuration/ObserveSwingApplicationConfig.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/configuration/ObserveSwingApplicationConfig.java @@ -252,7 +252,7 @@ public class ObserveSwingApplicationConfig extends ApplicationConfig { /** * drapeau pour savoir si on peut utiliser des ui dans l'environnement. - * <p/> + * * Par defaut, on suppose qu'on peut utiliser l'environnement graphique et * si on désactive explicitement ou si pas d'environnement graphique * trouvé. diff --git a/observe-application-swing/src/main/java/fr/ird/observe/db/constants/DataContextType.java b/observe-application-swing/src/main/java/fr/ird/observe/db/constants/DataContextType.java index 51bd8fe..10fb27a 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/db/constants/DataContextType.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/db/constants/DataContextType.java @@ -34,7 +34,7 @@ import fr.ird.observe.services.dto.seine.TripSeineDto; /** * Les types de données connues par le {@link DataContext}. - * <p/> + * * Chaque constant permet de récupérer des données du context de données. * * @author Tony Chemit - chemit@codelutin.com diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/UIHelper.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/UIHelper.java index bc3220a..dcc5651 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/UIHelper.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/UIHelper.java @@ -264,7 +264,7 @@ public class UIHelper extends SwingUtil { /** * Ouvre une demande de confirmation, avant suppression d'une entité. * - * @param <E> le type de l'entité à supprimer + * @param <E>le type de l'entité à supprimer * @param parent le component graphique demande l'action * @param beanClass le tyê de l'entité à supprimer * @param bean l'entité à supprimer @@ -357,7 +357,7 @@ public class UIHelper extends SwingUtil { public static <T extends DataDto> DecoratorTableCellRenderer newDataReferenceDecorateTableCellRenderer(TableCellRenderer renderer, Class<T> entityClass, String context) { - Decorator<?> decorator = ObserveSwingApplicationContext.get().getDecoratorService().getDataReferenceDecorator(entityClass,context); + Decorator<?> decorator = ObserveSwingApplicationContext.get().getDecoratorService().getDataReferenceDecorator(entityClass, context); return new DecoratorTableCellRenderer(renderer, decorator); } @@ -433,7 +433,7 @@ public class UIHelper extends SwingUtil { /** * Open a link coming from a {@link HyperlinkEvent}. - * <p/> + * * And try to open the link if an url in a browser. * * @param he the event to treate diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminStep.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminStep.java index c41b137..39b1f08 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminStep.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminStep.java @@ -51,7 +51,7 @@ import static org.nuiton.i18n.I18n.n; /** * Pour caractériser les étapes (correspond aux onglets de l'ui). - * <p/> + * * Chaque constante représente un onglet de l'ui et est responsable de * l'instanciation des différents objets associés à un onglet, à savoir : * <ul> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIHandler.java index e69e31d..9b12cc9 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIHandler.java @@ -199,7 +199,7 @@ public class AdminUIHandler { /** * Call back lorsque l'état du modèle a changé. - * <p/> + * * Ici, on va rendre accessible (ou pas) les onglets selon l'état du modèle. * * @param ui l'ui concernée diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIModel.java index c18e63c..cc7a22f 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/admin/AdminUIModel.java @@ -438,7 +438,7 @@ public class AdminUIModel extends WizardExtModel<AdminStep> { /** * Pour savoir si on a besoin d'une base source pour l'opération. - * <p/> + * * Actuellement, seul l'opération d'import acces n'a pas besoin d'une telle * base. * diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java index 2e7d081..f155134 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java @@ -1116,7 +1116,7 @@ public abstract class ContentUIHandler<E extends IdDto> { // // if (propertyNames.contains(evt.getPropertyName())) { // if (log.isInfoEnabled()) { -// log.info(String.format("Property %s changed (%s --> %s)", evt.getPropertyName(), evt.getOldValue(), evt.getNewValue())); +// log.info(String.format("Property %s changed (%s → %s)", evt.getPropertyName(), evt.getOldValue(), evt.getNewValue())); // } // // } diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java index 2e59236..b6e2e6d 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIHandler.java @@ -97,7 +97,7 @@ import static org.nuiton.i18n.I18n.t; /** * Controleur d'un écran d'édition du référentiel. * - * @param <E> le type d'entité + * @param <E>le type d'entité * @author Tony Chemit - chemit@codelutin.com * @since 1.4 */ diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableModel.java index f27eb03..d59b1cf 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableModel.java @@ -42,22 +42,22 @@ import java.util.List; /** * Le modele d'un tableau où les données sont une association sur une entité. - * <p/> + * * Ce modèle n'est pas éditable. - * <p/> + * * Les données sont stockées dans la liste {@link #data} qui sert de cache, car * on veut pouvoir valider en temps réel l'entité principale (celle qui contient * l'association), il faut donc toujours que les données de l'association soient * synchronisées. L'utilisation d'un cache est cependant requise car sinon cela * est trop couteux (notamment pour le rendu du tableau...). - * <p/> + * * Le cache sera recalculé à chaque fois que l'on modifie la structure des * données de l'association (ajout d'une entrée, suppression d'une entrée). - * <p/> + * * De plus le cache permet de travailler sur une liste (alors que l'association * n'est peut-être pas ordonnée) et cela facilite les opérations sur les données * du tableau). - * <p/> + * * Le modèle définit plusieurs propriétés : <ul> <li>{@link #editable} : un * drapeau pour savoir si le modèle est editable</li> <li>{@link #modified} : un * drapeau pour savoir si le modèle est modifié</li> <li>{@link #create} : un @@ -152,7 +152,7 @@ public abstract class ContentTableModel<P extends IdDto, B extends IdDto> extend /** * Positionne un bean dans le modèle. - * <p/> + * * Cela va initialiser la liste à utiliser. */ public void attachModel() { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java index c49fa26..ea1a42c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java @@ -71,7 +71,7 @@ public abstract class ContentTableUIModel<E extends IdDto, D extends IdDto> exte /** * Pour savoir si on peut voir les données du l'écran. - * <p/> + * * Cela diffère du mode de l'écran, à utiliser par exemple pour les écrans * d'échantillons lorsqu'aucune discarded n'est effectuée. on se retrouve en * mode ContentMode.READ mais ce n'est pas suffisant. @@ -221,13 +221,13 @@ public abstract class ContentTableUIModel<E extends IdDto, D extends IdDto> exte /** * Le modèle de sélection pour un tableau. - * <p/> + * * Le modèle permet le blocage du changement de ligne selectionnee dans le * tableau lorsque les conditions suivantes sont remplies : - * <p/> + * * - le tableau est editable - une entrée etait precedemment selectionne - * l'entrée en cours d'édition est modifié - * <p/> + * * Si on ne peut pas explicitement changer de ligne d'édition, on demande alors * à l'utilisateur s'il veut sauver l'entrée en cours d'édition (si elle est * valide), ou bien la perte des données (si elle n'est pas valide). diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ModeSaisieEchantillonEnum.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ModeSaisieEchantillonEnum.java index 5b87469..413328d 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ModeSaisieEchantillonEnum.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ModeSaisieEchantillonEnum.java @@ -33,7 +33,7 @@ import static org.nuiton.i18n.I18n.t; public enum ModeSaisieEchantillonEnum { /** * Le mode de saisie par défaut. - * <p/> + * * L'observateur entre un effectif et une classe de taille, il ne peut pas * saisir le poids (celui sera déduit par calcul). */ @@ -41,7 +41,7 @@ public enum ModeSaisieEchantillonEnum { /** * Le mode de saisie par individu. - * <p/> + * * L'observateur saisie les poids individuel, il ne peut pas saisir * d'effectif, l'effectif est de 1. */ diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/ObstunaAdminAction.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/ObstunaAdminAction.java index 886c3e7..12f6a20 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/ObstunaAdminAction.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/ObstunaAdminAction.java @@ -61,7 +61,7 @@ public enum ObstunaAdminAction { /** * pour créer une nouvelle base obstuna. - * <p/> + * * Il faut au préalable avoir exécuté le script {@code create-obstuna_v2.sh}. */ CREATE(n("observe.obstuna.action.create"), @@ -206,7 +206,7 @@ public enum ObstunaAdminAction { }, /** * pour mettre à jour une base distante. - * <p/> + * * Il faut au préalable avoir une base en version {@code 1.0}. */ UPDATE(n("observe.obstuna.action.update"), @@ -274,7 +274,7 @@ public enum ObstunaAdminAction { }, /** * pour mettre à jour la sécurité d'une base obstuna. - * <p/> + * * Il faut au préalable avoir une base en version {@code 1.4}. */ SECURITY(n("observe.obstuna.action.security"), diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIHandler.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIHandler.java index a93c9f2..8f253a7 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIHandler.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIHandler.java @@ -80,7 +80,7 @@ import static org.nuiton.i18n.I18n.t; /** * Le handler des actions sur base. - * <p/> + * * On retrouve ici les méthodes pour importer, exporter, faire des backup, * synchroniser les bases. * @@ -95,7 +95,7 @@ public class StorageUIHandler { /** * Prépare une service de persistance à partir d'un modèle. - * <p/> + * * Le service ne sera pas ouvert. * * @param model le modèle de la source de données @@ -627,10 +627,10 @@ public class StorageUIHandler { /** * Effectue une sauvegarde d'un service de persitances vers le fichier * choisi. - * <p/> + * * On peut spécifier les donnéees à exporter via le paramètre {@code * marees}. - * <p/> + * * <b>Note:</b> Si ce paramètre vaut {@code null}, on export tout. * @param dataSource la source de donnée qui encapsule la base locale * @param dst le fichier de sauvegarde diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java index 6124755..9e844ea 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUILauncher.java @@ -194,10 +194,10 @@ public class StorageUILauncher extends WizardUILancher<StorageStep, StorageUIMod /** * Méthode pour lancer l'action de connexion à une base distante. - * <p/> + * * Cette méthode doit être appelée avant toute action avec une base distante * : - * <p/> + * * synchronisation, récupération du référentiel distant... * * @param context le context applicatif diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIModel.java index b4cf219..8b5b53c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/storage/StorageUIModel.java @@ -157,7 +157,7 @@ public class StorageUIModel extends WizardModel<StorageStep> { /** * Un drapeau pour savoir si l'utilisateur a demandé une sauvegarde de la * base locale. - * <p/> + * * Cette option n'est active uniquement si le drapeau localStorageExist est * à true. */ diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/AbstractObserveTreeCellRenderer.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/AbstractObserveTreeCellRenderer.java index 7571fae..9e028a8 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/AbstractObserveTreeCellRenderer.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/AbstractObserveTreeCellRenderer.java @@ -400,7 +400,7 @@ public abstract class AbstractObserveTreeCellRenderer extends AbstractNavTreeCel /** * @param value the value which should be a node - * @return the cast {@link ObserveNode}, or <code>null</code> if + * @return the cast {@link ObserveNode}, or {@code null} if * value is null. */ public static ObserveNode getNode(Object value) { diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/DataSelectionTreeSelectionModel.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/DataSelectionTreeSelectionModel.java index ae187d4..5bf1023 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/DataSelectionTreeSelectionModel.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/DataSelectionTreeSelectionModel.java @@ -52,11 +52,11 @@ import java.util.Set; /** * Modèle de sélection dans un arbre de navigation prévu pour sélectionner des * données. - * <p/> + * * La sélection se fait en cliquant (reclic pour supprimer). - * <p/> + * * Si on sélectionne un program, alors ses marée sont aussi sélectionnées. - * <p/> + * * Un program est sélectionné uniquement si toutes ses marées le sont. * * @author Tony Chemit - chemit@codelutin.com @@ -527,7 +527,7 @@ public class DataSelectionTreeSelectionModel implements TreeSelectionModel, Prop * Returns an array of all the tree selection listeners registered on this * model. * - * @return all of this model's <code>TreeSelectionListener</code>s or an + * @return all of this model's {@code TreeSelectionListener}s or an * empty array if no tree selection listeners are currently * registered * @see #addTreeSelectionListener @@ -541,7 +541,7 @@ public class DataSelectionTreeSelectionModel implements TreeSelectionModel, Prop /** * Adds a PropertyChangeListener to the listener list. The listener is * registered for all properties. - * <p/> + * * A PropertyChangeEvent will get fired when the selection mode changes. * * @param listener the PropertyChangeListener to be added @@ -571,9 +571,9 @@ public class DataSelectionTreeSelectionModel implements TreeSelectionModel, Prop /** * Returns an array of all the property change listeners registered on this - * <code>DefaultTreeSelectionModel</code>. + * {@code DefaultTreeSelectionModel}. * - * @return all of this model's <code>PropertyChangeListener</code>s or an + * @return all of this model's {@code PropertyChangeListener}s or an * empty array if no property change listeners are currently * registered * @see #addPropertyChangeListener diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNode.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNode.java index ab547b7..2c71c57 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNode.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveNode.java @@ -52,7 +52,7 @@ public class ObserveNode extends NavTreeNode<ObserveNode> { /** * Un etat pour savoir si l'objet (de donnee) encapsule est ouvert. - * <p/> + * * <b>Note:</b> Il faut que l'objet soit de type {@link OpenableDto}. */ protected Boolean open; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java index 3ac8f06..3523b5e 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/tree/ObserveTreeHelper.java @@ -215,7 +215,7 @@ public class ObserveTreeHelper extends NavTreeHelper<ObserveNode> { /** * Charge dans l'ui un nouveau modèle de navigation. - * <p/> + * * <b>Note:</b> cette méthode doit être appelée après tout rechargement de * modèle de naivgation. * @@ -241,7 +241,7 @@ public class ObserveTreeHelper extends NavTreeHelper<ObserveNode> { /** * Nettoye des ui tout ce qui concerne un modèle de navigation. - * <p/> + * * <b>Note:</b> cette méthode doit être appelée avant tout rechargement de * modèle de naivgation. * @@ -293,7 +293,7 @@ public class ObserveTreeHelper extends NavTreeHelper<ObserveNode> { /** * Sélectionne le noeud dans l'arbre de navigation. - * <p/> + * * <b>Note:</b> cette méthode doit être appelée après un rechargement du * modèle de navigation. * diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/util/FloatConverter.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/util/FloatConverter.java index 970eaf1..3eb6981 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/util/FloatConverter.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/util/FloatConverter.java @@ -32,7 +32,7 @@ import static org.nuiton.i18n.I18n.t; /** * A float converter which is not dependant on user locale to obtain the locale * {@code dot} representation. - * <p/> + * * It can transform {@code 0.2} and also {@code 0, 2}. * * @author tchemit - chemit@codelutin.com diff --git a/observe-application-swing/src/main/java/fr/ird/observe/ui/util/SpringUtilities.java b/observe-application-swing/src/main/java/fr/ird/observe/ui/util/SpringUtilities.java index ab89a49..3c111a1 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/ui/util/SpringUtilities.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/ui/util/SpringUtilities.java @@ -77,8 +77,8 @@ public class SpringUtilities { } /** - * Aligns the first <code>rows</code> * <code>cols</code> - * components of <code>parent</code> in + * Aligns the first {@code rows} * {@code cols} + * components of {@code parent} in * a grid. Each component is as big as the maximum * preferred width and height of the components. * The parent is made just big enough to fit them all. @@ -180,8 +180,8 @@ public class SpringUtilities { } /** - * Aligns the first <code>rows</code> * <code>cols</code> - * components of <code>parent</code> in + * Aligns the first {@code rows} * {@code cols} + * components of {@code parent} in * a grid. Each component in a column is as wide as the maximum * preferred width of the components in that column; * height is similarly determined for each row. diff --git a/observe-application-swing/src/main/java/fr/ird/observe/validation/ValidationService.java b/observe-application-swing/src/main/java/fr/ird/observe/validation/ValidationService.java index 8500d46..fc6f35c 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/validation/ValidationService.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/validation/ValidationService.java @@ -98,7 +98,7 @@ public class ValidationService { /** * Obtenir le dictionnaire des validateurs pour les entités donnés. - * <p/> + * * <b>Note:</b> On effectue un parcours des entités pour connaitre les types * d'objets à valider, il faut donc des les collections des entités soient * toutes chargées (ou l'objet attaché à une transaction...). diff --git a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/AbstractEspeceFieldDtoValidator.java b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/AbstractEspeceFieldDtoValidator.java index ccb865f..d88400f 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/AbstractEspeceFieldDtoValidator.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/AbstractEspeceFieldDtoValidator.java @@ -41,13 +41,13 @@ import org.apache.commons.logging.LogFactory; * <li>minWeight</li> * <li>maxWeight</li> * </ul> - * <p/> + * * Lorsqu'il s'agit d'une espece faune, si aucune borne n'est trouvée, alors * on se base sur les bornes définis dans son groupe d'espece (si il est défini). - * <p/> + * * Le paramètre {@link #ratio} permet de spécifier une marge à appliquer sur * les bornes, il s'agit d'un pourcentage décimal. - * <p/> + * * Example : si ratio = 10, alors on utilise les bornes suivantes : * <pre> * bMin -10% et bMax + 10% @@ -101,7 +101,7 @@ public abstract class AbstractEspeceFieldDtoValidator extends FieldValidatorSupp /** * la stack de validation interceptée lors de la création du validateur. - * <p/> + * * Utilisée pour pousser des données dans le context. */ protected ValueStack valueStack; diff --git a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivityFinDeVeilleExistsDtoValidator.java b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivityFinDeVeilleExistsDtoValidator.java index 742b6ab..0c2033d 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivityFinDeVeilleExistsDtoValidator.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivityFinDeVeilleExistsDtoValidator.java @@ -34,12 +34,12 @@ import org.apache.commons.logging.LogFactory; * <!-- START SNIPPET: javadoc --> VesselActivityFieldValidator vérifie que * l'activity vessel d'une activité est cohérente. <!-- END SNIPPET: javadoc * --> - * <p/> - * <p/> + * + * * <!-- START SNIPPET: parameters --> <ul> <li>fieldName - The field name this * validator is validating. Required if using Plain-Validator Syntax otherwise * not required</li> </ul> <!-- END SNIPPET: parameters --> - * <p/> + * * <pre> * <!-- START SNIPPET: examples --> * <validators> @@ -49,7 +49,7 @@ import org.apache.commons.logging.LogFactory; * <message>loch matin must be greater or equals to last * closed route loch soir</message> * </validator> - * <p/> + * * <!-- Field-Validator Syntax --> * <field name="startLogValue"> * <field-validator type="invalidLochMatin"> @@ -73,11 +73,11 @@ public class ActivityFinDeVeilleExistsDtoValidator extends FieldValidatorSupport /** * l'état attendu : la route possède-t-ell ou non une activity de fin de * veille. - * <p/> + * * Si le drapeau vaut {@code true}, la route est valide si elle possède une * activité de fin de veille (cas de vérification de la présence de * l'activité sur l'ensemble au niveau de sa route). - * <p/> + * * Si le drapeau vaut {@code false}, la route est valide si elle ne possède * déjà d'activité de fin de veille (cas de création d'une nouvelle * activité). diff --git a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySimpleSpeedDtoValidator.java b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySimpleSpeedDtoValidator.java index 005df01..69c4c15 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySimpleSpeedDtoValidator.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySimpleSpeedDtoValidator.java @@ -38,12 +38,12 @@ import org.apache.commons.logging.LogFactory; * <!-- START SNIPPET: javadoc --> ActivitySimpleSpeedValidator vérifie que * la cohérence de vitesse entre l'activité courante et sa précédente. <!-- END SNIPPET: javadoc * --> - * <p/> - * <p/> + * + * * <!-- START SNIPPET: parameters --> <ul> <li>fieldName - The field name this * validator is validating. Required if using Plain-Validator Syntax otherwise * not required</li> </ul> <!-- END SNIPPET: parameters --> - * <p/> + * * <pre> * <!-- START SNIPPET: examples --> * <validators> diff --git a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySpeedDtoValidator.java b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySpeedDtoValidator.java index 5c69c48..4e7cd97 100644 --- a/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySpeedDtoValidator.java +++ b/observe-application-swing/src/main/java/fr/ird/observe/validation/validator/dto/ActivitySpeedDtoValidator.java @@ -38,12 +38,12 @@ import org.nuiton.validator.xwork2.field.CollectionFieldExpressionValidator; * <!-- START SNIPPET: javadoc --> ActivityspeedValidator vérifie que * la cohérence de vitesses entre toutes les activités d'une route. <!-- END SNIPPET: javadoc * --> - * <p/> - * <p/> + * + * * <!-- START SNIPPET: parameters --> <ul> <li>fieldName - The field name this * validator is validating. Required if using Plain-Validator Syntax otherwise * not required</li> </ul> <!-- END SNIPPET: parameters --> - * <p/> + * * <pre> * <!-- START SNIPPET: examples --> * <validators> diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationListener.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationListener.java index a5816f6..7e7e0fd 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationListener.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/ObserveWebApplicationListener.java @@ -36,7 +36,7 @@ import org.debux.webmotion.server.call.ServerContext; import org.debux.webmotion.server.mapping.Mapping; /** - * @author Tony Chemit : chemit@codelutin.com + * @author Tony Chemit - tchemit@codelutin.com */ public class ObserveWebApplicationListener implements WebMotionServerListener { diff --git a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java index 48270bb..1080e43 100644 --- a/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java +++ b/observe-application-web/src/main/java/fr/ird/observe/application/web/controller/ObserveWebMotionController.java @@ -29,7 +29,7 @@ import fr.ird.observe.application.web.security.ObserveWebSecurityApplicationCont import org.debux.webmotion.server.WebMotionController; /** - * @author Tony Chemit : chemit@codelutin.com + * @author Tony Chemit - tchemit@codelutin.com */ public abstract class ObserveWebMotionController extends WebMotionController { diff --git a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/AbstractEspeceFieldValidator.java b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/AbstractEspeceFieldValidator.java index 708260b..eca4728 100644 --- a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/AbstractEspeceFieldValidator.java +++ b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/AbstractEspeceFieldValidator.java @@ -40,13 +40,13 @@ import org.apache.commons.logging.LogFactory; * <li>minWeight</li> * <li>maxWeight</li> * </ul> - * <p/> + * * Lorsqu'il s'agit d'une espece faune, si aucune borne n'est trouvée, alors * on se base sur les bornes définis dans son groupe d'espece (si il est défini). - * <p/> + * * Le paramètre {@link #ratio} permet de spécifier une marge à appliquer sur * les bornes, il s'agit d'un pourcentage décimal. - * <p/> + * * Example : si ratio = 10, alors on utilise les bornes suivantes : * <pre> * bMin -10% et bMax + 10% @@ -100,7 +100,7 @@ public abstract class AbstractEspeceFieldValidator extends FieldValidatorSupport /** * la stack de validation interceptée lors de la création du validateur. - * <p/> + * * Utilisée pour pousser des données dans le context. */ protected ValueStack valueStack; diff --git a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivityFinDeVeilleExistsValidator.java b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivityFinDeVeilleExistsValidator.java index 751ca75..cec2f95 100644 --- a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivityFinDeVeilleExistsValidator.java +++ b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivityFinDeVeilleExistsValidator.java @@ -35,12 +35,12 @@ import org.apache.commons.logging.LogFactory; * <!-- START SNIPPET: javadoc --> VesselActivityFieldValidator vérifie que * l'activity vessel d'une activité est cohérente. <!-- END SNIPPET: javadoc * --> - * <p/> - * <p/> + * + * * <!-- START SNIPPET: parameters --> <ul> <li>fieldName - The field name this * validator is validating. Required if using Plain-Validator Syntax otherwise * not required</li> </ul> <!-- END SNIPPET: parameters --> - * <p/> + * * <pre> * <!-- START SNIPPET: examples --> * <validators> @@ -50,7 +50,7 @@ import org.apache.commons.logging.LogFactory; * <message>loch matin must be greater or equals to last * closed route loch soir</message> * </validator> - * <p/> + * * <!-- Field-Validator Syntax --> * <field name="startLogValue"> * <field-validator type="invalidLochMatin"> @@ -74,11 +74,11 @@ public class ActivityFinDeVeilleExistsValidator extends FieldValidatorSupport { /** * l'état attendu : la route possède-t-ell ou non une activity de fin de * veille. - * <p/> + * * Si le drapeau vaut {@code true}, la route est valide si elle possède une * activité de fin de veille (cas de vérification de la présence de * l'activité sur l'ensemble au niveau de sa route). - * <p/> + * * Si le drapeau vaut {@code false}, la route est valide si elle ne possède * déjà d'activité de fin de veille (cas de création d'une nouvelle * activité). diff --git a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySimpleSpeedValidator.java b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySimpleSpeedValidator.java index 0dbfe0c..b7b6e41 100644 --- a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySimpleSpeedValidator.java +++ b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySimpleSpeedValidator.java @@ -37,12 +37,12 @@ import org.apache.commons.logging.LogFactory; * <!-- START SNIPPET: javadoc --> ActivitySimpleSpeedValidator vérifie que * la cohérence de vitesse entre l'activité courante et sa précédente. <!-- END SNIPPET: javadoc * --> - * <p/> - * <p/> + * + * * <!-- START SNIPPET: parameters --> <ul> <li>fieldName - The field name this * validator is validating. Required if using Plain-Validator Syntax otherwise * not required</li> </ul> <!-- END SNIPPET: parameters --> - * <p/> + * * <pre> * <!-- START SNIPPET: examples --> * <validators> diff --git a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySpeedValidator.java b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySpeedValidator.java index bfb68d2..80d63af 100644 --- a/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySpeedValidator.java +++ b/observe-entities-validation/src/main/java/fr/ird/observe/validation/validator/entities/ActivitySpeedValidator.java @@ -37,12 +37,12 @@ import org.nuiton.validator.xwork2.field.CollectionFieldExpressionValidator; * <!-- START SNIPPET: javadoc --> ActivityspeedValidator vérifie que * la cohérence de vitesses entre toutes les activités d'une route. <!-- END SNIPPET: javadoc * --> - * <p/> - * <p/> + * + * * <!-- START SNIPPET: parameters --> <ul> <li>fieldName - The field name this * validator is validating. Required if using Plain-Validator Syntax otherwise * not required</li> </ul> <!-- END SNIPPET: parameters --> - * <p/> + * * <pre> * <!-- START SNIPPET: examples --> * <validators> diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/Entities.java b/observe-entities/src/main/java/fr/ird/observe/entities/Entities.java index b6a63b4..0084e9b 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/Entities.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/Entities.java @@ -246,9 +246,9 @@ public class Entities { /** * FIXME : cela n'est pas vrai !!! (voir l'algortihme de replication qui * detecte tout seul l'ordre a utiliser). - * <p/> + * * la liste des entités non référentiel dans l'ordre de précédence. - * <p/> + * * Ainsi on pourra lors des duplications de base parcourir cet ordre sans * avoir à se préoccuper d'éventuels viloations d'intégrités en base (sur * les clef étrangères des associations). diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/gps/GPSRouteImpl.java b/observe-entities/src/main/java/fr/ird/observe/entities/gps/GPSRouteImpl.java index 2e00f47..73bd435 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/gps/GPSRouteImpl.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/gps/GPSRouteImpl.java @@ -34,16 +34,16 @@ public class GPSRouteImpl extends GPSRoute { /** * Permet de construire un point pour une date donnée. - * <p/> + * * On recherche parmis les intervalles acceptables les deux points entourant * la date donnée. - * <p/> + * * Si on a réussi à trouver deux points adéquates, alors on construit un * nouveau point en utilisant la formule d'interpolation pour calculer les * coordonnées du point. * * @param date la date du point à construire - * @return le nouveau point construit ou <code>null</code> si on a pas + * @return le nouveau point construit ou {@code null} si on a pas * trouvé un intervalle de points acdeptables pour la date donnée. */ @Override @@ -92,7 +92,7 @@ public class GPSRouteImpl extends GPSRoute { * * @param intervalle l'intervalle de points à parcourir * @param date la date donnée - * @return l'index du point trouvé ou <code>-1</code> si pas de point + * @return l'index du point trouvé ou {@code -1} si pas de point * adéquate trouvé. */ @Override diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/gps/GpsPoints.java b/observe-entities/src/main/java/fr/ird/observe/entities/gps/GpsPoints.java index c957e00..cca4455 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/gps/GpsPoints.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/gps/GpsPoints.java @@ -73,11 +73,11 @@ public class GpsPoints { /** * Calcule la distance entre deux points (en kilometres). - * <p/> + * * Il s'agit d'une approxiation utilisant la méthode d'orthodromie. - * <p/> + * * http://fr.wikipedia.org/wiki/Orthodromie - * <p/> + * * d = R * arccos(cos(lat1) * cos(lat2) *cos(long2 - long1) + sin(lat1) * *sin(lat2)) * @@ -92,11 +92,11 @@ public class GpsPoints { /** * Calcule la distance entre deux points (en miles nautique). - * <p/> + * * Il s'agit d'une approxiation utilisant la méthode d'orthodromie. - * <p/> + * * http://fr.wikipedia.org/wiki/Orthodromie - * <p/> + * * d = R * arccos(cos(lat1) * cos(lat2) *cos(long2 - long1) + sin(lat1) * *sin(lat2)) * diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_3_1.java b/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_3_1.java index 26cfb7f..3775113 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_3_1.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/migration/versions/DataSourceMigrationForVersion_3_1.java @@ -36,7 +36,7 @@ import java.util.List; /** * Migration class for version {@code 3.1}. - * <p/> + * * Created on 10/10/13. * * @author Tony Chemit - chemit@codelutin.com diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/LengthWeightParameters.java b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/LengthWeightParameters.java index aa22a75..e52abe4 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/LengthWeightParameters.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/LengthWeightParameters.java @@ -80,15 +80,15 @@ public class LengthWeightParameters { /** * Recherche d'un {@link LengthWeightParameter} à partir des paramètres donnés. - * <p/> + * * La recherche peut ne peut être aussi exacte que les paramètres donnés : - * <p/> + * * Dans le cas d'une espèce faune, si non trouvé alors on recherche sur son * speciesGroup d'espèce. - * <p/> + * * Si non trouvé pour l'océan donné (et que celui-ci est non null), alors on * recherche avec un ocean vide. - * <p/> + * * Si non trouvé sur le gender (et que le gender n'est pas indéterminé) , alors * on recherche avec le gender indéterminé (gender=0). * diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/ObserveReferentialEntities.java b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/ObserveReferentialEntities.java index c9ef0e4..a15c73a 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/ObserveReferentialEntities.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/ObserveReferentialEntities.java @@ -57,7 +57,7 @@ public class ObserveReferentialEntities { * entités qui ne sont pas actives {@link ObserveReferentialEntity#getStatus()} * * @param list la liste des entitées à filtrer - * @param <E> le type des entites du référentiel + * @param <E> le type des entites du référentiel */ public static <E extends ObserveReferentialEntity> void filterReferentielListByStatus( List<E> list) { @@ -71,7 +71,7 @@ public class ObserveReferentialEntities { * * @param list la liste des entitées à filtrer * @param predicate le prédicate à appliquer pour conserver les valeurs - * @param <E> le type des entites du référentiel + * @param <E> le type des entites du référentiel */ public static <E extends ObserveReferentialEntity> void filterReferentielList( List<E> list, diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Programs.java b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Programs.java index 7635c4b..f577332 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Programs.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/referentiel/Programs.java @@ -39,7 +39,7 @@ public class Programs { /** * Comparateur de {@link Program} basé sur la propriété {@link * Program#getLabel2()}. - * <p/> + * * FIXME-TC-20100205 : il faudrait que le comparateur soit sur le bon * libelle selon la langue de base choisie... */ diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/seine/ActivitySeines.java b/observe-entities/src/main/java/fr/ird/observe/entities/seine/ActivitySeines.java index 7ceb58c..634be0e 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/seine/ActivitySeines.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/seine/ActivitySeines.java @@ -120,9 +120,9 @@ public class ActivitySeines { /** * Calcule le type de banc d'une activité. - * <p/> + * * par défaut, on considère la caléee sur BL. - * <p/> + * * Si l'activité possède au moins un système observe de type BO alors la * caléee est de type BO. * diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/seine/NonTargetCatchImpl.java b/observe-entities/src/main/java/fr/ird/observe/entities/seine/NonTargetCatchImpl.java index 72327f9..4687589 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/seine/NonTargetCatchImpl.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/seine/NonTargetCatchImpl.java @@ -29,7 +29,7 @@ import org.apache.commons.logging.LogFactory; /** * L'implantation par defaut d'une discarded faune. - * <p/> + * * Une discarded faune implante le contrat {@link LengthWeightParameter} sur les champs * <ul> * <li>{@link #meanWeight}</li> diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/constants/ReferentialLocale.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/constants/ReferentialLocale.java index 303a73b..621a2db 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/services/dto/constants/ReferentialLocale.java +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/constants/ReferentialLocale.java @@ -30,10 +30,10 @@ import java.util.Locale; /** * Pour définir les différentes langues du référentiel. - * <p/> + * * La position de chaque constante définit l'index du champs libelleXXX à * utiliser. - * <p/> + * * En base on a actuellement 8 langues possibles, pour gérer une nouvelle * langue, il faut définir une nouvelle constante ici. * diff --git a/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ReferentialDtos.java b/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ReferentialDtos.java index 446d59d..502a2c6 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ReferentialDtos.java +++ b/observe-services-model/src/main/java/fr/ird/observe/services/dto/referential/ReferentialDtos.java @@ -133,7 +133,7 @@ public class ReferentialDtos extends AbstractReferentialDtos { * entités qui ne sont pas actives {@link ReferentialDto#getStatus()} * * @param list la liste des entitées à filtrer - * @param <E> le type des entites du référentiel + * @param <E> le type des entites du référentiel */ public static <E extends ReferentialDto> void filterReferentialListByStatus(List<E> list) { filterReferentielList(list, (Predicate<E>) IS_ACTIF_PREDICATE); @@ -149,7 +149,7 @@ public class ReferentialDtos extends AbstractReferentialDtos { * * @param list la liste des entitées à filtrer * @param predicate le prédicate à appliquer pour conserver les valeurs - * @param <E> le type des entites du référentiel + * @param <E> le type des entites du référentiel */ public static <E extends ReferentialDto> void filterReferentielList( List<E> list, @@ -176,7 +176,7 @@ public class ReferentialDtos extends AbstractReferentialDtos { * * @param list la liste des entitées à filtrer * @param predicate le prédicate à appliquer pour conserver les valeurs - * @param <E> le type des entites du référentiel + * @param <E> le type des entites du référentiel */ public static <E extends ReferentialDto> void filterReferentialReferenceList( List<ReferentialReference<E>> list, diff --git a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSFileReader.java b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSFileReader.java index f8608b7..0d959e6 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSFileReader.java +++ b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSFileReader.java @@ -40,7 +40,7 @@ import java.util.List; /** * Classe responsable de la construction du modèle {@link GPSRoute} à partir - * d'un fichier de traces GPS au format <code>GPX</code>. + * d'un fichier de traces GPS au format {@code GPX}. * * @author Tony Chemit - chemit@codelutin.com * @since 1.0 @@ -116,7 +116,7 @@ public class GPSFileReader { * Détecte sur l'ensemble des points de la route ceux qui sont acceptables, * c'est à dire que l'on accepte uniquement les points dont les intervalles * de temps ne dépassent pas {@link #maxDelay}. - * <p/> + * * Les intervalles de poinbts acceptables seront contenus dans {@link * GPSRoute#acceptedInterval}, les intervalles rejetés seront sauvés dans * {@link GPSRoute#rejectedInterval} @@ -225,10 +225,10 @@ public class GPSFileReader { /** * Parse le fichier xml donné et construit le modèle. - * <p/> + * * Pour le moment on se limite à traiter le premier segment - * (<code>trkseg</code>) de la première route (<code>trk</code>). - * <p/> + * ({@code trkseg}) de la première route ({@code trk}). + * * Lors de la découverte des points, on ne retient pas les points dont la * vitesse par rapport au précédent point dépasse {@link * #getMaxSpeedAsMilliSecondes()}. diff --git a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSRouteImpl.java b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSRouteImpl.java index f8d772f..ae0b615 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSRouteImpl.java +++ b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSRouteImpl.java @@ -34,16 +34,16 @@ public class GPSRouteImpl extends GPSRoute { /** * Permet de construire un point pour une date donnée. - * <p/> + * * On recherche parmis les intervalles acceptables les deux points entourant * la date donnée. - * <p/> + * * Si on a réussi à trouver deux points adéquates, alors on construit un * nouveau point en utilisant la formule d'interpolation pour calculer les * coordonnées du point. * * @param date la date du point à construire - * @return le nouveau point construit ou <code>null</code> si on a pas + * @return le nouveau point construit ou {@code null} si on a pas * trouvé un intervalle de points acdeptables pour la date donnée. */ @Override @@ -92,7 +92,7 @@ public class GPSRouteImpl extends GPSRoute { * * @param intervalle l'intervalle de points à parcourir * @param date la date donnée - * @return l'index du point trouvé ou <code>-1</code> si pas de point + * @return l'index du point trouvé ou {@code -1} si pas de point * adéquate trouvé. */ @Override diff --git a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSService.java b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSService.java index d927f80..f6e6496 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSService.java +++ b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GPSService.java @@ -52,11 +52,11 @@ public class GPSService { /** * Calcule la distance entre deux points (en kilometres). - * <p/> + * * Il s'agit d'une approxiation utilisant la méthode d'orthodromie. - * <p/> + * * http://fr.wikipedia.org/wiki/Orthodromie - * <p/> + * * d = R * arccos(cos(lat1) * cos(lat2) *cos(long2 - long1) + sin(lat1) * *sin(lat2)) * @@ -71,11 +71,11 @@ public class GPSService { /** * Calcule la distance entre deux points (en miles nautique). - * <p/> + * * Il s'agit d'une approxiation utilisant la méthode d'orthodromie. - * <p/> + * * http://fr.wikipedia.org/wiki/Orthodromie - * <p/> + * * d = R * arccos(cos(lat1) * cos(lat2) *cos(long2 - long1) + sin(lat1) * *sin(lat2)) * diff --git a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GpsPoints.java b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GpsPoints.java index 0383c27..a1133c4 100644 --- a/observe-services-model/src/main/java/fr/ird/observe/util/gps/GpsPoints.java +++ b/observe-services-model/src/main/java/fr/ird/observe/util/gps/GpsPoints.java @@ -95,11 +95,11 @@ public class GpsPoints { /** * Calcule la distance entre deux points (en kilometres). - * <p/> + * * Il s'agit d'une approxiation utilisant la méthode d'orthodromie. - * <p/> + * * http://fr.wikipedia.org/wiki/Orthodromie - * <p/> + * * d = R * arccos(cos(lat1) * cos(lat2) *cos(long2 - long1) + sin(lat1) * *sin(lat2)) * @@ -114,11 +114,11 @@ public class GpsPoints { /** * Calcule la distance entre deux points (en miles nautique). - * <p/> + * * Il s'agit d'une approxiation utilisant la méthode d'orthodromie. - * <p/> + * * http://fr.wikipedia.org/wiki/Orthodromie - * <p/> + * * d = R * arccos(cos(lat1) * cos(lat2) *cos(long2 - long1) + sin(lat1) * *sin(lat2)) * diff --git a/observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceRestTest.java b/observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceRestTest.java index 1832b95..3fd831d 100644 --- a/observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceRestTest.java +++ b/observe-services-rest/src/test/java/fr/ird/observe/services/service/actions/report/AbstractReportServiceRestTest.java @@ -43,7 +43,7 @@ import java.util.Map; /** * Classe abstraite de test d'un report. - * <p/> + * * On définit ici le mécanisme pour tester unitairement un report et son * résultat. * @@ -84,7 +84,7 @@ public abstract class AbstractReportServiceRestTest extends AbstractServiceRestT /** * L'unique test à lancer. - * <p/> + * * On vérifie : * <ul> * <li>la syntaxe du report via {@link #testReportSyntax(Report)}</li> diff --git a/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/ReplicationServiceImpl.java b/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/ReplicationServiceImpl.java index b84548c..5148447 100644 --- a/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/ReplicationServiceImpl.java +++ b/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/ReplicationServiceImpl.java @@ -295,10 +295,10 @@ public class ReplicationServiceImpl extends AbstractObserveService implements Re /** * Duplication de l'unique donnée observateur depuis ce service vers le service donné. - * <p/> + * * La duplication utilise une transaction dédiée afin de ne pas saturer le serveur * et aussi une meilleure maitrise du rollback en cas d'une erreur. - * <p/> + * * Voir http://forge.codelutin.com/issues/4837 * * @param srcService le service source diff --git a/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/referential/ReferentialServiceImpl.java b/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/referential/ReferentialServiceImpl.java index a50c9d6..8193714 100644 --- a/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/referential/ReferentialServiceImpl.java +++ b/observe-services-topia/src/main/fromRefactor/fr/ird/observe/services/referential/ReferentialServiceImpl.java @@ -204,15 +204,15 @@ public class ReferentialServiceImpl extends AbstractObserveService implements Re /** * Recherche d'un {@link LengthWeightParameter} à partir des paramètres donnés. - * <p/> + * * La recherche peut ne peut être aussi exacte que les paramètres donnés : - * <p/> + * * Dans le cas d'une espèce faune, si non trouvé alors on recherche sur son * speciesGroup d'espèce. - * <p/> + * * Si non trouvé pour l'océan donné (et que celui-ci est non null), alors on * recherche avec un ocean vide. - * <p/> + * * Si non trouvé sur le gender (et que le gender n'est pas indéterminé) , alors * on recherche avec le gender indéterminé (gender=0). * diff --git a/observe-services-topia/src/test/java/fr/ird/observe/services/ApplicationContextResource.java b/observe-services-topia/src/test/java/fr/ird/observe/services/ApplicationContextResource.java index c53aa19..a44a1b0 100644 --- a/observe-services-topia/src/test/java/fr/ird/observe/services/ApplicationContextResource.java +++ b/observe-services-topia/src/test/java/fr/ird/observe/services/ApplicationContextResource.java @@ -31,8 +31,9 @@ import fr.ird.observe.services.dto.DataSourceCreateConfigurationDto; import fr.ird.observe.services.dto.DataSourceCreateWithNoReferentialImportException; import fr.ird.observe.services.dto.IncompatibleDataSourceCreateConfigurationException; import fr.ird.observe.services.dto.constants.ReferentialLocale; -import fr.ird.observe.services.service.AbstractServiceTopiaTest; import fr.ird.observe.services.service.DataSourceService; +import fr.ird.observe.test.DatabaseName; +import fr.ird.observe.test.ObserveFixtures; import fr.ird.observe.test.TestHelper; import fr.ird.observe.test.spi.DatabaseNameConfiguration; import fr.ird.observe.test.spi.DatabaseVersionConfiguration; @@ -98,6 +99,7 @@ public class ApplicationContextResource implements TestRule { ObserveDataSourceConfigurationTopiaH2 dataSourceConfiguration; + boolean createEmptydatabase = DatabaseName.empty.name().equals(dbName); boolean sharedDatabaseExist = sharedDatabaseFile.exists(); if (!sharedDatabaseExist) { @@ -105,11 +107,18 @@ public class ApplicationContextResource implements TestRule { log.info("Create shared database: " + dbVersion.toString() + "/" + dbName + " to " + sharedDatabaseFile); } - byte[] databaseToImportContent = dataSourcesForTestManager.getDatabaseScriptContent(dbVersion, dbName); - DataSourceService dataSourceService = newService(sharedDatabaseConfiguration, DataSourceService.class); DataSourceCreateConfigurationDto createConfiguration = new DataSourceCreateConfigurationDto(); - createConfiguration.setImportDatabase(databaseToImportContent); + +// if (!createEmptydatabase) { + + byte[] databaseToImportContent = dataSourcesForTestManager.getDatabaseScriptContent(dbVersion, dbName); + createConfiguration.setImportDatabase(databaseToImportContent); + +// } else { +// createConfiguration.setCanCreateEmptyDatabase(true); +// +// } dataSourceService.create(sharedDatabaseConfiguration, createConfiguration); } @@ -132,7 +141,7 @@ public class ApplicationContextResource implements TestRule { } - dataSourceConfiguration.setModelVersion(Versions.valueOf(AbstractServiceTopiaTest.DEFAULT_VERSION)); + dataSourceConfiguration.setModelVersion(Versions.valueOf(ObserveFixtures.DEFAULT_VERSION)); return dataSourceConfiguration; diff --git a/observe-services-topia/src/test/resources/log4j.properties b/observe-services-topia/src/test/resources/log4j.properties index 0f21768..fb23e8d 100644 --- a/observe-services-topia/src/test/resources/log4j.properties +++ b/observe-services-topia/src/test/resources/log4j.properties @@ -30,3 +30,5 @@ log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%c:%L) %M - %m%n #log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) %M - %m%n log4j.logger.fr.ird.observe=INFO +log4j.logger.org.nuiton.topia.replication.sql=DEBUG +log4j.logger.org.nuiton.topia.persistence.util.TopiaEntityHelper=INFO -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm