branch develop updated (8022090 -> b0b5fe7)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git from 8022090 Correction de l'affichage d'une enum (nécessite i18n 3.6.2) new 1d57884 improve logs new b0b5fe7 Let's generate the mapping inside the sources The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit b0b5fe74263366786f8e0f198388002465bf51c9 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 7 13:19:56 2016 +0200 Let's generate the mapping inside the sources commit 1d5788495ecbb014b0ab97412d5b80817eae9f64 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 7 13:09:59 2016 +0200 improve logs Summary of changes: application-web/pom.xml | 10 + application-web/src/main/resources/mapping | 231 +++++++++++++++++++++ application-web/src/main/webmotion/mapping | 71 ------- .../maven/plugins/toolbox/CheckApiMojo.java | 13 +- .../toolbox/GenerateWebmotionMappingMojo.java | 76 +++---- 5 files changed, 294 insertions(+), 107 deletions(-) create mode 100644 application-web/src/main/resources/mapping delete mode 100644 application-web/src/main/webmotion/mapping -- 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 develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit 1d5788495ecbb014b0ab97412d5b80817eae9f64 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 7 13:09:59 2016 +0200 improve logs --- .../fr/ird/observe/maven/plugins/toolbox/CheckApiMojo.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/CheckApiMojo.java b/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/CheckApiMojo.java index c3a2992..90caadb 100644 --- a/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/CheckApiMojo.java +++ b/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/CheckApiMojo.java @@ -169,6 +169,8 @@ public class CheckApiMojo extends AbstractPlugin { this.translationMap = Collections.unmodifiableMap(translationMap); + getLog().info(translationMap.size() + " type(s) detected."); + } @Override @@ -204,6 +206,9 @@ public class CheckApiMojo extends AbstractPlugin { } + getLog().info(translationMap.size() + " class(es) checked."); + getLog().info(methodCount + " method(s) checked."); + } @Override @@ -226,6 +231,8 @@ public class CheckApiMojo extends AbstractPlugin { this.verbose = verbose; } + private int methodCount; + private void checkClass(Class<?> sourceClass, Class<?> targetClass) throws MissingMethodException, MismatchMethodParameterNameException, MissingClassException { Method[] sourceDeclaredMethods = sourceClass.getDeclaredMethods(); @@ -242,6 +249,8 @@ public class CheckApiMojo extends AbstractPlugin { for (Method sourceMethod : sourceDeclaredMethods) { + methodCount++; + Method targetMethod; try { targetMethod = targetClass.getDeclaredMethod(sourceMethod.getName(), (Class<?>[]) sourceMethod.getParameterTypes()); @@ -283,7 +292,9 @@ public class CheckApiMojo extends AbstractPlugin { } - getLog().info(targetClass.getName() + " is conform to #" + sourceClass.getName()); + if (isVerbose()) { + getLog().info(targetClass.getName() + " is conform to #" + sourceClass.getName()); + } } -- 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 develop in repository observe. See https://gitlab.nuiton.org/codelutin/observe.git commit b0b5fe74263366786f8e0f198388002465bf51c9 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Sep 7 13:19:56 2016 +0200 Let's generate the mapping inside the sources --- application-web/pom.xml | 10 + application-web/src/main/resources/mapping | 231 +++++++++++++++++++++ application-web/src/main/webmotion/mapping | 71 ------- .../toolbox/GenerateWebmotionMappingMojo.java | 76 +++---- 4 files changed, 282 insertions(+), 106 deletions(-) diff --git a/application-web/pom.xml b/application-web/pom.xml index 8884738..4c5b755 100644 --- a/application-web/pom.xml +++ b/application-web/pom.xml @@ -168,6 +168,16 @@ <build> + <resources> + <resource> + <directory>${project.basedir}/src/main/resources</directory> + <filtering>true</filtering> + <includes> + <include>mapping</include> + </includes> + </resource> + + </resources> <plugins> <plugin> diff --git a/application-web/src/main/resources/mapping b/application-web/src/main/resources/mapping new file mode 100644 index 0000000..e067451 --- /dev/null +++ b/application-web/src/main/resources/mapping @@ -0,0 +1,231 @@ +### +# #%L +# ObServe :: Web Application +# %% +# Copyright (C) 2015 IRD, Codelutin, Tony Chemit +# %% +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this program. If not, see +# <http://www.gnu.org/licenses/gpl-3.0.html>. +# #L% +### + +# +# Build version ${project.version} +# Build date ${buildDate} +# Build number ${buildNumber} +# + +[config] +package.filters=fr.ird.observe.application.web +package.actions=fr.ird.observe.application.web.controller.v1 +package.errors=fr.ird.observe.application.web.controller.v1 + +server.main.handler.class=fr.ird.observe.application.web.ObserveWebMainHandler +server.controller.scope=request +server.listener.class=fr.ird.observe.application.web.ObserveWebApplicationListener +default.render=fr.ird.observe.application.web.ObserveWebMotionRender + +[filters] +* /* ObserveWebMotionFilter.inject + +[errors] +* ObserveWebErrorController.error + +[actions] + +# →→→ Static mapping + +GET /admin/configuration/authenticationTokens ConfigurationController.authenticationTokens +GET /admin/configuration/configuration ConfigurationController.configuration +GET /admin/configuration/databases ConfigurationController.databases +GET /admin/configuration/home ConfigurationController.home +GET /admin/configuration/mapping ConfigurationController.mapping +GET /admin/configuration/reloadConfiguration ConfigurationController.reloadConfiguration +GET /admin/configuration/resetAuthenticationTokens ConfigurationController.resetAuthenticationTokens +GET /admin/configuration/users ConfigurationController.users + +# Do not remove the next line, it is used to generate the following actions. +# →→→ Generated dynamic mapping + +# Do not modify below lines, they are generated at each maven build. + +GET,POST,DELETE /api/v1/DataSourceService/applySecurity DataSourceServiceController.applySecurity +GET,POST,DELETE /api/v1/DataSourceService/backup DataSourceServiceController.backup +GET,POST,DELETE /api/v1/DataSourceService/checkCanConnect DataSourceServiceController.checkCanConnect +GET,POST,DELETE /api/v1/DataSourceService/close DataSourceServiceController.close +GET,POST,DELETE /api/v1/DataSourceService/create DataSourceServiceController.create +GET,POST,DELETE /api/v1/DataSourceService/destroy DataSourceServiceController.destroy +GET,POST,DELETE /api/v1/DataSourceService/getReferentialTypesInShell DataSourceServiceController.getReferentialTypesInShell +GET,POST,DELETE /api/v1/DataSourceService/getUsers DataSourceServiceController.getUsers +GET,POST,DELETE /api/v1/DataSourceService/migrateData DataSourceServiceController.migrateData +GET,POST,DELETE /api/v1/DataSourceService/open DataSourceServiceController.open +GET,POST,DELETE /api/v1/PingService/ping PingServiceController.ping +GET,POST,DELETE /api/v1/ReferentialService/delete ReferentialServiceController.delete +GET,POST,DELETE /api/v1/ReferentialService/exists ReferentialServiceController.exists +GET,POST,DELETE /api/v1/ReferentialService/findAllUsages ReferentialServiceController.findAllUsages +GET,POST,DELETE /api/v1/ReferentialService/getReferenceSet ReferentialServiceController.getReferenceSet +GET,POST,DELETE /api/v1/ReferentialService/getReferentialReferenceSets ReferentialServiceController.getReferentialReferenceSets +GET,POST,DELETE /api/v1/ReferentialService/loadForm ReferentialServiceController.loadForm +GET,POST,DELETE /api/v1/ReferentialService/loadReference ReferentialServiceController.loadReference +GET,POST,DELETE /api/v1/ReferentialService/loadSpecies ReferentialServiceController.loadSpecies +GET,POST,DELETE /api/v1/ReferentialService/preCreate ReferentialServiceController.preCreate +GET,POST,DELETE /api/v1/ReferentialService/save ReferentialServiceController.save +GET,POST,DELETE /api/v1/SqlScriptProducerService/produceAddSqlScript SqlScriptProducerServiceController.produceAddSqlScript +GET,POST,DELETE /api/v1/SqlScriptProducerService/produceDeleteSqlScript SqlScriptProducerServiceController.produceDeleteSqlScript +GET,POST,DELETE /api/v1/actions/consolidate/ConsolidateDataService/consolidateTripSeines actions.consolidate.ConsolidateDataServiceController.consolidateTripSeines +GET,POST,DELETE /api/v1/actions/report/ReportService/executeReport actions.report.ReportServiceController.executeReport +GET,POST,DELETE /api/v1/actions/report/ReportService/populateVariables actions.report.ReportServiceController.populateVariables +GET,POST,DELETE /api/v1/actions/synchro/referential/diff/ReferentialSynchronizeDiffService/getEnabledReferentialReferenceSet actions.synchro.referential.diff.ReferentialSynchronizeDiffServiceController.getEnabledReferentialReferenceSet +GET,POST,DELETE /api/v1/actions/synchro/referential/diff/ReferentialSynchronizeDiffService/getReferentialReferenceSet actions.synchro.referential.diff.ReferentialSynchronizeDiffServiceController.getReferentialReferenceSet +GET,POST,DELETE /api/v1/actions/synchro/referential/diff/ReferentialSynchronizeDiffService/getReferentials actions.synchro.referential.diff.ReferentialSynchronizeDiffServiceController.getReferentials +GET,POST,DELETE /api/v1/actions/synchro/referential/diff/ReferentialSynchronizeDiffService/getSourceReferentialStates actions.synchro.referential.diff.ReferentialSynchronizeDiffServiceController.getSourceReferentialStates +GET,POST,DELETE /api/v1/actions/synchro/referential/legacy/UnidirectionalReferentialSynchronizeLocalService/applySqlRequests actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeLocalServiceController.applySqlRequests +GET,POST,DELETE /api/v1/actions/synchro/referential/legacy/UnidirectionalReferentialSynchronizeLocalService/filterIdsUsedInLocalSource actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeLocalServiceController.filterIdsUsedInLocalSource +GET,POST,DELETE /api/v1/actions/synchro/referential/legacy/UnidirectionalReferentialSynchronizeLocalService/generateSqlRequests actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeLocalServiceController.generateSqlRequests +GET,POST,DELETE /api/v1/actions/synchro/referential/legacy/UnidirectionalReferentialSynchronizeLocalService/getLocalSourceReferentialToDelete actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeLocalServiceController.getLocalSourceReferentialToDelete +GET,POST,DELETE /api/v1/actions/synchro/referential/ng/ReferentialSynchronizeService/executeSqlsRequests actions.synchro.referential.ng.ReferentialSynchronizeServiceController.executeSqlsRequests +GET,POST,DELETE /api/v1/actions/synchro/referential/ng/ReferentialSynchronizeService/produceSqlsRequest actions.synchro.referential.ng.ReferentialSynchronizeServiceController.produceSqlsRequest +GET,POST,DELETE /api/v1/actions/validate/ValidateService/validateData actions.validate.ValidateServiceController.validateData +GET,POST,DELETE /api/v1/actions/validate/ValidateService/validateReferentials actions.validate.ValidateServiceController.validateReferentials +GET,POST,DELETE /api/v1/longline/ActivityLongLineEncounterService/loadForm longline.ActivityLongLineEncounterServiceController.loadForm +GET,POST,DELETE /api/v1/longline/ActivityLongLineEncounterService/save longline.ActivityLongLineEncounterServiceController.save +GET,POST,DELETE /api/v1/longline/ActivityLongLineSensorUsedService/getDataFile longline.ActivityLongLineSensorUsedServiceController.getDataFile +GET,POST,DELETE /api/v1/longline/ActivityLongLineSensorUsedService/loadForm longline.ActivityLongLineSensorUsedServiceController.loadForm +GET,POST,DELETE /api/v1/longline/ActivityLongLineSensorUsedService/save longline.ActivityLongLineSensorUsedServiceController.save +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/delete longline.ActivityLonglineServiceController.delete +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/exists longline.ActivityLonglineServiceController.exists +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/getActivityLonglineByTripLongline longline.ActivityLonglineServiceController.getActivityLonglineByTripLongline +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/getActivityLonglinePositionInTripLongline longline.ActivityLonglineServiceController.getActivityLonglinePositionInTripLongline +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/loadDto longline.ActivityLonglineServiceController.loadDto +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/loadForm longline.ActivityLonglineServiceController.loadForm +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/loadReferenceToRead longline.ActivityLonglineServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/moveActivityLonglineToTripLongline longline.ActivityLonglineServiceController.moveActivityLonglineToTripLongline +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/moveActivityLonglinesToTripLongline longline.ActivityLonglineServiceController.moveActivityLonglinesToTripLongline +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/preCreate longline.ActivityLonglineServiceController.preCreate +GET,POST,DELETE /api/v1/longline/ActivityLonglineService/save longline.ActivityLonglineServiceController.save +GET,POST,DELETE /api/v1/longline/BranchlineService/loadForm longline.BranchlineServiceController.loadForm +GET,POST,DELETE /api/v1/longline/BranchlineService/save longline.BranchlineServiceController.save +GET,POST,DELETE /api/v1/longline/SetLonglineCatchService/loadForm longline.SetLonglineCatchServiceController.loadForm +GET,POST,DELETE /api/v1/longline/SetLonglineCatchService/save longline.SetLonglineCatchServiceController.save +GET,POST,DELETE /api/v1/longline/SetLonglineDetailCompositionService/canDeleteBasket longline.SetLonglineDetailCompositionServiceController.canDeleteBasket +GET,POST,DELETE /api/v1/longline/SetLonglineDetailCompositionService/canDeleteBranchline longline.SetLonglineDetailCompositionServiceController.canDeleteBranchline +GET,POST,DELETE /api/v1/longline/SetLonglineDetailCompositionService/canDeleteSection longline.SetLonglineDetailCompositionServiceController.canDeleteSection +GET,POST,DELETE /api/v1/longline/SetLonglineDetailCompositionService/loadForm longline.SetLonglineDetailCompositionServiceController.loadForm +GET,POST,DELETE /api/v1/longline/SetLonglineDetailCompositionService/save longline.SetLonglineDetailCompositionServiceController.save +GET,POST,DELETE /api/v1/longline/SetLonglineGlobalCompositionService/loadForm longline.SetLonglineGlobalCompositionServiceController.loadForm +GET,POST,DELETE /api/v1/longline/SetLonglineGlobalCompositionService/save longline.SetLonglineGlobalCompositionServiceController.save +GET,POST,DELETE /api/v1/longline/SetLonglineService/delete longline.SetLonglineServiceController.delete +GET,POST,DELETE /api/v1/longline/SetLonglineService/exists longline.SetLonglineServiceController.exists +GET,POST,DELETE /api/v1/longline/SetLonglineService/loadDto longline.SetLonglineServiceController.loadDto +GET,POST,DELETE /api/v1/longline/SetLonglineService/loadForm longline.SetLonglineServiceController.loadForm +GET,POST,DELETE /api/v1/longline/SetLonglineService/loadReferenceToRead longline.SetLonglineServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/longline/SetLonglineService/preCreate longline.SetLonglineServiceController.preCreate +GET,POST,DELETE /api/v1/longline/SetLonglineService/save longline.SetLonglineServiceController.save +GET,POST,DELETE /api/v1/longline/TdrService/getDataFile longline.TdrServiceController.getDataFile +GET,POST,DELETE /api/v1/longline/TdrService/loadForm longline.TdrServiceController.loadForm +GET,POST,DELETE /api/v1/longline/TdrService/save longline.TdrServiceController.save +GET,POST,DELETE /api/v1/longline/TripLonglineGearUseService/loadForm longline.TripLonglineGearUseServiceController.loadForm +GET,POST,DELETE /api/v1/longline/TripLonglineGearUseService/save longline.TripLonglineGearUseServiceController.save +GET,POST,DELETE /api/v1/longline/TripLonglineService/delete longline.TripLonglineServiceController.delete +GET,POST,DELETE /api/v1/longline/TripLonglineService/exists longline.TripLonglineServiceController.exists +GET,POST,DELETE /api/v1/longline/TripLonglineService/getAllTripLongline longline.TripLonglineServiceController.getAllTripLongline +GET,POST,DELETE /api/v1/longline/TripLonglineService/getSpeciesByListAndTrip longline.TripLonglineServiceController.getSpeciesByListAndTrip +GET,POST,DELETE /api/v1/longline/TripLonglineService/getTripLonglineByProgram longline.TripLonglineServiceController.getTripLonglineByProgram +GET,POST,DELETE /api/v1/longline/TripLonglineService/getTripLonglineMap longline.TripLonglineServiceController.getTripLonglineMap +GET,POST,DELETE /api/v1/longline/TripLonglineService/getTripLonglinePositionInProgram longline.TripLonglineServiceController.getTripLonglinePositionInProgram +GET,POST,DELETE /api/v1/longline/TripLonglineService/loadDto longline.TripLonglineServiceController.loadDto +GET,POST,DELETE /api/v1/longline/TripLonglineService/loadForm longline.TripLonglineServiceController.loadForm +GET,POST,DELETE /api/v1/longline/TripLonglineService/loadReferenceToRead longline.TripLonglineServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/longline/TripLonglineService/moveTripLonglineToProgram longline.TripLonglineServiceController.moveTripLonglineToProgram +GET,POST,DELETE /api/v1/longline/TripLonglineService/moveTripLonglinesToProgram longline.TripLonglineServiceController.moveTripLonglinesToProgram +GET,POST,DELETE /api/v1/longline/TripLonglineService/preCreate longline.TripLonglineServiceController.preCreate +GET,POST,DELETE /api/v1/longline/TripLonglineService/save longline.TripLonglineServiceController.save +GET,POST,DELETE /api/v1/seine/ActivitySeineObservedSystemService/loadForm seine.ActivitySeineObservedSystemServiceController.loadForm +GET,POST,DELETE /api/v1/seine/ActivitySeineObservedSystemService/save seine.ActivitySeineObservedSystemServiceController.save +GET,POST,DELETE /api/v1/seine/ActivitySeineService/delete seine.ActivitySeineServiceController.delete +GET,POST,DELETE /api/v1/seine/ActivitySeineService/exists seine.ActivitySeineServiceController.exists +GET,POST,DELETE /api/v1/seine/ActivitySeineService/getActivitySeineByRoute seine.ActivitySeineServiceController.getActivitySeineByRoute +GET,POST,DELETE /api/v1/seine/ActivitySeineService/getActivitySeinePositionInRoute seine.ActivitySeineServiceController.getActivitySeinePositionInRoute +GET,POST,DELETE /api/v1/seine/ActivitySeineService/loadDto seine.ActivitySeineServiceController.loadDto +GET,POST,DELETE /api/v1/seine/ActivitySeineService/loadForm seine.ActivitySeineServiceController.loadForm +GET,POST,DELETE /api/v1/seine/ActivitySeineService/loadReferenceToRead seine.ActivitySeineServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/seine/ActivitySeineService/moveActivitySeineToRoute seine.ActivitySeineServiceController.moveActivitySeineToRoute +GET,POST,DELETE /api/v1/seine/ActivitySeineService/moveActivitySeinesToRoute seine.ActivitySeineServiceController.moveActivitySeinesToRoute +GET,POST,DELETE /api/v1/seine/ActivitySeineService/preCreate seine.ActivitySeineServiceController.preCreate +GET,POST,DELETE /api/v1/seine/ActivitySeineService/save seine.ActivitySeineServiceController.save +GET,POST,DELETE /api/v1/seine/FloatingObjectService/delete seine.FloatingObjectServiceController.delete +GET,POST,DELETE /api/v1/seine/FloatingObjectService/exists seine.FloatingObjectServiceController.exists +GET,POST,DELETE /api/v1/seine/FloatingObjectService/getFloatingObjectByActivitySeine seine.FloatingObjectServiceController.getFloatingObjectByActivitySeine +GET,POST,DELETE /api/v1/seine/FloatingObjectService/loadDto seine.FloatingObjectServiceController.loadDto +GET,POST,DELETE /api/v1/seine/FloatingObjectService/loadForm seine.FloatingObjectServiceController.loadForm +GET,POST,DELETE /api/v1/seine/FloatingObjectService/loadReferenceToRead seine.FloatingObjectServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/seine/FloatingObjectService/preCreate seine.FloatingObjectServiceController.preCreate +GET,POST,DELETE /api/v1/seine/FloatingObjectService/save seine.FloatingObjectServiceController.save +GET,POST,DELETE /api/v1/seine/NonTargetCatchService/loadForm seine.NonTargetCatchServiceController.loadForm +GET,POST,DELETE /api/v1/seine/NonTargetCatchService/save seine.NonTargetCatchServiceController.save +GET,POST,DELETE /api/v1/seine/NonTargetSampleService/canUseNonTargetSample seine.NonTargetSampleServiceController.canUseNonTargetSample +GET,POST,DELETE /api/v1/seine/NonTargetSampleService/getSampleSpecies seine.NonTargetSampleServiceController.getSampleSpecies +GET,POST,DELETE /api/v1/seine/NonTargetSampleService/loadForm seine.NonTargetSampleServiceController.loadForm +GET,POST,DELETE /api/v1/seine/NonTargetSampleService/save seine.NonTargetSampleServiceController.save +GET,POST,DELETE /api/v1/seine/ObjectObservedSpeciesService/loadForm seine.ObjectObservedSpeciesServiceController.loadForm +GET,POST,DELETE /api/v1/seine/ObjectObservedSpeciesService/save seine.ObjectObservedSpeciesServiceController.save +GET,POST,DELETE /api/v1/seine/ObjectSchoolEstimateService/loadForm seine.ObjectSchoolEstimateServiceController.loadForm +GET,POST,DELETE /api/v1/seine/ObjectSchoolEstimateService/save seine.ObjectSchoolEstimateServiceController.save +GET,POST,DELETE /api/v1/seine/RouteService/delete seine.RouteServiceController.delete +GET,POST,DELETE /api/v1/seine/RouteService/exists seine.RouteServiceController.exists +GET,POST,DELETE /api/v1/seine/RouteService/getRouteByTripSeine seine.RouteServiceController.getRouteByTripSeine +GET,POST,DELETE /api/v1/seine/RouteService/getRoutePositionInTripSeine seine.RouteServiceController.getRoutePositionInTripSeine +GET,POST,DELETE /api/v1/seine/RouteService/loadDto seine.RouteServiceController.loadDto +GET,POST,DELETE /api/v1/seine/RouteService/loadForm seine.RouteServiceController.loadForm +GET,POST,DELETE /api/v1/seine/RouteService/loadReferenceToRead seine.RouteServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/seine/RouteService/moveRouteToTripSeine seine.RouteServiceController.moveRouteToTripSeine +GET,POST,DELETE /api/v1/seine/RouteService/moveRoutesToTripSeine seine.RouteServiceController.moveRoutesToTripSeine +GET,POST,DELETE /api/v1/seine/RouteService/preCreate seine.RouteServiceController.preCreate +GET,POST,DELETE /api/v1/seine/RouteService/save seine.RouteServiceController.save +GET,POST,DELETE /api/v1/seine/SchoolEstimateService/loadForm seine.SchoolEstimateServiceController.loadForm +GET,POST,DELETE /api/v1/seine/SchoolEstimateService/save seine.SchoolEstimateServiceController.save +GET,POST,DELETE /api/v1/seine/SetSeineService/delete seine.SetSeineServiceController.delete +GET,POST,DELETE /api/v1/seine/SetSeineService/exists seine.SetSeineServiceController.exists +GET,POST,DELETE /api/v1/seine/SetSeineService/loadDto seine.SetSeineServiceController.loadDto +GET,POST,DELETE /api/v1/seine/SetSeineService/loadForm seine.SetSeineServiceController.loadForm +GET,POST,DELETE /api/v1/seine/SetSeineService/loadReferenceToRead seine.SetSeineServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/seine/SetSeineService/preCreate seine.SetSeineServiceController.preCreate +GET,POST,DELETE /api/v1/seine/SetSeineService/save seine.SetSeineServiceController.save +GET,POST,DELETE /api/v1/seine/TargetCatchService/loadForm seine.TargetCatchServiceController.loadForm +GET,POST,DELETE /api/v1/seine/TargetCatchService/save seine.TargetCatchServiceController.save +GET,POST,DELETE /api/v1/seine/TargetSampleService/canUseTargetSample seine.TargetSampleServiceController.canUseTargetSample +GET,POST,DELETE /api/v1/seine/TargetSampleService/getSampleSpecies seine.TargetSampleServiceController.getSampleSpecies +GET,POST,DELETE /api/v1/seine/TargetSampleService/loadForm seine.TargetSampleServiceController.loadForm +GET,POST,DELETE /api/v1/seine/TargetSampleService/save seine.TargetSampleServiceController.save +GET,POST,DELETE /api/v1/seine/TransmittingBuoyOperationService/loadForm seine.TransmittingBuoyOperationServiceController.loadForm +GET,POST,DELETE /api/v1/seine/TransmittingBuoyOperationService/save seine.TransmittingBuoyOperationServiceController.save +GET,POST,DELETE /api/v1/seine/TripSeineGearUseService/loadForm seine.TripSeineGearUseServiceController.loadForm +GET,POST,DELETE /api/v1/seine/TripSeineGearUseService/save seine.TripSeineGearUseServiceController.save +GET,POST,DELETE /api/v1/seine/TripSeineService/delete seine.TripSeineServiceController.delete +GET,POST,DELETE /api/v1/seine/TripSeineService/exists seine.TripSeineServiceController.exists +GET,POST,DELETE /api/v1/seine/TripSeineService/getAllTripSeine seine.TripSeineServiceController.getAllTripSeine +GET,POST,DELETE /api/v1/seine/TripSeineService/getSpeciesByListAndTrip seine.TripSeineServiceController.getSpeciesByListAndTrip +GET,POST,DELETE /api/v1/seine/TripSeineService/getTripSeineByProgram seine.TripSeineServiceController.getTripSeineByProgram +GET,POST,DELETE /api/v1/seine/TripSeineService/getTripSeineMap seine.TripSeineServiceController.getTripSeineMap +GET,POST,DELETE /api/v1/seine/TripSeineService/getTripSeinePositionInProgram seine.TripSeineServiceController.getTripSeinePositionInProgram +GET,POST,DELETE /api/v1/seine/TripSeineService/loadDto seine.TripSeineServiceController.loadDto +GET,POST,DELETE /api/v1/seine/TripSeineService/loadForm seine.TripSeineServiceController.loadForm +GET,POST,DELETE /api/v1/seine/TripSeineService/loadReferenceToRead seine.TripSeineServiceController.loadReferenceToRead +GET,POST,DELETE /api/v1/seine/TripSeineService/moveTripSeineToProgram seine.TripSeineServiceController.moveTripSeineToProgram +GET,POST,DELETE /api/v1/seine/TripSeineService/moveTripSeinesToProgram seine.TripSeineServiceController.moveTripSeinesToProgram +GET,POST,DELETE /api/v1/seine/TripSeineService/preCreate seine.TripSeineServiceController.preCreate +GET,POST,DELETE /api/v1/seine/TripSeineService/save seine.TripSeineServiceController.save +GET,POST,DELETE /api/v1/trip/TripManagementService/deleteTrip trip.TripManagementServiceController.deleteTrip +GET,POST,DELETE /api/v1/trip/TripManagementService/exportTrip trip.TripManagementServiceController.exportTrip +GET,POST,DELETE /api/v1/trip/TripManagementService/importTrip trip.TripManagementServiceController.importTrip diff --git a/application-web/src/main/webmotion/mapping b/application-web/src/main/webmotion/mapping deleted file mode 100644 index 5bbfb48..0000000 --- a/application-web/src/main/webmotion/mapping +++ /dev/null @@ -1,71 +0,0 @@ -### -# #%L -# ObServe :: Web Application -# %% -# Copyright (C) 2015 IRD, Codelutin, Tony Chemit -# %% -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public -# License along with this program. If not, see -# <http://www.gnu.org/licenses/gpl-3.0.html>. -# #L% -### - -# -# Build version ${project.version} -# Build date ${buildDate} -# Build number ${buildNumber} -# - -[config] -package.filters=fr.ird.observe.application.web -package.actions=fr.ird.observe.application.web.controller.v1 -package.errors=fr.ird.observe.application.web.controller.v1 - -server.main.handler.class=fr.ird.observe.application.web.ObserveWebMainHandler -server.controller.scope=request -server.listener.class=fr.ird.observe.application.web.ObserveWebApplicationListener -default.render=fr.ird.observe.application.web.ObserveWebMotionRender - -[filters] -* /* ObserveWebMotionFilter.inject - -[errors] -* ObserveWebErrorController.error - -[actions] - -# →→→ Static mapping - -GET /admin/configuration/authenticationTokens ConfigurationController.authenticationTokens -GET /admin/configuration/configuration ConfigurationController.configuration -GET /admin/configuration/databases ConfigurationController.databases -GET /admin/configuration/home ConfigurationController.home -GET /admin/configuration/mapping ConfigurationController.mapping -GET /admin/configuration/reloadConfiguration ConfigurationController.reloadConfiguration -GET /admin/configuration/resetAuthenticationTokens ConfigurationController.resetAuthenticationTokens -GET /admin/configuration/users ConfigurationController.users - -# ←←← Static mapping - -# →→→ Generated dynamic mapping - -@ACTIONS@ - -# ←←← Generated dynamic mapping - - - - - - - diff --git a/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/GenerateWebmotionMappingMojo.java b/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/GenerateWebmotionMappingMojo.java index 7e0287d..90af275 100644 --- a/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/GenerateWebmotionMappingMojo.java +++ b/toolbox-maven-plugin/src/main/java/fr/ird/observe/maven/plugins/toolbox/GenerateWebmotionMappingMojo.java @@ -40,7 +40,6 @@ import java.util.Collections; import java.util.LinkedHashMap; import java.util.Map; import java.util.Objects; -import java.util.Set; import java.util.TreeMap; /** @@ -49,7 +48,7 @@ import java.util.TreeMap; * @author Tony Chemit - chemit@codelutin.com * @since 5.0 */ -@Mojo(name = "generate-webmotion-mapping", defaultPhase = LifecyclePhase.PROCESS_CLASSES, requiresDependencyResolution = ResolutionScope.COMPILE) +@Mojo(name = "generate-webmotion-mapping", defaultPhase = LifecyclePhase.GENERATE_RESOURCES, requiresDependencyResolution = ResolutionScope.COMPILE) public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { @@ -62,9 +61,6 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { @Parameter(property = "generateWebmotionMapping.targetApiClassSuffix", required = true) private String targetApiClassSuffix; - @Parameter(property = "generateWebmotionMapping.mappingTemplate", defaultValue = "${project.basedir}/src/main/webmotion/mapping", required = true) - private File mappingTemplate; - /** * To set the type of class to seek to generate the mapping. */ @@ -90,17 +86,16 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { /** * The root directory where to generated. */ - @Parameter(property = "generateWebmotionMapping.outputDirectory", defaultValue = "${project.build.outputDirectory}", required = true) - private File outputDirectory; + @Parameter(property = "generateWebmotionMapping.mappingFile", defaultValue = "${project.basedir}/src/main/resources/mapping", required = true) + private File mappingFile; - private Map<Class<?>, Class<?>> translationMap; + private Map<Class<?>, String> translationMap; @Override protected Path createOutputFile() throws IOException { - Files.createDirectories(outputDirectory.toPath()); - - return outputDirectory.toPath().resolve("mapping"); + Files.createDirectories(mappingFile.getParentFile().toPath()); + return mappingFile.toPath(); } @@ -127,26 +122,38 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { Class<?> classType = Class.forName(classTypeName); - Map<Class<?>, Class<?>> translationMap = new LinkedHashMap<>(); - - Reflections targetReflections = new Reflections(targetApiPackageName); + Map<Class<?>, String> translationMap = new LinkedHashMap<>(); for (Class<?> serviceContract : new Reflections(sourceApiPackageName).getSubTypesOf(classType)) { - Set<Class<?>> serviceImpls = (Set<Class<?>>) targetReflections.getSubTypesOf(serviceContract); + String sourceName = serviceContract.getName(); + String sourceSimpleNameName = serviceContract.getSimpleName(); + + String sourcePackageNameSuffix = sourceName.substring(sourceApiPackageName.length() + 1, sourceName.length() - sourceSimpleNameName.length()); + + String targetPackageName; + + if (sourcePackageNameSuffix.isEmpty()) { + + // no sub package + targetPackageName = targetApiPackageName; - for (Class<?> serviceImpl : serviceImpls) { + } else { - if (serviceImpl.getSimpleName().endsWith(targetApiClassSuffix)) { + // sub package + targetPackageName = targetApiPackageName + "." + sourcePackageNameSuffix.substring(0, sourcePackageNameSuffix.length() - 1); - if (isVerbose()) { - getLog().info("Found maching class to scan : " + serviceContract.getName() + " → " + serviceImpl.getName()); - } - translationMap.put(serviceContract, serviceImpl); - break; - } } + String targetSimpleName = serviceContract.getSimpleName() + targetApiClassSuffix; + + String targetName = targetPackageName + "." + targetSimpleName; + + if (isVerbose()) { + getLog().info("Found maching class to scan : " + serviceContract.getName() + " → " + targetName); + } + translationMap.put(serviceContract, targetName); + } getLog().info(translationMap.size() + " type(s) detected."); @@ -183,12 +190,12 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { getLog().info("Generate to " + getOutputFile()); Map<String, String> rules = new TreeMap<>(); - for (Map.Entry<Class<?>, Class<?>> entry : translationMap.entrySet()) { + for (Map.Entry<Class<?>, String> entry : translationMap.entrySet()) { Class<?> sourceClass = entry.getKey(); - Class<?> targetClass = entry.getValue(); + String targetClassName = entry.getValue(); - generateForClass(sourceClass, targetClass, rules); + generateForClass(sourceClass, targetClassName, rules); } @@ -201,15 +208,14 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { rulesBuilder.append(StringUtils.rightPad(rule.getKey(), ruleMax)).append(rule.getValue()).append("\n"); } String rulesStr = rulesBuilder.toString(); - try (BufferedWriter writer = Files.newBufferedWriter(getOutputFile(), StandardCharsets.UTF_8)) { - String content = new String(Files.readAllBytes(mappingTemplate.toPath())) - .replace("${project.version}", getProject().getVersion()) - .replace("${buildDate}", getProject().getProperties().getProperty("buildDate")) - .replace("${buildNumber}", getProject().getProperties().getProperty("buildNumber")); + String content = new String(Files.readAllBytes(mappingFile.toPath())); - writer.append(content.replace("@ACTIONS@", rulesStr)); + int indexOf = content.indexOf("# →→→ Generated dynamic mapping"); + content = content.substring(0, indexOf + "# →→→ Generated dynamic mapping".length()); + try (BufferedWriter writer = Files.newBufferedWriter(getOutputFile(), StandardCharsets.UTF_8)) { + writer.append(content).append("\n\n# Do not modify below lines, they are generated at each maven build.\n\n").append(rulesStr); } } @@ -224,10 +230,10 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { this.verbose = verbose; } - private void generateForClass(Class<?> sourceClass, Class<?> targetClass, Map<String, String> rules) throws MissingMethodException, MismatchMethodParameterNameException, MissingClassException, IOException { + private void generateForClass(Class<?> sourceClass, String targetClassName, Map<String, String> rules) throws MissingMethodException, MismatchMethodParameterNameException, MissingClassException, IOException { Objects.requireNonNull(sourceClass); - Objects.requireNonNull(targetClass); + Objects.requireNonNull(targetClassName); Objects.requireNonNull(rules); Method[] sourceDeclaredMethods = sourceClass.getDeclaredMethods(); @@ -237,7 +243,7 @@ public class GenerateWebmotionMappingMojo extends ToolboxMojoSupport { getLog().info("Check " + sourceClass.getName()); } - String packagePrefix = targetClass.getName().substring(targetApiPackageName.length() + 1) + "."; + String packagePrefix = targetClassName.substring(targetApiPackageName.length() + 1) + "."; String rulePrefix = "GET,POST,DELETE /api/v1/" + packagePrefix.replace("Controller", "").replaceAll("\\.", "/"); for (Method sourceMethod : sourceDeclaredMethods) { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm