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>.