Observe-commits
Threads by month
- ----- 2026 -----
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
January 2021
- 1 participants
- 117 discussions
[Git][ultreiaio/ird-observe][develop-7.x] 2 commits: Souci de gestion sur 12h du champ 'Temps depuis déclenchement' - Closes #1757
by Tony CHEMIT Jan. 14, 2021
by Tony CHEMIT Jan. 14, 2021
Jan. 14, 2021
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
96d93595 by Tony Chemit at 2021-01-14T21:47:56+01:00
Souci de gestion sur 12h du champ 'Temps depuis déclenchement' - Closes #1757
- - - - -
b2148594 by Tony Chemit at 2021-01-14T21:57:38+01:00
Problème d'enregistrement sur avançon depuis le formulaire capture - Closes #1755
- - - - -
2 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIModel.java
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIHandler.java
=====================================
@@ -68,7 +68,6 @@ import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.jaxx.validator.swing.SwingValidator;
import org.nuiton.jaxx.validator.swing.SwingValidatorMessage;
import org.nuiton.jaxx.validator.swing.SwingValidatorMessageTableModel;
-import org.nuiton.jaxx.widgets.datetime.TimeEditor;
import org.nuiton.util.DateUtil;
import org.nuiton.validator.NuitonValidatorScope;
@@ -823,7 +822,7 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLonglineCat
}
//tchemit-20191104 there is a bug on time editor, need to reset by hand the hour and minute editor
- reset(ui.getTimeSinceContact());
+ ui.getTimeSinceContact().reset();
CatchLonglineUI ui = getUi();
@@ -862,7 +861,8 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLonglineCat
if (timeSinceContact != null) {
timeSinceContactDate = DateUtil.createDate(0, (int) (timeSinceContact % 60), (int) (timeSinceContact / 60f), 0, 0, 0);
}
- } else {
+ }
+ if (timeSinceContactDate == null) {
timeSinceContactDate = DateUtil.createDate(0, 0, 0, 0, 0, 0);
}
log.info("Set time since contact: " + timeSinceContactDate);
@@ -874,12 +874,6 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLonglineCat
}
- private void reset(TimeEditor ui) {
- ui.getHourEditor().setValue(new Date(0));
- ui.getMinuteEditor().setValue(new Date(0));
- ui.getModel().setTime(null);
- }
-
private void onDepredatedChanged(Boolean newValue, CatchLonglineDto tableEditBean) {
CatchLonglineUI ui = getUi();
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIModel.java
=====================================
@@ -194,9 +194,9 @@ public class CatchLonglineUIModel extends ContentTableUIModel<SetLonglineCatchDt
}
public void setBranchlineTimeSinceContact(Date branchlineTimeSinceContact) {
-// Date oldValue = getBranchlineTimeSinceContact();
+ Date oldValue = getBranchlineTimeSinceContact();
this.branchlineTimeSinceContact = branchlineTimeSinceContact;
- firePropertyChange(PROPERTY_BRANCHLINE_TIME_SINCE_CONTACT, null, branchlineTimeSinceContact);
+ firePropertyChange(PROPERTY_BRANCHLINE_TIME_SINCE_CONTACT, oldValue, branchlineTimeSinceContact);
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/be2566afad69329438f19982…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/be2566afad69329438f19982…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop-7.x] 2 commits: Fix isValidId method
by Tony CHEMIT Jan. 14, 2021
by Tony CHEMIT Jan. 14, 2021
Jan. 14, 2021
Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe
Commits:
00213e9a by Tony Chemit at 2020-11-25T15:47:50+01:00
Fix isValidId method
(Possibilité de forcer le topiaid sur tous les écrans de création des référentiels - See #1328)
- - - - -
be2566af by Tony Chemit at 2021-01-14T21:43:47+01:00
Souci de gestion sur 12h du champ 'Temps depuis déclenchement' - Closes #1757
- - - - -
2 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BranchlineUIHandler.java
- common-persistence/src/main/java/fr/ird/observe/persistence/ObserveTopiaIdFactory.java
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/longline/BranchlineUIHandler.java
=====================================
@@ -270,7 +270,7 @@ public class BranchlineUIHandler extends ContentUIHandler<BranchlineDto, Branchl
Calendar calendar = Calendar.getInstance();
calendar.setTime(getModel().getTimeSinceContact());
int minutes = calendar.get(Calendar.MINUTE);
- int hours = calendar.get(Calendar.HOUR);
+ int hours = calendar.get(Calendar.HOUR_OF_DAY);
beanToSave.setTimeSinceContact(minutes + 60L * hours);
} else {
beanToSave.setTimeSinceContact(null);
=====================================
common-persistence/src/main/java/fr/ird/observe/persistence/ObserveTopiaIdFactory.java
=====================================
@@ -29,6 +29,8 @@ import org.apache.logging.log4j.Logger;
import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.topia.persistence.internal.LegacyTopiaIdFactory;
+import java.util.Objects;
+
/**
* Created on 21/08/15.
*
@@ -54,10 +56,10 @@ public class ObserveTopiaIdFactory extends LegacyTopiaIdFactory {
if (str != null && !str.endsWith(getSeparator())) {
String[] split = str.split(getSeparator());
if (split.length == 3) {
- String className = split[0];
- isTopiaId = entityClass.getName().equals(className);
- for (int index = 1; index < split.length; index++) {
- isTopiaId &= StringUtils.isNumeric(split[index]);
+ isTopiaId = Objects.equals(entityClass, getClassName(str));
+ for (int index = 1; isTopiaId && index < split.length; index++) {
+ String part = split[index];
+ isTopiaId = !part.endsWith(".") && StringUtils.isNumeric(part.replace(".", ""));
}
}
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/021cbd030baeb134001a34be…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/021cbd030baeb134001a34be…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Optimisation de l'arbre de sélection et navigation - See #1750
by Tony CHEMIT Jan. 14, 2021
by Tony CHEMIT Jan. 14, 2021
Jan. 14, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
2462e0f4 by Tony Chemit at 2021-01-14T18:38:54+01:00
Optimisation de l'arbre de sélection et navigation - See #1750
- - - - -
18 changed files:
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUINavigationInitializer.java
- models/persistence/src/main/java/fr/ird/observe/entities/data/TripAwareTopiaDao.java
- models/persistence/src/main/java/fr/ird/observe/entities/data/ps/observation/ActivityImpl.java
- server/core/src/main/filtered-resources/mapping
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/actions/report/ReportServiceLocalSupport.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/EditableDataServiceLocalSupport.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/OpenableDataServiceLocalSupport.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/TripServiceLocalSupport.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/ps/observation/FloatingObjectServiceLocalSupport.java
- toolkit/dto/src/main/java/fr/ird/observe/dto/reference/DtoReferenceCollection.java
- toolkit/dto/src/main/java/fr/ird/observe/dto/reference/LazyDataDtoReferenceSet.java
- + toolkit/dto/src/main/java/fr/ird/observe/dto/reference/UpdatedDataDtoReferenceSet.java
- toolkit/persistence/src/main/java/fr/ird/observe/entities/AbstractObserveTopiaDao.java
- toolkit/persistence/src/main/java/fr/ird/observe/spi/context/DataDtoEntityContext.java
- toolkit/persistence/src/main/java/fr/ird/observe/spi/context/DtoEntityContextSupport.java
- toolkit/persistence/src/main/java/fr/ird/observe/spi/context/ReferentialDtoEntityContext.java
- toolkit/service/src/main/java/fr/ird/observe/services/service/data/OpenableDataService.java
- toolkit/service/src/main/java/fr/ird/observe/spi/context/EmptyChildrenDataReferenceSet.java
Changes:
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUINavigationInitializer.java
=====================================
@@ -70,7 +70,6 @@ public class ContentListUINavigationInitializer extends NavigationInitializer<Co
protected void reload(NavigationContext<ContentListUINavigationContext> context) {
//FIXME Make sure we need to reload data
parentReference = context.reloadReference(parentReference);
- //FIXME Make this more performant: only reload references that has changed
references.reload();
}
=====================================
models/persistence/src/main/java/fr/ird/observe/entities/data/TripAwareTopiaDao.java
=====================================
@@ -23,11 +23,15 @@ package fr.ird.observe.entities.data;
*/
import com.google.common.collect.ArrayListMultimap;
+import com.google.common.collect.ImmutableSet;
import fr.ird.observe.dto.data.DataDto;
import fr.ird.observe.dto.data.TripMapConfigDto;
import fr.ird.observe.dto.data.TripMapPoint;
import fr.ird.observe.dto.reference.DataDtoReference;
+import fr.ird.observe.entities.referential.common.Program;
+import org.nuiton.topia.persistence.TopiaDao;
import org.nuiton.topia.persistence.TopiaEntityEnum;
+import org.nuiton.topia.persistence.TopiaQueryBuilderAddCriteriaOrRunQueryStep;
import org.nuiton.topia.persistence.support.SqlFunction;
import org.nuiton.topia.persistence.support.TopiaSqlSupport;
@@ -35,6 +39,7 @@ import java.sql.ResultSet;
import java.util.Date;
import java.util.LinkedHashSet;
import java.util.List;
+import java.util.Map;
/**
* Created on 14/10/2020.
@@ -42,12 +47,16 @@ import java.util.List;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 8.0.1
*/
-public interface TripAwareTopiaDao<D extends DataDto & fr.ird.observe.dto.data.TripAware, R extends DataDtoReference & fr.ird.observe.dto.data.TripAware, E extends DataEntity<D, R> & TripAware<D, R>> {
+public interface TripAwareTopiaDao<D extends DataDto & fr.ird.observe.dto.data.TripAware, R extends DataDtoReference & fr.ird.observe.dto.data.TripAware, E extends DataEntity<D, R> & TripAware<D, R>> extends TopiaDao<E> {
String GET_TRIP_IDS_BY_PROGRAM_ID = "SELECT program, topiaId FROM %S.%s t ORDER BY program";
LinkedHashSet<TripMapPoint> extractTripMapActivityPoints(TripMapConfigDto tripMapConfig);
+ TopiaQueryBuilderAddCriteriaOrRunQueryStep<E> forLastUpdateDateGreaterThan(Date lastUpdateDate);
+
+ <O> List<O> findAll(String hql, Map<String, Object> hqlParameters);
+
List<E> getMatchingTripsVesselWithinDateRange(String id, String vesselId, Date startDate, Date endDate);
void fillTripIdByProgramId(ArrayListMultimap<String, String> map);
@@ -59,4 +68,15 @@ public interface TripAwareTopiaDao<D extends DataDto & fr.ird.observe.dto.data.T
return null;
});
}
+
+ default List<E> getChildren(Program parent, Date lastUpdate) {
+ if (lastUpdate == null) {
+ return forProperties(TripAware.PROPERTY_PROGRAM, parent).findAll();
+ }
+ return forLastUpdateDateGreaterThan(lastUpdate).addEquals(TripAware.PROPERTY_PROGRAM, parent).findAll();
+ }
+
+ default ImmutableSet<String> getChildrenIds(Program parent) {
+ return ImmutableSet.copyOf(forProperties(TripAware.PROPERTY_PROGRAM, parent).findAllIds());
+ }
}
=====================================
models/persistence/src/main/java/fr/ird/observe/entities/data/ps/observation/ActivityImpl.java
=====================================
@@ -32,6 +32,7 @@ import fr.ird.observe.dto.referential.common.SpeciesReference;
import fr.ird.observe.dto.referential.ps.common.VesselActivityReference;
import fr.ird.observe.entities.referential.ps.observation.ObservedSystem;
+import java.util.Date;
import java.util.stream.Collectors;
/**
@@ -105,7 +106,7 @@ public class ActivityImpl extends ActivityAbstract {
public ActivityReference toReference(ReferentialLocale referentialLocale) {
ActivityReference reference = super.toReference(referentialLocale);
if (isFloatingObjectNotEmpty()) {
- reference.setFloatingObject(FloatingObject.SPI.toReferenceSet(referentialLocale, getFloatingObject()).toList());
+ reference.setFloatingObject(FloatingObject.SPI.toReferenceSet(referentialLocale, getFloatingObject(), new Date()).toList());
}
return reference;
}
=====================================
server/core/src/main/filtered-resources/mapping
=====================================
@@ -102,6 +102,7 @@ GET /api/v1/data/ll/common/TripService/exists
GET /api/v1/data/ll/common/TripService/getAllTrip v1.data.ll.common.TripServiceRestApi.getAllTrip
GET /api/v1/data/ll/common/TripService/getBrothers v1.data.ll.common.TripServiceRestApi.getBrothers
GET /api/v1/data/ll/common/TripService/getChildren v1.data.ll.common.TripServiceRestApi.getChildren
+GET /api/v1/data/ll/common/TripService/getChildrenUpdate v1.data.ll.common.TripServiceRestApi.getChildrenUpdate
GET /api/v1/data/ll/common/TripService/getMatchingTripsVesselWithinDateRange v1.data.ll.common.TripServiceRestApi.getMatchingTripsVesselWithinDateRange
GET /api/v1/data/ll/common/TripService/getParentBrothers v1.data.ll.common.TripServiceRestApi.getParentBrothers
GET /api/v1/data/ll/common/TripService/getSpeciesByListAndTrip v1.data.ll.common.TripServiceRestApi.getSpeciesByListAndTrip
@@ -116,6 +117,7 @@ DELETE /api/v1/data/ll/landing/LandingService/delete
GET /api/v1/data/ll/landing/LandingService/exists v1.data.ll.landing.LandingServiceRestApi.exists
GET /api/v1/data/ll/landing/LandingService/getBrothers v1.data.ll.landing.LandingServiceRestApi.getBrothers
GET /api/v1/data/ll/landing/LandingService/getChildren v1.data.ll.landing.LandingServiceRestApi.getChildren
+GET /api/v1/data/ll/landing/LandingService/getChildrenUpdate v1.data.ll.landing.LandingServiceRestApi.getChildrenUpdate
GET /api/v1/data/ll/landing/LandingService/loadDto v1.data.ll.landing.LandingServiceRestApi.loadDto
GET /api/v1/data/ll/landing/LandingService/loadForm v1.data.ll.landing.LandingServiceRestApi.loadForm
GET /api/v1/data/ll/landing/LandingService/loadReferenceToRead v1.data.ll.landing.LandingServiceRestApi.loadReferenceToRead
@@ -135,6 +137,7 @@ DELETE /api/v1/data/ll/logbook/ActivityService/delete
GET /api/v1/data/ll/logbook/ActivityService/exists v1.data.ll.logbook.ActivityServiceRestApi.exists
GET /api/v1/data/ll/logbook/ActivityService/getBrothers v1.data.ll.logbook.ActivityServiceRestApi.getBrothers
GET /api/v1/data/ll/logbook/ActivityService/getChildren v1.data.ll.logbook.ActivityServiceRestApi.getChildren
+GET /api/v1/data/ll/logbook/ActivityService/getChildrenUpdate v1.data.ll.logbook.ActivityServiceRestApi.getChildrenUpdate
GET /api/v1/data/ll/logbook/ActivityService/loadDto v1.data.ll.logbook.ActivityServiceRestApi.loadDto
GET /api/v1/data/ll/logbook/ActivityService/loadForm v1.data.ll.logbook.ActivityServiceRestApi.loadForm
GET /api/v1/data/ll/logbook/ActivityService/loadReferenceToRead v1.data.ll.logbook.ActivityServiceRestApi.loadReferenceToRead
@@ -145,6 +148,7 @@ DELETE /api/v1/data/ll/logbook/SampleService/delete
GET /api/v1/data/ll/logbook/SampleService/exists v1.data.ll.logbook.SampleServiceRestApi.exists
GET /api/v1/data/ll/logbook/SampleService/getBrothers v1.data.ll.logbook.SampleServiceRestApi.getBrothers
GET /api/v1/data/ll/logbook/SampleService/getChildren v1.data.ll.logbook.SampleServiceRestApi.getChildren
+GET /api/v1/data/ll/logbook/SampleService/getChildrenUpdate v1.data.ll.logbook.SampleServiceRestApi.getChildrenUpdate
GET /api/v1/data/ll/logbook/SampleService/loadDto v1.data.ll.logbook.SampleServiceRestApi.loadDto
GET /api/v1/data/ll/logbook/SampleService/loadForm v1.data.ll.logbook.SampleServiceRestApi.loadForm
GET /api/v1/data/ll/logbook/SampleService/loadReferenceToRead v1.data.ll.logbook.SampleServiceRestApi.loadReferenceToRead
@@ -171,6 +175,7 @@ DELETE /api/v1/data/ll/observation/ActivityService/delete
GET /api/v1/data/ll/observation/ActivityService/exists v1.data.ll.observation.ActivityServiceRestApi.exists
GET /api/v1/data/ll/observation/ActivityService/getBrothers v1.data.ll.observation.ActivityServiceRestApi.getBrothers
GET /api/v1/data/ll/observation/ActivityService/getChildren v1.data.ll.observation.ActivityServiceRestApi.getChildren
+GET /api/v1/data/ll/observation/ActivityService/getChildrenUpdate v1.data.ll.observation.ActivityServiceRestApi.getChildrenUpdate
GET /api/v1/data/ll/observation/ActivityService/loadDto v1.data.ll.observation.ActivityServiceRestApi.loadDto
GET /api/v1/data/ll/observation/ActivityService/loadForm v1.data.ll.observation.ActivityServiceRestApi.loadForm
GET /api/v1/data/ll/observation/ActivityService/loadReferenceToRead v1.data.ll.observation.ActivityServiceRestApi.loadReferenceToRead
@@ -204,6 +209,7 @@ GET /api/v1/data/ps/common/TripService/exists
GET /api/v1/data/ps/common/TripService/getAllTrip v1.data.ps.common.TripServiceRestApi.getAllTrip
GET /api/v1/data/ps/common/TripService/getBrothers v1.data.ps.common.TripServiceRestApi.getBrothers
GET /api/v1/data/ps/common/TripService/getChildren v1.data.ps.common.TripServiceRestApi.getChildren
+GET /api/v1/data/ps/common/TripService/getChildrenUpdate v1.data.ps.common.TripServiceRestApi.getChildrenUpdate
GET /api/v1/data/ps/common/TripService/getMatchingTripsVesselWithinDateRange v1.data.ps.common.TripServiceRestApi.getMatchingTripsVesselWithinDateRange
GET /api/v1/data/ps/common/TripService/getParentBrothers v1.data.ps.common.TripServiceRestApi.getParentBrothers
GET /api/v1/data/ps/common/TripService/getSpeciesByListAndTrip v1.data.ps.common.TripServiceRestApi.getSpeciesByListAndTrip
@@ -218,6 +224,7 @@ DELETE /api/v1/data/ps/observation/ActivityService/delete
GET /api/v1/data/ps/observation/ActivityService/exists v1.data.ps.observation.ActivityServiceRestApi.exists
GET /api/v1/data/ps/observation/ActivityService/getBrothers v1.data.ps.observation.ActivityServiceRestApi.getBrothers
GET /api/v1/data/ps/observation/ActivityService/getChildren v1.data.ps.observation.ActivityServiceRestApi.getChildren
+GET /api/v1/data/ps/observation/ActivityService/getChildrenUpdate v1.data.ps.observation.ActivityServiceRestApi.getChildrenUpdate
GET /api/v1/data/ps/observation/ActivityService/loadDto v1.data.ps.observation.ActivityServiceRestApi.loadDto
GET /api/v1/data/ps/observation/ActivityService/loadForm v1.data.ps.observation.ActivityServiceRestApi.loadForm
GET /api/v1/data/ps/observation/ActivityService/loadReferenceToRead v1.data.ps.observation.ActivityServiceRestApi.loadReferenceToRead
@@ -248,6 +255,7 @@ DELETE /api/v1/data/ps/observation/RouteService/delete
GET /api/v1/data/ps/observation/RouteService/exists v1.data.ps.observation.RouteServiceRestApi.exists
GET /api/v1/data/ps/observation/RouteService/getBrothers v1.data.ps.observation.RouteServiceRestApi.getBrothers
GET /api/v1/data/ps/observation/RouteService/getChildren v1.data.ps.observation.RouteServiceRestApi.getChildren
+GET /api/v1/data/ps/observation/RouteService/getChildrenUpdate v1.data.ps.observation.RouteServiceRestApi.getChildrenUpdate
GET /api/v1/data/ps/observation/RouteService/isActivityEndOfSearchFound v1.data.ps.observation.RouteServiceRestApi.isActivityEndOfSearchFound
GET /api/v1/data/ps/observation/RouteService/loadDto v1.data.ps.observation.RouteServiceRestApi.loadDto
GET /api/v1/data/ps/observation/RouteService/loadForm v1.data.ps.observation.RouteServiceRestApi.loadForm
=====================================
services/local-impl/src/main/java/fr/ird/observe/services/local/service/actions/report/ReportServiceLocalSupport.java
=====================================
@@ -34,7 +34,7 @@ import fr.ird.observe.dto.report.Report;
import fr.ird.observe.dto.report.ReportOperation;
import fr.ird.observe.dto.report.ReportRequest;
import fr.ird.observe.dto.report.ReportVariable;
-import fr.ird.observe.entities.AbstractObserveTopiaDao;
+import fr.ird.observe.entities.data.TripAwareTopiaDao;
import fr.ird.observe.entities.data.ll.common.GearUseFeatures;
import fr.ird.observe.entities.data.ll.common.GearUseFeaturesMeasurement;
import fr.ird.observe.entities.data.ps.common.Trip;
@@ -485,9 +485,9 @@ public class ReportServiceLocalSupport extends ObserveServiceLocal implements Re
paramsFixes.put(name, value);
}
}
- AbstractObserveTopiaDao<?> dao = (AbstractObserveTopiaDao<?>) getTopiaPersistenceContext().getDao(Trip.class);
+ TripAwareTopiaDao<?, ?, ?> dao = (TripAwareTopiaDao<?, ?, ?>) getTopiaPersistenceContext().getDao(Trip.class);
log.debug(String.format("Request: %s, params: %s", request, paramsFixes));
- return dao.findAllFromHql(request, paramsFixes);
+ return dao.findAll(request, paramsFixes);
}
private void doPopulateRepeatVariables(Report report, ImmutableSet<String> tripId) {
=====================================
services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/EditableDataServiceLocalSupport.java
=====================================
@@ -120,10 +120,6 @@ public abstract class EditableDataServiceLocalSupport<PE extends Entity, D exten
return spi.newEntity(now());
}
- protected DataDtoReferenceSet<R> toReferenceSet(Collection<E> entities) {
- return spi.toReferenceSet(getReferentialLocale(), entities);
- }
-
protected DataDtoReferenceSet<R> toReferenceSet(Collection<E> entities, Date now) {
return spi.toReferenceSet(getReferentialLocale(), entities, now);
}
=====================================
services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/OpenableDataServiceLocalSupport.java
=====================================
@@ -27,6 +27,7 @@ import fr.ird.observe.dto.data.OpenableDto;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.reference.DataDtoReferenceSet;
+import fr.ird.observe.dto.reference.UpdatedDataDtoReferenceSet;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.entities.Entity;
import fr.ird.observe.entities.ObserveTopiaPersistenceContext;
@@ -36,9 +37,11 @@ import fr.ird.observe.services.service.data.OpenableDataService;
import fr.ird.observe.spi.context.DataDtoEntityContext;
import fr.ird.observe.spi.context.DtoEntityContext;
import org.nuiton.topia.persistence.TopiaDao;
+import org.nuiton.topia.persistence.TopiaEntity;
import java.util.Collection;
import java.util.Date;
+import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
@@ -72,6 +75,14 @@ public abstract class OpenableDataServiceLocalSupport<PE extends Entity, D exten
return getChildren(parent);
}
+ @Override
+ public UpdatedDataDtoReferenceSet<R> getChildrenUpdate(String parentId, Date lastUpdate) {
+ PE parent = loadParentEntity(parentId);
+ ImmutableSet<String> allIds = getChildrenIds(parent);
+ Collection<E> children0 = getChildren0(parent, lastUpdate);
+ return new UpdatedDataDtoReferenceSet<R>(allIds, toReferenceSet(children0, now()));
+ }
+
@Override
public DataDtoReferenceSet<R> getBrothers(String id) {
return getBrothers(parentSpi, propertyName, spi, id);
@@ -105,7 +116,7 @@ public abstract class OpenableDataServiceLocalSupport<PE extends Entity, D exten
@Override
public void move(String newParentId, ImmutableSet<String> ids) {
PE parent = loadParentEntity(newParentId);
- Collection<E> collection = parent.get(propertyName);
+ Collection<E> collection = getChildren0(parent, null);
for (String id : ids) {
E entity = loadEntity(id);
collection.add(entity);
@@ -142,10 +153,6 @@ public abstract class OpenableDataServiceLocalSupport<PE extends Entity, D exten
return spi.newEntity(now());
}
- protected DataDtoReferenceSet<R> toReferenceSet(Collection<E> entities) {
- return spi.toReferenceSet(getReferentialLocale(), entities);
- }
-
protected DataDtoReferenceSet<R> toReferenceSet(Collection<E> entities, Date now) {
return spi.toReferenceSet(getReferentialLocale(), entities, now);
}
@@ -182,9 +189,22 @@ public abstract class OpenableDataServiceLocalSupport<PE extends Entity, D exten
return spi.loadEntity(getApplicationLocale(), getTopiaPersistenceContext(), id);
}
- protected DataDtoReferenceSet<R> getChildren(PE parent) {
- Collection<E> parents = parent.get(propertyName);
- return spi.toReferenceSet(getReferentialLocale(), parents);
+ protected final DataDtoReferenceSet<R> getChildren(PE parent) {
+ Collection<E> parents = getChildren0(parent, null);
+ return spi.toReferenceSet(getReferentialLocale(), parents, now());
+ }
+
+ protected Collection<E> getChildren0(PE parent, Date lastUpdate) {
+ Collection<E> collection = parent.get(propertyName);
+ if (lastUpdate != null) {
+ collection = collection.stream().filter(e -> e.getLastUpdateDate().after(lastUpdate)).collect(Collectors.toList());
+ }
+ return collection;
+ }
+
+ protected ImmutableSet<String> getChildrenIds(PE parent) {
+ Collection<E> collection = getChildren0(parent, null);
+ return collection.stream().map(TopiaEntity::getTopiaId).collect(ImmutableSet.toImmutableSet());
}
protected PE getParent(String id) {
=====================================
services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/TripServiceLocalSupport.java
=====================================
@@ -50,6 +50,7 @@ import org.nuiton.topia.persistence.script.SqlScriptConsumer;
import org.nuiton.topia.persistence.script.TopiaSqlScript;
import org.nuiton.util.DateUtil;
+import java.util.Collection;
import java.util.Comparator;
import java.util.Date;
import java.util.LinkedHashSet;
@@ -71,7 +72,7 @@ public abstract class TripServiceLocalSupport<D extends OpenableDto & fr.ird.obs
}
@Override
- public void setServiceContext(ObserveServiceContextLocal serviceContext) {
+ public final void setServiceContext(ObserveServiceContextLocal serviceContext) {
super.setServiceContext(serviceContext);
sqlScriptProducerService = serviceContext.newService(SqlScriptProducerService.class);
}
@@ -86,16 +87,10 @@ public abstract class TripServiceLocalSupport<D extends OpenableDto & fr.ird.obs
return getProgramBrothers(parentSpi, programId);
}
- @Override
- protected DataDtoReferenceSet<R> getChildren(Program parent) {
- List<E> entities = getDao().forEquals(TripAware.PROPERTY_PROGRAM, parent).findAll();
- return toReferenceSet(entities);
- }
-
@Override
public ImmutableSet<R> getMatchingTripsVesselWithinDateRange(String tripId, String vesselId, Date startDate, Date endDate) {
List<E> trips = getDao().getMatchingTripsVesselWithinDateRange(tripId, vesselId, startDate, endDate);
- return toReferenceSet(trips).toSet();
+ return toReferenceSet(trips, now()).toSet();
}
@Override
@@ -157,10 +152,20 @@ public abstract class TripServiceLocalSupport<D extends OpenableDto & fr.ird.obs
}
@Override
- protected SaveResultDto onSave(Program parent, E entity, D dto) {
+ protected final SaveResultDto onSave(Program parent, E entity, D dto) {
if (entity.isPersisted()) {
entity.updateEndDate();
}
return saveEntity(entity);
}
+
+ @Override
+ protected final Collection<E> getChildren0(Program parent, Date lastUpdate) {
+ return getDao().getChildren(parent, lastUpdate);
+ }
+
+ @Override
+ protected final ImmutableSet<String> getChildrenIds(Program parent) {
+ return getDao().getChildrenIds(parent);
+ }
}
=====================================
services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/ps/observation/FloatingObjectServiceLocalSupport.java
=====================================
@@ -89,7 +89,7 @@ class FloatingObjectServiceLocalSupport extends EditableDataServiceLocalSupport<
@Override
public DataDtoReferenceSet<FloatingObjectReference> getChildren(String activityId) {
Set<FloatingObject> entities = loadParentEntity(activityId).getFloatingObject();
- return toReferenceSet(entities);
+ return toReferenceSet(entities, now());
}
@Override
=====================================
toolkit/dto/src/main/java/fr/ird/observe/dto/reference/DtoReferenceCollection.java
=====================================
@@ -102,6 +102,10 @@ public abstract class DtoReferenceCollection<R extends DtoReference> implements
return stream().filter(id -> idsList.contains(id.getId()));
}
+ public Stream<R> subSet(Collection<String> ids) {
+ return stream().filter(id -> ids.contains(id.getId()));
+ }
+
public ImmutableSet<R> toSet() {
return ImmutableSet.copyOf(references);
}
=====================================
toolkit/dto/src/main/java/fr/ird/observe/dto/reference/LazyDataDtoReferenceSet.java
=====================================
@@ -56,15 +56,15 @@ public abstract class LazyDataDtoReferenceSet<R extends DataDtoReference> implem
}
public final DataDtoReferenceSet<R> reload() {
- clear();
+ createDelegate();
return get();
}
- public void clear() {
- delegate = null;
- }
-
public final Class<R> getReferenceType() {
return referenceType;
}
+
+ protected DataDtoReferenceSet<R> getDelegate() {
+ return delegate;
+ }
}
=====================================
toolkit/dto/src/main/java/fr/ird/observe/dto/reference/UpdatedDataDtoReferenceSet.java
=====================================
@@ -0,0 +1,65 @@
+package fr.ird.observe.dto.reference;
+
+/*-
+ * #%L
+ * ObServe Toolkit :: Dto
+ * %%
+ * Copyright (C) 2008 - 2021 IRD, Code Lutin, Ultreia.io
+ * %%
+ * 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%
+ */
+
+import com.google.common.collect.ImmutableSet;
+import fr.ird.observe.dto.ObserveDto;
+
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/**
+ * Created on 14/01/2021.
+ *
+ * @author Tony Chemit - dev(a)tchemit.fr
+ * @since 8.0.3
+ */
+public class UpdatedDataDtoReferenceSet<R extends DataDtoReference> implements ObserveDto {
+
+ private final ImmutableSet<String> allIds;
+ private final DataDtoReferenceSet<R> updatedReferences;
+
+ public UpdatedDataDtoReferenceSet(ImmutableSet<String> allIds, DataDtoReferenceSet<R> updatedReferences) {
+ this.allIds = Objects.requireNonNull(allIds);
+ this.updatedReferences = Objects.requireNonNull(updatedReferences);
+ }
+
+ public ImmutableSet<String> getAllIds() {
+ return allIds;
+ }
+
+ public DataDtoReferenceSet<R> getUpdatedReferences() {
+ return updatedReferences;
+ }
+
+ public DataDtoReferenceSet<R> mergeTo(DataDtoReferenceSet<R> incoming) {
+ Set<String> previousIdsToKeep = new LinkedHashSet<>(getAllIds());
+ previousIdsToKeep.removeAll(updatedReferences.toIds());
+ List<R> collect = incoming.subSet(previousIdsToKeep).collect(Collectors.toList());
+ collect.addAll(getUpdatedReferences().toArrayList());
+ return DataDtoReferenceSet.of(incoming.getType(), collect, getUpdatedReferences().getLastUpdate());
+ }
+}
=====================================
toolkit/persistence/src/main/java/fr/ird/observe/entities/AbstractObserveTopiaDao.java
=====================================
@@ -22,50 +22,28 @@ package fr.ird.observe.entities;
* #L%
*/
+import fr.ird.observe.dto.IdDto;
+import org.nuiton.topia.persistence.HqlAndParametersBuilder;
+import org.nuiton.topia.persistence.TopiaQueryBuilderAddCriteriaOrRunQueryStep;
import org.nuiton.topia.persistence.internal.AbstractTopiaDao;
-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.sql.Timestamp;
+import java.util.Date;
import java.util.List;
import java.util.Map;
public abstract class AbstractObserveTopiaDao<E extends Entity> extends AbstractTopiaDao<E> {
- private final GetLastUpdateDateSqlQuery getLastUpdateDateSqlQuery;
+ public TopiaQueryBuilderAddCriteriaOrRunQueryStep<E> forLastUpdateDateGreaterThan(Date lastUpdateDate) {
+ HqlAndParametersBuilder<E> hqlAndParametersBuilder = newHqlAndParametersBuilder();
+ hqlAndParametersBuilder.addGreaterThan(IdDto.PROPERTY_LAST_UPDATE_DATE, lastUpdateDate);
+ return new InnerTopiaQueryBuilderAddCriteriaOrRunQueryStep<>(this, hqlAndParametersBuilder) {
- protected AbstractObserveTopiaDao() {
- String schemaName = getTopiaEntityEnum().dbSchemaName();
- String tableName = getTopiaEntityEnum().dbTableName();
- getLastUpdateDateSqlQuery = new GetLastUpdateDateSqlQuery(schemaName, tableName);
+ };
}
- private static class GetLastUpdateDateSqlQuery extends TopiaSqlQuery<Timestamp> {
-
- protected final String sql;
-
- private GetLastUpdateDateSqlQuery(String schemaName, String tableName) {
- this.sql = "SELECT max(" + Entity.PROPERTY_LAST_UPDATE_DATE + ") FROM " + schemaName + "." + tableName;
- }
-
- @Override
- public PreparedStatement prepareQuery(Connection connection) throws SQLException {
- return connection.prepareStatement(sql);
- }
-
- @Override
- public Timestamp prepareResult(ResultSet set) throws SQLException {
- return set.getTimestamp(1);
- }
-
- }
-
- public <O> List<O> findAllFromHql(String hql, Map<String, Object> hqlParameters) {
- return findAll(hql, hqlParameters);
+ @Override
+ public <O> List<O> findAll(String hql, Map<String, Object> hqlParameters) {
+ return super.findAll(hql, hqlParameters);
}
-
}
=====================================
toolkit/persistence/src/main/java/fr/ird/observe/spi/context/DataDtoEntityContext.java
=====================================
@@ -51,11 +51,6 @@ public class DataDtoEntityContext<D extends DataDto, R extends DataDtoReference,
super(dtoType, referenceType, entityType, entityTypeImpl, daoFunction);
}
- @Override
- public DataDtoReferenceSet<R> toReferenceSet(ReferentialLocale referentialLocale, Collection<E> entities) {
- return (DataDtoReferenceSet<R>) super.toReferenceSet(referentialLocale, entities);
- }
-
@Override
public DataDtoReferenceSet<R> toReferenceSet(ReferentialLocale referentialLocale, Collection<E> entities, Date now) {
return (DataDtoReferenceSet<R>) super.toReferenceSet(referentialLocale, entities.stream(), now);
=====================================
toolkit/persistence/src/main/java/fr/ird/observe/spi/context/DtoEntityContextSupport.java
=====================================
@@ -75,15 +75,6 @@ public abstract class DtoEntityContextSupport<D extends IdDto, R extends DtoRefe
protected abstract void fromDto(ReferentialLocale referentialLocale, E entity, D dto);
- protected DtoReferenceCollection<R> toReferenceSet(ReferentialLocale referentialLocale, Collection<E> entities) {
- ImmutableSet.Builder<R> references = ImmutableSet.builder();
- for (E entity : entities) {
- @SuppressWarnings("unchecked") R reference = ((EntityToDto<?, R>) entity).toReference(referentialLocale);
- references.add(reference);
- }
- return createReferenceSet(referentialLocale, references.build(), null);
- }
-
@Override
public UpdateLastUpdateDateFieldScript getUpdateLastUpdateDateFieldScript() {
return updateLastUpdateDateFieldScript;
=====================================
toolkit/persistence/src/main/java/fr/ird/observe/spi/context/ReferentialDtoEntityContext.java
=====================================
@@ -50,11 +50,6 @@ public class ReferentialDtoEntityContext<D extends ReferentialDto, R extends Ref
super(dtoType, referenceType, entityType, entityTypeImpl, daoFunction);
}
- @Override
- public ReferentialDtoReferenceSet<R> toReferenceSet(ReferentialLocale referentialLocale, Collection<E> entities) {
- return (ReferentialDtoReferenceSet<R>) super.toReferenceSet(referentialLocale, entities);
- }
-
@Override
public ReferentialDtoReferenceSet<R> toReferenceSet(ReferentialLocale referentialLocale, Collection<E> entities, Date now) {
return (ReferentialDtoReferenceSet<R>) super.toReferenceSet(referentialLocale, entities, now);
=====================================
toolkit/service/src/main/java/fr/ird/observe/services/service/data/OpenableDataService.java
=====================================
@@ -27,6 +27,7 @@ import fr.ird.observe.dto.data.DataDto;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.reference.DataDtoReferenceSet;
+import fr.ird.observe.dto.reference.UpdatedDataDtoReferenceSet;
import fr.ird.observe.dto.result.SaveResultDto;
import fr.ird.observe.security.Permission;
import fr.ird.observe.services.service.ObserveService;
@@ -37,6 +38,8 @@ import io.ultreia.java4all.http.spi.Get;
import io.ultreia.java4all.http.spi.Internal;
import io.ultreia.java4all.http.spi.Post;
+import java.util.Date;
+
/**
* Created on 13/10/2020.
*
@@ -50,6 +53,10 @@ public interface OpenableDataService<D extends DataDto, R extends DataDtoReferen
@MethodCredential(Permission.READ_DATA)
DataDtoReferenceSet<R> getChildren(String parentId);
+ @Get
+ @MethodCredential(Permission.READ_DATA)
+ UpdatedDataDtoReferenceSet<R> getChildrenUpdate(String parentId, Date lastUpdate);
+
@Get
@MethodCredential(Permission.READ_DATA)
DataDtoReferenceSet<R> getBrothers(String id);
=====================================
toolkit/service/src/main/java/fr/ird/observe/spi/context/EmptyChildrenDataReferenceSet.java
=====================================
@@ -26,6 +26,8 @@ import fr.ird.observe.dto.decoration.DecoratorServiceSupport;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.reference.DataDtoReferenceSet;
import fr.ird.observe.dto.reference.LazyDataDtoReferenceSet;
+import fr.ird.observe.dto.reference.UpdatedDataDtoReferenceSet;
+import fr.ird.observe.services.service.data.OpenableDataService;
import fr.ird.observe.spi.ServicesProvider;
import java.util.Comparator;
@@ -59,7 +61,18 @@ public class EmptyChildrenDataReferenceSet<R extends DataDtoReference> extends L
@Override
protected DataDtoReferenceSet<R> createDelegate() {
- DataDtoReferenceSet<R> result = spi.getService(servicesProvider).getChildren(parentId);
+ DataDtoReferenceSet<R> previousResult = getDelegate();
+ DataDtoReferenceSet<R> result;
+ OpenableDataService<?, R> service = spi.getService(servicesProvider);
+ if (previousResult == null) {
+ // first time load all data
+ result = service.getChildren(parentId);
+ } else {
+ // ask an update of data
+ UpdatedDataDtoReferenceSet<R> updateResult = service.getChildrenUpdate(parentId, previousResult.getLastUpdate());
+ // merge it with previous data
+ result = updateResult.mergeTo(previousResult);
+ }
result.sort(spi.getReferenceComparator());
decoratorService.installDecorator(result);
return result;
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/2462e0f4bd8e53079c81533c8…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/2462e0f4bd8e53079c81533c8…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Fix entity ←→ dto binding for DataFileDto properties
by Tony CHEMIT Jan. 14, 2021
by Tony CHEMIT Jan. 14, 2021
Jan. 14, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
ec14b19e by Tony Chemit at 2021-01-14T15:28:42+01:00
Fix entity ←→ dto binding for DataFileDto properties
- - - - -
1 changed file:
- toolkit/templates/src/main/java/fr/ird/observe/toolkit/templates/entity/ToolkitEntityToDtoMapping.java
Changes:
=====================================
toolkit/templates/src/main/java/fr/ird/observe/toolkit/templates/entity/ToolkitEntityToDtoMapping.java
=====================================
@@ -26,6 +26,7 @@ import com.google.auto.service.AutoService;
import fr.ird.observe.dto.DtoToReference;
import fr.ird.observe.dto.IdDto;
import fr.ird.observe.dto.data.DataDto;
+import fr.ird.observe.dto.data.DataFileDto;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.reference.DtoReference;
import fr.ird.observe.dto.reference.ReferentialDtoReference;
@@ -37,6 +38,7 @@ import fr.ird.observe.entities.referential.ReferentialEntity;
import fr.ird.observe.spi.module.BusinessProject;
import io.ultreia.java4all.bean.definition.JavaBeanDefinition;
import io.ultreia.java4all.bean.definition.JavaBeanDefinitionStore;
+import io.ultreia.java4all.bean.definition.JavaBeanPropertyDefinition;
import io.ultreia.java4all.util.ServiceLoaders;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -55,6 +57,7 @@ import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Objects;
+import java.util.Optional;
import java.util.Set;
/**
@@ -160,7 +163,8 @@ public class ToolkitEntityToDtoMapping extends EntityToDtoMapping {
@Override
public boolean acceptToDtoProperty(Class<?> dtoType, String propertyName) {
JavaBeanDefinition javaBeanDefinition = definitions.get(dtoType);
- return javaBeanDefinition.writeProperties().anyMatch(p -> p.propertyName().equals(propertyName));
+ Optional<JavaBeanPropertyDefinition<?, ?>> first = javaBeanDefinition.writeProperties().filter(p -> p.propertyName().equals(propertyName)).findFirst();
+ return first.isPresent() && !(DataFileDto.class.equals(first.get().type()));
}
@Override
@@ -182,9 +186,6 @@ public class ToolkitEntityToDtoMapping extends EntityToDtoMapping {
if (isEntity) {
return String.format("java.util.Optional.ofNullable(%s()).map(e-> e.toReference(referentialLocale)).orElse(null)", getTransformer().getJavaBeanMethodName(operationPrefix, attribute.getName()));
} else {
- if ("java.sql.Blob".equals(attribute.getType())) {
- return "null";
- }
return String.format("%s()", getTransformer().getJavaBeanMethodName(operationPrefix, attribute.getName()));
}
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/ec14b19e973a0267f11ff0ca0…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/ec14b19e973a0267f11ff0ca0…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 10 commits: Fix bad service instanciation (bad block scope, so got illegal state exception...
by Tony CHEMIT Jan. 14, 2021
by Tony CHEMIT Jan. 14, 2021
Jan. 14, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
fbc2873b by Tony Chemit at 2021-01-14T12:49:45+01:00
Fix bad service instanciation (bad block scope, so got illegal state exception in DataSourceService.create in server mode)
- - - - -
c6a0e8ec by Tony Chemit at 2021-01-14T12:50:34+01:00
Add missing method credentials
- - - - -
83536653 by Tony Chemit at 2021-01-14T12:53:30+01:00
Optimisation de l'arbre de sélection de données - See #1750
(never use trip ids to get program children in navigation / selection node)
- - - - -
779aa92f by Tony Chemit at 2021-01-14T12:57:05+01:00
Remplacer les raccourcis clavier Ctrl+L et Ctrl+R par des raccourcis compatible MacOs - Closes #1752
- - - - -
ee0a7b32 by Tony Chemit at 2021-01-14T12:58:05+01:00
Add FIXME on NavigationNode update performance issues (a ContentList reload all his references, should get only updates one and do the merge with previous one
- - - - -
84e6b88a by Tony Chemit at 2021-01-14T13:00:45+01:00
Use Java9 API
- - - - -
18559d07 by Tony Chemit at 2021-01-14T14:51:21+01:00
Add lastUpdate on any type of DtoReferenceSet to be able to reload only the changed part from service - See #1750
- - - - -
641fc046 by Tony Chemit at 2021-01-14T14:52:17+01:00
Review ImmutableSet Injector (was pretty lame :( with a double conversion string to gson to object)) : no way!
thanks to smaisonneuve
See #1750
- - - - -
379c0745 by Tony Chemit at 2021-01-14T14:52:54+01:00
Add lastUpdate on any type of DtoReferenceSet to be able to reload only the changed part from service - See #1750
- - - - -
a535a8e8 by Tony Chemit at 2021-01-14T14:57:36+01:00
Améliorer la gestion des focus - See #1418
- - - - -
30 changed files:
- client/core/src/main/java/fr/ird/observe/client/datasource/api/DataSourceReferenceProvider.java
- client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusModel.java
- client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusZone.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorBodyContent.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/ObserveKeyStrokesEditorApi.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/RunObserveListener.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIHandler.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/mode/ChangeMode.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/open/ContentOpen.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUINavigationInitializer.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/menu/DataSourceEditorNavigationModuleContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/navigation/NavigationTreeSelectionListenerImpl.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/navigation/tree/NavigationContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/navigation/tree/root/RootNavigationTreeNodeProvider.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/LlRootNavigationTreeNodeProvider.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/LlRootSelectionTreeNodeProvider.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/PsRootNavigationTreeNodeProvider.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/PsRootSelectionTreeNodeProvider.java
- client/datasource/editor/spi/src/main/java/fr/ird/observe/client/datasource/editor/spi/content/helper/ContentUINavigationNodeHelper.java
- server/configuration/src/main/java/fr/ird/observe/server/configuration/user/ObserveWebUsersHelper.java
- server/core/src/main/filtered-resources/mapping
- server/core/src/main/java/fr/ird/observe/server/injector/ImmutableSetInjector.java
- server/core/src/main/java/fr/ird/observe/server/security/ObserveWebSecurityApplicationContext.java
- services/client-impl/src/main/java/fr/ird/observe/services/client/ObserveServiceFactoryClient.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/ObserveServiceLocal.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/ReferenceServiceLocalSupport.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/data/ps/ConsolidateDataServiceLocalSupport.java
- toolkit/dto/src/main/java/fr/ird/observe/dto/reference/DataDtoReferenceSet.java
- toolkit/dto/src/main/java/fr/ird/observe/dto/reference/DtoReferenceCollection.java
- toolkit/dto/src/main/java/fr/ird/observe/dto/reference/ReferentialDtoReferenceSet.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/b71dc75bab7f727f4e00b78d…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/b71dc75bab7f727f4e00b78d…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 8 commits: Widget horodatage sans bouton de réinitialisation - Closes #1746
by Tony CHEMIT Jan. 13, 2021
by Tony CHEMIT Jan. 13, 2021
Jan. 13, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
406d7331 by Tony Chemit at 2021-01-13T11:49:26+01:00
Widget horodatage sans bouton de réinitialisation - Closes #1746
- - - - -
974d8975 by Tony Chemit at 2021-01-13T11:55:58+01:00
Affichage des coordonnées - Closes #1745
- - - - -
13723861 by Tony Chemit at 2021-01-13T16:31:42+01:00
L'export de marées vers sql.gz ne fontionne pas - Closes #1748
- - - - -
8e54fbe4 by Tony Chemit at 2021-01-13T16:31:42+01:00
Add autoSelectText ui option (will use by next FocusManager API)
- - - - -
3bb4a251 by Tony Chemit at 2021-01-13T16:34:39+01:00
Fix missing model binding
- - - - -
afa929e1 by Tony Chemit at 2021-01-13T17:22:19+01:00
Review focus model, nearly ok.
- - - - -
42452fe2 by Tony Chemit at 2021-01-13T17:39:37+01:00
Fix trip missing binding
- - - - -
b71dc75b by Tony Chemit at 2021-01-13T18:25:20+01:00
Optimisation de l'arbre de sélection de données - See #1750
- - - - -
30 changed files:
- client/configuration/src/main/config/Client.ini
- client/configuration/src/main/i18n/getters/config.getter
- client/core/src/main/i18n/getters/java.getter
- client/core/src/main/java/fr/ird/observe/client/ClientUIContext.java
- client/core/src/main/java/fr/ird/observe/client/main/MainUIModel.java
- client/core/src/main/java/fr/ird/observe/client/main/ObserveMainUIHandler.java
- client/core/src/main/java/fr/ird/observe/client/main/body/ClientConfigUI.java
- + client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusModel.java
- + client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusZone.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorLayerUI.java → client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusZoneLayer.java
- client/core/src/main/java/fr/ird/observe/client/main/MainUIKeyEventDispatcher.java → client/core/src/main/java/fr/ird/observe/client/main/focus/UIFocusModel.java
- client/core/src/main/java/fr/ird/observe/client/util/init/DefaultUIInitializer.java
- client/core/src/main/java/fr/ird/observe/client/util/init/UIInitHelper.java
- client/datasource/actions/src/main/java/fr/ird/observe/client/datasource/actions/config/SelectDataModel.java
- client/datasource/actions/src/main/java/fr/ird/observe/client/datasource/actions/synchronize/data/DataSynchroModel.java
- client/datasource/editor/api/src/main/i18n/getters/java.getter
- client/datasource/editor/api/src/main/i18n/templates/dataSourceConnectionReport_en_GB.ftl
- client/datasource/editor/api/src/main/i18n/templates/dataSourceConnectionReport_es_ES.ftl
- client/datasource/editor/api/src/main/i18n/templates/dataSourceConnectionReport_fr_FR.ftl
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorBodyContent.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorHandler.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/actions/ChangeEditorFocus.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUI.jaxx
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIHandler.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIInitializer.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/mode/ChangeMode.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/open/ContentOpen.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUI.jaxx
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/42bc99c0cc97cc08979f981b…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/42bc99c0cc97cc08979f981b…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 14 commits: Clean more dto (remove a property change listener : a lots of code, for nothing...)
by Tony CHEMIT Jan. 10, 2021
by Tony CHEMIT Jan. 10, 2021
Jan. 10, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
66cff9d6 by Tony Chemit at 2021-01-09T13:47:53+01:00
Clean more dto (remove a property change listener : a lots of code, for nothing...)
- - - - -
f3db7806 by Tony Chemit at 2021-01-09T13:48:22+01:00
Remove annotation
- - - - -
91030af0 by Tony Chemit at 2021-01-09T13:48:43+01:00
Add extra method to lot extra referential references in cache
- - - - -
9ba76cd8 by Tony Chemit at 2021-01-09T13:49:58+01:00
* Review ModelStates and clean as much as possible Model)
* Make Model not JavaBean
- - - - -
f10e5207 by Tony Chemit at 2021-01-09T15:48:18+01:00
Begin of review of focus
Restrict override of concrete classes
- - - - -
48a92367 by Tony Chemit at 2021-01-09T17:14:14+01:00
Add more root cycle
Remove old focus API \o/, replaced by nothing or nearly \o/\o/
- - - - -
8c1d872d by Tony Chemit at 2021-01-10T02:15:27+01:00
Improve KeyboardFocusManager usage (blocks also any focus event if model is blocking focus)
- - - - -
764a8bc5 by Tony Chemit at 2021-01-10T02:15:27+01:00
Remove some default bindings on JTabbedPane to fi our usages
- - - - -
0a7d58df by Tony Chemit at 2021-01-10T02:15:27+01:00
By default always focus on navigation
- - - - -
5d69912b by Tony Chemit at 2021-01-10T05:07:59+01:00
Rename body in ContentUI to contentBody to avoid any conflict, body was already used by MainUI...
- - - - -
96f35bb9 by Tony Chemit at 2021-01-10T05:07:59+01:00
Avoid NPE (standalone ui has no changeMode action)
- - - - -
4d3785b5 by Tony Chemit at 2021-01-10T05:07:59+01:00
Fix injected binding in JaxxComboBox
- - - - -
0e7b949c by Tony Chemit at 2021-01-10T05:07:59+01:00
Remove actionDown from ContentUI (legacy code)
- - - - -
42bc99c0 by Tony Chemit at 2021-01-10T21:22:59+01:00
Stash, can't keep it here
- - - - -
30 changed files:
- client/configuration/src/main/config/Client.ini
- client/configuration/src/main/i18n/getters/config.getter
- client/configuration/src/main/java/fr/ird/observe/client/ObserveClientResourceManager.java
- client/core/src/main/i18n/getters/java.getter
- client/core/src/main/java/fr/ird/observe/client/ClientUIContext.java
- client/core/src/main/java/fr/ird/observe/client/datasource/api/cache/ReferencesCache.java
- − client/core/src/main/java/fr/ird/observe/client/main/MainUIKeyEventDispatcher.java
- client/core/src/main/java/fr/ird/observe/client/main/MainUIModel.java
- client/core/src/main/java/fr/ird/observe/client/main/ObserveMainUIHandler.java
- client/core/src/main/java/fr/ird/observe/client/main/body/ClientConfigUI.java
- + client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusModel.java
- + client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusZone.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorLayerUI.java → client/core/src/main/java/fr/ird/observe/client/main/focus/MainUIFocusZoneLayer.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/edit/ContentEditUILayoutFocusTraversalPolicy.java → client/core/src/main/java/fr/ird/observe/client/main/focus/UIFocusModel.java
- client/core/src/main/java/fr/ird/observe/client/util/init/DefaultUIInitializer.java
- client/core/src/main/java/fr/ird/observe/client/util/init/UIInitHelper.java
- client/core/src/main/resources/fr/ird/observe/client/ui/ObserveCommon.jcss
- client/datasource/actions/src/main/java/fr/ird/observe/client/datasource/actions/pairing/ll/ActivityLlPairingModel.java
- client/datasource/editor/api/src/main/i18n/getters/java.getter
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorBodyContent.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorHandler.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/DataSourceEditorModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/actions/ChangeEditorFocus.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUI.jaxx
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUI.jcss
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIHandler.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIInitializer.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/create/CreateNewContentTableUIEntry.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/3ca435324dea106595a4abb8…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/3ca435324dea106595a4abb8…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Generation des ContentUIModelStates (à finaliser) - Closes #1743
by Tony CHEMIT Jan. 8, 2021
by Tony CHEMIT Jan. 8, 2021
Jan. 8, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
3ca43532 by Tony Chemit at 2021-01-08T15:24:43+01:00
Generation des ContentUIModelStates (à finaliser) - Closes #1743
- - - - -
30 changed files:
- client/core/src/main/java/fr/ird/observe/client/datasource/api/cache/ReferencesCache.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/edit/ContentEditUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/edit/ContentEditUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/edit/ContentEditUINavigationContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUINavigationContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/open/ContentOpenableUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/open/ContentOpenableUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/open/ContentOpenableUINavigationContext.java
- + client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/sample/SampleContentTableUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/actions/sample/ResetSizeMeasureType.java → client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/sample/actions/ResetSizeMeasureType.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/actions/sample/ResetWeightMeasureType.java → client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/sample/actions/ResetWeightMeasureType.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/simple/ContentSimpleUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/simple/ContentSimpleUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/simple/ContentSimpleUINavigationContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/ContentTableUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/ContentTableUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/ContentTableUINavigationContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/referential/ContentReferentialUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/referential/ContentReferentialUIModelStates.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/referential/ContentReferentialUINavigationContext.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/referential/ReferentialHomeUIModel.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/navigation/tree/NavigationContext.java
- client/datasource/editor/api/src/main/resources/fr/ird/observe/client/datasource/editor/api/content/data/sample/CommonSample.jcss
- − client/datasource/editor/api/src/main/resources/fr/ird/observe/client/datasource/editor/api/content/data/table/CommonSample.jcss
- client/datasource/editor/common/src/main/java/fr/ird/observe/client/datasource/editor/common/referential/common/ProgramUI.jaxx
- client/datasource/editor/common/src/main/java/fr/ird/observe/client/datasource/editor/common/referential/common/ProgramUIModel.java → client/datasource/editor/common/src/main/java/fr/ird/observe/client/datasource/editor/common/referential/common/ProgramUIModelStates.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/common/TripGearUseFeaturesUI.jaxx
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/3ca435324dea106595a4abb80…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/3ca435324dea106595a4abb80…
You're receiving this email because of your account on gitlab.com.
1
0
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
6f0f4aff by Tony Chemit at 2021-01-07T16:40:08+01:00
Fix i18n
- - - - -
aebd40b3 by Tony Chemit at 2021-01-07T16:48:15+01:00
Clean java code > 8
- - - - -
30 changed files:
- client/core/src/main/java/fr/ird/observe/client/datasource/h2/backup/BackupsManager.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/list/ContentListUIHandler.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/referential/ReferentialHomeUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/common/TripGearUseFeaturesUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/logbook/ActivitySampleUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/logbook/SampleUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/logbook/SetCatchUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/logbook/SetGlobalCompositionUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/logbook/SetUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/observation/BranchlineUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/observation/SetCatchUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/observation/SetGlobalCompositionUIHandler.java
- client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/observation/SetUIHandler.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripGearUseFeaturesUIHandler.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/observation/DiscardedTargetSampleUIHandler.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/observation/KeptTargetSampleUIHandler.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/observation/NonTargetSampleUIHandler.java
- client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/observation/SetUIHandler.java
- client/i18n/src/main/i18n/translations/observe_es_ES.properties
- client/i18n/src/main/i18n/translations/observe_fr_FR.properties
- models/dto/src/main/java/fr/ird/observe/dto/data/validation/DataValidationResult.java
- models/dto/src/main/java/fr/ird/observe/dto/referential/validation/ReferentialValidationResult.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/DataSourceMigrationForVersion_7_3.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/DataSourceMigrationForVersion_7_6.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/DataSourceMigrationForVersion_8_0.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/old/DataSourceMigrationForVersion_4_0_RC2.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/old/DataSourceMigrationForVersion_6_0.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/old/DataSourceMigrationForVersion_6_2.java
- models/persistence/src/main/java/fr/ird/observe/entities/migration/old/DataSourceMigrationForVersion_6_5.java
- services/local-impl/src/main/java/fr/ird/observe/services/local/service/LastUpdateDateServiceLocalSupport.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/ee081a5d986e1ebbaacbbf7c…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/ee081a5d986e1ebbaacbbf7c…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 5 commits: Rechargement de la source de données - Closes #1738
by Tony CHEMIT Jan. 7, 2021
by Tony CHEMIT Jan. 7, 2021
Jan. 7, 2021
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
e5fe0fab by Tony Chemit at 2021-01-07T14:51:31+01:00
Rechargement de la source de données - Closes #1738
- - - - -
3f58446c by Tony Chemit at 2021-01-07T15:41:56+01:00
Consultation du tableau des débarquements lorsque le formulaire est verrouillé - Closes #1739
Meilleure gestion des actions partagées
- - - - -
aceee7ee by Tony Chemit at 2021-01-07T16:26:19+01:00
On arrive à vider la sélection sur un tableau alors qu'on ne devrait pas - Closes #1741
- - - - -
84ea6b17 by Tony Chemit at 2021-01-07T16:27:22+01:00
Consultation du tableau des débarquements lorsque le formulaire est verrouillé - Closes #1739
Ne pas autoriser le tableau à déplacer les lignes (il reste d'autres raccourcis clavier qu'il faudrait supprimer)
- - - - -
ee081a5d by Tony Chemit at 2021-01-07T16:27:52+01:00
Consultation du tableau des débarquements lorsque le formulaire est verrouillé - Closes #1739
Utilisation de meilleurs raccourcis (de toute façon le shift + ... ne fonctionnait pas)
- - - - -
7 changed files:
- client/core/src/main/java/fr/ird/observe/client/util/init/UIInitHelper.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/ObserveKeyStrokesEditorApi.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIInitializer.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/open/ContentOpen.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/ContentTableUIInitializer.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ui/table/popup/AutoSelectRowAndShowPopupActionSupport.java
- client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/menu/actions/ReloadStorageAction.java
Changes:
=====================================
client/core/src/main/java/fr/ird/observe/client/util/init/UIInitHelper.java
=====================================
@@ -89,6 +89,16 @@ public class UIInitHelper {
inputMap.put(KeyStroke.getKeyStroke(KeyEvent.VK_F8, 0), "none");
}
+ public static void init(JTable editor) {
+ InputMap inputMap = editor.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
+ inputMap.put(KeyStroke.getKeyStroke("pressed UP"), "none");
+ inputMap.put(KeyStroke.getKeyStroke("pressed PAGE_UP"), "none");
+ inputMap.put(KeyStroke.getKeyStroke("pressed DOWN"), "none");
+ inputMap.put(KeyStroke.getKeyStroke("pressed PAGE_DOWN"), "none");
+ inputMap.put(KeyStroke.getKeyStroke("pressed LEFT"), "none");
+ inputMap.put(KeyStroke.getKeyStroke("pressed RIGHT"), "none");
+ }
+
public static void init(JTree editor) {
editor.getInputMap()
.put(KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0), "none");
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/ObserveKeyStrokesEditorApi.java
=====================================
@@ -75,22 +75,23 @@ public class ObserveKeyStrokesEditorApi extends ObserveKeyStrokesSupport {
public static final KeyStroke KEY_STROKE_TOGGLE_LOGBOOK_AVAILABILITY = KeyStroke.getKeyStroke("ctrl pressed F2");
public static final KeyStroke KEY_STROKE_COPY_TO_CLIPBOARD = KeyStroke.getKeyStroke("ctrl pressed C");
+ public static final KeyStroke KEY_STROKE_BACK_TO_REFERENTIAL_LIST = KeyStroke.getKeyStroke("alt pressed BACK_SPACE");
+
// Content Table
public static final KeyStroke KEY_STROKE_SAVE_TABLE_ENTRY = KeyStroke.getKeyStroke("ctrl pressed S");
public static final KeyStroke KEY_STROKE_SAVE_AND_NEW_TABLE_ENTRY = KeyStroke.getKeyStroke("ctrl pressed N");
public static final KeyStroke KEY_STROKE_DELETE_TABLE_ENTRY = KeyStroke.getKeyStroke("ctrl pressed E");
public static final KeyStroke KEY_STROKE_RESET_TABLE_ENTRY = KeyStroke.getKeyStroke("ctrl pressed R");
- public static final KeyStroke KEY_STROKE_BACK_TO_REFERENTIAL_LIST = KeyStroke.getKeyStroke("alt pressed BACK_SPACE");
- public static final KeyStroke KEY_STROKE_SELECT_FIRST_TABLE_ENTRY = KeyStroke.getKeyStroke("shift alt pressed UP");
+ public static final KeyStroke KEY_STROKE_SELECT_FIRST_TABLE_ENTRY = KeyStroke.getKeyStroke("alt pressed PAGE_UP");
public static final KeyStroke KEY_STROKE_SELECT_PREVIOUS_TABLE_ENTRY = KeyStroke.getKeyStroke("alt pressed UP");
public static final KeyStroke KEY_STROKE_SELECT_NEXT_TABLE_ENTRY = KeyStroke.getKeyStroke("alt pressed DOWN");
- public static final KeyStroke KEY_STROKE_SELECT_LAST_TABLE_ENTRY = KeyStroke.getKeyStroke("shift alt pressed DOWN");
+ public static final KeyStroke KEY_STROKE_SELECT_LAST_TABLE_ENTRY = KeyStroke.getKeyStroke("alt pressed PAGE_DOWN");
public static final KeyStroke KEY_STROKE_MOVE_DOWN_TABLE_ENTRY = KeyStroke.getKeyStroke("altGraph pressed DOWN");
- public static final KeyStroke KEY_STROKE_MOVE_BOTTOM_TABLE_ENTRY = KeyStroke.getKeyStroke("shift altGraph pressed DOWN");
+ public static final KeyStroke KEY_STROKE_MOVE_BOTTOM_TABLE_ENTRY = KeyStroke.getKeyStroke("altGraph pressed PAGE_DOWN");
public static final KeyStroke KEY_STROKE_MOVE_UP_TABLE_ENTRY = KeyStroke.getKeyStroke("altGraph pressed UP");
- public static final KeyStroke KEY_STROKE_MOVE_TOP_TABLE_ENTRY = KeyStroke.getKeyStroke("shift altGraph pressed UP");
+ public static final KeyStroke KEY_STROKE_MOVE_TOP_TABLE_ENTRY = KeyStroke.getKeyStroke("altGraph pressed PAGE_UP");
public static final KeyStroke KEY_STROKE_ADD_TABLE_ENTRY = KeyStroke.getKeyStroke("ctrl pressed INSERT");
public static final KeyStroke KEY_STROKE_DELETE_SELECTED_TABLE_ENTRY = KeyStroke.getKeyStroke("ctrl pressed DELETE");
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIInitializer.java
=====================================
@@ -478,7 +478,7 @@ public class ContentUIInitializer<UI extends ContentUI> extends UIInitializerSup
private void init(JTable editor) {
initializerContext.checkFirstPass();
-// UIInitHelper.init(editor);
+ UIInitHelper.init(editor);
}
@SuppressWarnings({"unchecked", "rawtypes"})
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/open/ContentOpen.java
=====================================
@@ -114,6 +114,7 @@ public class ContentOpen<U extends ContentUI> {
private List<JTable> tables;
private ActionMap newActionMap;
private InputMap newInputMap;
+ private List<JaxxComboBox> comboBoxs;
public ContentOpen(U ui, ContentOpenExecutor<U> contentOpenExecutor) {
this(ui, contentOpenExecutor, null);
@@ -140,6 +141,7 @@ public class ContentOpen<U extends ContentUI> {
public DefaultUIInitializerResult init(ContentUIInitializer<U> initializer) {
DefaultUIInitializerResult initializerResult = initializer.initUI();
tables = initializerResult.getComponentsList(JTable.class);
+ comboBoxs = initializerResult.getComponentsList(JaxxComboBox.class);
tabbedPaneValidator = initializerResult.getTabbedPaneValidator();
subTabbedPaneValidator = initializerResult.getSubTabbedPaneValidator();
coordinateEditors = initializerResult.getCoordinateEditors();
@@ -153,14 +155,14 @@ public class ContentOpen<U extends ContentUI> {
ui.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).setParent(null);
ui.getActionMap().setParent(null);
JComponent actionContainer = initializer.getActionContainer();
- initActions(actionContainer, initializerResult);
+ initActions(initializerResult);
ContentUIModel model = ui.getModel();
@SuppressWarnings("unchecked") ContentUIHandler<U> handler = (ContentUIHandler<U>) ui.getHandler();
model.init(ui, initializerResult);
handler.onInit(ui);
- postInstallActions(actionContainer, newInputMap, newActionMap, initializerResult);
+ postInstallActions(actionContainer, initializerResult);
model.getStates().addPropertyChangeListener(ContentUIModelStates.PROPERTY_MODE, evt -> {
ContentMode newValue = (ContentMode) evt.getNewValue();
@@ -541,27 +543,31 @@ public class ContentOpen<U extends ContentUI> {
return ui;
}
- public void initActions(JComponent actionContainer, DefaultUIInitializerResult initializerResult) {
+ public List<JaxxComboBox> getComboBoxs() {
+ return comboBoxs;
+ }
+
+ public void initActions(DefaultUIInitializerResult initializerResult) {
ContentUIHandler<?> handler = ui.getHandler();
handler.initActions();
handler.installChangeModeAction();
- InputMap inputMap = actionContainer.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
+ InputMap inputMap = ui.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
KeyStroke[] uiActionKeyStrokes = inputMap.allKeys();
log.info(String.format("%sFound %d actions to share", ui.getModel().getPrefix(), uiActionKeyStrokes.length));
- ActionMap actionMap = actionContainer.getActionMap();
+ ActionMap actionMap = ui.getActionMap();
newActionMap = new ActionMapUIResource();
newInputMap = new InputMapUIResource();
for (KeyStroke actionKeyStroke : uiActionKeyStrokes) {
Object actionMapKey = inputMap.get(actionKeyStroke);
- newInputMap.put(actionKeyStroke, actionMapKey);
Action action = actionMap.get(actionMapKey);
if (action instanceof MenuAction) {
log.info(String.format("Skip menu action %s → %s", actionKeyStroke, actionMapKey));
continue;
}
- newActionMap.put(actionMapKey, action);
log.info(String.format("Register action %s → %s", actionKeyStroke, actionMapKey));
+ newInputMap.put(actionKeyStroke, actionMapKey);
+ newActionMap.put(actionMapKey, action);
}
ContentUIModel model = ui.getModel();
@@ -582,17 +588,42 @@ public class ContentOpen<U extends ContentUI> {
handler.updateToggleInsertVisibility();
}
- protected void postInstallActions(JComponent actionContainer, InputMap newInputMap, ActionMap newActionMap, DefaultUIInitializerResult initializerResult) {
+ protected void postInstallActions(JComponent actionContainer, DefaultUIInitializerResult initializerResult) {
KeyStroke[] keyStrokes = newInputMap.allKeys();
- initializerResult.getComponents(JaxxComboBox.class).forEach(editor -> UIInitHelper.cleanInputMapAndSet(editor, keyStrokes, newInputMap, newActionMap));
+ initializerResult.getComponents(JaxxComboBox.class).forEach(editor -> UIInitHelper.cleanInputMapAndSet(editor.getCombobox(), keyStrokes, newInputMap, newActionMap));
initializerResult.getComponents(JTable.class).forEach(editor -> UIInitHelper.cleanInputMap(editor, keyStrokes));
for (Map.Entry<ContentTableUI<?, ?, ?>, JPanel> entry : subUiMap.entrySet()) {
ContentTableUI<?, ?, ?> subUi = entry.getKey();
- subUi.getHandler().getContentOpen().getTables().forEach(editor -> UIInitHelper.cleanInputMap(editor, keyStrokes));
+ InputMap newInputMapSubUi = subUi.getHandler().getContentOpen().getNewInputMap();
+ ActionMap newActionMapSubUi = subUi.getHandler().getContentOpen().getNewActionMap();
+ newInputMapSubUi.setParent(newInputMap);
+ newActionMapSubUi.setParent(newActionMap);
+ KeyStroke[] keyStrokesSubUi = newInputMapSubUi.allKeys();
+ for (KeyStroke keyStroke : keyStrokesSubUi) {
+ if (newInputMap.get(keyStroke)!=null) {
+ Object o = newInputMapSubUi.get(keyStroke);
+ if (o!=null) {
+ newActionMapSubUi.remove(o);
+ newInputMapSubUi.remove(keyStroke);
+ }
+ }
+ }
+ subUi.getBody().setInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, newInputMapSubUi);
+ subUi.getBody().setActionMap(newActionMapSubUi);
+ subUi.getHandler().getContentOpen().getTables().forEach(editor -> UIInitHelper.cleanInputMap(editor, keyStrokesSubUi));
+ subUi.getHandler().getContentOpen().getComboBoxs().forEach(editor -> UIInitHelper.cleanInputMapAndSet(editor.getCombobox(), keyStrokesSubUi, newInputMapSubUi, newActionMapSubUi));
//FIXME:Actions We should define some scope only for subUi ?
}
}
+ public ActionMap getNewActionMap() {
+ return newActionMap;
+ }
+
+ public InputMap getNewInputMap() {
+ return newInputMap;
+ }
+
private void onToggleDateTimeEditorSliderChanged(boolean newValue) {
if (!toggleDateTimeEditorSliderIsChanging) {
toggleDateTimeEditorSliderIsChanging = true;
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/table/ContentTableUIInitializer.java
=====================================
@@ -93,11 +93,6 @@ public class ContentTableUIInitializer<D extends DataDto, C extends DataDto, U e
ui.getSelectPreviousTableEntry().setEnabled(false);
ui.getSelectNextTableEntry().setEnabled(false);
ui.getSelectLastTableEntry().setEnabled(false);
- InputMap inputMap = ui.getTable().getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
- inputMap.put(KeyStroke.getKeyStroke("pressed UP"), "none");
- inputMap.put(KeyStroke.getKeyStroke("pressed DOWN"), "none");
- inputMap.put(KeyStroke.getKeyStroke("pressed LEFT"), "none");
- inputMap.put(KeyStroke.getKeyStroke("pressed RIGHT"), "none");
ui.getTitleRightToolBar().add(ui.getSelectToolbar(), 0);
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ui/table/popup/AutoSelectRowAndShowPopupActionSupport.java
=====================================
@@ -113,20 +113,16 @@ public abstract class AutoSelectRowAndShowPopupActionSupport {
log.debug("At point [" + p + "] found Row " + rowIndex + ", Column " + columnIndex);
boolean canContinue = stopEdit();
- if (canContinue) {
+ if (canContinue && rowIndex != -1 && columnIndex != -1) {
// select row (could empty selection)
- if (rowIndex == -1) {
- table.clearSelection();
- } else if (!ArrayUtils.contains(selectedRows, rowIndex)) {
+ if (!ArrayUtils.contains(selectedRows, rowIndex)) {
// set selection
table.setRowSelectionInterval(rowIndex, rowIndex);
}
// select column (could empty selection)
- if (columnIndex == -1) {
- table.clearSelection();
- } else if (!ArrayUtils.contains(selectedColumns, columnIndex)) {
+ if (!ArrayUtils.contains(selectedColumns, columnIndex)) {
table.setColumnSelectionInterval(columnIndex, columnIndex);
}
=====================================
client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/menu/actions/ReloadStorageAction.java
=====================================
@@ -46,13 +46,9 @@ public class ReloadStorageAction extends DataSourceEditorMenuActionSupport imple
super(t("observe.ui.action.reload.storage"), t("observe.ui.action.reload.storage.tip"), "db-reload", 'R');
}
- public ReloadStorageAction(String actionName, char keyStroke) {
- super(actionName, t("observe.ui.action.reload.storage"), t("observe.ui.action.reload.storage.tip"), "db-reload", keyStroke);
- }
-
@Override
protected void doActionPerformed(ActionEvent event, DataSourceEditorMenu ui) {
- run();
+ getClientUIContext().getActionExecutor().addAction(getText(), this);
}
@Override
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/c03d89aa3be10d74aca15396…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/compare/c03d89aa3be10d74aca15396…
You're receiving this email because of your account on gitlab.com.
1
0