[Git][ultreiaio/ird-t3][develop] Qu'est-ce que le champ trip_idx ? (Closes #292)
Tony CHEMIT pushed to branch develop at ultreiaio / ird-t3 Commits: efefa519 by Tony CHEMIT at 2018-03-13T14:11:51Z Qu'est-ce que le champ trip_idx ? (Closes #292) - - - - - 6 changed files: - t3-actions/src/main/java/fr/ird/t3/actions/data/level0/ComputeTripEffortsAction.java - t3-domain/src/main/java/fr/ird/t3/entities/data/TripImpl.java - + t3-domain/src/main/java/fr/ird/t3/services/migration/T3MigrationCallbackV2_4.java - + t3-domain/src/main/resources/db/migration/V_2_4_01_delete_idx.sql - t3-domain/src/main/xmi/t3-persistence.properties - t3-domain/src/main/xmi/t3-persistence.zargo Changes: ===================================== t3-actions/src/main/java/fr/ird/t3/actions/data/level0/ComputeTripEffortsAction.java ===================================== --- a/t3-actions/src/main/java/fr/ird/t3/actions/data/level0/ComputeTripEffortsAction.java +++ b/t3-actions/src/main/java/fr/ird/t3/actions/data/level0/ComputeTripEffortsAction.java @@ -130,7 +130,7 @@ public class ComputeTripEffortsAction extends AbstractLevel0Action<ComputeTripEf } private boolean executeForTrip(Trip trip) throws TopiaException { - List<Route> routes = trip.getRoute(); + List<Route> routes = (List<Route>) trip.getRoute(); Route firstRoute = Objects.requireNonNull(routes.get(0)); Route lastRoute = Objects.requireNonNull(Iterables.getLast(routes)); for (Route route : routes) { ===================================== t3-domain/src/main/java/fr/ird/t3/entities/data/TripImpl.java ===================================== --- a/t3-domain/src/main/java/fr/ird/t3/entities/data/TripImpl.java +++ b/t3-domain/src/main/java/fr/ird/t3/entities/data/TripImpl.java @@ -31,7 +31,9 @@ import fr.ird.t3.entities.reference.Vessel; import fr.ird.t3.entities.reference.VesselImpl; import org.nuiton.util.DateUtil; +import java.util.ArrayList; import java.util.Collection; +import java.util.Comparator; import java.util.Date; import java.util.HashSet; import java.util.LinkedList; @@ -550,15 +552,14 @@ public class TripImpl extends TripAbstract { @Override public List<Route> getRoute() { - List<Route> route = super.getRoute(); - if (route == null) { - setRoute(route = new LinkedList<>()); + if (super.getRoute() == null) { + setRoute(new LinkedList<>()); } - return route; + return new LinkedList<>(route); } private Stream<Route> routeStream() { - return getRoute().stream(); + return getRoute().stream().sorted(Comparator.comparing(Route::getDate)); } private Stream<Activity> activityStream() { ===================================== t3-domain/src/main/java/fr/ird/t3/services/migration/T3MigrationCallbackV2_4.java ===================================== --- /dev/null +++ b/t3-domain/src/main/java/fr/ird/t3/services/migration/T3MigrationCallbackV2_4.java @@ -0,0 +1,49 @@ +package fr.ird.t3.services.migration; + +/*- + * #%L + * T3 :: Domain + * %% + * Copyright (C) 2010 - 2018 IRD, Code Lutin, Ultreia.io + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero 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 Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + * #L% + */ + +import com.google.auto.service.AutoService; +import org.nuiton.topia.migration.TopiaMigrationCallbackByClassNG; +import org.nuiton.topia.persistence.TopiaException; +import org.nuiton.topia.persistence.support.TopiaSqlSupport; +import org.nuiton.version.Versions; + +import java.util.List; + +/** + * Created by tchemit on 03/03/2018. + * + * @author Tony Chemit - dev@tchemit.fr + */ +@AutoService(TopiaMigrationCallbackByClassNG.MigrationCallBackForVersion.class) +public class T3MigrationCallbackV2_4 extends T3MigrationCallbackSupport { + + public T3MigrationCallbackV2_4() { + super(Versions.valueOf("2.4")); + } + + @Override + protected void prepareMigrationScript(TopiaSqlSupport sqlSupport, List<String> queries, boolean showSql, boolean showProgression) throws TopiaException { + addScript("01", "delete_idx", queries); + } + +} ===================================== t3-domain/src/main/resources/db/migration/V_2_4_01_delete_idx.sql ===================================== --- /dev/null +++ b/t3-domain/src/main/resources/db/migration/V_2_4_01_delete_idx.sql @@ -0,0 +1,22 @@ +--- +-- #%L +-- T3 :: Domain +-- %% +-- Copyright (C) 2010 - 2018 IRD, Code Lutin, Ultreia.io +-- %% +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU Affero 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 Affero General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- #L% +--- +ALTER TABLE Route DROP COLUMN trip_idx; +ALTER TABLE Activity DROP COLUMN route_idx; \ No newline at end of file ===================================== t3-domain/src/main/xmi/t3-persistence.properties ===================================== --- a/t3-domain/src/main/xmi/t3-persistence.properties +++ b/t3-domain/src/main/xmi/t3-persistence.properties @@ -21,15 +21,13 @@ model.tagValue.notGenerateToString=true model.tagValue.generateOperatorForDAOHelper=true model.tagValue.constantPrefix=PROPERTY_ -model.tagValue.version=2.3 +model.tagValue.version=2.4 model.tagValue.indexForeignKeys=true -fr.ird.t3.entities.data.Trip.attribute.route.stereotype=ordered -fr.ird.t3.entities.data.Route.attribute.activity.stereotype=ordered fr.ird.t3.entities.reference.WeightCategoryLogBookConversion.attribute.distributions.stereotype=ordered fr.ird.t3.entities.data.Trip.attribute.route.tagvalue.orderBy=date -fr.ird.t3.entities.data.Route.attribute.activity.tagvalue.orderBy=date +fr.ird.t3.entities.data.Route.attribute.activity.tagvalue.orderBy=number fr.ird.t3.entities.data.Route.attribute.date.tagvalue.hibernateAttributeType.java.util.Date=date fr.ird.t3.entities.data.Activity.attribute.time.tagvalue.hibernateAttributeType.java.util.Date=time ===================================== t3-domain/src/main/xmi/t3-persistence.zargo ===================================== Binary files a/t3-domain/src/main/xmi/t3-persistence.zargo and b/t3-domain/src/main/xmi/t3-persistence.zargo differ View it on GitLab: https://gitlab.com/ultreiaio/ird-t3/commit/efefa5195c50ee1dab19181f42d9b9172... --- View it on GitLab: https://gitlab.com/ultreiaio/ird-t3/commit/efefa5195c50ee1dab19181f42d9b9172... You're receiving this email because of your account on gitlab.com.
participants (1)
-
Tony CHEMIT