This is an automated email from the git hooks/post-receive script. New commit to branch feature/7017 in repository observe. See http://git.codelutin.com/observe.git commit acd6e76a9a408631b82a4bc6c2e82597b79985f2 Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Apr 29 12:07:17 2015 +0200 utilisation des binders depuis le binserService pour le moèdle LL (refs #7017) --- .../main/java/fr/ird/observe/BinderService.java | 28 ++++++- .../data/longline/ActivityLonglineService.java | 8 -- .../data/longline/ActivityLonglineServiceImpl.java | 66 +++------------ .../data/longline/BaitsCompositionService.java | 20 +++++ .../data/longline/BaitsCompositionServiceImpl.java | 61 ++++++++++++++ .../longline/BranchlinesCompositionService.java | 20 +++++ .../BranchlinesCompositionServiceImpl.java | 56 +++++++++++++ .../data/longline/CatchLonglineService.java | 20 ++--- .../data/longline/CatchLonglineServiceImpl.java | 90 +++++++++----------- .../services/data/longline/EncounterService.java | 20 +++++ .../data/longline/EncounterServiceImpl.java | 58 +++++++++++++ .../longline/FloatlinesCompositionService.java | 20 +++++ .../longline/FloatlinesCompositionServiceImpl.java | 57 +++++++++++++ .../longline/GearUseFeaturesLonglineService.java | 10 ++- .../GearUseFeaturesLonglineServiceImpl.java | 40 ++++++--- .../data/longline/HooksCompositionService.java | 20 +++++ .../data/longline/HooksCompositionServiceImpl.java | 56 +++++++++++++ .../services/data/longline/SensorUsedService.java | 20 +---- .../data/longline/SensorUsedServiceImpl.java | 55 +++++++----- .../services/data/longline/SetLonglineService.java | 6 -- .../data/longline/SetLonglineServiceImpl.java | 98 +++------------------- .../observe/services/data/longline/TdrService.java | 20 +---- .../services/data/longline/TdrServiceImpl.java | 52 +++++++----- .../data/longline/TripLonglineService.java | 13 --- .../data/longline/TripLonglineServiceImpl.java | 88 +------------------ .../ird/observe/ui/content/ContentUIHandler.java | 4 + .../impl/longline/ActivityLonglinesUIHandler.java | 4 +- .../impl/longline/ActivityLonglineUIHandler.java | 3 +- .../open/impl/longline/TripLonglineUIHandler.java | 3 +- .../impl/longline/BaitsCompositionUIHandler.java | 24 ++++-- .../longline/BranchlinesCompositionUIHandler.java | 18 ++-- .../impl/longline/CatchLonglineUIHandler.java | 63 +++++++------- .../table/impl/longline/EncounterUIHandler.java | 26 ++++-- .../longline/FloatlinesCompositionUIHandler.java | 16 ++++ .../longline/GearUseFeaturesLonglineUIHandler.java | 44 +++++----- .../longline/GearUseFeaturesLonglineUIModel.java | 5 +- .../impl/longline/HooksCompositionUIHandler.java | 16 ++++ .../table/impl/longline/SensorUsedUIHandler.java | 25 +++--- .../content/table/impl/longline/TdrUIHandler.java | 47 +++++------ 39 files changed, 755 insertions(+), 545 deletions(-) diff --git a/observe-business/src/main/java/fr/ird/observe/BinderService.java b/observe-business/src/main/java/fr/ird/observe/BinderService.java index 30579ea..31c1fd5 100644 --- a/observe-business/src/main/java/fr/ird/observe/BinderService.java +++ b/observe-business/src/main/java/fr/ird/observe/BinderService.java @@ -33,8 +33,10 @@ import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLongline; import fr.ird.observe.entities.longline.HooksComposition; import fr.ird.observe.entities.longline.SensorUsed; import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.entities.longline.SizeMeasure; import fr.ird.observe.entities.longline.Tdr; import fr.ird.observe.entities.longline.TripLongline; +import fr.ird.observe.entities.longline.WeightMeasure; import fr.ird.observe.entities.seine.TripSeine; import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.util.TopiaEntityBinder; @@ -158,9 +160,9 @@ public class BinderService { BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( SetLongline.class, SetLongline.PROPERTY_CATCH_LONGLINE); - + registerTopiaBinder(SetLongline.class, builder, EDIT_CATCH_LONGLINE); - + } @@ -215,6 +217,26 @@ public class BinderService { { + BinderModelBuilder<WeightMeasure, WeightMeasure> builder = newBinderBuilder(WeightMeasure.class, + WeightMeasure.PROPERTY_WEIGHT, + WeightMeasure.PROPERTY_WEIGHT_MEASURE_TYPE); + + registerTopiaBinder(WeightMeasure.class, builder, EDIT); + + } + + { + + BinderModelBuilder<SizeMeasure, SizeMeasure> builder = newBinderBuilder(SizeMeasure.class, + SizeMeasure.PROPERTY_SIZE, + SizeMeasure.PROPERTY_SIZE_MEASURE_TYPE); + + registerTopiaBinder(SizeMeasure.class, builder, EDIT); + + } + + { + BinderModelBuilder<ActivityLongline, ActivityLongline> builder = newBinderBuilder( ActivityLongline.class, ActivityLongline.PROPERTY_COMMENT, @@ -535,7 +557,7 @@ public class BinderService { { } - + } public <E extends TopiaEntity> void copy(Class<E> type, String context, E source, E target) { diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineService.java index cebe40e..3d640bc 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineService.java @@ -2,9 +2,7 @@ package fr.ird.observe.services.data.longline; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.services.Commit; -import fr.ird.observe.services.NoTransaction; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.util.List; @@ -32,10 +30,4 @@ public interface ActivityLonglineService extends ObserveService { @Commit void delete(String tripLonglineId, String activityLonglineId); - @NoTransaction - TopiaEntityBinder<ActivityLongline> getBinderForEdit(); - - @NoTransaction - void copyForEdit(ActivityLongline source, ActivityLongline target); - } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineServiceImpl.java index 8e992bc..72406a9 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/ActivityLonglineServiceImpl.java @@ -6,9 +6,6 @@ import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.ActivityLonglineDAO; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.services.AbstractObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.Calendar; import java.util.Date; @@ -45,7 +42,7 @@ public class ActivityLonglineServiceImpl extends AbstractObserveService implemen ActivityLongline loaded = getDao().newInstance(); ActivityLongline toLoad = getDao().findByTopiaId(activityLonglineId); - copyForEdit(toLoad, loaded); + copy(ActivityLongline.class, BinderService.EDIT, toLoad, loaded); return loaded; @@ -57,7 +54,6 @@ public class ActivityLonglineServiceImpl extends AbstractObserveService implemen } - @Override public ActivityLongline preCreate(String tripLonglineId) { @@ -109,7 +105,7 @@ public class ActivityLonglineServiceImpl extends AbstractObserveService implemen public ActivityLongline onCreate(TripLongline parent, ActivityLongline toCreate) { ActivityLongline created = getDao().create(); - getBinderForEdit().copy(toCreate, created); + copy(ActivityLongline.class, BinderService.EDIT, toCreate, created); parent.addActivityLongline(created); return created; @@ -118,9 +114,10 @@ public class ActivityLonglineServiceImpl extends AbstractObserveService implemen @Override public ActivityLongline onUpdate(TripLongline parent, ActivityLongline toUpdate, ActivityLongline updated) { - getBinderForEdit().copyExcluding(toUpdate, updated, - ActivityLongline.PROPERTY_ENCOUNTER, - ActivityLongline.PROPERTY_SENSOR_USED); + copyExcluding(ActivityLongline.class, BinderService.EDIT, + toUpdate, updated, + ActivityLongline.PROPERTY_ENCOUNTER, + ActivityLongline.PROPERTY_SENSOR_USED); return updated; } @@ -142,50 +139,6 @@ public class ActivityLonglineServiceImpl extends AbstractObserveService implemen } - @Override - public TopiaEntityBinder<ActivityLongline> getBinderForEdit() { - - TopiaEntityBinder<ActivityLongline> binder = loadBinder("-forEdit", ActivityLongline.class, new CreateBinder<ActivityLongline>() { - - @Override - public BinderModelBuilder<ActivityLongline, ActivityLongline> createBinderBuilder(BinderService binderService, String name) { - - BinderModelBuilder<ActivityLongline, ActivityLongline> builder = binderService.newBinderBuilder( - ActivityLongline.class, - ActivityLongline.PROPERTY_QUADRANT, - ActivityLongline.PROPERTY_LATITUDE, - ActivityLongline.PROPERTY_LONGITUDE, - ActivityLongline.PROPERTY_TIME_STAMP, - ActivityLongline.PROPERTY_SEA_SURFACE_TEMPERATURE, - ActivityLongline.PROPERTY_COMMENT, - ActivityLongline.PROPERTY_SET_LONGLINE, - ActivityLongline.PROPERTY_VESSEL_ACTIVITY_LONGLINE, - ActivityLongline.PROPERTY_FPA_ZONE, - ActivityLongline.PROPERTY_OPEN, - ActivityLongline.PROPERTY_ENCOUNTER, - ActivityLongline.PROPERTY_SENSOR_USED); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_ENCOUNTER); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_SENSOR_USED); - - return builder; - - } - - }); - - return binder; - - } - - @Override - public void copyForEdit(ActivityLongline source, ActivityLongline target) { - - getBinderForEdit().load(source, target, true); - - } - protected ActivityLongline create(String tripLonglineId, ActivityLongline toCreate) { ActivityLonglineDAO dao = getDao(); @@ -202,9 +155,10 @@ public class ActivityLonglineServiceImpl extends AbstractObserveService implemen ActivityLonglineDAO dao = getDao(); ActivityLongline updated = dao.findByTopiaId(toUpdate.getTopiaId()); - getBinderForEdit().copyExcluding(toUpdate, updated, - ActivityLongline.PROPERTY_ENCOUNTER, - ActivityLongline.PROPERTY_SENSOR_USED); + copyExcluding(ActivityLongline.class, BinderService.EDIT, + toUpdate, updated, + ActivityLongline.PROPERTY_ENCOUNTER, + ActivityLongline.PROPERTY_SENSOR_USED); return updated; } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/BaitsCompositionService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BaitsCompositionService.java new file mode 100644 index 0000000..d066695 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BaitsCompositionService.java @@ -0,0 +1,20 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.Commit; +import fr.ird.observe.services.ObserveService; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public interface BaitsCompositionService extends ObserveService { + + SetLongline loadForEdit(String setLonglineId); + + @Commit + void save(SetLongline setLongline); + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/BaitsCompositionServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BaitsCompositionServiceImpl.java new file mode 100644 index 0000000..12d8b37 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BaitsCompositionServiceImpl.java @@ -0,0 +1,61 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.BaitsComposition; +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; +import org.nuiton.topia.persistence.util.TopiaEntityBinder; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public class BaitsCompositionServiceImpl extends AbstractObserveService implements BaitsCompositionService { + + @Override + public SetLongline loadForEdit(String setLonglineId) { + + SetLongline parentToLoad = findByTopiaId(SetLongline.class, setLonglineId); + + SetLongline parentLoaded = getDao(SetLongline.class).newInstance(); + + copy(SetLongline.class, BinderService.EDIT_BAITS_COMPOSITION, parentToLoad, parentLoaded); + + if (!parentToLoad.isBaitsCompositionEmpty()) { + + TopiaEntityBinder<BaitsComposition> binder = getBinder(BaitsComposition.class, BinderService.EDIT); + + TopiaDAO<BaitsComposition> childDao = getDao(BaitsComposition.class); + + List<BaitsComposition> childs = new ArrayList<BaitsComposition>(); + + for (BaitsComposition sourceChild : parentToLoad.getBaitsComposition()) { + + BaitsComposition targetChild = childDao.newInstance(); + + binder.load(sourceChild, targetChild, true); + + childs.add(targetChild); + + } + + parentLoaded.setBaitsComposition(childs); + + } + + return parentLoaded; + + } + + @Override + public void save(SetLongline setLongline) { + + } + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/BranchlinesCompositionService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BranchlinesCompositionService.java new file mode 100644 index 0000000..3bb5cec --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BranchlinesCompositionService.java @@ -0,0 +1,20 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.Commit; +import fr.ird.observe.services.ObserveService; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public interface BranchlinesCompositionService extends ObserveService { + + SetLongline loadForEdit(String setLonglineId); + + @Commit + void save(SetLongline setLongline); + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/BranchlinesCompositionServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BranchlinesCompositionServiceImpl.java new file mode 100644 index 0000000..42197c6 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/BranchlinesCompositionServiceImpl.java @@ -0,0 +1,56 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.BranchlinesComposition; +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; +import org.nuiton.topia.persistence.util.TopiaEntityBinder; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public class BranchlinesCompositionServiceImpl extends AbstractObserveService implements BranchlinesCompositionService { + @Override + public SetLongline loadForEdit(String setLonglineId) { + + SetLongline parentToLoad = findByTopiaId(SetLongline.class, setLonglineId); + + SetLongline parentLoaded = getDao(SetLongline.class).newInstance(); + copy(SetLongline.class, BinderService.EDIT_BRANCHLINES_COMPOSITION, parentToLoad, parentLoaded); + + TopiaEntityBinder<BranchlinesComposition> binder = getBinder(BranchlinesComposition.class, BinderService.EDIT); + if (!parentToLoad.isBranchlinesCompositionEmpty()) { + + TopiaDAO<BranchlinesComposition> childDao = getDao(BranchlinesComposition.class); + + List<BranchlinesComposition> childs = new ArrayList<BranchlinesComposition>(); + + for (BranchlinesComposition sourceChild : parentToLoad.getBranchlinesComposition()) { + + BranchlinesComposition targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setBranchlinesComposition(childs); + + } + + return parentLoaded; + + } + + @Override + public void save(SetLongline setLongline) { + + } + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineService.java index a3cb5bc..49d8afe 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineService.java @@ -1,12 +1,11 @@ package fr.ird.observe.services.data.longline; import fr.ird.observe.entities.longline.Branchline; +import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.longline.SizeMeasure; import fr.ird.observe.entities.longline.WeightMeasure; import fr.ird.observe.services.Commit; -import fr.ird.observe.services.NoTransaction; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.util.List; @@ -20,23 +19,16 @@ public interface CatchLonglineService extends ObserveService { Branchline loadBranchlineForEdit(String branchelineId); - @Commit - Branchline saveBranchline(Branchline toSave); + SetLongline loadForEdit(String setLonglineId); List<SizeMeasure> getCatchLonglineSizeMeasures(String catchLonglineId); List<WeightMeasure> getCatchLonglineWeightMeasures(String catchLonglineId); - @NoTransaction - TopiaEntityBinder<WeightMeasure> getWeightMeasureBinderForEdit(); - - @NoTransaction - TopiaEntityBinder<SizeMeasure> getSizeMeasureBinderForEdit(); - - @NoTransaction - TopiaEntityBinder<Branchline> getBranchlineBinderForEdit(); + @Commit + void save(SetLongline setLongline); - @NoTransaction - void copyBranchlineForEdit(Branchline source, Branchline target); + @Commit + Branchline saveBranchline(Branchline toSave); } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineServiceImpl.java index e5777f6..0289a94 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/CatchLonglineServiceImpl.java @@ -1,18 +1,18 @@ package fr.ird.observe.services.data.longline; import fr.ird.observe.BinderService; -import fr.ird.observe.ObserveBinderHelper; import fr.ird.observe.entities.longline.Branchline; import fr.ird.observe.entities.longline.BranchlineDAO; import fr.ird.observe.entities.longline.CatchLongline; import fr.ird.observe.entities.longline.CatchLonglineDAO; +import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.longline.SizeMeasure; import fr.ird.observe.entities.longline.SizeMeasureImpl; import fr.ird.observe.entities.longline.WeightMeasure; import fr.ird.observe.entities.longline.WeightMeasureImpl; import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.ArrayList; import java.util.List; @@ -31,7 +31,7 @@ public class CatchLonglineServiceImpl extends AbstractObserveService implements BranchlineDAO dao = (BranchlineDAO) getDao(Branchline.class); Branchline toLoad = dao.findByTopiaId(branchelineId); Branchline loaded = dao.newInstance(); - getBranchlineBinderForEdit().load(toLoad, loaded, true); + copy(Branchline.class, BinderService.EDIT_CATCH_LONGLINE, toLoad, loaded); return loaded; } @@ -41,22 +41,52 @@ public class CatchLonglineServiceImpl extends AbstractObserveService implements BranchlineDAO dao = (BranchlineDAO) getDao(Branchline.class); Branchline saved = dao.findByTopiaId(toSave.getTopiaId()); - getBranchlineBinderForEdit().load(toSave, saved, true); + copy(Branchline.class, BinderService.EDIT_CATCH_LONGLINE, toSave, saved); return saved; } @Override - public void copyBranchlineForEdit(Branchline source, Branchline target) { + public SetLongline loadForEdit(String setLonglineId) { - getBranchlineBinderForEdit().load(source, target, true); + SetLongline parentToLoad = findByTopiaId(SetLongline.class, setLonglineId); + + SetLongline parentLoaded = getDao(SetLongline.class).newInstance(); + copy(SetLongline.class, BinderService.EDIT_CATCH_LONGLINE, parentToLoad, parentLoaded); + + TopiaEntityBinder<CatchLongline> binder = getBinder(CatchLongline.class, BinderService.EDIT); + + if (!parentToLoad.isCatchLonglineEmpty()) { + + TopiaDAO<CatchLongline> childDao = getDao(CatchLongline.class); + + List<CatchLongline> childs = new ArrayList<CatchLongline>(); + + for (CatchLongline sourceChild : parentToLoad.getCatchLongline()) { + + CatchLongline targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setCatchLongline(childs); + + } + + return parentLoaded; + + } + + @Override + public void save(SetLongline setLongline) { } @Override public List<SizeMeasure> getCatchLonglineSizeMeasures(String catchLonglineId) { - TopiaEntityBinder<SizeMeasure> binder = getSizeMeasureBinderForEdit(); + TopiaEntityBinder<SizeMeasure> binder = getBinder(SizeMeasure.class, BinderService.EDIT); CatchLongline catchLongline = getDao().findByTopiaId(catchLonglineId); List<SizeMeasure> result = new ArrayList<SizeMeasure>(); @@ -72,7 +102,7 @@ public class CatchLonglineServiceImpl extends AbstractObserveService implements @Override public List<WeightMeasure> getCatchLonglineWeightMeasures(String catchLonglineId) { - TopiaEntityBinder<WeightMeasure> binder = getWeightMeasureBinderForEdit(); + TopiaEntityBinder<WeightMeasure> binder = getBinder(WeightMeasure.class, BinderService.EDIT); CatchLongline catchLongline = getDao().findByTopiaId(catchLonglineId); List<WeightMeasure> result = new ArrayList<WeightMeasure>(); @@ -86,51 +116,7 @@ public class CatchLonglineServiceImpl extends AbstractObserveService implements } - @Override - public TopiaEntityBinder<WeightMeasure> getWeightMeasureBinderForEdit() { - - TopiaEntityBinder<WeightMeasure> r = ObserveBinderHelper.getSimpleTopiaBinder(WeightMeasure.class); - return r; - - } - - @Override - public TopiaEntityBinder<SizeMeasure> getSizeMeasureBinderForEdit() { - - TopiaEntityBinder<SizeMeasure> r = ObserveBinderHelper.getSimpleTopiaBinder(SizeMeasure.class); - return r; - - } - - @Override - public TopiaEntityBinder<Branchline> getBranchlineBinderForEdit() { - - TopiaEntityBinder<Branchline> r = loadBinder("-forEdit", Branchline.class, new CreateBinder<Branchline>() { - - @Override - public BinderModelBuilder<Branchline, Branchline> createBinderBuilder(BinderService binderService, String name) { - - BinderModelBuilder<Branchline, Branchline> builder = - binderService.newBinderBuilder(Branchline.class, - Branchline.PROPERTY_DEPTH_RECORDER, - Branchline.PROPERTY_HOOK_LOST, - Branchline.PROPERTY_TRACE_CUT_OFF, - Branchline.PROPERTY_TIMER, - Branchline.PROPERTY_TIME_SINCE_CONTACT, - Branchline.PROPERTY_TIMER_TIME_ON_BOARD, - Branchline.PROPERTY_BAIT_HAULING_STATUS); - - return builder; - } - - }); - - return r; - - } - protected CatchLonglineDAO getDao() { return (CatchLonglineDAO) getDao(CatchLongline.class); } - } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/EncounterService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/EncounterService.java new file mode 100644 index 0000000..9f55569 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/EncounterService.java @@ -0,0 +1,20 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.entities.longline.ActivityLongline; +import fr.ird.observe.services.Commit; +import fr.ird.observe.services.ObserveService; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public interface EncounterService extends ObserveService { + + ActivityLongline loadForEdit(String activityLonglineId); + + @Commit + void save(ActivityLongline activityLongline); + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/EncounterServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/EncounterServiceImpl.java new file mode 100644 index 0000000..eff812e --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/EncounterServiceImpl.java @@ -0,0 +1,58 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.ActivityLongline; +import fr.ird.observe.entities.longline.Encounter; +import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; +import org.nuiton.topia.persistence.util.TopiaEntityBinder; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public class EncounterServiceImpl extends AbstractObserveService implements EncounterService { + + @Override + public ActivityLongline loadForEdit(String activityLonglineId) { + + ActivityLongline parentToLoad = findByTopiaId(ActivityLongline.class, activityLonglineId); + + ActivityLongline parentLoaded = getDao(ActivityLongline.class).newInstance(); + copy(ActivityLongline.class, BinderService.EDIT_ENCOUNTER, parentToLoad, parentLoaded); + + TopiaEntityBinder<Encounter> binder = getBinder(Encounter.class, BinderService.EDIT); + + if (!parentToLoad.isEncounterEmpty()) { + + TopiaDAO<Encounter> childDao = getDao(Encounter.class); + + List<Encounter> childs = new ArrayList<Encounter>(); + + for (Encounter sourceChild : parentToLoad.getEncounter()) { + + Encounter targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setEncounter(childs); + + } + + return parentLoaded; + + } + + @Override + public void save(ActivityLongline activityLongline) { + + } + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/FloatlinesCompositionService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/FloatlinesCompositionService.java new file mode 100644 index 0000000..253a3d9 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/FloatlinesCompositionService.java @@ -0,0 +1,20 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.Commit; +import fr.ird.observe.services.ObserveService; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public interface FloatlinesCompositionService extends ObserveService { + + SetLongline loadForEdit(String setLonglineId); + + @Commit + void save(SetLongline setLongline); + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/FloatlinesCompositionServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/FloatlinesCompositionServiceImpl.java new file mode 100644 index 0000000..c434059 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/FloatlinesCompositionServiceImpl.java @@ -0,0 +1,57 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.FloatlinesComposition; +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; +import org.nuiton.topia.persistence.util.TopiaEntityBinder; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public class FloatlinesCompositionServiceImpl extends AbstractObserveService implements FloatlinesCompositionService { + @Override + public SetLongline loadForEdit(String setLonglineId) { + + SetLongline parentToLoad = findByTopiaId(SetLongline.class, setLonglineId); + + SetLongline parentLoaded = getDao(SetLongline.class).newInstance(); + copy(SetLongline.class, BinderService.EDIT_FLOATLINES_COMPOSITION, parentToLoad, parentLoaded); + + TopiaEntityBinder<FloatlinesComposition> binder = getBinder(FloatlinesComposition.class, BinderService.EDIT); + + if (!parentToLoad.isFloatlinesCompositionEmpty()) { + + TopiaDAO<FloatlinesComposition> childDao = getDao(FloatlinesComposition.class); + + List<FloatlinesComposition> childs = new ArrayList<FloatlinesComposition>(); + + for (FloatlinesComposition sourceChild : parentToLoad.getFloatlinesComposition()) { + + FloatlinesComposition targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setFloatlinesComposition(childs); + + } + + return parentLoaded; + + } + + @Override + public void save(SetLongline setLongline) { + + } + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineService.java index 6e69121..f80bf50 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineService.java @@ -1,9 +1,9 @@ package fr.ird.observe.services.data.longline; import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLongline; -import fr.ird.observe.services.NoTransaction; +import fr.ird.observe.entities.longline.TripLongline; +import fr.ird.observe.services.Commit; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.util.List; @@ -19,7 +19,9 @@ public interface GearUseFeaturesLonglineService extends ObserveService { List<GearUseFeaturesMeasurementLongline> loadGearUseFeaturesMeasurementLonglineForEdit(String gearUseFeaturesLonglineId); - @NoTransaction - TopiaEntityBinder<GearUseFeaturesMeasurementLongline> getGearUseFeaturesMeasurementLonglineBinderForEdit(); + TripLongline loadForEdit(String tripLonglineId); + + @Commit + void save(TripLongline tripLongline); } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineServiceImpl.java index f5bb483..d14f2d0 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/GearUseFeaturesLonglineServiceImpl.java @@ -4,11 +4,12 @@ import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.GearUseFeaturesLongline; import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLongline; import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLonglineDAO; +import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.referentiel.Gear; import fr.ird.observe.entities.referentiel.GearCaracteristic; import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.ArrayList; import java.util.Collection; @@ -45,7 +46,8 @@ public class GearUseFeaturesLonglineServiceImpl extends AbstractObserveService i public List<GearUseFeaturesMeasurementLongline> loadGearUseFeaturesMeasurementLonglineForEdit(String gearUseFeaturesLonglineId) { GearUseFeaturesMeasurementLonglineDAO dao = getDao(); - TopiaEntityBinder<GearUseFeaturesMeasurementLongline> binder = getGearUseFeaturesMeasurementLonglineBinderForEdit(); + + TopiaEntityBinder<GearUseFeaturesMeasurementLongline> binder = getBinder(GearUseFeaturesMeasurementLongline.class, BinderService.EDIT); GearUseFeaturesLongline gearUseFeaturesLongline = findByTopiaId(GearUseFeaturesLongline.class, gearUseFeaturesLonglineId); List<GearUseFeaturesMeasurementLongline> result = new ArrayList<GearUseFeaturesMeasurementLongline>(); @@ -62,26 +64,38 @@ public class GearUseFeaturesLonglineServiceImpl extends AbstractObserveService i } @Override - public TopiaEntityBinder<GearUseFeaturesMeasurementLongline> getGearUseFeaturesMeasurementLonglineBinderForEdit() { + public TripLongline loadForEdit(String tripLonglineId) { + + TripLongline parentToLoad = findByTopiaId(TripLongline.class, tripLonglineId); + + TripLongline parentLoaded = getDao(TripLongline.class).newInstance(); + copy(TripLongline.class, BinderService.EDIT_GEAR_USE_FEATURES_LONGLINE, parentToLoad, parentLoaded); - TopiaEntityBinder<GearUseFeaturesMeasurementLongline> r = loadBinder("-forEdit", GearUseFeaturesMeasurementLongline.class, new CreateBinder<GearUseFeaturesMeasurementLongline>() { + if (!parentToLoad.isGearUseFeaturesLonglineEmpty()) { - @Override - public BinderModelBuilder<GearUseFeaturesMeasurementLongline, GearUseFeaturesMeasurementLongline> createBinderBuilder(BinderService binderService, String name) { + TopiaEntityBinder<GearUseFeaturesLongline> binder = getBinder(GearUseFeaturesLongline.class, BinderService.EDIT); + TopiaDAO<GearUseFeaturesLongline> childDao = getDao(GearUseFeaturesLongline.class); + List<GearUseFeaturesLongline> childs = new ArrayList<GearUseFeaturesLongline>(); - BinderModelBuilder<GearUseFeaturesMeasurementLongline, GearUseFeaturesMeasurementLongline> builder = - binderService.newBinderBuilder(GearUseFeaturesMeasurementLongline.class, - GearUseFeaturesMeasurementLongline.PROPERTY_GEAR_CARACTERISTIC, - GearUseFeaturesMeasurementLongline.PROPERTY_MEASUREMENT_VALUE); + for (GearUseFeaturesLongline sourceChild : parentToLoad.getGearUseFeaturesLongline()) { - return builder; + GearUseFeaturesLongline targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); } - }); + parentLoaded.setGearUseFeaturesLongline(childs); + + } - return r; + return parentLoaded; + + } + + @Override + public void save(TripLongline tripLongline) { } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/HooksCompositionService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/HooksCompositionService.java new file mode 100644 index 0000000..5c09c45 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/HooksCompositionService.java @@ -0,0 +1,20 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.Commit; +import fr.ird.observe.services.ObserveService; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public interface HooksCompositionService extends ObserveService { + + SetLongline loadForEdit(String setLonglineId); + + @Commit + void save(SetLongline setLongline); + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/HooksCompositionServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/HooksCompositionServiceImpl.java new file mode 100644 index 0000000..b142407 --- /dev/null +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/HooksCompositionServiceImpl.java @@ -0,0 +1,56 @@ +package fr.ird.observe.services.data.longline; + +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.HooksComposition; +import fr.ird.observe.entities.longline.SetLongline; +import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; +import org.nuiton.topia.persistence.util.TopiaEntityBinder; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created on 4/29/15. + * + * @author Tony Chemit - chemit@codelutin.com + * @since 4.0 + */ +public class HooksCompositionServiceImpl extends AbstractObserveService implements HooksCompositionService { + @Override + public SetLongline loadForEdit(String setLonglineId) { + + SetLongline parentToLoad = findByTopiaId(SetLongline.class, setLonglineId); + + SetLongline parentLoaded = getDao(SetLongline.class).newInstance(); + copy(SetLongline.class, BinderService.EDIT_HOOKS_COMPOSITION, parentToLoad, parentLoaded); + + if (!parentToLoad.isHooksCompositionEmpty()) { + + TopiaEntityBinder<HooksComposition> binder = getBinder(HooksComposition.class, BinderService.EDIT); + TopiaDAO<HooksComposition> childDao = getDao(HooksComposition.class); + + List<HooksComposition> childs = new ArrayList<HooksComposition>(); + + for (HooksComposition sourceChild : parentToLoad.getHooksComposition()) { + + HooksComposition targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setHooksComposition(childs); + + } + + return parentLoaded; + + } + + @Override + public void save(SetLongline setLongline) { + + } + +} diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedService.java index af2b697..0df533e 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedService.java @@ -1,10 +1,9 @@ package fr.ird.observe.services.data.longline; +import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.SensorUsed; import fr.ird.observe.services.Commit; -import fr.ird.observe.services.NoTransaction; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; /** * Created on 4/25/15. @@ -16,22 +15,9 @@ public interface SensorUsedService extends ObserveService { String getSensorUsedDataFilename(SensorUsed sensorUsed); - SensorUsed loadForDisplay(String sensorUsedId); - - SensorUsed loadForEdit(String sensorUsedId); - - SensorUsed preCreate(String setLonglineId); - - @Commit - SensorUsed save(String setLonglineId, SensorUsed toSave); + ActivityLongline loadForEdit(String activityLonglineId); @Commit - void delete(String setLonglineId, String sensorUsedId); - - @NoTransaction - TopiaEntityBinder<SensorUsed> getBinderForEdit(); - - @NoTransaction - void copyForEdit(SensorUsed source, SensorUsed target); + void save(ActivityLongline activityLongline); } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedServiceImpl.java index eb6aa2d..dd74fbf 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SensorUsedServiceImpl.java @@ -1,20 +1,25 @@ package fr.ird.observe.services.data.longline; +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.SensorUsed; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.longline.TripLonglineDAO; import fr.ird.observe.entities.referentiel.longline.SensorType; import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Date; +import java.util.List; /** * Created on 4/26/15. * * @author Tony Chemit - chemit@codelutin.com - * @since XXX + * @since 4.0 */ public class SensorUsedServiceImpl extends AbstractObserveService implements SensorUsedService { @@ -47,38 +52,42 @@ public class SensorUsedServiceImpl extends AbstractObserveService implements Sen } - @Override - public SensorUsed loadForDisplay(String sensorUsedId) { - return null; - } @Override - public SensorUsed loadForEdit(String sensorUsedId) { - return null; - } + public ActivityLongline loadForEdit(String activityLonglineId) { - @Override - public SensorUsed preCreate(String setLonglineId) { - return null; - } + ActivityLongline parentToLoad = findByTopiaId(ActivityLongline.class, activityLonglineId); - @Override - public SensorUsed save(String setLonglineId, SensorUsed toSave) { - return null; - } + ActivityLongline parentLoaded = getDao(ActivityLongline.class).newInstance(); + copy(ActivityLongline.class, BinderService.EDIT_SENSOR_USED, parentToLoad, parentLoaded); - @Override - public void delete(String setLonglineId, String sensorUsedId) { - } + if (!parentToLoad.isSensorUsedEmpty()) { + + TopiaEntityBinder<SensorUsed> binder = getBinder(SensorUsed.class, BinderService.EDIT); + TopiaDAO<SensorUsed> childDao = getDao(SensorUsed.class); + + List<SensorUsed> childs = new ArrayList<SensorUsed>(); + + for (SensorUsed sourceChild : parentToLoad.getSensorUsed()) { + + SensorUsed targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setSensorUsed(childs); + + } + + return parentLoaded; - @Override - public TopiaEntityBinder<SensorUsed> getBinderForEdit() { - return null; } @Override - public void copyForEdit(SensorUsed source, SensorUsed target) { + public void save(ActivityLongline activityLongline) { } + } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineService.java index 38f574b..5253955 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineService.java @@ -2,9 +2,7 @@ package fr.ird.observe.services.data.longline; import fr.ird.observe.entities.longline.Section; import fr.ird.observe.entities.longline.SetLongline; -import fr.ird.observe.services.NoTransaction; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.util.List; @@ -22,8 +20,4 @@ public interface SetLonglineService extends ObserveService { String save(String activityId, SetLongline bean); - @NoTransaction - TopiaEntityBinder<SetLongline> getBinderForEdit(); - - } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineServiceImpl.java index e432560..7c44be2 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/SetLonglineServiceImpl.java @@ -7,13 +7,9 @@ import fr.ird.observe.entities.longline.Branchline; import fr.ird.observe.entities.longline.Section; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.longline.SetLonglineDAO; -import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.services.AbstractObserveService; import org.nuiton.decorator.Decorator; import org.nuiton.topia.persistence.TopiaDAO; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.List; @@ -78,7 +74,7 @@ public class SetLonglineServiceImpl extends AbstractObserveService implements Se public SetLongline onCreate(ActivityLongline parent, SetLongline toCreate) { SetLongline created = getDao().create(); - getBinderForEdit().copy(toCreate, created); + copy(SetLongline.class, BinderService.EDIT, toCreate, created, false); parent.setSetLongline(created); @@ -88,15 +84,16 @@ public class SetLonglineServiceImpl extends AbstractObserveService implements Se @Override public SetLongline onUpdate(ActivityLongline parent, SetLongline toUpdate, SetLongline updated) { - getBinderForEdit().copyExcluding(toUpdate, updated, - SetLongline.PROPERTY_BAITS_COMPOSITION, - SetLongline.PROPERTY_FLOATLINES_COMPOSITION, - SetLongline.PROPERTY_HOOKS_COMPOSITION, - SetLongline.PROPERTY_BRANCHLINES_COMPOSITION, - SetLongline.PROPERTY_SECTION, - SetLongline.PROPERTY_CATCH_LONGLINE, - SetLongline.PROPERTY_MITIGATION_TYPE, - SetLongline.PROPERTY_TDR); + copyExcluding(SetLongline.class, BinderService.EDIT, + toUpdate, updated, + SetLongline.PROPERTY_BAITS_COMPOSITION, + SetLongline.PROPERTY_FLOATLINES_COMPOSITION, + SetLongline.PROPERTY_HOOKS_COMPOSITION, + SetLongline.PROPERTY_BRANCHLINES_COMPOSITION, + SetLongline.PROPERTY_SECTION, + SetLongline.PROPERTY_CATCH_LONGLINE, + SetLongline.PROPERTY_MITIGATION_TYPE, + SetLongline.PROPERTY_TDR); return updated; } @@ -105,79 +102,6 @@ public class SetLonglineServiceImpl extends AbstractObserveService implements Se return setLonglineId; } - @Override - public TopiaEntityBinder<SetLongline> getBinderForEdit() { - TopiaEntityBinder<SetLongline> r = loadBinder("-forEdit", SetLongline.class, new CreateBinder<SetLongline>() { - - @Override - public BinderModelBuilder<SetLongline, SetLongline> createBinderBuilder(BinderService binderService, String name) { - - BinderModelBuilder<SetLongline, SetLongline> builder = binderService.newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_COMMENT, - - // setting tab - SetLongline.PROPERTY_HOME_ID, - SetLongline.PROPERTY_NUMBER, - - SetLongline.PROPERTY_SETTING_START_TIME_STAMP, - SetLongline.PROPERTY_SETTING_START_QUADRANT, - SetLongline.PROPERTY_SETTING_START_LATITUDE, - SetLongline.PROPERTY_SETTING_START_LONGITUDE, - - SetLongline.PROPERTY_SETTING_END_TIME_STAMP, - SetLongline.PROPERTY_SETTING_END_QUADRANT, - SetLongline.PROPERTY_SETTING_END_LATITUDE, - SetLongline.PROPERTY_SETTING_END_LONGITUDE, - - // setting caracteristics tab - SetLongline.PROPERTY_SETTING_SHAPE, - SetLongline.PROPERTY_LINE_TYPE, - SetLongline.PROPERTY_LIGHTSTICKS_TYPE, - SetLongline.PROPERTY_LIGHTSTICKS_COLOR, - SetLongline.PROPERTY_SETTING_VESSEL_SPEED, - SetLongline.PROPERTY_MAX_DEPTH_TARGETED, - SetLongline.PROPERTY_SHOOTER_USED, - SetLongline.PROPERTY_SHOOTER_SPEED, - SetLongline.PROPERTY_WEIGHTED_SWIVEL, - SetLongline.PROPERTY_SWIVEL_WEIGHT, - SetLongline.PROPERTY_WEIGHTED_SNAP, - SetLongline.PROPERTY_SNAP_WEIGHT, - SetLongline.PROPERTY_MONITORED, - SetLongline.PROPERTY_TIME_BETWEEN_HOOKS, - SetLongline.PROPERTY_BASKETS_PER_SECTION_COUNT, - SetLongline.PROPERTY_BRANCHLINES_PER_BASKET_COUNT, - SetLongline.PROPERTY_LIGHTSTICKS_PER_BASKET_COUNT, - SetLongline.PROPERTY_TOTAL_SECTIONS_COUNT, - SetLongline.PROPERTY_TOTAL_BASKETS_COUNT, - SetLongline.PROPERTY_TOTAL_HOOKS_COUNT, - - // hauling tab - SetLongline.PROPERTY_HAULING_DIRECTION_SAME_AS_SETTING, - - SetLongline.PROPERTY_HAULING_START_QUADRANT, - SetLongline.PROPERTY_HAULING_START_LATITUDE, - SetLongline.PROPERTY_HAULING_START_LONGITUDE, - SetLongline.PROPERTY_HAULING_START_TIME_STAMP, - - SetLongline.PROPERTY_HAULING_END_QUADRANT, - SetLongline.PROPERTY_HAULING_END_LATITUDE, - SetLongline.PROPERTY_HAULING_END_LONGITUDE, - SetLongline.PROPERTY_HAULING_END_TIME_STAMP, - - SetLongline.PROPERTY_HAULING_BREAKS); - - // on ajoute la recopie de l'association route - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_ROUTE); - - return builder; - } - - }); - - return r; - } - protected SetLonglineDAO getDao() { return (SetLonglineDAO) getDao(SetLongline.class); } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrService.java index afbee3d..ab09e74 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrService.java @@ -1,10 +1,9 @@ package fr.ird.observe.services.data.longline; +import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.longline.Tdr; import fr.ird.observe.services.Commit; -import fr.ird.observe.services.NoTransaction; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; /** * Created on 4/25/15. @@ -16,22 +15,9 @@ public interface TdrService extends ObserveService { String getTdrDataFilename(Tdr tdr); - Tdr loadForDisplay(String tdrId); - - Tdr loadForEdit(String tdrId); - - Tdr preCreate(String tripLonglineId); - - @Commit - Tdr save(String setLonglineId, Tdr toSave); + SetLongline loadForEdit(String setLonglineId); @Commit - void delete(String setLonglineId, String tdrId); - - @NoTransaction - TopiaEntityBinder<Tdr> getBinderForEdit(); - - @NoTransaction - void copyForEdit(Tdr source, Tdr target); + void save(SetLongline setLongline); } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrServiceImpl.java index fa6ae63..a00825a 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TdrServiceImpl.java @@ -1,13 +1,18 @@ package fr.ird.observe.services.data.longline; +import fr.ird.observe.BinderService; +import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.longline.Tdr; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.longline.TripLonglineDAO; import fr.ird.observe.services.AbstractObserveService; +import org.nuiton.topia.persistence.TopiaDAO; import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Date; +import java.util.List; /** * Created on 4/26/15. @@ -47,37 +52,40 @@ public class TdrServiceImpl extends AbstractObserveService implements TdrService } @Override - public Tdr loadForDisplay(String tdrId) { - return null; - } + public SetLongline loadForEdit(String setLonglineId) { - @Override - public Tdr loadForEdit(String tdrId) { - return null; - } + SetLongline parentToLoad = findByTopiaId(SetLongline.class, setLonglineId); - @Override - public Tdr preCreate(String tripLonglineId) { - return null; - } + SetLongline parentLoaded = getDao(SetLongline.class).newInstance(); + copy(SetLongline.class, BinderService.EDIT_TDR, parentToLoad, parentLoaded); - @Override - public Tdr save(String setLonglineId, Tdr toSave) { - return null; - } - @Override - public void delete(String setLonglineId, String tdrId) { + if (!parentToLoad.isTdrEmpty()) { - } + TopiaEntityBinder<Tdr> binder = getBinder(Tdr.class, BinderService.EDIT); + TopiaDAO<Tdr> childDao = getDao(Tdr.class); - @Override - public TopiaEntityBinder<Tdr> getBinderForEdit() { - return null; + List<Tdr> childs = new ArrayList<Tdr>(); + + for (Tdr sourceChild : parentToLoad.getTdr()) { + + Tdr targetChild = childDao.newInstance(); + binder.load(sourceChild, targetChild, true); + childs.add(targetChild); + + } + + parentLoaded.setTdr(childs); + + } + + return parentLoaded; + } @Override - public void copyForEdit(Tdr source, Tdr target) { + public void save(SetLongline setLongline) { } + } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineService.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineService.java index 510b6ac..5eae946 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineService.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineService.java @@ -2,9 +2,7 @@ package fr.ird.observe.services.data.longline; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.services.Commit; -import fr.ird.observe.services.NoTransaction; import fr.ird.observe.services.ObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; import java.util.List; @@ -32,15 +30,4 @@ public interface TripLonglineService extends ObserveService { @Commit void delete(String tripLonglineId); - @NoTransaction - TopiaEntityBinder<TripLongline> getBinderForEdit(); - - @NoTransaction - TopiaEntityBinder<TripLongline> getBinderStubForDisplay(); - - @NoTransaction - void copyForEdit(TripLongline source, TripLongline target); - - @NoTransaction - void copyStubForDisplay(TripLongline source, TripLongline target); } diff --git a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineServiceImpl.java b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineServiceImpl.java index d832799..69f9044 100644 --- a/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineServiceImpl.java +++ b/observe-services/src/main/java/fr/ird/observe/services/data/longline/TripLonglineServiceImpl.java @@ -7,10 +7,7 @@ import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.longline.TripLonglineDAO; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.services.AbstractObserveService; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; import org.nuiton.util.DateUtil; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.Date; import java.util.List; @@ -43,7 +40,7 @@ public class TripLonglineServiceImpl extends AbstractObserveService implements T TripLongline loaded = getDao().newInstance(); TripLongline toLoad = getDao().findByTopiaId(tripLonglineId); - copyForEdit(toLoad, loaded); + copy(TripLongline.class, BinderService.EDIT, toLoad, loaded); if (!loaded.isActivityLonglineEmpty()) { @@ -105,13 +102,13 @@ public class TripLonglineServiceImpl extends AbstractObserveService implements T @Override public TripLongline onCreate(Program parent, TripLongline toCreate) { TripLongline created = getDao().create(); - getBinderForEdit().copy(toCreate, created); + copy(TripLongline.class, BinderService.EDIT, toCreate, created, false); return created; } @Override public TripLongline onUpdate(Program parentBean, TripLongline toUpdate, TripLongline updated) { - getBinderForEdit().copyExcluding(toUpdate, updated, TripLongline.PROPERTY_ACTIVITY_LONGLINE); + copyExcluding(TripLongline.class, BinderService.EDIT, toUpdate, updated, TripLongline.PROPERTY_ACTIVITY_LONGLINE); return updated; } }); @@ -125,85 +122,6 @@ public class TripLonglineServiceImpl extends AbstractObserveService implements T doDelete(null, tripLonglineId, new DeleteAction<Program, TripLongline>(Program.class, TripLongline.class)); } - @Override - public TopiaEntityBinder<TripLongline> getBinderForEdit() { - - TopiaEntityBinder<TripLongline> r = loadBinder("-forEdit", TripLongline.class, new CreateBinder<TripLongline>() { - - @Override - public BinderModelBuilder<TripLongline, TripLongline> createBinderBuilder(BinderService binderService, String name) { - - BinderModelBuilder<TripLongline, TripLongline> builder = binderService.newBinderBuilder( - TripLongline.class, - TripLongline.PROPERTY_START_DATE, - TripLongline.PROPERTY_END_DATE, - TripLongline.PROPERTY_TRIP_TYPE, - TripLongline.PROPERTY_HOME_ID, - TripLongline.PROPERTY_COMMENT, - TripLongline.PROPERTY_VESSEL, - TripLongline.PROPERTY_OBSERVER, - TripLongline.PROPERTY_CAPTAIN, - TripLongline.PROPERTY_DATA_ENTRY_OPERATOR, - TripLongline.PROPERTY_TOTAL_FISHING_OPERATIONS_NUMBER, - TripLongline.PROPERTY_OCEAN, - TripLongline.PROPERTY_DEPARTURE_HARBOUR, - TripLongline.PROPERTY_LANDING_HARBOUR, - TripLongline.PROPERTY_PROGRAM, - TripLongline.PROPERTY_ACTIVITY_LONGLINE, - TripLongline.PROPERTY_OPEN); - - // on ajoute la recopie de l'association route - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripLongline.PROPERTY_ACTIVITY_LONGLINE); - - return builder; - } - - }); - - return r; - - } - - @Override - public TopiaEntityBinder<TripLongline> getBinderStubForDisplay() { - - TopiaEntityBinder<TripLongline> r = loadBinder("-stubFordisplay", TripLongline.class, new CreateBinder<TripLongline>() { - - @Override - public BinderModelBuilder<TripLongline, TripLongline> createBinderBuilder(BinderService binderService, String name) { - - BinderModelBuilder<TripLongline, TripLongline> builder = binderService.newBinderBuilder( - TripLongline.class, - TripLongline.PROPERTY_START_DATE, - TripLongline.PROPERTY_END_DATE, - TripLongline.PROPERTY_OPEN, - TripLongline.PROPERTY_OBSERVER, - TripLongline.PROPERTY_VESSEL, - TripLongline.PROPERTY_PROGRAM); - - return builder; - } - - }); - - return r; - - } - - @Override - public void copyForEdit(TripLongline source, TripLongline target) { - - getBinderForEdit().load(source, target, true); - - } - - @Override - public void copyStubForDisplay(TripLongline source, TripLongline target) { - - getBinderStubForDisplay().load(source, target, true); - - } - protected TripLonglineDAO getDao() { return (TripLonglineDAO) getDao(TripLongline.class); } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java index 1354ecd..823a9d9 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java @@ -357,6 +357,10 @@ public abstract class ContentUIHandler<E extends TopiaEntity> { getBinderService().copy(type, context, source, target); } + public <E extends TopiaEntity> void copyEdit(Class<E> type, String context, E source, E target) { + getBinderService().copy(type, BinderService.EDIT, source, target); + } + public <E extends TopiaEntity> void copyExcluding(Class<E> type, String context, E source, E target, String... propertyNames) { getBinderService().copyExcluding(type, context, source, target, propertyNames); } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIHandler.java index 0e02043..8e46976 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIHandler.java @@ -22,8 +22,8 @@ package fr.ird.observe.ui.content.list.impl.longline; * #L% */ +import fr.ird.observe.BinderService; import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.TripLongline; @@ -115,7 +115,7 @@ public class ActivityLonglinesUIHandler extends ContentListUIHandler<TripLonglin TripLongline loaded = tripService.getTripLonglineStub(selectedId); TripLongline bean = getBean(); - tripService.copyStubForDisplay(loaded, bean); + copy(TripLongline.class, BinderService.DISPLAY, loaded, bean); ActivityLonglineService routeService = getService(ActivityLonglineService.class); List<ActivityLongline> activityLonglines = routeService.getActivityLonglineStubByTrip(selectedId); diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java index ef7ce2c..61e8c9a 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIHandler.java @@ -22,6 +22,7 @@ package fr.ird.observe.ui.content.open.impl.longline; * #L% */ +import fr.ird.observe.BinderService; import fr.ird.observe.db.DataContext; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.ActivityLongline; @@ -151,7 +152,7 @@ public class ActivityLonglineUIHandler extends ContentOpenableUIHandler<Activity } ActivityLongline bean = getBean(); - service.copyForEdit(loaded, bean); + copy(ActivityLongline.class, BinderService.EDIT, loaded, bean); finalizeOpenUI(mode, create); diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java index 0bbc283..9d0b3c8 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIHandler.java @@ -22,6 +22,7 @@ package fr.ird.observe.ui.content.open.impl.longline; * #L% */ +import fr.ird.observe.BinderService; import fr.ird.observe.ObserveConfig; import fr.ird.observe.db.DataContext; import fr.ird.observe.db.constants.DataContextType; @@ -176,7 +177,7 @@ public class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLongline } TripLongline bean = getBean(); - service.copyForEdit(loaded, bean); + copy(TripLongline.class, BinderService.EDIT, loaded, bean); getUi().getTripLonglineTabPane().setSelectedIndex(0); buildTripMap = true; diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIHandler.java index 73520e3..a3640c5 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIHandler.java @@ -22,14 +22,14 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ -import fr.ird.observe.DataService; -import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; +import fr.ird.observe.BinderService; +import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.BaitsComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.referentiel.longline.BaitSettingStatus; import fr.ird.observe.entities.referentiel.longline.BaitType; +import fr.ird.observe.services.data.longline.BaitsCompositionService; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import org.apache.commons.logging.Log; @@ -65,6 +65,19 @@ public class BaitsCompositionUIHandler extends ContentTableUIHandler<SetLongline } @Override + protected void loadEditBean() throws DataSourceException { + + String setLonglineId = getDataContext().getSelectedSetId(); + + BaitsCompositionService service = getService(BaitsCompositionService.class); + + SetLongline loaded = service.loadForEdit(setLonglineId); + + copy(SetLongline.class, BinderService.EDIT_BAITS_COMPOSITION, loaded, getBean()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, BaitsComposition bean, boolean create) { if (getTableModel().isEditable()) { @@ -112,11 +125,6 @@ public class BaitsCompositionUIHandler extends ContentTableUIHandler<SetLongline } @Override - protected String getEditBeanIdToLoad(DataContext dataContext, DataService dataService, DataSource dataSource) { - return dataContext.getSelectedSetId(); - } - - @Override public SetLongline onUpdate(TopiaContext tx, Object parentBean, SetLongline beanToSave) throws TopiaException { return super.onUpdate(tx, parentBean, beanToSave); } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIHandler.java index 616725a..fa25f1f 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIHandler.java @@ -22,14 +22,14 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ -import fr.ird.observe.DataService; -import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; +import fr.ird.observe.BinderService; +import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.BranchlinesComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.referentiel.longline.HookSize; import fr.ird.observe.entities.referentiel.longline.HookType; +import fr.ird.observe.services.data.longline.BranchlinesCompositionService; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import org.apache.commons.logging.Log; @@ -109,8 +109,16 @@ public class BranchlinesCompositionUIHandler extends ContentTableUIHandler<SetLo } @Override - protected String getEditBeanIdToLoad(DataContext dataContext, DataService dataService, DataSource dataSource) { - return dataContext.getSelectedSetId(); + protected void loadEditBean() throws DataSourceException { + + String setLonglineId = getDataContext().getSelectedSetId(); + + BranchlinesCompositionService service = getService(BranchlinesCompositionService.class); + + SetLongline loaded = service.loadForEdit(setLonglineId); + + copy(SetLongline.class, BinderService.EDIT_BRANCHLINES_COMPOSITION, loaded, getBean()); + } @Override diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java index 37a84b4..a6819aa 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIHandler.java @@ -22,13 +22,11 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ -import fr.ird.observe.DataService; +import fr.ird.observe.BinderService; import fr.ird.observe.DecoratorService; import fr.ird.observe.ObserveConfig; import fr.ird.observe.ObserveContext; import fr.ird.observe.ObserveDAOHelper; -import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.Basket; @@ -49,7 +47,6 @@ import fr.ird.observe.services.data.longline.CatchLonglineService; import fr.ird.observe.services.data.longline.SetLonglineService; import fr.ird.observe.services.referential.ReferentialService; import fr.ird.observe.ui.UIHelper; -import fr.ird.observe.ui.content.ContentMode; import fr.ird.observe.ui.content.ContentUIInitializer; import fr.ird.observe.ui.content.table.ContentTableModel; import fr.ird.observe.ui.content.table.ContentTableUIHandler; @@ -159,6 +156,32 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLongline, C } @Override + protected void loadEditBean() throws DataSourceException { + + String setLonglineId = getDataContext().getSelectedSetId(); + + CatchLonglineService service = getService(CatchLonglineService.class); + + SetLongline loaded = service.loadForEdit(setLonglineId); + + copy(SetLongline.class, BinderService.EDIT_CATCH_LONGLINE, loaded, getBean()); + + // reset size measures + getModel().getSizeMeasuresTableModel().clear(); + + // reset weight measures + getModel().getWeightMeasuresTableModel().clear(); + + // load sections (and baskets and branchlines) + SetLonglineService setLonglineService = getService(SetLonglineService.class); + List<Section> sections = setLonglineService.getSections(setLonglineId); + + LonglinePositionHelper<CatchLongline> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); + positionHelper.initSections(sections, getTableModel().getData()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, CatchLongline bean, boolean create) { if (log.isInfoEnabled()) { @@ -428,11 +451,6 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLongline, C } @Override - protected String getEditBeanIdToLoad(DataContext dataContext, DataService dataService, DataSource dataSource) { - return dataContext.getSelectedSetId(); - } - - @Override public void initUI() throws Exception { // add a listPredicate to get only species from the correct configured speciesList @@ -480,31 +498,6 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLongline, C } @Override - protected SetLongline loadEditBean(ContentMode mode, - DataContext dataContext, - DataService dataService, - DataSource dataSource) throws DataSourceException { - - SetLongline setLongline = super.loadEditBean(mode, dataContext, dataService, dataSource); - - // reset size measures - getModel().getSizeMeasuresTableModel().clear(); - - // reset weight measures - getModel().getWeightMeasuresTableModel().clear(); - - // load sections (and baskets and branchlines) - SetLonglineService service = getService(SetLonglineService.class); - List<Section> sections = service.getSections(setLongline.getTopiaId()); - - LonglinePositionHelper<CatchLongline> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); - positionHelper.initSections(sections, getTableModel().getData()); - - return setLongline; - - } - - @Override public void openUI() throws Exception { if (log.isInfoEnabled()) { @@ -833,7 +826,7 @@ public class CatchLonglineUIHandler extends ContentTableUIHandler<SetLongline, C CatchLonglineService service = getService(CatchLonglineService.class); Branchline loadedBranchline = service.loadBranchlineForEdit(newValue.getTopiaId()); - service.copyBranchlineForEdit(loadedBranchline, getUi().getBranchlineBean()); + copy(Branchline.class, BinderService.EDIT_CATCH_LONGLINE, loadedBranchline, getUi().getBranchlineBean()); } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java index 2392b1a..427695e 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIHandler.java @@ -22,15 +22,15 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ -import fr.ird.observe.DataService; +import fr.ird.observe.BinderService; import fr.ird.observe.ObserveConfig; -import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; +import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.Encounter; import fr.ird.observe.entities.referentiel.Species; import fr.ird.observe.entities.referentiel.longline.EncounterType; +import fr.ird.observe.services.data.longline.EncounterService; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import org.apache.commons.logging.Log; @@ -62,6 +62,19 @@ public class EncounterUIHandler extends ContentTableUIHandler<ActivityLongline, } @Override + protected void loadEditBean() throws DataSourceException { + + String activityLonglineId = getDataContext().getSelectedActivityId(); + + EncounterService service = getService(EncounterService.class); + + ActivityLongline loaded = service.loadForEdit(activityLonglineId); + + copy(ActivityLongline.class, BinderService.EDIT_ENCOUNTER, loaded, getBean()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, Encounter bean, boolean create) { if (getTableModel().isEditable()) { if (log.isDebugEnabled()) { @@ -92,17 +105,12 @@ public class EncounterUIHandler extends ContentTableUIHandler<ActivityLongline, } @Override - protected String getEditBeanIdToLoad(DataContext dataContext, DataService dataService, DataSource dataSource) { - return dataContext.getSelectedActivityId(); - } - - @Override public void initUI() throws Exception { // add a listPredicate to get only species from the correct configured speciesList ObserveConfig config = getUi().getContextValue(ObserveConfig.class); String speciesListId = config.getSpeciesListLonglineEncounterId(); - prepareSpeciesList(speciesListId, getUi().getSpecies() , n("observe.error.speciesList.longline.encounter.notFound")); + prepareSpeciesList(speciesListId, getUi().getSpecies(), n("observe.error.speciesList.longline.encounter.notFound")); super.initUI(); diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIHandler.java index d254543..6b96f69 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIHandler.java @@ -22,13 +22,16 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ +import fr.ird.observe.BinderService; import fr.ird.observe.DataService; import fr.ird.observe.db.DataContext; import fr.ird.observe.db.DataSource; +import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.FloatlinesComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.referentiel.longline.LineType; +import fr.ird.observe.services.data.longline.FloatlinesCompositionService; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import org.apache.commons.logging.Log; @@ -64,6 +67,19 @@ public class FloatlinesCompositionUIHandler extends ContentTableUIHandler<SetLon } @Override + protected void loadEditBean() throws DataSourceException { + + String setLonglineId = getDataContext().getSelectedSetId(); + + FloatlinesCompositionService service = getService(FloatlinesCompositionService.class); + + SetLongline loaded = service.loadForEdit(setLonglineId); + + copy(SetLongline.class, BinderService.EDIT_FLOATLINES_COMPOSITION, loaded, getBean()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, FloatlinesComposition bean, boolean create) { if (getTableModel().isEditable()) { diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java index dfce5c6..9596458 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIHandler.java @@ -22,11 +22,10 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ -import fr.ird.observe.DataService; +import fr.ird.observe.BinderService; import fr.ird.observe.ObserveContext; import fr.ird.observe.ObserveDAOHelper; import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.GearUseFeaturesLongline; @@ -125,6 +124,22 @@ public class GearUseFeaturesLonglineUIHandler extends ContentTableUIHandler<Trip } @Override + protected void loadEditBean() throws DataSourceException { + + String activityLonglineId = getDataContext().getSelectedTripLonglineId(); + + GearUseFeaturesLonglineService service = getService(GearUseFeaturesLonglineService.class); + + TripLongline loaded = service.loadForEdit(activityLonglineId); + + copy(TripLongline.class, BinderService.EDIT_GEAR_USE_FEATURES_LONGLINE, loaded, getBean()); + + // reset measurements + getModel().getMeasurementsTableModel().clear(); + + } + + @Override protected void onSelectedRowChanged(int editingRow, GearUseFeaturesLongline bean, boolean create) { if (log.isInfoEnabled()) { @@ -278,11 +293,6 @@ public class GearUseFeaturesLonglineUIHandler extends ContentTableUIHandler<Trip } @Override - protected String getEditBeanIdToLoad(DataContext dataContext, DataService dataService, DataSource dataSource) { - return dataContext.getSelectedTripLonglineId(); - } - - @Override public void initUI() throws Exception { super.initUI(); @@ -302,18 +312,6 @@ public class GearUseFeaturesLonglineUIHandler extends ContentTableUIHandler<Trip } @Override - protected TripLongline loadEditBean(ContentMode mode, DataContext dataContext, DataService dataService, DataSource dataSource) throws DataSourceException { - - TripLongline tripLongline = super.loadEditBean(mode, dataContext, dataService, dataSource); - - // reset measurements - getModel().getMeasurementsTableModel().clear(); - - return tripLongline; - - } - - @Override public void openUI() throws Exception { if (log.isInfoEnabled()) { @@ -390,11 +388,6 @@ public class GearUseFeaturesLonglineUIHandler extends ContentTableUIHandler<Trip } @Override - protected TripLongline onCreate(TopiaContext tx, Object parentBean, TripLongline editBean) throws TopiaException { - return super.onCreate(tx, parentBean, editBean); - } - - @Override protected void onUpdateFinalize(TopiaContext tx, TripLongline bean, Collection<GearUseFeaturesLongline> oldChilds) throws TopiaException { List<GearUseFeaturesLongline> gearUseFeatures = bean.getGearUseFeaturesLongline(); @@ -533,7 +526,8 @@ public class GearUseFeaturesLonglineUIHandler extends ContentTableUIHandler<Trip public List<GearUseFeaturesMeasurementLongline> getDefaultGearUseFeaturesMeasurementLongline(String gearId) { - List<GearUseFeaturesMeasurementLongline> measurements = getService(GearUseFeaturesLonglineService.class).getDefaultGearUseFeaturesMeasurementLongline(gearId); + GearUseFeaturesLonglineService service = getService(GearUseFeaturesLonglineService.class); + List<GearUseFeaturesMeasurementLongline> measurements = service.getDefaultGearUseFeaturesMeasurementLongline(gearId); if (log.isInfoEnabled()) { log.info("Create mode, use default measurements: " + measurements.size()); } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIModel.java index 44f98ab..7d50c06 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/GearUseFeaturesLonglineUIModel.java @@ -26,16 +26,13 @@ import com.google.common.collect.ImmutableSet; import com.google.common.collect.Lists; import fr.ird.observe.BinderService; import fr.ird.observe.ObserveServiceHelper; -import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLongline; import fr.ird.observe.entities.longline.GearUseFeaturesLongline; +import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLongline; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.ui.content.table.ContentTableMeta; import fr.ird.observe.ui.content.table.ContentTableModel; import fr.ird.observe.ui.content.table.ContentTableUIModel; import fr.ird.observe.ui.content.table.ObserveContentTableUI; -import fr.ird.observe.ui.content.table.impl.longline.GearUseFeaturesMeasurementLonglinesTableModel; -import fr.ird.observe.ui.content.table.impl.longline.GearUseFeaturesLonglineTableModel; -import fr.ird.observe.ui.content.table.impl.longline.GearUseFeaturesLonglineUI; import org.nuiton.topia.persistence.util.TopiaEntityBinder; import org.nuiton.util.beans.BinderModelBuilder; diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIHandler.java index 6146c75..6f9b457 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIHandler.java @@ -22,14 +22,17 @@ package fr.ird.observe.ui.content.table.impl.longline; * #L% */ +import fr.ird.observe.BinderService; import fr.ird.observe.DataService; import fr.ird.observe.db.DataContext; import fr.ird.observe.db.DataSource; +import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.HooksComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.entities.referentiel.longline.HookSize; import fr.ird.observe.entities.referentiel.longline.HookType; +import fr.ird.observe.services.data.longline.HooksCompositionService; import fr.ird.observe.ui.UIHelper; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import org.apache.commons.logging.Log; @@ -65,6 +68,19 @@ public class HooksCompositionUIHandler extends ContentTableUIHandler<SetLongline } @Override + protected void loadEditBean() throws DataSourceException { + + String setLonglineId = getDataContext().getSelectedSetId(); + + HooksCompositionService service = getService(HooksCompositionService.class); + + SetLongline loaded = service.loadForEdit(setLonglineId); + + copy(SetLongline.class, BinderService.EDIT_HOOKS_COMPOSITION, loaded, getBean()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, HooksComposition bean, boolean create) { if (getTableModel().isEditable()) { diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java index f261ed5..d7bb9d9 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIHandler.java @@ -25,11 +25,10 @@ package fr.ird.observe.ui.content.table.impl.longline; import com.google.common.base.Predicate; import com.google.common.io.FileWriteMode; import com.google.common.io.Files; -import fr.ird.observe.DataService; +import fr.ird.observe.BinderService; import fr.ird.observe.ObserveContext; import fr.ird.observe.ObserveTechnicalException; -import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; +import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.SensorUsed; @@ -81,6 +80,19 @@ public class SensorUsedUIHandler extends ContentTableUIHandler<ActivityLongline, } @Override + protected void loadEditBean() throws DataSourceException { + + String activityLonglineId = getDataContext().getSelectedActivityId(); + + SensorUsedService service = getService(SensorUsedService.class); + + ActivityLongline loaded = service.loadForEdit(activityLonglineId); + + copy(ActivityLongline.class, BinderService.EDIT_SENSOR_USED, loaded, getBean()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, SensorUsed bean, boolean create) { if (getTableModel().isEditable()) { if (log.isDebugEnabled()) { @@ -121,13 +133,6 @@ public class SensorUsedUIHandler extends ContentTableUIHandler<ActivityLongline, UIHelper.setTableColumnRenderer(table, 5, UIHelper.newStringTableCellRenderer(renderer, 10, true)); } - @Override - protected String getEditBeanIdToLoad(DataContext dataContext, - DataService dataService, - DataSource dataSource) { - return dataContext.getSelectedActivityId(); - } - public void importData() { File file = UIHelper.chooseFile((Component) ui, diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java index f2400fe..68f8b37 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIHandler.java @@ -25,12 +25,10 @@ package fr.ird.observe.ui.content.table.impl.longline; import com.google.common.base.Predicate; import com.google.common.io.FileWriteMode; import com.google.common.io.Files; -import fr.ird.observe.DataService; +import fr.ird.observe.BinderService; import fr.ird.observe.ObserveConfig; import fr.ird.observe.ObserveContext; import fr.ird.observe.ObserveTechnicalException; -import fr.ird.observe.db.DataContext; -import fr.ird.observe.db.DataSource; import fr.ird.observe.db.DataSourceException; import fr.ird.observe.db.constants.DataContextType; import fr.ird.observe.entities.longline.Section; @@ -41,7 +39,6 @@ import fr.ird.observe.services.data.longline.SetLonglineService; import fr.ird.observe.services.data.longline.TdrService; import fr.ird.observe.ui.ObserveMainUI; import fr.ird.observe.ui.UIHelper; -import fr.ird.observe.ui.content.ContentMode; import fr.ird.observe.ui.content.table.ContentTableModel; import fr.ird.observe.ui.content.table.ContentTableUIHandler; import jaxx.runtime.context.JAXXContextEntryDef; @@ -124,6 +121,27 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLongline, Tdr> { } @Override + protected void loadEditBean() throws DataSourceException { + + String setLonglineId = getDataContext().getSelectedSetId(); + + TdrService service = getService(TdrService.class); + + SetLongline loaded = service.loadForEdit(setLonglineId); + + copy(SetLongline.class, BinderService.EDIT_TDR, loaded, getBean()); + + //FIXME Move this somewhere else ? + // load sections (and baskets and branchlines) + SetLonglineService setLonglineService = getService(SetLonglineService.class); + List<Section> sections = setLonglineService.getSections(setLonglineId); + + LonglinePositionHelper<Tdr> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); + positionHelper.initSections(sections, getTableModel().getData()); + + } + + @Override protected void onSelectedRowChanged(int editingRow, Tdr bean, boolean create) { ContentTableModel<SetLongline, Tdr> model = getTableModel(); @@ -201,11 +219,6 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLongline, Tdr> { } @Override - protected String getEditBeanIdToLoad(DataContext dataContext, DataService dataService, DataSource dataSource) { - return dataContext.getSelectedSetId(); - } - - @Override public void initUI() throws Exception { // add a listPredicate to get only species from the correct configured speciesList @@ -265,22 +278,6 @@ public class TdrUIHandler extends ContentTableUIHandler<SetLongline, Tdr> { } @Override - protected SetLongline loadEditBean(ContentMode mode, DataContext dataContext, DataService dataService, DataSource dataSource) throws DataSourceException { - - SetLongline setLongline = super.loadEditBean(mode, dataContext, dataService, dataSource); - - // load sections (and baskets and branchlines) - SetLonglineService service = getService(SetLonglineService.class); - List<Section> sections = service.getSections(setLongline.getTopiaId()); - - LonglinePositionHelper<Tdr> positionHelper = POSITION_HELPER_ENTRY.getContextValue(getUi()); - positionHelper.initSections(sections, getTableModel().getData()); - - return setLongline; - - } - - @Override protected void resetEditBean() { super.resetEditBean(); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.