branch feature/7017 updated (b694f31 -> fbd9693)
This is an automated email from the git hooks/post-receive script. New change to branch feature/7017 in repository observe. See http://git.codelutin.com/observe.git from b694f31 échantillon acessoire capturé. new fbd9693 utilisation des binders venant du service BinderService (sauf pour les referentiels) (refs #7017) The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit fbd9693f2d8e7a9107dc8ebe36aa29546b0163bd Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Apr 29 21:04:42 2015 +0200 utilisation des binders venant du service BinderService (sauf pour les referentiels) (refs #7017) Summary of changes: .../main/java/fr/ird/observe/BinderService.java | 1524 +++++++++++++------- .../fr/ird/observe/ui/content/ContentUIModel.java | 66 +- .../content/impl/longline/BranchlineUIModel.java | 38 +- .../longline/LonglineDetailCompositionUIModel.java | 123 +- .../longline/LonglineGlobalCompositionUIModel.java | 17 +- .../content/impl/longline/SetLonglineUIModel.java | 65 +- .../seine/ActivitySeineObservedSystemUIModel.java | 17 +- ...tingObjectTransmittingBuoyOperationUIModel.java | 20 +- .../content/impl/seine/FloatingObjectUIModel.java | 19 +- .../ui/content/impl/seine/SetSeineUIModel.java | 32 +- .../ui/content/list/ContentListUIModel.java | 3 +- .../impl/longline/ActivityLonglinesUIModel.java | 25 - .../list/impl/longline/TripLonglinesUIModel.java | 19 - .../list/impl/seine/ActivitySeinesUIModel.java | 30 - .../ui/content/list/impl/seine/RoutesUIModel.java | 17 - .../content/list/impl/seine/TripSeinesUIModel.java | 19 - .../ui/content/open/ContentOpenableUIModel.java | 3 +- .../impl/longline/ActivityLonglineUIModel.java | 28 - .../open/impl/longline/TripLonglineUIModel.java | 31 - .../open/impl/seine/ActivitySeineUIModel.java | 36 - .../ui/content/open/impl/seine/RouteUIModel.java | 37 - .../content/open/impl/seine/TripSeineUIModel.java | 32 - .../ui/content/ref/ContentReferenceUIModel.java | 34 +- .../ui/content/ref/ReferenceHomeUIModel.java | 7 - .../ui/content/table/ContentTableUIModel.java | 77 +- .../impl/longline/BaitsCompositionUIModel.java | 15 +- .../longline/BranchlinesCompositionUIModel.java | 14 +- .../table/impl/longline/CatchLonglineUIModel.java | 65 +- .../table/impl/longline/EncounterUIModel.java | 15 +- .../longline/FloatlinesCompositionUIModel.java | 11 +- .../longline/GearUseFeaturesLonglineUIModel.java | 40 +- .../impl/longline/HooksCompositionUIModel.java | 13 +- .../table/impl/longline/SensorUsedUIModel.java | 20 +- .../ui/content/table/impl/longline/TdrUIModel.java | 125 +- .../impl/seine/GearUseFeaturesSeineUIModel.java | 39 +- .../table/impl/seine/NonTargetCatchUIModel.java | 34 +- .../table/impl/seine/NonTargetSampleUIModel.java | 25 +- .../impl/seine/ObjectObservedSpeciesUIModel.java | 14 +- .../impl/seine/ObjectSchoolEstimateUIModel.java | 9 +- .../table/impl/seine/SchoolEstimateUIModel.java | 13 +- .../table/impl/seine/TargetCatchUIModel.java | 19 +- .../impl/seine/TargetDiscardCatchUIModel.java | 19 +- .../table/impl/seine/TargetSampleUIModel.java | 24 +- 43 files changed, 1373 insertions(+), 1460 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
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 fbd9693f2d8e7a9107dc8ebe36aa29546b0163bd Author: Tony CHEMIT <chemit@codelutin.com> Date: Wed Apr 29 21:04:42 2015 +0200 utilisation des binders venant du service BinderService (sauf pour les referentiels) (refs #7017) --- .../main/java/fr/ird/observe/BinderService.java | 1524 +++++++++++++------- .../fr/ird/observe/ui/content/ContentUIModel.java | 66 +- .../content/impl/longline/BranchlineUIModel.java | 38 +- .../longline/LonglineDetailCompositionUIModel.java | 123 +- .../longline/LonglineGlobalCompositionUIModel.java | 17 +- .../content/impl/longline/SetLonglineUIModel.java | 65 +- .../seine/ActivitySeineObservedSystemUIModel.java | 17 +- ...tingObjectTransmittingBuoyOperationUIModel.java | 20 +- .../content/impl/seine/FloatingObjectUIModel.java | 19 +- .../ui/content/impl/seine/SetSeineUIModel.java | 32 +- .../ui/content/list/ContentListUIModel.java | 3 +- .../impl/longline/ActivityLonglinesUIModel.java | 25 - .../list/impl/longline/TripLonglinesUIModel.java | 19 - .../list/impl/seine/ActivitySeinesUIModel.java | 30 - .../ui/content/list/impl/seine/RoutesUIModel.java | 17 - .../content/list/impl/seine/TripSeinesUIModel.java | 19 - .../ui/content/open/ContentOpenableUIModel.java | 3 +- .../impl/longline/ActivityLonglineUIModel.java | 28 - .../open/impl/longline/TripLonglineUIModel.java | 31 - .../open/impl/seine/ActivitySeineUIModel.java | 36 - .../ui/content/open/impl/seine/RouteUIModel.java | 37 - .../content/open/impl/seine/TripSeineUIModel.java | 32 - .../ui/content/ref/ContentReferenceUIModel.java | 34 +- .../ui/content/ref/ReferenceHomeUIModel.java | 7 - .../ui/content/table/ContentTableUIModel.java | 77 +- .../impl/longline/BaitsCompositionUIModel.java | 15 +- .../longline/BranchlinesCompositionUIModel.java | 14 +- .../table/impl/longline/CatchLonglineUIModel.java | 65 +- .../table/impl/longline/EncounterUIModel.java | 15 +- .../longline/FloatlinesCompositionUIModel.java | 11 +- .../longline/GearUseFeaturesLonglineUIModel.java | 40 +- .../impl/longline/HooksCompositionUIModel.java | 13 +- .../table/impl/longline/SensorUsedUIModel.java | 20 +- .../ui/content/table/impl/longline/TdrUIModel.java | 125 +- .../impl/seine/GearUseFeaturesSeineUIModel.java | 39 +- .../table/impl/seine/NonTargetCatchUIModel.java | 34 +- .../table/impl/seine/NonTargetSampleUIModel.java | 25 +- .../impl/seine/ObjectObservedSpeciesUIModel.java | 14 +- .../impl/seine/ObjectSchoolEstimateUIModel.java | 9 +- .../table/impl/seine/SchoolEstimateUIModel.java | 13 +- .../table/impl/seine/TargetCatchUIModel.java | 19 +- .../impl/seine/TargetDiscardCatchUIModel.java | 19 +- .../table/impl/seine/TargetSampleUIModel.java | 24 +- 43 files changed, 1373 insertions(+), 1460 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 797b595..1596a68 100644 --- a/observe-business/src/main/java/fr/ird/observe/BinderService.java +++ b/observe-business/src/main/java/fr/ird/observe/BinderService.java @@ -23,6 +23,7 @@ package fr.ird.observe; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.BaitsComposition; +import fr.ird.observe.entities.longline.Basket; import fr.ird.observe.entities.longline.Branchline; import fr.ird.observe.entities.longline.BranchlinesComposition; import fr.ird.observe.entities.longline.CatchLongline; @@ -31,14 +32,19 @@ import fr.ird.observe.entities.longline.FloatlinesComposition; import fr.ird.observe.entities.longline.GearUseFeaturesLongline; import fr.ird.observe.entities.longline.GearUseFeaturesMeasurementLongline; import fr.ird.observe.entities.longline.HooksComposition; +import fr.ird.observe.entities.longline.Section; 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.referentiel.Program; import fr.ird.observe.entities.seine.ActivitySeine; import fr.ird.observe.entities.seine.FloatingObject; +import fr.ird.observe.entities.seine.GearUseFeaturesMeasurementSeine; +import fr.ird.observe.entities.seine.GearUseFeaturesSeine; +import fr.ird.observe.entities.seine.NonTargetCatch; import fr.ird.observe.entities.seine.NonTargetLength; import fr.ird.observe.entities.seine.NonTargetSample; import fr.ird.observe.entities.seine.ObjectObservedSpecies; @@ -46,9 +52,12 @@ import fr.ird.observe.entities.seine.ObjectSchoolEstimate; import fr.ird.observe.entities.seine.Route; import fr.ird.observe.entities.seine.SchoolEstimate; import fr.ird.observe.entities.seine.SetSeine; +import fr.ird.observe.entities.seine.TargetCatch; import fr.ird.observe.entities.seine.TargetLength; import fr.ird.observe.entities.seine.TargetSample; import fr.ird.observe.entities.seine.TripSeine; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.util.TopiaEntityBinder; import org.nuiton.topia.persistence.util.TopiaEntityHelper; @@ -63,6 +72,9 @@ import org.nuiton.util.beans.BinderModelBuilder; */ public class BinderService { + /** Logger. */ + private static final Log log = LogFactory.getLog(BinderService.class); + public static final String DISPLAY = "display"; public static final String EDIT = "edit"; @@ -79,6 +91,8 @@ public class BinderService { public static final String EDIT_GEAR_USE_FEATURES_LONGLINE = "editGearUseFeaturesLongline"; + public static final String EDIT_GEAR_USE_FEATURES_SEINE = "editGearUseFeaturesSeine"; + public static final String EDIT_HOOKS_COMPOSITION = "editHooksComposition"; public static final String EDIT_SENSOR_USED = "editSensorUsed"; @@ -93,547 +107,566 @@ public class BinderService { public static final String EDIT_OBJECT_OBSERVED_SPECIES = "editObjectObservedSpecies"; + public static final String EDIT_OBJECT_OPERATION = "editObjectOperation"; + + public static final String EDIT_OBSERVED_SYSTEM = "editObservedSystem"; + + public static final String EDIT_GLOBAL_COMPOSITION = "editGlobalComposition"; + + public static final String EDIT_DETAIL_COMPOSITION = "editDetailComposition"; + public static final String EDIT_NON_TARGET_LENGTH = "editNonTargetLength"; - static { + public static final String DISPLAY_LIST = "displayList"; - registerBinders(); + public static final String EDIT_ROUTE = "editRoute"; - } + public static final String EDIT_NON_TARGET_CATCH = "editNonTargetCatch"; - private static void registerBinders() { + public static final String EDIT_TARGET_CATCH = "editTargetCatch"; - { + public static final String EDIT_DISCARD_TARGET_CATCH = "editDiscardTargetCatch"; - BinderModelBuilder<ActivityLongline, ActivityLongline> builder = 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); + static { - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_ENCOUNTER); + try { - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_SENSOR_USED); + registerSeineBinders(); - registerTopiaBinder(ActivityLongline.class, builder, EDIT); + registerLonglineBinders(); + + } catch (Exception e) { + + if (log.isErrorEnabled()) { + log.error("Could not load binders", e); + } + throw new ObserveTechnicalException("Could not load binders", e); } - { + } - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_BAITS_COMPOSITION); + public <E extends TopiaEntity> void copy(Class<E> type, String context, E source, E target) { - registerTopiaBinder(SetLongline.class, builder, EDIT_BAITS_COMPOSITION); + copy(type, context, source, target, true); - } + } - { + public <E extends TopiaEntity> void copyExcluding(Class<E> type, String context, E source, E target, String... propertyNames) { - BinderModelBuilder<BaitsComposition, BaitsComposition> builder = newBinderBuilder( - BaitsComposition.class, - BaitsComposition.PROPERTY_BAIT_TYPE, - BaitsComposition.PROPERTY_BAIT_SETTING_STATUS, - BaitsComposition.PROPERTY_INDIVIDUAL_SIZE, - BaitsComposition.PROPERTY_INDIVIDUAL_WEIGHT, - BaitsComposition.PROPERTY_PROPORTION); + TopiaEntityBinder<E> binder = getBinder(type, context); - registerTopiaBinder(BaitsComposition.class, builder, EDIT); + binder.copyExcluding(source, target, propertyNames); - } + /* FIXME sbavencoff 29/04/2015 bind techincal fields */ + target.setTopiaId(source.getTopiaId()); + target.setTopiaVersion(source.getTopiaVersion()); + target.setTopiaCreateDate(source.getTopiaCreateDate()); - { + } - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_BRANCHLINES_COMPOSITION); + public <E extends TopiaEntity> void copy(Class<E> type, String context, E source, E target, boolean bindTechnical) { - registerTopiaBinder(SetLongline.class, builder, EDIT_BRANCHLINES_COMPOSITION); + TopiaEntityBinder<E> binder = getBinder(type, context); + binder.load(source, target, bindTechnical); + + } + + public <E extends TopiaEntity> TopiaEntityBinder<E> getBinder(Class<E> type, String context) { + TopiaEntityBinder<E> binder = getTopiaBinder(type, context); + if (binder == null) { + throw new IllegalArgumentException("Could not find binder for " + type.getName() + "::" + context); } + return binder; + } - { - BinderModelBuilder<BranchlinesComposition, BranchlinesComposition> builder = newBinderBuilder( - BranchlinesComposition.class, - BranchlinesComposition.PROPERTY_TOP_TYPE, - BranchlinesComposition.PROPERTY_TRACELINE_TYPE, - BranchlinesComposition.PROPERTY_LENGTH, - BranchlinesComposition.PROPERTY_PROPORTION); + public static <E extends TopiaEntity> BinderModelBuilder<E, E> newBinderBuilder(Class<E> type, String... properties) { + BinderModelBuilder<E, E> builder = BinderModelBuilder.newEmptyBuilder(type); + builder.addSimpleProperties(properties); + return builder; + } - registerTopiaBinder(BranchlinesComposition.class, builder, EDIT); + public <E extends TopiaEntity> TopiaEntityBinder<E> getTopiaBinder(Class<E> entityClass, + String contextName) { + if (ObserveBinderHelper.getCachedBinderModel(entityClass, entityClass, contextName) == null) { + // we do not want to have auto created binder model by the factory + return null; } + return (TopiaEntityBinder<E>) ObserveBinderHelper.newBinder(entityClass, entityClass, contextName, TopiaEntityBinder.class); + } - { - - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_CATCH_LONGLINE); + public static <E extends TopiaEntity> TopiaEntityBinder<E> registerTopiaBinder(Class<E> entityClass, + BinderModelBuilder<E, E> builder, + String contextName) { + return ObserveBinderHelper.registerTopiaBinder(entityClass, builder, contextName); + } - registerTopiaBinder(SetLongline.class, builder, EDIT_CATCH_LONGLINE); + public <E extends TopiaEntity> TopiaEntityBinder<E> getSimpleTopiaBinder(Class<E> entityClass) { + return getTopiaBinder(entityClass, "Observe"); + } + public <E extends TopiaEntity> void simpleCopy(E source, E target, boolean tech) { + Class<E> entityClass = (Class<E>) TopiaEntityHelper.getContractClass(ObserveDAOHelper.getContracts(), target.getClass()); + TopiaEntityBinder<E> binder = getSimpleTopiaBinder(entityClass); + if (binder == null) { + throw new NullPointerException("could not find a simple topia binder of type : " + target.getClass()); } + binder.load(source, target, tech); + } + protected static void registerSeineBinders() { { - BinderModelBuilder<CatchLongline, CatchLongline> builder = newBinderBuilder( - CatchLongline.class, - CatchLongline.PROPERTY_SPECIES_CATCH, - CatchLongline.PROPERTY_ACQUISITION_MODE, - CatchLongline.PROPERTY_COUNT, - CatchLongline.PROPERTY_CATCH_HEALTHNESS, - CatchLongline.PROPERTY_CATCH_FATE_LONGLINE, - CatchLongline.PROPERTY_DISCARD_HEALTHNESS, - CatchLongline.PROPERTY_DEPREDATED, - CatchLongline.PROPERTY_NUMBER, - CatchLongline.PROPERTY_HOME_ID, - CatchLongline.PROPERTY_HOOK_POSITION, - CatchLongline.PROPERTY_HOOK_WHEN_DISCARDED, - CatchLongline.PROPERTY_MATURITY_STATUS, - CatchLongline.PROPERTY_PHOTO_REFERENCES, - CatchLongline.PROPERTY_SEX, - CatchLongline.PROPERTY_PREDATOR, - CatchLongline.PROPERTY_STOMAC_FULLNESS, - CatchLongline.PROPERTY_TOTAL_WEIGHT, - CatchLongline.PROPERTY_BEAT_DIAMETER, - CatchLongline.PROPERTY_GONADE_WEIGHT, - CatchLongline.PROPERTY_SECTION, - CatchLongline.PROPERTY_BASKET, - CatchLongline.PROPERTY_BRANCHLINE, - CatchLongline.PROPERTY_COMMENT); + BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( + TripSeine.class, + TripSeine.PROPERTY_START_DATE, + TripSeine.PROPERTY_END_DATE, + TripSeine.PROPERTY_FORMS_URL, + TripSeine.PROPERTY_REPORTS_URL, + TripSeine.PROPERTY_COMMENT, + TripSeine.PROPERTY_VESSEL, + TripSeine.PROPERTY_OBSERVER, + TripSeine.PROPERTY_CAPTAIN, + TripSeine.PROPERTY_DATA_ENTRY_OPERATOR, + TripSeine.PROPERTY_OCEAN, + TripSeine.PROPERTY_DEPARTURE_HARBOUR, + TripSeine.PROPERTY_LANDING_HARBOUR, + TripSeine.PROPERTY_PROGRAM, + TripSeine.PROPERTY_ROUTE, + TripSeine.PROPERTY_ERS_ID, + TripSeine.PROPERTY_OPEN); - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, CatchLongline.PROPERTY_PREDATOR); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_ROUTE); - registerTopiaBinder(CatchLongline.class, builder, EDIT); + registerTopiaBinder(TripSeine.class, builder, EDIT); } { - BinderModelBuilder<Branchline, Branchline> builder = 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); + BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( + TripSeine.class, + TripSeine.PROPERTY_START_DATE, + TripSeine.PROPERTY_END_DATE, + TripSeine.PROPERTY_OPEN, + TripSeine.PROPERTY_OBSERVER, + TripSeine.PROPERTY_VESSEL, + TripSeine.PROPERTY_PROGRAM); - registerTopiaBinder(Branchline.class, builder, EDIT_CATCH_LONGLINE); + registerTopiaBinder(TripSeine.class, builder, DISPLAY); } { - BinderModelBuilder<WeightMeasure, WeightMeasure> builder = newBinderBuilder(WeightMeasure.class, - WeightMeasure.PROPERTY_WEIGHT, - WeightMeasure.PROPERTY_WEIGHT_MEASURE_TYPE); + BinderModelBuilder<ActivitySeine, ActivitySeine> activitySeineBuilder = newBinderBuilder( + ActivitySeine.class, + ActivitySeine.PROPERTY_QUADRANT, + ActivitySeine.PROPERTY_LATITUDE, + ActivitySeine.PROPERTY_LONGITUDE, + ActivitySeine.PROPERTY_TIME, + ActivitySeine.PROPERTY_SEA_SURFACE_TEMPERATURE, + ActivitySeine.PROPERTY_REASON_FOR_NO_FISHING, + ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, + ActivitySeine.PROPERTY_WIND, + ActivitySeine.PROPERTY_OPEN); - registerTopiaBinder(WeightMeasure.class, builder, EDIT); + TopiaEntityBinder<ActivitySeine> activitySeineBinder = + registerTopiaBinder(ActivitySeine.class, activitySeineBuilder, EDIT_ROUTE); - } - { + BinderModelBuilder<Route, Route> builder = newBinderBuilder( + Route.class, + Route.PROPERTY_DATE, + Route.PROPERTY_START_LOG_VALUE, + Route.PROPERTY_END_LOG_VALUE, + Route.PROPERTY_CHECK_LEVEL, + Route.PROPERTY_ACTIVITY_SEINE, + Route.PROPERTY_OPEN, + Route.PROPERTY_COMMENT); - BinderModelBuilder<SizeMeasure, SizeMeasure> builder = newBinderBuilder(SizeMeasure.class, - SizeMeasure.PROPERTY_SIZE, - SizeMeasure.PROPERTY_SIZE_MEASURE_TYPE); + builder.addCollectionBinder(activitySeineBinder, Route.PROPERTY_ACTIVITY_SEINE); - registerTopiaBinder(SizeMeasure.class, builder, EDIT); + registerTopiaBinder(Route.class, builder, EDIT); } { - BinderModelBuilder<ActivityLongline, ActivityLongline> builder = newBinderBuilder( - ActivityLongline.class, - ActivityLongline.PROPERTY_COMMENT, - ActivityLongline.PROPERTY_ENCOUNTER); + BinderModelBuilder<ActivitySeine, ActivitySeine> builder = newBinderBuilder( + ActivitySeine.class, + ActivitySeine.PROPERTY_QUADRANT, + ActivitySeine.PROPERTY_LATITUDE, + ActivitySeine.PROPERTY_LONGITUDE, + ActivitySeine.PROPERTY_ERS_ID, + ActivitySeine.PROPERTY_TIME, + ActivitySeine.PROPERTY_SEA_SURFACE_TEMPERATURE, + ActivitySeine.PROPERTY_REASON_FOR_NO_FISHING, + ActivitySeine.PROPERTY_COMMENT, + ActivitySeine.PROPERTY_VESSEL_SPEED, + ActivitySeine.PROPERTY_OBSERVED_SYSTEM, + ActivitySeine.PROPERTY_OBSERVED_SYSTEM_DISTANCE, + ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, + ActivitySeine.PROPERTY_SURROUNDING_ACTIVITY, + ActivitySeine.PROPERTY_WIND, + ActivitySeine.PROPERTY_DETECTION_MODE, + ActivitySeine.PROPERTY_SET_SEINE, + ActivitySeine.PROPERTY_FLOATING_OBJECT, + ActivitySeine.PROPERTY_OPEN, + ActivitySeine.PROPERTY_CURRENT_FPA_ZONE, + ActivitySeine.PROPERTY_PREVIOUS_FPA_ZONE, + ActivitySeine.PROPERTY_NEXT_FPA_ZONE); - registerTopiaBinder(ActivityLongline.class, builder, EDIT_ENCOUNTER); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivitySeine.PROPERTY_OBSERVED_SYSTEM); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivitySeine.PROPERTY_FLOATING_OBJECT); - } + registerTopiaBinder(ActivitySeine.class, builder, EDIT); + } { - BinderModelBuilder<Encounter, Encounter> builder = newBinderBuilder( - Encounter.class, - Encounter.PROPERTY_SPECIES, - Encounter.PROPERTY_DISTANCE, - Encounter.PROPERTY_COUNT, - Encounter.PROPERTY_ENCOUNTER_TYPE); + BinderModelBuilder<TargetLength, TargetLength> builder = newBinderBuilder( + TargetLength.class, + TargetLength.PROPERTY_TARGET_SAMPLE, + TargetLength.PROPERTY_SPECIES, + TargetLength.PROPERTY_LENGTH, + TargetLength.PROPERTY_LENGTH_SOURCE, + TargetLength.PROPERTY_WEIGHT, + TargetLength.PROPERTY_WEIGHT_SOURCE, + TargetLength.PROPERTY_COUNT, + TargetLength.PROPERTY_MEASURE_TYPE, + TargetLength.PROPERTY_ACQUISITION_MODE); - registerTopiaBinder(Encounter.class, builder, EDIT); + registerTopiaBinder(TargetLength.class, builder, EDIT); } { - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_FLOATLINES_COMPOSITION); + BinderModelBuilder<TargetSample, TargetSample> builder = newBinderBuilder( + TargetSample.class, + TargetSample.PROPERTY_TARGET_LENGTH, + TargetSample.PROPERTY_COMMENT); - registerTopiaBinder(SetLongline.class, builder, EDIT_FLOATLINES_COMPOSITION); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TargetSample.PROPERTY_TARGET_LENGTH); + + registerTopiaBinder(TargetSample.class, builder, EDIT_TARGET_LENGTH); } { - BinderModelBuilder<FloatlinesComposition, FloatlinesComposition> builder = newBinderBuilder( - FloatlinesComposition.class, - FloatlinesComposition.PROPERTY_LINE_TYPE, - FloatlinesComposition.PROPERTY_LENGTH, - FloatlinesComposition.PROPERTY_PROPORTION); - + BinderModelBuilder<TargetSample, TargetSample> builder = newBinderBuilder( + TargetSample.class, + TargetSample.PROPERTY_TARGET_LENGTH, + TargetSample.PROPERTY_COMMENT); - registerTopiaBinder(FloatlinesComposition.class, builder, EDIT); + registerTopiaBinder(TargetSample.class, builder, EDIT); } { - BinderModelBuilder<TripLongline, TripLongline> builder = newBinderBuilder( - TripLongline.class, - TripLongline.PROPERTY_GEAR_USE_FEATURES_LONGLINE); + BinderModelBuilder<SetSeine, SetSeine> builder = newBinderBuilder( + SetSeine.class, + SetSeine.PROPERTY_COMMENT, + SetSeine.PROPERTY_SUPPORT_VESSEL_NAME, + SetSeine.PROPERTY_START_TIME, + SetSeine.PROPERTY_END_SET_TIME_STAMP, + SetSeine.PROPERTY_END_PURSING_TIME_STAMP, + SetSeine.PROPERTY_CURRENT_DIRECTION, + SetSeine.PROPERTY_CURRENT_SPEED, + SetSeine.PROPERTY_REASON_FOR_NULL_SET, + SetSeine.PROPERTY_SCHOOL_THICKNESS, + SetSeine.PROPERTY_MAX_GEAR_DEPTH, + SetSeine.PROPERTY_SCHOOL_MEAN_DEPTH, + SetSeine.PROPERTY_SCHOOL_TOP_DEPTH, + SetSeine.PROPERTY_CURRENT_MEASURE_DEPTH, + SetSeine.PROPERTY_TARGET_DISCARDED, + SetSeine.PROPERTY_NON_TARGET_DISCARDED, + SetSeine.PROPERTY_SCHOOL_TYPE, + SetSeine.PROPERTY_SONAR_USED, + SetSeine.PROPERTY_TARGET_SAMPLE, + SetSeine.PROPERTY_NON_TARGET_SAMPLE); - registerTopiaBinder(TripLongline.class, builder, EDIT_GEAR_USE_FEATURES_LONGLINE); + registerTopiaBinder(SetSeine.class, builder, EDIT); } { - BinderModelBuilder<GearUseFeaturesLongline, GearUseFeaturesLongline> builder = newBinderBuilder( - GearUseFeaturesLongline.class, - GearUseFeaturesLongline.PROPERTY_COMMENT, - GearUseFeaturesLongline.PROPERTY_GEAR, - GearUseFeaturesLongline.PROPERTY_NUMBER, - GearUseFeaturesLongline.PROPERTY_USED_IN_TRIP); + BinderModelBuilder<SchoolEstimate, SchoolEstimate> builder = newBinderBuilder( + SchoolEstimate.class, + SchoolEstimate.PROPERTY_SET_SEINE, + SchoolEstimate.PROPERTY_SPECIES, + SchoolEstimate.PROPERTY_TOTAL_WEIGHT, + SchoolEstimate.PROPERTY_MEAN_WEIGHT); - registerTopiaBinder(GearUseFeaturesLongline.class, builder, EDIT); + registerTopiaBinder(SchoolEstimate.class, builder, EDIT); } { + BinderModelBuilder<SetSeine, SetSeine> builder = newBinderBuilder( + SetSeine.class, + SetSeine.PROPERTY_SCHOOL_ESTIMATE, + SetSeine.PROPERTY_COMMENT); - BinderModelBuilder<GearUseFeaturesMeasurementLongline, GearUseFeaturesMeasurementLongline> builder = - newBinderBuilder(GearUseFeaturesMeasurementLongline.class, - GearUseFeaturesMeasurementLongline.PROPERTY_GEAR_CARACTERISTIC, - GearUseFeaturesMeasurementLongline.PROPERTY_MEASUREMENT_VALUE); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetSeine.PROPERTY_SCHOOL_ESTIMATE); - registerTopiaBinder(GearUseFeaturesMeasurementLongline.class, builder, EDIT); + registerTopiaBinder(SetSeine.class, builder, EDIT_SCHOOL_ESTIMATE); } { - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_HOOKS_COMPOSITION); - - registerTopiaBinder(SetLongline.class, builder, EDIT_HOOKS_COMPOSITION); + BinderModelBuilder<ActivitySeine, ActivitySeine> builder = newBinderBuilder( + ActivitySeine.class, + ActivitySeine.PROPERTY_QUADRANT, + ActivitySeine.PROPERTY_LATITUDE, + ActivitySeine.PROPERTY_LONGITUDE, + ActivitySeine.PROPERTY_TIME, + ActivitySeine.PROPERTY_SEA_SURFACE_TEMPERATURE, + ActivitySeine.PROPERTY_REASON_FOR_NO_FISHING, + ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, + ActivitySeine.PROPERTY_WIND, + ActivitySeine.PROPERTY_OPEN); + registerTopiaBinder(ActivitySeine.class, builder, EDIT); } { - BinderModelBuilder<HooksComposition, HooksComposition> builder = newBinderBuilder( - HooksComposition.class, - HooksComposition.PROPERTY_HOOK_TYPE, - HooksComposition.PROPERTY_HOOK_SIZE, - HooksComposition.PROPERTY_HOOK_OFFSET, - HooksComposition.PROPERTY_PROPORTION); + BinderModelBuilder<Route, Route> builder = newBinderBuilder( + Route.class, + Route.PROPERTY_DATE, + Route.PROPERTY_START_LOG_VALUE, + Route.PROPERTY_END_LOG_VALUE, + Route.PROPERTY_CHECK_LEVEL, + Route.PROPERTY_ACTIVITY_SEINE, + Route.PROPERTY_OPEN, + Route.PROPERTY_COMMENT); - registerTopiaBinder(HooksComposition.class, builder, EDIT); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, Route.PROPERTY_ACTIVITY_SEINE); + + registerTopiaBinder(Route.class, builder, EDIT); } { - BinderModelBuilder<ActivityLongline, ActivityLongline> builder = newBinderBuilder( - ActivityLongline.class, - ActivityLongline.PROPERTY_SENSOR_USED, ActivityLongline.PROPERTY_COMMENT); + BinderModelBuilder<Route, Route> builder = newBinderBuilder( + Route.class, + Route.PROPERTY_DATE, + Route.PROPERTY_OPEN); - registerTopiaBinder(ActivityLongline.class, builder, EDIT_SENSOR_USED); + registerTopiaBinder(Route.class, builder, DISPLAY); } { + BinderModelBuilder<FloatingObject, FloatingObject> builder = newBinderBuilder( + FloatingObject.class, + FloatingObject.PROPERTY_OBJECT_SCHOOL_ESTIMATE, + FloatingObject.PROPERTY_COMMENT); - BinderModelBuilder<SensorUsed, SensorUsed> builder = newBinderBuilder( - SensorUsed.class, - SensorUsed.PROPERTY_DATA, - SensorUsed.PROPERTY_DATA_FILENAME, - SensorUsed.PROPERTY_DATA_LOCATION, - SensorUsed.PROPERTY_SENSOR_SERIAL_NO, - SensorUsed.PROPERTY_SENSOR_TYPE, - SensorUsed.PROPERTY_SENSOR_BRAND, - SensorUsed.PROPERTY_SENSOR_DATA_FORMAT); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, FloatingObject.PROPERTY_OBJECT_SCHOOL_ESTIMATE); - registerTopiaBinder(SensorUsed.class, builder, EDIT); + registerTopiaBinder(FloatingObject.class, builder, EDIT_OBJECT_SCHOOL_ESTIMATE); } { - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_COMMENT, + BinderModelBuilder<ObjectSchoolEstimate, ObjectSchoolEstimate> builder = newBinderBuilder( + ObjectSchoolEstimate.class, + ObjectSchoolEstimate.PROPERTY_SPECIES, + ObjectSchoolEstimate.PROPERTY_TOTAL_WEIGHT); - // setting tab - SetLongline.PROPERTY_HOME_ID, - SetLongline.PROPERTY_NUMBER, + registerTopiaBinder(ObjectSchoolEstimate.class, builder, EDIT); - 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, + BinderModelBuilder<ObjectObservedSpecies, ObjectObservedSpecies> builder = newBinderBuilder( + ObjectObservedSpecies.class, + ObjectObservedSpecies.PROPERTY_SPECIES, + ObjectObservedSpecies.PROPERTY_SPECIES_STATUS, + ObjectObservedSpecies.PROPERTY_COUNT); - // hauling tab - SetLongline.PROPERTY_HAULING_DIRECTION_SAME_AS_SETTING, + registerTopiaBinder(ObjectObservedSpecies.class, builder, EDIT); - 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); + BinderModelBuilder<FloatingObject, FloatingObject> builder = newBinderBuilder( + FloatingObject.class, + FloatingObject.PROPERTY_OBJECT_OBSERVED_SPECIES, + FloatingObject.PROPERTY_COMMENT); - registerTopiaBinder(SetLongline.class, builder, EDIT); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, FloatingObject.PROPERTY_OBJECT_OBSERVED_SPECIES); + + registerTopiaBinder(FloatingObject.class, builder, EDIT_OBJECT_OBSERVED_SPECIES); } { - BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_TDR, - SetLongline.PROPERTY_SETTING_START_TIME_STAMP, - SetLongline.PROPERTY_SETTING_END_TIME_STAMP, - SetLongline.PROPERTY_HAULING_START_TIME_STAMP, - SetLongline.PROPERTY_HAULING_END_TIME_STAMP); + BinderModelBuilder<FloatingObject, FloatingObject> builder = newBinderBuilder( + FloatingObject.class, + FloatingObject.PROPERTY_OBJECT_TYPE, + FloatingObject.PROPERTY_OBJECT_FATE, + FloatingObject.PROPERTY_OBJECT_OPERATION, + FloatingObject.PROPERTY_COMMENT, + FloatingObject.PROPERTY_SUPPORT_VESSEL_NAME, + FloatingObject.PROPERTY_DAYS_AT_SEA_COUNT); - registerTopiaBinder(SetLongline.class, builder, EDIT_TDR); + registerTopiaBinder(FloatingObject.class, builder, EDIT); } { - BinderModelBuilder<Tdr, Tdr> builder = newBinderBuilder( - Tdr.class, - // caracteristics tab - Tdr.PROPERTY_HOME_ID, - Tdr.PROPERTY_SERIAL_NO, - Tdr.PROPERTY_SENSOR_BRAND, - Tdr.PROPERTY_DATA, - Tdr.PROPERTY_DATA_FILENAME, - Tdr.PROPERTY_DATA_LOCATION, + BinderModelBuilder<FloatingObject, FloatingObject> builder = newBinderBuilder( + FloatingObject.class, + FloatingObject.PROPERTY_OBJECT_OPERATION, + FloatingObject.PROPERTY_COMMENT); - // localisation tab - Tdr.PROPERTY_SECTION, - Tdr.PROPERTY_BASKET, - Tdr.PROPERTY_BRANCHLINE, - Tdr.PROPERTY_ITEM_HORIZONTAL_POSITION, - Tdr.PROPERTY_ITEM_VERTICAL_POSITION, - Tdr.PROPERTY_FLOATLINE1_LENGTH, - Tdr.PROPERTY_FLOATLINE2_LENGTH, + registerTopiaBinder(FloatingObject.class, builder, EDIT_OBJECT_OPERATION); - // timestamp tab - Tdr.PROPERTY_DEPLOYEMENT_START, - Tdr.PROPERTY_DEPLOYEMENT_START_DATE, - Tdr.PROPERTY_DEPLOYEMENT_START_TIME, - Tdr.PROPERTY_DEPLOYEMENT_END, - Tdr.PROPERTY_DEPLOYEMENT_END_DATE, - Tdr.PROPERTY_DEPLOYEMENT_END_TIME, - Tdr.PROPERTY_FISHING_START, - Tdr.PROPERTY_FISHING_START_DATE, - Tdr.PROPERTY_FISHING_START_TIME, - Tdr.PROPERTY_FISHING_END, - Tdr.PROPERTY_FISHING_END_DATE, - Tdr.PROPERTY_FISHING_END_TIME, + } - // key data tab - Tdr.PROPERTY_FISHING_START_DEPTH, - Tdr.PROPERTY_FISHING_END_DEPTH, - Tdr.PROPERTY_MEAN_DEPLOYEMENT_DEPTH, - Tdr.PROPERTY_MEDIAN_DEPLOYEMENT_DEPTH, - Tdr.PROPERTY_MEAN_FISHING_DEPTH, - Tdr.PROPERTY_MEDIAN_FISHING_DEPTH, - Tdr.PROPERTY_MIN_FISHING_DEPTH, - Tdr.PROPERTY_MAX_FISHING_DEPTH, + { - // species tab - Tdr.PROPERTY_SPECIES); + BinderModelBuilder<ActivitySeine, ActivitySeine> builder = newBinderBuilder( + ActivitySeine.class, + ActivitySeine.PROPERTY_OBSERVED_SYSTEM, + ActivitySeine.PROPERTY_SET_SEINE, + ActivitySeine.PROPERTY_COMMENT, + ActivitySeine.PROPERTY_OBSERVED_SYSTEM_DISTANCE); - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, Tdr.PROPERTY_SPECIES); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivitySeine.PROPERTY_OBSERVED_SYSTEM); - registerTopiaBinder(Tdr.class, builder, EDIT); + registerTopiaBinder(ActivitySeine.class, builder, EDIT_OBSERVED_SYSTEM); } - { - BinderModelBuilder<TripLongline, TripLongline> builder = 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); + BinderModelBuilder<NonTargetLength, NonTargetLength> builder = newBinderBuilder( + NonTargetLength.class, + NonTargetLength.PROPERTY_SPECIES, + NonTargetLength.PROPERTY_LENGTH, + NonTargetLength.PROPERTY_LENGTH_SOURCE, + NonTargetLength.PROPERTY_WEIGHT, + NonTargetLength.PROPERTY_WEIGHT_SOURCE, + NonTargetLength.PROPERTY_SEX, + NonTargetLength.PROPERTY_COUNT, + NonTargetLength.PROPERTY_ACQUISITION_MODE, + NonTargetLength.PROPERTY_PICTURES_REFERENCES); - registerTopiaBinder(TripLongline.class, builder, EDIT); + registerTopiaBinder(NonTargetLength.class, builder, EDIT); } { - BinderModelBuilder<TripLongline, TripLongline> builder = newBinderBuilder( - TripLongline.class, - TripLongline.PROPERTY_START_DATE, - TripLongline.PROPERTY_END_DATE, - TripLongline.PROPERTY_OPEN, - TripLongline.PROPERTY_OBSERVER, - TripLongline.PROPERTY_VESSEL, - TripLongline.PROPERTY_PROGRAM); + BinderModelBuilder<NonTargetSample, NonTargetSample> builder = newBinderBuilder( + NonTargetSample.class, + NonTargetSample.PROPERTY_NON_TARGET_LENGTH, + NonTargetSample.PROPERTY_COMMENT); - registerTopiaBinder(TripLongline.class, builder, DISPLAY); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, NonTargetSample.PROPERTY_NON_TARGET_LENGTH); + + registerTopiaBinder(NonTargetSample.class, builder, EDIT_NON_TARGET_LENGTH); } { - BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( - TripSeine.class, - TripSeine.PROPERTY_START_DATE, - TripSeine.PROPERTY_END_DATE, - TripSeine.PROPERTY_FORMS_URL, - TripSeine.PROPERTY_REPORTS_URL, - TripSeine.PROPERTY_COMMENT, - TripSeine.PROPERTY_VESSEL, - TripSeine.PROPERTY_OBSERVER, - TripSeine.PROPERTY_CAPTAIN, - TripSeine.PROPERTY_DATA_ENTRY_OPERATOR, - TripSeine.PROPERTY_OCEAN, - TripSeine.PROPERTY_DEPARTURE_HARBOUR, - TripSeine.PROPERTY_LANDING_HARBOUR, - TripSeine.PROPERTY_PROGRAM, - TripSeine.PROPERTY_ROUTE, - TripSeine.PROPERTY_ERS_ID, - TripSeine.PROPERTY_OPEN); + BinderModelBuilder<NonTargetSample, NonTargetSample> builder = newBinderBuilder( + NonTargetSample.class, + NonTargetSample.PROPERTY_NON_TARGET_LENGTH, + NonTargetSample.PROPERTY_COMMENT); - registerTopiaBinder(TripSeine.class, builder, EDIT); + registerTopiaBinder(NonTargetSample.class, builder, EDIT); } { - BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( - TripSeine.class, - TripSeine.PROPERTY_START_DATE, - TripSeine.PROPERTY_END_DATE, - TripSeine.PROPERTY_OPEN, - TripSeine.PROPERTY_OBSERVER, - TripSeine.PROPERTY_VESSEL, - TripSeine.PROPERTY_PROGRAM); + BinderModelBuilder<ActivitySeine, ActivitySeine> activitySeineBuilder = newBinderBuilder( + ActivitySeine.class, + ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, + ActivitySeine.PROPERTY_TIME, + ActivitySeine.PROPERTY_OPEN); - registerTopiaBinder(TripSeine.class, builder, DISPLAY); + TopiaEntityBinder<ActivitySeine> activitySeineBinder = registerTopiaBinder(ActivitySeine.class, activitySeineBuilder, DISPLAY_LIST); + + BinderModelBuilder<Route, Route> routeBuilder = newBinderBuilder( + Route.class, + Route.PROPERTY_OPEN, + Route.PROPERTY_ACTIVITY_SEINE); + + routeBuilder.addCollectionBinder(activitySeineBinder, Route.PROPERTY_ACTIVITY_SEINE); + + registerTopiaBinder(Route.class, routeBuilder, DISPLAY_LIST); } { - BinderModelBuilder<TargetLength, TargetLength> builder = newBinderBuilder( - TargetLength.class, - TargetLength.PROPERTY_TARGET_SAMPLE, - TargetLength.PROPERTY_SPECIES, - TargetLength.PROPERTY_LENGTH, - TargetLength.PROPERTY_LENGTH_SOURCE, - TargetLength.PROPERTY_WEIGHT, - TargetLength.PROPERTY_WEIGHT_SOURCE, - TargetLength.PROPERTY_COUNT, - TargetLength.PROPERTY_MEASURE_TYPE, - TargetLength.PROPERTY_ACQUISITION_MODE); + BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( + TripSeine.class, + TripSeine.PROPERTY_OPEN, + TripSeine.PROPERTY_ROUTE); - registerTopiaBinder(TargetLength.class, builder, EDIT); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_ROUTE); + + registerTopiaBinder(TripSeine.class, builder, DISPLAY_LIST); } { - BinderModelBuilder<TargetSample, TargetSample> builder = newBinderBuilder( - TargetSample.class, - TargetSample.PROPERTY_TARGET_LENGTH, - TargetSample.PROPERTY_COMMENT); + BinderModelBuilder<Program, Program> builder = newBinderBuilder( + Program.class, + Program.PROPERTY_LABEL1, + Program.PROPERTY_LABEL2, + Program.PROPERTY_LABEL3, + Program.PROPERTY_LABEL4, + Program.PROPERTY_LABEL5, + Program.PROPERTY_LABEL6, + Program.PROPERTY_LABEL7, + Program.PROPERTY_LABEL8); - registerTopiaBinder(TargetSample.class, builder, EDIT_TARGET_LENGTH); + registerTopiaBinder(Program.class, builder, DISPLAY_LIST); } { - BinderModelBuilder<TargetSample, TargetSample> builder = newBinderBuilder( - TargetSample.class, - TargetSample.PROPERTY_TARGET_LENGTH, - TargetSample.PROPERTY_COMMENT); - - registerTopiaBinder(TargetSample.class, builder, EDIT); + BinderModelBuilder<NonTargetCatch, NonTargetCatch> builder = newBinderBuilder( + NonTargetCatch.class, + NonTargetCatch.PROPERTY_SPECIES, + NonTargetCatch.PROPERTY_CATCH_WEIGHT, + NonTargetCatch.PROPERTY_TOTAL_COUNT, + NonTargetCatch.PROPERTY_MEAN_WEIGHT, + NonTargetCatch.PROPERTY_MEAN_LENGTH, + NonTargetCatch.PROPERTY_REASON_FOR_DISCARD, + NonTargetCatch.PROPERTY_SPECIES_FATE, + NonTargetCatch.PROPERTY_TOTAL_COUNT_COMPUTED_SOURCE, + NonTargetCatch.PROPERTY_MEAN_WEIGHT_COMPUTED_SOURCE, + NonTargetCatch.PROPERTY_CATCH_WEIGHT_COMPUTED_SOURCE, + NonTargetCatch.PROPERTY_MEAN_LENGTH_COMPUTED_SOURCE, + NonTargetCatch.PROPERTY_COMMENT); + + registerTopiaBinder(NonTargetCatch.class, builder, EDIT); } @@ -641,254 +674,733 @@ public class BinderService { BinderModelBuilder<SetSeine, SetSeine> builder = newBinderBuilder( SetSeine.class, - SetSeine.PROPERTY_COMMENT, - SetSeine.PROPERTY_SUPPORT_VESSEL_NAME, - SetSeine.PROPERTY_START_TIME, - SetSeine.PROPERTY_END_SET_TIME_STAMP, - SetSeine.PROPERTY_END_PURSING_TIME_STAMP, - SetSeine.PROPERTY_CURRENT_DIRECTION, - SetSeine.PROPERTY_CURRENT_SPEED, - SetSeine.PROPERTY_REASON_FOR_NULL_SET, - SetSeine.PROPERTY_SCHOOL_THICKNESS, - SetSeine.PROPERTY_MAX_GEAR_DEPTH, - SetSeine.PROPERTY_SCHOOL_MEAN_DEPTH, - SetSeine.PROPERTY_SCHOOL_TOP_DEPTH, - SetSeine.PROPERTY_CURRENT_MEASURE_DEPTH, - SetSeine.PROPERTY_TARGET_DISCARDED, - SetSeine.PROPERTY_NON_TARGET_DISCARDED, - SetSeine.PROPERTY_SCHOOL_TYPE, - SetSeine.PROPERTY_SONAR_USED, - SetSeine.PROPERTY_TARGET_SAMPLE, - SetSeine.PROPERTY_NON_TARGET_SAMPLE); + SetSeine.PROPERTY_NON_TARGET_CATCH, + SetSeine.PROPERTY_NON_TARGET_DISCARDED); - registerTopiaBinder(SetSeine.class, builder, EDIT); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetSeine.PROPERTY_NON_TARGET_CATCH); + + registerTopiaBinder(SetSeine.class, builder, EDIT_NON_TARGET_CATCH); } { - BinderModelBuilder<SchoolEstimate, SchoolEstimate> builder = newBinderBuilder( - SchoolEstimate.class, - SchoolEstimate.PROPERTY_SET_SEINE, - SchoolEstimate.PROPERTY_SPECIES, - SchoolEstimate.PROPERTY_TOTAL_WEIGHT, - SchoolEstimate.PROPERTY_MEAN_WEIGHT); + BinderModelBuilder<TargetCatch, TargetCatch> builder = newBinderBuilder( + TargetCatch.class, + TargetCatch.PROPERTY_SET_SEINE, + TargetCatch.PROPERTY_WEIGHT_CATEGORY, + TargetCatch.PROPERTY_CATCH_WEIGHT, + TargetCatch.PROPERTY_WELL, + TargetCatch.PROPERTY_BROUGHT_ON_DECK, + TargetCatch.PROPERTY_DISCARDED, + TargetCatch.PROPERTY_COMMENT); - registerTopiaBinder(SchoolEstimate.class, builder, EDIT); + registerTopiaBinder(TargetCatch.class, builder, EDIT_TARGET_CATCH); } { BinderModelBuilder<SetSeine, SetSeine> builder = newBinderBuilder( SetSeine.class, - SetSeine.PROPERTY_COMMENT, - SetSeine.PROPERTY_SCHOOL_ESTIMATE); + SetSeine.PROPERTY_TARGET_CATCH); - registerTopiaBinder(SetSeine.class, builder, EDIT_SCHOOL_ESTIMATE); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetSeine.PROPERTY_TARGET_CATCH); + + registerTopiaBinder(SetSeine.class, builder, EDIT_TARGET_CATCH); } { - BinderModelBuilder<ActivitySeine, ActivitySeine> builder = newBinderBuilder( - ActivitySeine.class, - ActivitySeine.PROPERTY_QUADRANT, - ActivitySeine.PROPERTY_LATITUDE, - ActivitySeine.PROPERTY_LONGITUDE, - ActivitySeine.PROPERTY_TIME, - ActivitySeine.PROPERTY_SEA_SURFACE_TEMPERATURE, - ActivitySeine.PROPERTY_REASON_FOR_NO_FISHING, - ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, - ActivitySeine.PROPERTY_WIND, - ActivitySeine.PROPERTY_OPEN); + BinderModelBuilder<TargetCatch, TargetCatch> builder = newBinderBuilder( + TargetCatch.class, + TargetCatch.PROPERTY_SET_SEINE, + TargetCatch.PROPERTY_WEIGHT_CATEGORY, + TargetCatch.PROPERTY_CATCH_WEIGHT, + TargetCatch.PROPERTY_REASON_FOR_DISCARD, + TargetCatch.PROPERTY_DISCARDED, + TargetCatch.PROPERTY_BROUGHT_ON_DECK, + TargetCatch.PROPERTY_COMMENT); + + registerTopiaBinder(TargetCatch.class, builder, EDIT_DISCARD_TARGET_CATCH); - registerTopiaBinder(ActivitySeine.class, builder, EDIT); } { + BinderModelBuilder<SetSeine, SetSeine> builder = newBinderBuilder( + SetSeine.class, + SetSeine.PROPERTY_TARGET_CATCH); - BinderModelBuilder<Route, Route> builder = newBinderBuilder( - Route.class, - Route.PROPERTY_DATE, - Route.PROPERTY_START_LOG_VALUE, - Route.PROPERTY_END_LOG_VALUE, - Route.PROPERTY_CHECK_LEVEL, - Route.PROPERTY_ACTIVITY_SEINE, - Route.PROPERTY_OPEN, - Route.PROPERTY_COMMENT); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, Route.PROPERTY_ACTIVITY_SEINE); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetSeine.PROPERTY_TARGET_CATCH); - registerTopiaBinder(Route.class, builder, EDIT); + registerTopiaBinder(SetSeine.class, builder, EDIT_DISCARD_TARGET_CATCH); } + { - BinderModelBuilder<Route, Route> builder = newBinderBuilder( - Route.class, - Route.PROPERTY_DATE, - Route.PROPERTY_OPEN); + BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( + TripSeine.class, + TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE); - registerTopiaBinder(Route.class, builder, DISPLAY); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE); + + registerTopiaBinder(TripSeine.class, builder, EDIT_GEAR_USE_FEATURES_SEINE); } { - BinderModelBuilder<FloatingObject, FloatingObject> builder = newBinderBuilder( - FloatingObject.class, - FloatingObject.PROPERTY_OBJECT_SCHOOL_ESTIMATE, - FloatingObject.PROPERTY_COMMENT); - registerTopiaBinder(FloatingObject.class, builder, EDIT_OBJECT_SCHOOL_ESTIMATE); + BinderModelBuilder<TripSeine, TripSeine> builder = newBinderBuilder( + TripSeine.class, + TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE); + + registerTopiaBinder(TripSeine.class, builder, EDIT_GEAR_USE_FEATURES_SEINE); } { - BinderModelBuilder<ObjectSchoolEstimate, ObjectSchoolEstimate> builder = newBinderBuilder( - ObjectSchoolEstimate.class, - ObjectSchoolEstimate.PROPERTY_SPECIES, - ObjectSchoolEstimate.PROPERTY_TOTAL_WEIGHT); + BinderModelBuilder<GearUseFeaturesSeine, GearUseFeaturesSeine> builder = newBinderBuilder( + GearUseFeaturesSeine.class, + GearUseFeaturesSeine.PROPERTY_COMMENT, + GearUseFeaturesSeine.PROPERTY_GEAR, + GearUseFeaturesSeine.PROPERTY_NUMBER, + GearUseFeaturesSeine.PROPERTY_USED_IN_TRIP); - registerTopiaBinder(ObjectSchoolEstimate.class, builder, EDIT); + registerTopiaBinder(GearUseFeaturesSeine.class, builder, EDIT); } { - BinderModelBuilder<ObjectObservedSpecies, ObjectObservedSpecies> builder = newBinderBuilder( - ObjectObservedSpecies.class, - ObjectObservedSpecies.PROPERTY_SPECIES, - ObjectObservedSpecies.PROPERTY_SPECIES_STATUS, - ObjectObservedSpecies.PROPERTY_COUNT); + BinderModelBuilder<GearUseFeaturesMeasurementSeine, GearUseFeaturesMeasurementSeine> builder = + newBinderBuilder(GearUseFeaturesMeasurementSeine.class, + GearUseFeaturesMeasurementSeine.PROPERTY_GEAR_CARACTERISTIC, + GearUseFeaturesMeasurementSeine.PROPERTY_MEASUREMENT_VALUE); - registerTopiaBinder(ObjectObservedSpecies.class, builder, EDIT); + registerTopiaBinder(GearUseFeaturesMeasurementSeine.class, builder, EDIT); } - { - - BinderModelBuilder<FloatingObject, FloatingObject> builder = newBinderBuilder( - FloatingObject.class, - FloatingObject.PROPERTY_OBJECT_OBSERVED_SPECIES, - FloatingObject.PROPERTY_COMMENT); - registerTopiaBinder(FloatingObject.class, builder, EDIT_OBJECT_OBSERVED_SPECIES); + } - } + protected static void registerLonglineBinders() { { - BinderModelBuilder<NonTargetLength, NonTargetLength> builder = newBinderBuilder( - NonTargetLength.class, - NonTargetLength.PROPERTY_SPECIES, - NonTargetLength.PROPERTY_LENGTH, - NonTargetLength.PROPERTY_LENGTH_SOURCE, - NonTargetLength.PROPERTY_WEIGHT, - NonTargetLength.PROPERTY_WEIGHT_SOURCE, - NonTargetLength.PROPERTY_SEX, - NonTargetLength.PROPERTY_COUNT, - NonTargetLength.PROPERTY_ACQUISITION_MODE, - NonTargetLength.PROPERTY_PICTURES_REFERENCES); - - registerTopiaBinder(NonTargetLength.class, builder, EDIT); + BinderModelBuilder<Branchline, Branchline> builder = newBinderBuilder( + Branchline.class, + Branchline.PROPERTY_COMMENT, + + // general tab + Branchline.PROPERTY_TOP_TYPE, + Branchline.PROPERTY_TRACELINE_TYPE, + Branchline.PROPERTY_DEPTH_RECORDER, + Branchline.PROPERTY_HOOK_LOST, + Branchline.PROPERTY_TRACE_CUT_OFF, + Branchline.PROPERTY_WEIGHTED_SWIVEL, + Branchline.PROPERTY_SWIVEL_WEIGHT, + Branchline.PROPERTY_WEIGHTED_SNAP, + Branchline.PROPERTY_SNAP_WEIGHT, + Branchline.PROPERTY_BAIT_TYPE, + Branchline.PROPERTY_TIMER, + Branchline.PROPERTY_TIME_SINCE_CONTACT, + Branchline.PROPERTY_TIMER_TIME_ON_BOARD, + + // hook and bait tab + Branchline.PROPERTY_HOOK_TYPE, + Branchline.PROPERTY_HOOK_SIZE, + Branchline.PROPERTY_HOOK_OFFSET, + Branchline.PROPERTY_BAIT_SETTING_STATUS, + Branchline.PROPERTY_BAIT_HAULING_STATUS + + ); + + registerTopiaBinder(Branchline.class, builder, EDIT); } { - BinderModelBuilder<NonTargetSample, NonTargetSample> builder = newBinderBuilder( - NonTargetSample.class, - NonTargetSample.PROPERTY_NON_TARGET_LENGTH, - NonTargetSample.PROPERTY_COMMENT); + BinderModelBuilder<ActivityLongline, ActivityLongline> builder = 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); - registerTopiaBinder(NonTargetSample.class, builder, EDIT_NON_TARGET_LENGTH); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_ENCOUNTER); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_SENSOR_USED); + + registerTopiaBinder(ActivityLongline.class, builder, EDIT); } { - BinderModelBuilder<NonTargetSample, NonTargetSample> builder = newBinderBuilder( - NonTargetSample.class, - NonTargetSample.PROPERTY_NON_TARGET_LENGTH, - NonTargetSample.PROPERTY_COMMENT); - - registerTopiaBinder(NonTargetSample.class, builder, EDIT); + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_BAITS_COMPOSITION); - } + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_BAITS_COMPOSITION); + registerTopiaBinder(SetLongline.class, builder, EDIT_BAITS_COMPOSITION); - } + } - public <E extends TopiaEntity> void copy(Class<E> type, String context, E source, E target) { + { - copy(type, context, source, target, true); + BinderModelBuilder<BaitsComposition, BaitsComposition> builder = newBinderBuilder( + BaitsComposition.class, + BaitsComposition.PROPERTY_BAIT_TYPE, + BaitsComposition.PROPERTY_BAIT_SETTING_STATUS, + BaitsComposition.PROPERTY_INDIVIDUAL_SIZE, + BaitsComposition.PROPERTY_INDIVIDUAL_WEIGHT, + BaitsComposition.PROPERTY_PROPORTION); - } + registerTopiaBinder(BaitsComposition.class, builder, EDIT); - public <E extends TopiaEntity> void copyExcluding(Class<E> type, String context, E source, E target, String... propertyNames) { + } - TopiaEntityBinder<E> binder = getBinder(type, context); + { - binder.copyExcluding(source, target, propertyNames); + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_BRANCHLINES_COMPOSITION); - /* FIXME sbavencoff 29/04/2015 bind techincal fields */ - target.setTopiaId(source.getTopiaId()); - target.setTopiaVersion(source.getTopiaVersion()); - target.setTopiaCreateDate(source.getTopiaCreateDate()); + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_BRANCHLINES_COMPOSITION); - } + registerTopiaBinder(SetLongline.class, builder, EDIT_BRANCHLINES_COMPOSITION); - public <E extends TopiaEntity> void copy(Class<E> type, String context, E source, E target, boolean bindTechnical) { + } - TopiaEntityBinder<E> binder = getBinder(type, context); + { - binder.load(source, target, bindTechnical); + BinderModelBuilder<BranchlinesComposition, BranchlinesComposition> builder = newBinderBuilder( + BranchlinesComposition.class, + BranchlinesComposition.PROPERTY_TOP_TYPE, + BranchlinesComposition.PROPERTY_TRACELINE_TYPE, + BranchlinesComposition.PROPERTY_LENGTH, + BranchlinesComposition.PROPERTY_PROPORTION); - } + registerTopiaBinder(BranchlinesComposition.class, builder, EDIT); - public <E extends TopiaEntity> TopiaEntityBinder<E> getBinder(Class<E> type, String context) { - TopiaEntityBinder<E> binder = getTopiaBinder(type, context); - if (binder == null) { - throw new IllegalArgumentException("Could not find binder for " + type.getName() + "::" + context); } - return binder; - } + { - public static <E extends TopiaEntity> BinderModelBuilder<E, E> newBinderBuilder(Class<E> type, String... properties) { - BinderModelBuilder<E, E> builder = BinderModelBuilder.newEmptyBuilder(type); - builder.addSimpleProperties(properties); - return builder; - } + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_CATCH_LONGLINE); - public <E extends TopiaEntity> TopiaEntityBinder<E> getTopiaBinder(Class<E> entityClass, - String contextName) { - if (ObserveBinderHelper.getCachedBinderModel(entityClass, entityClass, contextName) == null) { + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_CATCH_LONGLINE); + + registerTopiaBinder(SetLongline.class, builder, EDIT_CATCH_LONGLINE); - // we do not want to have auto created binder model by the factory - return null; } - return (TopiaEntityBinder<E>) ObserveBinderHelper.newBinder(entityClass, entityClass, contextName, TopiaEntityBinder.class); - } - public static <E extends TopiaEntity> TopiaEntityBinder<E> registerTopiaBinder(Class<E> entityClass, - BinderModelBuilder<E, E> builder, - String contextName) { - return ObserveBinderHelper.registerTopiaBinder(entityClass, builder, contextName); - } + { - public <E extends TopiaEntity> TopiaEntityBinder<E> getSimpleTopiaBinder(Class<E> entityClass) { - return getTopiaBinder(entityClass, "Observe"); - } + BinderModelBuilder<CatchLongline, CatchLongline> builder = newBinderBuilder( + CatchLongline.class, + CatchLongline.PROPERTY_SPECIES_CATCH, + CatchLongline.PROPERTY_ACQUISITION_MODE, + CatchLongline.PROPERTY_COUNT, + CatchLongline.PROPERTY_CATCH_HEALTHNESS, + CatchLongline.PROPERTY_CATCH_FATE_LONGLINE, + CatchLongline.PROPERTY_DISCARD_HEALTHNESS, + CatchLongline.PROPERTY_DEPREDATED, + CatchLongline.PROPERTY_NUMBER, + CatchLongline.PROPERTY_HOME_ID, + CatchLongline.PROPERTY_HOOK_POSITION, + CatchLongline.PROPERTY_HOOK_WHEN_DISCARDED, + CatchLongline.PROPERTY_MATURITY_STATUS, + CatchLongline.PROPERTY_PHOTO_REFERENCES, + CatchLongline.PROPERTY_SEX, + CatchLongline.PROPERTY_PREDATOR, + CatchLongline.PROPERTY_STOMAC_FULLNESS, + CatchLongline.PROPERTY_TOTAL_WEIGHT, + CatchLongline.PROPERTY_BEAT_DIAMETER, + CatchLongline.PROPERTY_GONADE_WEIGHT, + CatchLongline.PROPERTY_SECTION, + CatchLongline.PROPERTY_BASKET, + CatchLongline.PROPERTY_BRANCHLINE, + CatchLongline.PROPERTY_COMMENT); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, CatchLongline.PROPERTY_PREDATOR); + + registerTopiaBinder(CatchLongline.class, builder, EDIT); - public <E extends TopiaEntity> void simpleCopy(E source, E target, boolean tech) { - Class<E> entityClass = (Class<E>) TopiaEntityHelper.getContractClass(ObserveDAOHelper.getContracts(), target.getClass()); - TopiaEntityBinder<E> binder = getSimpleTopiaBinder(entityClass); - if (binder == null) { - throw new NullPointerException("could not find a simple topia binder of type : " + target.getClass()); } - binder.load(source, target, tech); + + { + + BinderModelBuilder<Branchline, Branchline> builder = 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); + + registerTopiaBinder(Branchline.class, builder, EDIT_CATCH_LONGLINE); + + } + + { + + 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_ENCOUNTER, + ActivityLongline.PROPERTY_COMMENT); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_ENCOUNTER); + + registerTopiaBinder(ActivityLongline.class, builder, EDIT_ENCOUNTER); + + } + + { + + BinderModelBuilder<Encounter, Encounter> builder = newBinderBuilder( + Encounter.class, + Encounter.PROPERTY_SPECIES, + Encounter.PROPERTY_DISTANCE, + Encounter.PROPERTY_COUNT, + Encounter.PROPERTY_ENCOUNTER_TYPE); + + registerTopiaBinder(Encounter.class, builder, EDIT); + + } + + { + + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_FLOATLINES_COMPOSITION); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_FLOATLINES_COMPOSITION); + + registerTopiaBinder(SetLongline.class, builder, EDIT_FLOATLINES_COMPOSITION); + + } + + { + + BinderModelBuilder<FloatlinesComposition, FloatlinesComposition> builder = newBinderBuilder( + FloatlinesComposition.class, + FloatlinesComposition.PROPERTY_LINE_TYPE, + FloatlinesComposition.PROPERTY_LENGTH, + FloatlinesComposition.PROPERTY_PROPORTION); + + + registerTopiaBinder(FloatlinesComposition.class, builder, EDIT); + + } + + { + + BinderModelBuilder<TripLongline, TripLongline> builder = newBinderBuilder( + TripLongline.class, + TripLongline.PROPERTY_GEAR_USE_FEATURES_LONGLINE); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripLongline.PROPERTY_GEAR_USE_FEATURES_LONGLINE); + + registerTopiaBinder(TripLongline.class, builder, EDIT_GEAR_USE_FEATURES_LONGLINE); + + } + + { + + BinderModelBuilder<GearUseFeaturesLongline, GearUseFeaturesLongline> builder = newBinderBuilder( + GearUseFeaturesLongline.class, + GearUseFeaturesLongline.PROPERTY_COMMENT, + GearUseFeaturesLongline.PROPERTY_GEAR, + GearUseFeaturesLongline.PROPERTY_NUMBER, + GearUseFeaturesLongline.PROPERTY_USED_IN_TRIP); + + registerTopiaBinder(GearUseFeaturesLongline.class, builder, EDIT); + + } + + { + + BinderModelBuilder<GearUseFeaturesMeasurementLongline, GearUseFeaturesMeasurementLongline> builder = + newBinderBuilder(GearUseFeaturesMeasurementLongline.class, + GearUseFeaturesMeasurementLongline.PROPERTY_GEAR_CARACTERISTIC, + GearUseFeaturesMeasurementLongline.PROPERTY_MEASUREMENT_VALUE); + + registerTopiaBinder(GearUseFeaturesMeasurementLongline.class, builder, EDIT); + + } + + { + + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_HOOKS_COMPOSITION); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_HOOKS_COMPOSITION); + + registerTopiaBinder(SetLongline.class, builder, EDIT_HOOKS_COMPOSITION); + + } + + { + + BinderModelBuilder<HooksComposition, HooksComposition> builder = newBinderBuilder( + HooksComposition.class, + HooksComposition.PROPERTY_HOOK_TYPE, + HooksComposition.PROPERTY_HOOK_SIZE, + HooksComposition.PROPERTY_HOOK_OFFSET, + HooksComposition.PROPERTY_PROPORTION); + + registerTopiaBinder(HooksComposition.class, builder, EDIT); + + } + + { + + BinderModelBuilder<ActivityLongline, ActivityLongline> builder = newBinderBuilder( + ActivityLongline.class, + ActivityLongline.PROPERTY_SENSOR_USED, + ActivityLongline.PROPERTY_COMMENT); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivityLongline.PROPERTY_SENSOR_USED); + + registerTopiaBinder(ActivityLongline.class, builder, EDIT_SENSOR_USED); + + } + + { + + BinderModelBuilder<SensorUsed, SensorUsed> builder = newBinderBuilder( + SensorUsed.class, + SensorUsed.PROPERTY_DATA, + SensorUsed.PROPERTY_DATA_FILENAME, + SensorUsed.PROPERTY_DATA_LOCATION, + SensorUsed.PROPERTY_SENSOR_SERIAL_NO, + SensorUsed.PROPERTY_SENSOR_TYPE, + SensorUsed.PROPERTY_SENSOR_BRAND, + SensorUsed.PROPERTY_SENSOR_DATA_FORMAT); + + registerTopiaBinder(SensorUsed.class, builder, EDIT); + + } + + { + + BinderModelBuilder<SetLongline, SetLongline> builder = 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); + + registerTopiaBinder(SetLongline.class, builder, EDIT); + + } + + { + + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_TDR, + SetLongline.PROPERTY_SETTING_START_TIME_STAMP, + SetLongline.PROPERTY_SETTING_END_TIME_STAMP, + SetLongline.PROPERTY_HAULING_START_TIME_STAMP, + SetLongline.PROPERTY_HAULING_END_TIME_STAMP); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_TDR); + + registerTopiaBinder(SetLongline.class, builder, EDIT_TDR); + + } + + { + + BinderModelBuilder<Tdr, Tdr> builder = newBinderBuilder( + Tdr.class, + // caracteristics tab + Tdr.PROPERTY_HOME_ID, + Tdr.PROPERTY_SERIAL_NO, + Tdr.PROPERTY_SENSOR_BRAND, + Tdr.PROPERTY_DATA, + Tdr.PROPERTY_DATA_FILENAME, + Tdr.PROPERTY_DATA_LOCATION, + + // localisation tab + Tdr.PROPERTY_SECTION, + Tdr.PROPERTY_BASKET, + Tdr.PROPERTY_BRANCHLINE, + Tdr.PROPERTY_ITEM_HORIZONTAL_POSITION, + Tdr.PROPERTY_ITEM_VERTICAL_POSITION, + Tdr.PROPERTY_FLOATLINE1_LENGTH, + Tdr.PROPERTY_FLOATLINE2_LENGTH, + + // timestamp tab + Tdr.PROPERTY_DEPLOYEMENT_START, + Tdr.PROPERTY_DEPLOYEMENT_START_DATE, + Tdr.PROPERTY_DEPLOYEMENT_START_TIME, + Tdr.PROPERTY_DEPLOYEMENT_END, + Tdr.PROPERTY_DEPLOYEMENT_END_DATE, + Tdr.PROPERTY_DEPLOYEMENT_END_TIME, + Tdr.PROPERTY_FISHING_START, + Tdr.PROPERTY_FISHING_START_DATE, + Tdr.PROPERTY_FISHING_START_TIME, + Tdr.PROPERTY_FISHING_END, + Tdr.PROPERTY_FISHING_END_DATE, + Tdr.PROPERTY_FISHING_END_TIME, + + // key data tab + Tdr.PROPERTY_FISHING_START_DEPTH, + Tdr.PROPERTY_FISHING_END_DEPTH, + Tdr.PROPERTY_MEAN_DEPLOYEMENT_DEPTH, + Tdr.PROPERTY_MEDIAN_DEPLOYEMENT_DEPTH, + Tdr.PROPERTY_MEAN_FISHING_DEPTH, + Tdr.PROPERTY_MEDIAN_FISHING_DEPTH, + Tdr.PROPERTY_MIN_FISHING_DEPTH, + Tdr.PROPERTY_MAX_FISHING_DEPTH, + + // species tab + Tdr.PROPERTY_SPECIES); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, Tdr.PROPERTY_SPECIES); + + registerTopiaBinder(Tdr.class, builder, EDIT); + + } + + { + + BinderModelBuilder<TripLongline, TripLongline> builder = 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); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripLongline.PROPERTY_ACTIVITY_LONGLINE); + + registerTopiaBinder(TripLongline.class, builder, EDIT); + + } + + { + + BinderModelBuilder<TripLongline, TripLongline> builder = newBinderBuilder( + TripLongline.class, + TripLongline.PROPERTY_START_DATE, + TripLongline.PROPERTY_END_DATE, + TripLongline.PROPERTY_OPEN, + TripLongline.PROPERTY_OBSERVER, + TripLongline.PROPERTY_VESSEL, + TripLongline.PROPERTY_PROGRAM); + + registerTopiaBinder(TripLongline.class, builder, DISPLAY); + + } + + { + + BinderModelBuilder<SetLongline, SetLongline> builder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_MITIGATION_TYPE, + SetLongline.PROPERTY_COMMENT); + + builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_MITIGATION_TYPE); + + registerTopiaBinder(SetLongline.class, builder, EDIT_GLOBAL_COMPOSITION); + + } + + { + + BinderModelBuilder<Branchline, Branchline> branchlineBuilder = newBinderBuilder( + Branchline.class, + Branchline.PROPERTY_SETTING_IDENTIFIER, + Branchline.PROPERTY_HAULING_IDENTIFIER, + Branchline.PROPERTY_TRACELINE_LENGTH, + Branchline.PROPERTY_BRANCHLINE_LENGTH, + Branchline.PROPERTY_COMMENT, + Branchline.PROPERTY_TOP_TYPE, + Branchline.PROPERTY_TRACELINE_TYPE, + Branchline.PROPERTY_DEPTH_RECORDER, + Branchline.PROPERTY_HOOK_LOST, + Branchline.PROPERTY_TRACE_CUT_OFF, + Branchline.PROPERTY_WEIGHTED_SWIVEL, + Branchline.PROPERTY_SWIVEL_WEIGHT, + Branchline.PROPERTY_WEIGHTED_SNAP, + Branchline.PROPERTY_SNAP_WEIGHT, + Branchline.PROPERTY_BAIT_TYPE, + Branchline.PROPERTY_BAIT_SETTING_STATUS, + Branchline.PROPERTY_BAIT_HAULING_STATUS, + Branchline.PROPERTY_HOOK_TYPE, + Branchline.PROPERTY_HOOK_SIZE, + Branchline.PROPERTY_HOOK_OFFSET, + Branchline.PROPERTY_TIMER, + Branchline.PROPERTY_TIME_SINCE_CONTACT, + Branchline.PROPERTY_TIMER_TIME_ON_BOARD); + + TopiaEntityBinder<Branchline> branchlineBinder = registerTopiaBinder(Branchline.class, branchlineBuilder, EDIT_DETAIL_COMPOSITION); + + BinderModelBuilder<Basket, Basket> basketBuilder = newBinderBuilder( + Basket.class, + Basket.PROPERTY_BRANCHLINE, + Basket.PROPERTY_SETTING_IDENTIFIER, + Basket.PROPERTY_HAULING_IDENTIFIER, + Basket.PROPERTY_FLOATLINE1_LENGTH, + Basket.PROPERTY_FLOATLINE2_LENGTH); + + basketBuilder.addCollectionBinder(branchlineBinder, Basket.PROPERTY_BRANCHLINE); + + TopiaEntityBinder<Basket> basketBinder = registerTopiaBinder(Basket.class, basketBuilder, EDIT_DETAIL_COMPOSITION); + + BinderModelBuilder<Section, Section> sectionBuilder = newBinderBuilder( + Section.class, + Section.PROPERTY_SET_LONGLINE, + Section.PROPERTY_BASKET, + Section.PROPERTY_SETTING_IDENTIFIER, + Section.PROPERTY_HAULING_IDENTIFIER); + + sectionBuilder.addCollectionBinder(basketBinder, Section.PROPERTY_BASKET); + + TopiaEntityBinder<Section> sectionBinder = registerTopiaBinder(Section.class, sectionBuilder, EDIT_DETAIL_COMPOSITION); + + BinderModelBuilder<SetLongline, SetLongline> setLonglineBuilder = newBinderBuilder( + SetLongline.class, + SetLongline.PROPERTY_SECTION, + SetLongline.PROPERTY_SETTING_START_TIME_STAMP, + SetLongline.PROPERTY_SETTING_END_TIME_STAMP, + SetLongline.PROPERTY_HAULING_START_TIME_STAMP, + SetLongline.PROPERTY_HAULING_END_TIME_STAMP, + SetLongline.PROPERTY_HAULING_DIRECTION_SAME_AS_SETTING, + SetLongline.PROPERTY_HAULING_BREAKS, + SetLongline.PROPERTY_MONITORED, + SetLongline.PROPERTY_TOTAL_SECTIONS_COUNT, + SetLongline.PROPERTY_BASKETS_PER_SECTION_COUNT, + SetLongline.PROPERTY_BRANCHLINES_PER_BASKET_COUNT + ); + setLonglineBuilder.addCollectionBinder(sectionBinder, SetLongline.PROPERTY_SECTION); + + registerTopiaBinder(SetLongline.class, setLonglineBuilder, EDIT_DETAIL_COMPOSITION); + + } + + { + + BinderModelBuilder<ActivityLongline, ActivityLongline> activityLonglineBuilder = newBinderBuilder( + ActivityLongline.class, + ActivityLongline.PROPERTY_VESSEL_ACTIVITY_LONGLINE, + ActivityLongline.PROPERTY_TIME_STAMP, + ActivityLongline.PROPERTY_OPEN); + + TopiaEntityBinder<ActivityLongline> activityLonglineBinder = registerTopiaBinder(ActivityLongline.class, activityLonglineBuilder, DISPLAY_LIST); + + BinderModelBuilder<TripLongline, TripLongline> builder = newBinderBuilder( + TripLongline.class, + TripLongline.PROPERTY_OPEN, + TripLongline.PROPERTY_ACTIVITY_LONGLINE); + + builder.addCollectionBinder(activityLonglineBinder, TripLongline.PROPERTY_ACTIVITY_LONGLINE); + + registerTopiaBinder(TripLongline.class, builder, DISPLAY_LIST); + + } + } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIModel.java index 7c91935..48eb5af 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIModel.java @@ -21,16 +21,14 @@ */ package fr.ird.observe.ui.content; -import fr.ird.observe.BinderService; +import fr.ird.observe.ObserveContext; import fr.ird.observe.ObserveEntityEnum; -import fr.ird.observe.ObserveServiceHelper; import fr.ird.observe.ObserveTechnicalException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.jdesktop.beans.AbstractSerializableBean; import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Le modèle d'un écran d'édition @@ -103,6 +101,24 @@ public abstract class ContentUIModel<E extends TopiaEntity> extends AbstractSeri } + public ContentUIModel(Class<E> beanType, String binderContext) { + this.beanType = beanType; + this.loadBinder = ObserveContext.get().getBinderService().getBinder(beanType, binderContext); + ObserveEntityEnum constant = ObserveEntityEnum.valueOf(beanType); + if (constant != null) { + try { + setBean((E) constant.getImplementation().newInstance()); + } catch (Exception e) { + // ne devrait jamain arrive + if (log.isErrorEnabled()) { + log.error(e); + } + } + } + + } + + public static <E extends TopiaEntity> ContentUIModel<E> newModel(ObserveContentUI<E> ui) { String uiName = ui.getClass().getName(); @@ -122,33 +138,33 @@ public abstract class ContentUIModel<E extends TopiaEntity> extends AbstractSeri public final TopiaEntityBinder<E> getLoadBinder() { - if (loadBinder == null) { - - BinderService binderService = ObserveServiceHelper.get().getBinderService(); - - String binderName = getClass().getName() + "-open"; - TopiaEntityBinder<E> r = binderService.getTopiaBinder(beanType, binderName); - if (r == null) { - - BinderModelBuilder<E, E> builder = createOpeningBinder(binderService, binderName); - - if (builder != null) { - - r = binderService.registerTopiaBinder(beanType, builder, binderName); - - } - - } - - loadBinder = r; - - } +// if (loadBinder == null) { +// +// BinderService binderService = ObserveServiceHelper.get().getBinderService(); +// +// String binderName = getClass().getName() + "-open"; +// TopiaEntityBinder<E> r = binderService.getTopiaBinder(beanType, binderName); +// if (r == null) { +// +// BinderModelBuilder<E, E> builder = createOpeningBinder(binderService, binderName); +// +// if (builder != null) { +// +// r = binderService.registerTopiaBinder(beanType, builder, binderName); +// +// } +// +// } +// +// loadBinder = r; +// +// } return loadBinder; } - protected abstract BinderModelBuilder<E, E> createOpeningBinder(BinderService binderService, String binderName); +// protected abstract BinderModelBuilder<E, E> createOpeningBinder(BinderService binderService, String binderName); public E getBean() { return bean; diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/BranchlineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/BranchlineUIModel.java index 1b7956f..14a6758 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/BranchlineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/BranchlineUIModel.java @@ -26,7 +26,6 @@ import com.google.common.collect.ImmutableSet; import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.Branchline; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.Set; @@ -75,42 +74,7 @@ public class BranchlineUIModel extends ContentUIModel<Branchline> { private boolean hookAndBaitTabValid; public BranchlineUIModel() { - super(Branchline.class); - } - - @Override - protected BinderModelBuilder<Branchline, Branchline> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<Branchline, Branchline> builder = binderService.newBinderBuilder( - Branchline.class, - Branchline.PROPERTY_COMMENT, - - // general tab - Branchline.PROPERTY_TOP_TYPE, - Branchline.PROPERTY_TRACELINE_TYPE, - Branchline.PROPERTY_DEPTH_RECORDER, - Branchline.PROPERTY_HOOK_LOST, - Branchline.PROPERTY_TRACE_CUT_OFF, - Branchline.PROPERTY_WEIGHTED_SWIVEL, - Branchline.PROPERTY_SWIVEL_WEIGHT, - Branchline.PROPERTY_WEIGHTED_SNAP, - Branchline.PROPERTY_SNAP_WEIGHT, - Branchline.PROPERTY_BAIT_TYPE, - Branchline.PROPERTY_TIMER, - Branchline.PROPERTY_TIME_SINCE_CONTACT, - Branchline.PROPERTY_TIMER_TIME_ON_BOARD, - - // hook and bait tab - Branchline.PROPERTY_HOOK_TYPE, - Branchline.PROPERTY_HOOK_SIZE, - Branchline.PROPERTY_HOOK_OFFSET, - Branchline.PROPERTY_BAIT_SETTING_STATUS, - Branchline.PROPERTY_BAIT_HAULING_STATUS - - ); - - return builder; - + super(Branchline.class, BinderService.EDIT); } public Branchline getBranchline() { diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIModel.java index 1ccc090..885296b 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineDetailCompositionUIModel.java @@ -23,14 +23,13 @@ package fr.ird.observe.ui.content.impl.longline; */ import fr.ird.observe.BinderService; -import fr.ird.observe.ObserveServiceHelper; +import fr.ird.observe.ObserveContext; import fr.ird.observe.entities.longline.Basket; 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.ui.content.ContentUIModel; import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 12/5/14. @@ -66,15 +65,19 @@ public class LonglineDetailCompositionUIModel extends ContentUIModel<SetLongline protected boolean branchlineDetailTabValid; - protected TopiaEntityBinder<Section> sectionBinder; + protected final TopiaEntityBinder<Section> sectionBinder; - protected TopiaEntityBinder<Basket> basketBinder; + protected final TopiaEntityBinder<Basket> basketBinder; - protected TopiaEntityBinder<Branchline> branchlineBinder; + protected final TopiaEntityBinder<Branchline> branchlineBinder; public LonglineDetailCompositionUIModel() { - super(SetLongline.class); + super(SetLongline.class, BinderService.EDIT_DETAIL_COMPOSITION); + BinderService binderService = ObserveContext.get().getBinderService(); + this.sectionBinder = binderService.getBinder(Section.class, BinderService.EDIT_DETAIL_COMPOSITION); + this.basketBinder = binderService.getBinder(Basket.class, BinderService.EDIT_DETAIL_COMPOSITION); + this.branchlineBinder = binderService.getBinder(Branchline.class, BinderService.EDIT_DETAIL_COMPOSITION); this.sectionTemplatesTableModel = new SectionTemplatesTableModel(); this.sectionsTableModel = new SectionsTableModel(this); this.basketsTableModel = new BasketsTableModel(this); @@ -143,123 +146,15 @@ public class LonglineDetailCompositionUIModel extends ContentUIModel<SetLongline } public TopiaEntityBinder<Basket> getBasketBinder() { - - if (basketBinder == null) { - - String binderName = getClass().getName() + "-open"; - - BinderService binderService = ObserveServiceHelper.get().getBinderService(); - basketBinder = binderService.getTopiaBinder(Basket.class, binderName); - - if (basketBinder == null) { - - BinderModelBuilder<Basket, Basket> builderBasket = binderService.newBinderBuilder( - Basket.class, - Basket.PROPERTY_BRANCHLINE, - Basket.PROPERTY_SETTING_IDENTIFIER, - Basket.PROPERTY_HAULING_IDENTIFIER, - Basket.PROPERTY_FLOATLINE1_LENGTH, - Basket.PROPERTY_FLOATLINE2_LENGTH); - builderBasket.addCollectionBinder(getBranchlineBinder(), Basket.PROPERTY_BRANCHLINE); - - basketBinder = binderService.registerTopiaBinder(Basket.class, builderBasket, binderName); - - } - - } return basketBinder; } public TopiaEntityBinder<Branchline> getBranchlineBinder() { - if (branchlineBinder == null) { - - String binderName = getClass().getName() + "-open"; - - BinderService binderService = ObserveServiceHelper.get().getBinderService(); - branchlineBinder = binderService.getTopiaBinder(Branchline.class, binderName); - - if (branchlineBinder == null) { - - BinderModelBuilder<Branchline, Branchline> builderBranchline = binderService.newBinderBuilder( - Branchline.class, - Branchline.PROPERTY_SETTING_IDENTIFIER, - Branchline.PROPERTY_HAULING_IDENTIFIER, - Branchline.PROPERTY_TRACELINE_LENGTH, - Branchline.PROPERTY_BRANCHLINE_LENGTH, - Branchline.PROPERTY_COMMENT, - Branchline.PROPERTY_TOP_TYPE, - Branchline.PROPERTY_TRACELINE_TYPE, - Branchline.PROPERTY_DEPTH_RECORDER, - Branchline.PROPERTY_HOOK_LOST, - Branchline.PROPERTY_TRACE_CUT_OFF, - Branchline.PROPERTY_WEIGHTED_SWIVEL, - Branchline.PROPERTY_SWIVEL_WEIGHT, - Branchline.PROPERTY_WEIGHTED_SNAP, - Branchline.PROPERTY_SNAP_WEIGHT, - Branchline.PROPERTY_BAIT_TYPE, - Branchline.PROPERTY_BAIT_SETTING_STATUS, - Branchline.PROPERTY_BAIT_HAULING_STATUS, - Branchline.PROPERTY_HOOK_TYPE, - Branchline.PROPERTY_HOOK_SIZE, - Branchline.PROPERTY_HOOK_OFFSET, - Branchline.PROPERTY_TIMER, - Branchline.PROPERTY_TIME_SINCE_CONTACT, - Branchline.PROPERTY_TIMER_TIME_ON_BOARD); - - branchlineBinder = binderService.registerTopiaBinder(Branchline.class, builderBranchline, binderName); - } - - } return branchlineBinder; } public TopiaEntityBinder<Section> getSectionBinder() { - if (sectionBinder == null) { - - String binderName = getClass().getName() + "-open"; - - BinderService binderService = ObserveServiceHelper.get().getBinderService(); - sectionBinder = binderService.getTopiaBinder(Section.class, binderName); - - if (sectionBinder == null) { - - BinderModelBuilder<Section, Section> builderSection = binderService.newBinderBuilder( - Section.class, - Section.PROPERTY_SET_LONGLINE, - Section.PROPERTY_BASKET, - Section.PROPERTY_SETTING_IDENTIFIER, - Section.PROPERTY_HAULING_IDENTIFIER); - builderSection.addCollectionBinder(getBasketBinder(), Section.PROPERTY_BASKET); - - sectionBinder = binderService.registerTopiaBinder(Section.class, builderSection, binderName); - - } - - } return sectionBinder; } - @Override - protected BinderModelBuilder<SetLongline, SetLongline> createOpeningBinder(BinderService binderService, String binderName) { - - // SetLongline binder - - BinderModelBuilder<SetLongline, SetLongline> builderSetLongline = binderService.newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_SECTION, - SetLongline.PROPERTY_SETTING_START_TIME_STAMP, - SetLongline.PROPERTY_SETTING_END_TIME_STAMP, - SetLongline.PROPERTY_HAULING_START_TIME_STAMP, - SetLongline.PROPERTY_HAULING_END_TIME_STAMP, - SetLongline.PROPERTY_HAULING_DIRECTION_SAME_AS_SETTING, - SetLongline.PROPERTY_HAULING_BREAKS, - SetLongline.PROPERTY_MONITORED, - SetLongline.PROPERTY_TOTAL_SECTIONS_COUNT, - SetLongline.PROPERTY_BASKETS_PER_SECTION_COUNT, - SetLongline.PROPERTY_BRANCHLINES_PER_BASKET_COUNT - ); - builderSetLongline.addCollectionBinder(getSectionBinder(), SetLongline.PROPERTY_SECTION); - return builderSetLongline; - - } } \ No newline at end of file diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIModel.java index 4631e12..219ed5c 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/LonglineGlobalCompositionUIModel.java @@ -25,8 +25,6 @@ package fr.ird.observe.ui.content.impl.longline; import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 12/5/14. @@ -39,20 +37,7 @@ public class LonglineGlobalCompositionUIModel extends ContentUIModel<SetLongline private static final long serialVersionUID = 1L; public LonglineGlobalCompositionUIModel() { - super(SetLongline.class); + super(SetLongline.class, BinderService.EDIT_GLOBAL_COMPOSITION); } - @Override - protected BinderModelBuilder<SetLongline, SetLongline> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<SetLongline, SetLongline> builder = binderService.newBinderBuilder( - SetLongline.class, - SetLongline.PROPERTY_MITIGATION_TYPE, - SetLongline.PROPERTY_COMMENT); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, SetLongline.PROPERTY_MITIGATION_TYPE); - - return builder; - - } } \ No newline at end of file diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java index af4588b..ba14ede 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java @@ -26,7 +26,6 @@ import com.google.common.collect.ImmutableSet; import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.Set; @@ -101,69 +100,7 @@ public class SetLonglineUIModel extends ContentUIModel<SetLongline> { protected boolean haulingTabValid; public SetLonglineUIModel() { - super(SetLongline.class); - } - - @Override - protected BinderModelBuilder<SetLongline, SetLongline> createOpeningBinder(BinderService binderService, String binderName) { - - 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); - - return builder; - + super(SetLongline.class, BinderService.EDIT); } public boolean isHaulingTabValid() { diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIModel.java index 03f67e9..a73702b 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/ActivitySeineObservedSystemUIModel.java @@ -25,7 +25,6 @@ package fr.ird.observe.ui.content.impl.seine; import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.ActivitySeine; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/28/14. @@ -38,21 +37,7 @@ public class ActivitySeineObservedSystemUIModel extends ContentUIModel<ActivityS private static final long serialVersionUID = 1L; public ActivitySeineObservedSystemUIModel() { - super(ActivitySeine.class); - } - - @Override - protected BinderModelBuilder<ActivitySeine, ActivitySeine> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<ActivitySeine, ActivitySeine> builder = binderService.newBinderBuilder( - ActivitySeine.class, - ActivitySeine.PROPERTY_OBSERVED_SYSTEM, - ActivitySeine.PROPERTY_SET_SEINE, - ActivitySeine.PROPERTY_COMMENT, - ActivitySeine.PROPERTY_OBSERVED_SYSTEM_DISTANCE); - - return builder; - + super(ActivitySeine.class, BinderService.EDIT_OBSERVED_SYSTEM); } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIModel.java index 3fe2242..36d6015 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectTransmittingBuoyOperationUIModel.java @@ -25,7 +25,6 @@ package fr.ird.observe.ui.content.impl.seine; import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/28/14. @@ -40,7 +39,7 @@ public class FloatingObjectTransmittingBuoyOperationUIModel extends ContentUIMod // protected TopiaEntityBinder<TransmittingBuoy> childLoador; public FloatingObjectTransmittingBuoyOperationUIModel() { - super(FloatingObject.class); + super(FloatingObject.class, BinderService.EDIT_OBJECT_OPERATION); // String binderName = getClass().getName() + "-open"; // @@ -68,20 +67,7 @@ public class FloatingObjectTransmittingBuoyOperationUIModel extends ContentUIMod } -// public TopiaEntityBinder<TransmittingBuoy> getChildLoador() { -// return childLoador; -// } - - @Override - protected BinderModelBuilder<FloatingObject, FloatingObject> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<FloatingObject, FloatingObject> builder = binderService.newBinderBuilder( - FloatingObject.class, - FloatingObject.PROPERTY_COMMENT, - FloatingObject.PROPERTY_OBJECT_OPERATION - ); - return builder; - - } +// @Override +// protected BinderModelBuilder<FloatingObject, FloatingObject> createOpeningBinder(BinderService binderService, String binderName) { return null; } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIModel.java index 90723e1..c0210df 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/FloatingObjectUIModel.java @@ -25,7 +25,6 @@ package fr.ird.observe.ui.content.impl.seine; import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/28/14. @@ -38,23 +37,7 @@ public class FloatingObjectUIModel extends ContentUIModel<FloatingObject> { private static final long serialVersionUID = 1L; public FloatingObjectUIModel() { - super(FloatingObject.class); - } - - @Override - protected BinderModelBuilder<FloatingObject, FloatingObject> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<FloatingObject, FloatingObject> builder = binderService.newBinderBuilder( - FloatingObject.class, - FloatingObject.PROPERTY_OBJECT_TYPE, - FloatingObject.PROPERTY_OBJECT_FATE, - FloatingObject.PROPERTY_OBJECT_OPERATION, - FloatingObject.PROPERTY_COMMENT, - FloatingObject.PROPERTY_SUPPORT_VESSEL_NAME, - FloatingObject.PROPERTY_DAYS_AT_SEA_COUNT); - - return builder; - + super(FloatingObject.class, BinderService.EDIT); } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIModel.java index 118e103..f613050 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/seine/SetSeineUIModel.java @@ -26,7 +26,6 @@ import com.google.common.collect.ImmutableSet; import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.Set; @@ -70,7 +69,7 @@ public class SetSeineUIModel extends ContentUIModel<SetSeine> { public SetSeineUIModel() { - super(SetSeine.class); + super(SetSeine.class, BinderService.EDIT); } public boolean isMeasurementsTabValid() { @@ -93,33 +92,4 @@ public class SetSeineUIModel extends ContentUIModel<SetSeine> { firePropertyChange(PROPERTY_GENERAL_TAB_VALID, oldValue, generalTabValid); } - @Override - protected BinderModelBuilder<SetSeine, SetSeine> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<SetSeine, SetSeine> builder = binderService.newBinderBuilder( - SetSeine.class, - SetSeine.PROPERTY_COMMENT, - SetSeine.PROPERTY_SUPPORT_VESSEL_NAME, - SetSeine.PROPERTY_START_TIME, - SetSeine.PROPERTY_END_SET_TIME_STAMP, - SetSeine.PROPERTY_END_PURSING_TIME_STAMP, - SetSeine.PROPERTY_CURRENT_DIRECTION, - SetSeine.PROPERTY_CURRENT_SPEED, - SetSeine.PROPERTY_REASON_FOR_NULL_SET, - SetSeine.PROPERTY_SCHOOL_THICKNESS, - SetSeine.PROPERTY_MAX_GEAR_DEPTH, - SetSeine.PROPERTY_SCHOOL_MEAN_DEPTH, - SetSeine.PROPERTY_SCHOOL_TOP_DEPTH, - SetSeine.PROPERTY_CURRENT_MEASURE_DEPTH, - SetSeine.PROPERTY_TARGET_DISCARDED, - SetSeine.PROPERTY_NON_TARGET_DISCARDED, - SetSeine.PROPERTY_SCHOOL_TYPE, - SetSeine.PROPERTY_SONAR_USED, - SetSeine.PROPERTY_TARGET_SAMPLE, - SetSeine.PROPERTY_NON_TARGET_SAMPLE); - - return builder; - - } - } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/ContentListUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/ContentListUIModel.java index 4ec81be..b8fce79 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/ContentListUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/ContentListUIModel.java @@ -21,6 +21,7 @@ */ package fr.ird.observe.ui.content.list; +import fr.ird.observe.BinderService; import fr.ird.observe.ui.content.ContentUIModel; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -62,7 +63,7 @@ public abstract class ContentListUIModel<E extends TopiaEntity, C extends TopiaE protected boolean canReopen; public ContentListUIModel(Class<E> beanType, Class<C> childType) { - super(beanType); + super(beanType, BinderService.DISPLAY_LIST); this.childType = childType; } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIModel.java index 5f88dff..742c843 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/ActivityLonglinesUIModel.java @@ -22,12 +22,9 @@ package fr.ird.observe.ui.content.list.impl.longline; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.ui.content.list.ContentListUIModel; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -43,26 +40,4 @@ public class ActivityLonglinesUIModel extends ContentListUIModel<TripLongline, A super(TripLongline.class, ActivityLongline.class); } - @Override - protected BinderModelBuilder<TripLongline, TripLongline> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<TripLongline, TripLongline> builder = binderService.newBinderBuilder( - TripLongline.class, - TripLongline.PROPERTY_OPEN, - TripLongline.PROPERTY_ACTIVITY_LONGLINE); - - BinderModelBuilder<ActivityLongline, ActivityLongline> builder2 = binderService.newBinderBuilder( - ActivityLongline.class, - ActivityLongline.PROPERTY_VESSEL_ACTIVITY_LONGLINE, - ActivityLongline.PROPERTY_TIME_STAMP, - ActivityLongline.PROPERTY_OPEN); - - TopiaEntityBinder<ActivityLongline> binder = - binderService.registerTopiaBinder(ActivityLongline.class, builder2, binderName); - - builder.addCollectionBinder(binder, TripLongline.PROPERTY_ACTIVITY_LONGLINE); - - return builder; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java index 48d95f4..6f1dfb7 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/longline/TripLonglinesUIModel.java @@ -22,11 +22,9 @@ package fr.ird.observe.ui.content.list.impl.longline; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.ui.content.list.ContentListUIModel; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -42,21 +40,4 @@ public class TripLonglinesUIModel extends ContentListUIModel<Program, TripLongli super(Program.class, TripLongline.class); } - @Override - protected BinderModelBuilder<Program, Program> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<Program, Program> builder = binderService.newBinderBuilder( - Program.class, - Program.PROPERTY_LABEL1, - Program.PROPERTY_LABEL2, - Program.PROPERTY_LABEL3, - Program.PROPERTY_LABEL4, - Program.PROPERTY_LABEL5, - Program.PROPERTY_LABEL6, - Program.PROPERTY_LABEL7, - Program.PROPERTY_LABEL8); - - return builder; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/ActivitySeinesUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/ActivitySeinesUIModel.java index 3036a3d..1c04cf7 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/ActivitySeinesUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/ActivitySeinesUIModel.java @@ -22,12 +22,9 @@ package fr.ird.observe.ui.content.list.impl.seine; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.ActivitySeine; import fr.ird.observe.entities.seine.Route; import fr.ird.observe.ui.content.list.ContentListUIModel; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -43,31 +40,4 @@ public class ActivitySeinesUIModel extends ContentListUIModel<Route, ActivitySei super(Route.class, ActivitySeine.class); } - @Override - protected BinderModelBuilder<Route, Route> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<Route, Route> builder = binderService.newBinderBuilder( - Route.class, - Route.PROPERTY_OPEN, - Route.PROPERTY_ACTIVITY_SEINE); - -// // on ajoute la recopie de l'association route -// builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, -// Route.PROPERTY_ACTIVITY_SEINE -// ); - - BinderModelBuilder<ActivitySeine, ActivitySeine> builder2 = binderService.newBinderBuilder( - ActivitySeine.class, - ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, - ActivitySeine.PROPERTY_TIME, - ActivitySeine.PROPERTY_OPEN); - - TopiaEntityBinder<ActivitySeine> binder = - binderService.registerTopiaBinder(ActivitySeine.class, builder2, binderName); - - builder.addCollectionBinder(binder, Route.PROPERTY_ACTIVITY_SEINE); - - return builder; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/RoutesUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/RoutesUIModel.java index f778002..c61b41a 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/RoutesUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/RoutesUIModel.java @@ -22,12 +22,9 @@ package fr.ird.observe.ui.content.list.impl.seine; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.Route; import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.ui.content.list.ContentListUIModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -43,18 +40,4 @@ public class RoutesUIModel extends ContentListUIModel<TripSeine, Route> { super(TripSeine.class, Route.class); } - @Override - protected BinderModelBuilder<TripSeine, TripSeine> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<TripSeine, TripSeine> builder = binderService.newBinderBuilder( - TripSeine.class, - TripSeine.PROPERTY_OPEN, - TripSeine.PROPERTY_ROUTE); - - // on ajoute la recopie de l'association route - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_ROUTE); - - return builder; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java index af7ca80..7f0db06 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/list/impl/seine/TripSeinesUIModel.java @@ -22,11 +22,9 @@ package fr.ird.observe.ui.content.list.impl.seine; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.ui.content.list.ContentListUIModel; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -42,21 +40,4 @@ public class TripSeinesUIModel extends ContentListUIModel<Program, TripSeine> { super(Program.class, TripSeine.class); } - @Override - protected BinderModelBuilder<Program, Program> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<Program, Program> builder = binderService.newBinderBuilder( - Program.class, - Program.PROPERTY_LABEL1, - Program.PROPERTY_LABEL2, - Program.PROPERTY_LABEL3, - Program.PROPERTY_LABEL4, - Program.PROPERTY_LABEL5, - Program.PROPERTY_LABEL6, - Program.PROPERTY_LABEL7, - Program.PROPERTY_LABEL8); - - return builder; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/ContentOpenableUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/ContentOpenableUIModel.java index 1dc3c7f..706bc41 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/ContentOpenableUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/ContentOpenableUIModel.java @@ -21,6 +21,7 @@ */ package fr.ird.observe.ui.content.open; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.OpenableEntity; import fr.ird.observe.ui.content.ContentUIModel; import org.nuiton.topia.persistence.TopiaEntity; @@ -44,7 +45,7 @@ public abstract class ContentOpenableUIModel<E extends TopiaEntity & OpenableEnt protected boolean historicalData; public ContentOpenableUIModel(Class<E> beanType) { - super(beanType); + super(beanType, BinderService.EDIT); } public boolean isCanReopen() { diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIModel.java index 2450ecc..0bf6360 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/ActivityLonglineUIModel.java @@ -22,11 +22,8 @@ package fr.ird.observe.ui.content.open.impl.longline; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.ui.content.open.ContentOpenableUIModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -42,29 +39,4 @@ public class ActivityLonglineUIModel extends ContentOpenableUIModel<ActivityLong super(ActivityLongline.class); } - @Override - protected BinderModelBuilder<ActivityLongline, ActivityLongline> createOpeningBinder(BinderService binderService, String binderName) { - - 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; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIModel.java index 5152309..24bfaf7 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/longline/TripLonglineUIModel.java @@ -22,11 +22,8 @@ package fr.ird.observe.ui.content.open.impl.longline; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.TripLongline; import fr.ird.observe.ui.content.open.ContentOpenableUIModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -42,32 +39,4 @@ public class TripLonglineUIModel extends ContentOpenableUIModel<TripLongline> { super(TripLongline.class); } - @Override - protected BinderModelBuilder<TripLongline, TripLongline> createOpeningBinder(BinderService binderService, String binderName) { - - 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; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIModel.java index 5a5e851..1088c12 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/ActivitySeineUIModel.java @@ -23,11 +23,8 @@ package fr.ird.observe.ui.content.open.impl.seine; */ import com.google.common.collect.ImmutableSet; -import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.ActivitySeine; import fr.ird.observe.ui.content.open.ContentOpenableUIModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.Set; @@ -92,37 +89,4 @@ public class ActivitySeineUIModel extends ContentOpenableUIModel<ActivitySeine> firePropertyChange(PROPERTY_GENERAL_TAB_VALID, oldValue, generalTabValid); } - @Override - protected BinderModelBuilder<ActivitySeine, ActivitySeine> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<ActivitySeine, ActivitySeine> builder = binderService.newBinderBuilder( - ActivitySeine.class, - ActivitySeine.PROPERTY_QUADRANT, - ActivitySeine.PROPERTY_LATITUDE, - ActivitySeine.PROPERTY_LONGITUDE, - ActivitySeine.PROPERTY_ERS_ID, - ActivitySeine.PROPERTY_TIME, - ActivitySeine.PROPERTY_SEA_SURFACE_TEMPERATURE, - ActivitySeine.PROPERTY_REASON_FOR_NO_FISHING, - ActivitySeine.PROPERTY_COMMENT, - ActivitySeine.PROPERTY_VESSEL_SPEED, - ActivitySeine.PROPERTY_OBSERVED_SYSTEM, - ActivitySeine.PROPERTY_OBSERVED_SYSTEM_DISTANCE, - ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, - ActivitySeine.PROPERTY_SURROUNDING_ACTIVITY, - ActivitySeine.PROPERTY_WIND, - ActivitySeine.PROPERTY_DETECTION_MODE, - ActivitySeine.PROPERTY_SET_SEINE, - ActivitySeine.PROPERTY_FLOATING_OBJECT, - ActivitySeine.PROPERTY_OPEN, - ActivitySeine.PROPERTY_CURRENT_FPA_ZONE, - ActivitySeine.PROPERTY_PREVIOUS_FPA_ZONE, - ActivitySeine.PROPERTY_NEXT_FPA_ZONE); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivitySeine.PROPERTY_OBSERVED_SYSTEM); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, ActivitySeine.PROPERTY_FLOATING_OBJECT); - - return builder; - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIModel.java index 78be644..d135b84 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/RouteUIModel.java @@ -22,12 +22,8 @@ package fr.ird.observe.ui.content.open.impl.seine; * #L% */ -import fr.ird.observe.BinderService; -import fr.ird.observe.entities.seine.ActivitySeine; import fr.ird.observe.entities.seine.Route; import fr.ird.observe.ui.content.open.ContentOpenableUIModel; -import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -43,37 +39,4 @@ public class RouteUIModel extends ContentOpenableUIModel<Route> { super(Route.class); } - @Override - protected BinderModelBuilder<Route, Route> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<Route, Route> builder = binderService.newBinderBuilder( - Route.class, - Route.PROPERTY_DATE, - Route.PROPERTY_START_LOG_VALUE, - Route.PROPERTY_END_LOG_VALUE, - Route.PROPERTY_CHECK_LEVEL, - Route.PROPERTY_ACTIVITY_SEINE, - Route.PROPERTY_OPEN, - Route.PROPERTY_COMMENT); - - BinderModelBuilder<ActivitySeine, ActivitySeine> builder2 = binderService.newBinderBuilder( - ActivitySeine.class, - ActivitySeine.PROPERTY_QUADRANT, - ActivitySeine.PROPERTY_LATITUDE, - ActivitySeine.PROPERTY_LONGITUDE, - ActivitySeine.PROPERTY_TIME, - ActivitySeine.PROPERTY_SEA_SURFACE_TEMPERATURE, - ActivitySeine.PROPERTY_REASON_FOR_NO_FISHING, - ActivitySeine.PROPERTY_VESSEL_ACTIVITY_SEINE, - ActivitySeine.PROPERTY_WIND, - ActivitySeine.PROPERTY_OPEN); - - TopiaEntityBinder<ActivitySeine> binder = - binderService.registerTopiaBinder(ActivitySeine.class, builder2, binderName); - - builder.addCollectionBinder(binder, Route.PROPERTY_ACTIVITY_SEINE); - - return builder; - - } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIModel.java index ddaab6b..c2b10dc 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/open/impl/seine/TripSeineUIModel.java @@ -22,11 +22,8 @@ package fr.ird.observe.ui.content.open.impl.seine; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.TripSeine; import fr.ird.observe.ui.content.open.ContentOpenableUIModel; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/26/14. @@ -42,33 +39,4 @@ public class TripSeineUIModel extends ContentOpenableUIModel<TripSeine> { super(TripSeine.class); } - @Override - protected BinderModelBuilder<TripSeine, TripSeine> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<TripSeine, TripSeine> builder = binderService.newBinderBuilder( - TripSeine.class, - TripSeine.PROPERTY_START_DATE, - TripSeine.PROPERTY_END_DATE, - TripSeine.PROPERTY_FORMS_URL, - TripSeine.PROPERTY_REPORTS_URL, - TripSeine.PROPERTY_COMMENT, - TripSeine.PROPERTY_VESSEL, - TripSeine.PROPERTY_OBSERVER, - TripSeine.PROPERTY_CAPTAIN, - TripSeine.PROPERTY_DATA_ENTRY_OPERATOR, - TripSeine.PROPERTY_OCEAN, - TripSeine.PROPERTY_DEPARTURE_HARBOUR, - TripSeine.PROPERTY_LANDING_HARBOUR, - TripSeine.PROPERTY_PROGRAM, - TripSeine.PROPERTY_ROUTE, - TripSeine.PROPERTY_ERS_ID, - TripSeine.PROPERTY_OPEN); - - // on ajoute la recopie de l'association route - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, TripSeine.PROPERTY_ROUTE); - - return builder; - - } - } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIModel.java index 0ac9b91..519846b 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ContentReferenceUIModel.java @@ -173,6 +173,12 @@ public abstract class ContentReferenceUIModel<E extends ReferenceEntity> extends List<String> bindings = buildDataBindings(useDefault, extraBindings); this.dataBinding = bindings.toArray(new String[bindings.size()]); +// BinderService binderService = ObserveServiceHelper.get().getBinderService(); + BinderModelBuilder<E, E> builder = BinderService.newBinderBuilder(beanType, this.properties); + this.loadBinder = BinderService.registerTopiaBinder(beanType, builder, BinderService.EDIT); + +// this.loadBinder = binderService.getBinder(beanType, BinderService.EDIT); + } @@ -194,20 +200,20 @@ public abstract class ContentReferenceUIModel<E extends ReferenceEntity> extends firePropertyChange(PROPERTY_SELECTED_BEAN, oldvalue, selectedBean); } - @Override - protected BinderModelBuilder<E, E> createOpeningBinder(BinderService binderService, String binderName) { - - BinderModelBuilder<E, E> builder = binderService.newBinderBuilder(beanType, properties); - - if (log.isDebugEnabled()) { - log.debug("new binder [" + getClass().getName() + "#" + - beanType.getName() + "] : " + - Arrays.toString(properties) - ); - } - - return builder; - } +// @Override +// protected BinderModelBuilder<E, E> createOpeningBinder(BinderService binderService, String binderName) { +// +// BinderModelBuilder<E, E> builder = binderService.newBinderBuilder(beanType, properties); +// +// if (log.isDebugEnabled()) { +// log.debug("new binder [" + getClass().getName() + "#" + +// beanType.getName() + "] : " + +// Arrays.toString(properties) +// ); +// } +// +// return builder; +// } /** diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferenceHomeUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferenceHomeUIModel.java index b9c99f6..4fc3b87 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferenceHomeUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/ref/ReferenceHomeUIModel.java @@ -22,10 +22,8 @@ package fr.ird.observe.ui.content.ref; * #L% */ -import fr.ird.observe.BinderService; import fr.ird.observe.entities.referentiel.Program; import fr.ird.observe.ui.content.ContentUIModel; -import org.nuiton.util.beans.BinderModelBuilder; /** * Created on 9/28/14. @@ -41,9 +39,4 @@ public class ReferenceHomeUIModel extends ContentUIModel<Program> { super(Program.class); } - @Override - protected BinderModelBuilder<Program, Program> createOpeningBinder(BinderService binderService, String binderName) { - return null; - } - } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java index f0b6de4..2f6646b 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/ContentTableUIModel.java @@ -32,8 +32,6 @@ import org.apache.commons.logging.LogFactory; import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.util.EntityListUpdator; import org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import javax.swing.DefaultListSelectionModel; import javax.swing.ListSelectionModel; @@ -62,10 +60,6 @@ public abstract class ContentTableUIModel<E extends TopiaEntity, D extends Topia protected final Class<D> childType; - protected final String[] parentProperties; - - protected final String[] childProperties; - private final ListSelectionModel selectionModel; protected D tableEditBean; @@ -89,19 +83,24 @@ public abstract class ContentTableUIModel<E extends TopiaEntity, D extends Topia private ContentTableModel<E, D> tableModel; - private TopiaEntityBinder<D> childLoador; + private final TopiaEntityBinder<D> childLoador; - private EntityListUpdator<E, D> childsUpdator; + private final EntityListUpdator<E, D> childsUpdator; public ContentTableUIModel(Class<E> beanType, Class<D> childType, - String[] parentProperties, - String[] childProperties) { - super(beanType); + String beanBinderContext, + String childBinderContext, + String collectionName) { + super(beanType, beanBinderContext); this.childType = childType; - this.parentProperties = parentProperties; - this.childProperties = childProperties; + this.childsUpdator = EntityListUpdator.newEntityListUpdator(beanType, childType, collectionName); this.selectionModel = new ContentTableListSelectionModel(); + + BinderService binderService = ObserveServiceHelper.get().getBinderService(); + + this.childLoador = binderService.getTopiaBinder(childType, childBinderContext); + } public static <E extends TopiaEntity, D extends TopiaEntity> ContentTableUIModel<E, D> newModel(ObserveContentTableUI<E, D> ui) { @@ -121,44 +120,10 @@ public abstract class ContentTableUIModel<E extends TopiaEntity, D extends Topia } - @Override - protected BinderModelBuilder<E, E> createOpeningBinder(BinderService binderService, String binderName) { - - String[] properties = getParentProperties(); - - BinderModelBuilder<E, E> builder = binderService.newBinderBuilder(getBeanType(), properties); - - // la première propriete est l'association - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, properties[0]); - - return builder; - } - public void initModel(ObserveContentTableUI<E, D> ui, List<ContentTableMeta<D>> metas) { this.tableModel = createTableModel(ui, metas); - this.childsUpdator = EntityListUpdator.newEntityListUpdator( - getBeanType(), - getChildType(), - getParentProperties()[0]); - - - String binderName = getClass().getName() + "-open"; - Class<D> childBeanType = getChildType(); - - BinderService binderService = ObserveServiceHelper.get().getBinderService(); - - childLoador = binderService.getTopiaBinder(childBeanType, binderName); - - if (childLoador == null) { - - BinderModelBuilder<D, D> builder = prepareChildLoador(binderService, binderName); - - childLoador = binderService.registerTopiaBinder(childBeanType, builder, binderName); - - } - } protected ContentTableModel<E, D> createTableModel(ObserveContentTableUI<E, D> ui, List<ContentTableMeta<D>> metas) { @@ -177,14 +142,6 @@ public abstract class ContentTableUIModel<E extends TopiaEntity, D extends Topia return childType; } - public String[] getParentProperties() { - return parentProperties; - } - - public String[] getChildProperties() { - return childProperties; - } - public ContentTableModel<E, D> getTableModel() { return tableModel; } @@ -259,16 +216,6 @@ public abstract class ContentTableUIModel<E extends TopiaEntity, D extends Topia firePropertyChange(PROPERTY_SHOW_DATA, oldValue, showData); } - protected BinderModelBuilder<D, D> prepareChildLoador(BinderService binderService, String binderName) { - - String[] properties = getChildProperties(); - - BinderModelBuilder<D, D> builder = binderService.newBinderBuilder(childType, properties); - - return builder; - - } - /** * Le modèle de sélection pour un tableau. * <p/> diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIModel.java index 45d9795..83131ed 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BaitsCompositionUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.longline; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.BaitsComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -43,13 +44,13 @@ public class BaitsCompositionUIModel extends ContentTableUIModel<SetLongline, Ba public BaitsCompositionUIModel(BaitsCompositionUI ui) { super(SetLongline.class, - BaitsComposition.class, - new String[]{SetLongline.PROPERTY_BAITS_COMPOSITION}, - new String[]{BaitsComposition.PROPERTY_BAIT_TYPE, - BaitsComposition.PROPERTY_BAIT_SETTING_STATUS, - BaitsComposition.PROPERTY_INDIVIDUAL_SIZE, - BaitsComposition.PROPERTY_INDIVIDUAL_WEIGHT, - BaitsComposition.PROPERTY_PROPORTION}); + BaitsComposition.class, BinderService.EDIT_BAITS_COMPOSITION, BinderService.EDIT,SetLongline.PROPERTY_BAITS_COMPOSITION); +// new String[]{SetLongline.PROPERTY_BAITS_COMPOSITION}, +// new String[]{BaitsComposition.PROPERTY_BAIT_TYPE, +// BaitsComposition.PROPERTY_BAIT_SETTING_STATUS, +// BaitsComposition.PROPERTY_INDIVIDUAL_SIZE, +// BaitsComposition.PROPERTY_INDIVIDUAL_WEIGHT, +// BaitsComposition.PROPERTY_PROPORTION}); List<ContentTableMeta<BaitsComposition>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(BaitsComposition.class, BaitsComposition.PROPERTY_BAIT_TYPE, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIModel.java index c038403..86f207a 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/BranchlinesCompositionUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.longline; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.BranchlinesComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -43,12 +44,13 @@ public class BranchlinesCompositionUIModel extends ContentTableUIModel<SetLongli public BranchlinesCompositionUIModel(BranchlinesCompositionUI ui) { super(SetLongline.class, - BranchlinesComposition.class, - new String[]{SetLongline.PROPERTY_BRANCHLINES_COMPOSITION}, - new String[]{BranchlinesComposition.PROPERTY_TOP_TYPE, - BranchlinesComposition.PROPERTY_TRACELINE_TYPE, - BranchlinesComposition.PROPERTY_LENGTH, - BranchlinesComposition.PROPERTY_PROPORTION}); + BranchlinesComposition.class, BinderService.EDIT_BRANCHLINES_COMPOSITION, BinderService.EDIT, + SetLongline.PROPERTY_BRANCHLINES_COMPOSITION); +// new String[]{SetLongline.PROPERTY_BRANCHLINES_COMPOSITION}, +// new String[]{BranchlinesComposition.PROPERTY_TOP_TYPE, +// BranchlinesComposition.PROPERTY_TRACELINE_TYPE, +// BranchlinesComposition.PROPERTY_LENGTH, +// BranchlinesComposition.PROPERTY_PROPORTION}); List<ContentTableMeta<BranchlinesComposition>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(BranchlinesComposition.class, BranchlinesComposition.PROPERTY_TOP_TYPE, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIModel.java index 6e15270..a4d7fe7 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/CatchLonglineUIModel.java @@ -32,8 +32,6 @@ 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 org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.List; import java.util.Set; @@ -113,32 +111,32 @@ public class CatchLonglineUIModel extends ContentTableUIModel<SetLongline, Catch public CatchLonglineUIModel(CatchLonglineUI ui) { super(SetLongline.class, - CatchLongline.class, - new String[]{SetLongline.PROPERTY_CATCH_LONGLINE}, - new String[]{CatchLongline.PROPERTY_SPECIES_CATCH, - CatchLongline.PROPERTY_ACQUISITION_MODE, - CatchLongline.PROPERTY_COUNT, - CatchLongline.PROPERTY_CATCH_HEALTHNESS, - CatchLongline.PROPERTY_CATCH_FATE_LONGLINE, - CatchLongline.PROPERTY_DISCARD_HEALTHNESS, - CatchLongline.PROPERTY_DEPREDATED, - CatchLongline.PROPERTY_NUMBER, - CatchLongline.PROPERTY_HOME_ID, - CatchLongline.PROPERTY_HOOK_POSITION, - CatchLongline.PROPERTY_HOOK_WHEN_DISCARDED, - CatchLongline.PROPERTY_MATURITY_STATUS, - CatchLongline.PROPERTY_PHOTO_REFERENCES, - CatchLongline.PROPERTY_SEX, - CatchLongline.PROPERTY_PREDATOR, - CatchLongline.PROPERTY_STOMAC_FULLNESS, - CatchLongline.PROPERTY_TOTAL_WEIGHT, - CatchLongline.PROPERTY_BEAT_DIAMETER, - CatchLongline.PROPERTY_GONADE_WEIGHT, - CatchLongline.PROPERTY_SECTION, - CatchLongline.PROPERTY_BASKET, - CatchLongline.PROPERTY_BRANCHLINE, - CatchLongline.PROPERTY_COMMENT - }); + CatchLongline.class,BinderService.EDIT_CATCH_LONGLINE, BinderService.EDIT,SetLongline.PROPERTY_CATCH_LONGLINE); +// new String[]{SetLongline.PROPERTY_CATCH_LONGLINE}, +// new String[]{CatchLongline.PROPERTY_SPECIES_CATCH, +// CatchLongline.PROPERTY_ACQUISITION_MODE, +// CatchLongline.PROPERTY_COUNT, +// CatchLongline.PROPERTY_CATCH_HEALTHNESS, +// CatchLongline.PROPERTY_CATCH_FATE_LONGLINE, +// CatchLongline.PROPERTY_DISCARD_HEALTHNESS, +// CatchLongline.PROPERTY_DEPREDATED, +// CatchLongline.PROPERTY_NUMBER, +// CatchLongline.PROPERTY_HOME_ID, +// CatchLongline.PROPERTY_HOOK_POSITION, +// CatchLongline.PROPERTY_HOOK_WHEN_DISCARDED, +// CatchLongline.PROPERTY_MATURITY_STATUS, +// CatchLongline.PROPERTY_PHOTO_REFERENCES, +// CatchLongline.PROPERTY_SEX, +// CatchLongline.PROPERTY_PREDATOR, +// CatchLongline.PROPERTY_STOMAC_FULLNESS, +// CatchLongline.PROPERTY_TOTAL_WEIGHT, +// CatchLongline.PROPERTY_BEAT_DIAMETER, +// CatchLongline.PROPERTY_GONADE_WEIGHT, +// CatchLongline.PROPERTY_SECTION, +// CatchLongline.PROPERTY_BASKET, +// CatchLongline.PROPERTY_BRANCHLINE, +// CatchLongline.PROPERTY_COMMENT +// }); this.sizeMeasuresTableModel = new SizeMeasuresTableModel(); this.weightMeasuresTableModel = new WeightMeasuresTableModel(); @@ -218,15 +216,4 @@ public class CatchLonglineUIModel extends ContentTableUIModel<SetLongline, Catch return new CatchLonglineTableModel(ui, contentTableMetas); } - @Override - protected BinderModelBuilder<CatchLongline, CatchLongline> prepareChildLoador(BinderService binderService, String binderName) { - - BinderModelBuilder<CatchLongline, CatchLongline> builder = super.prepareChildLoador(binderService, binderName); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, CatchLongline.PROPERTY_PREDATOR); - - return builder; - - } - } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIModel.java index 455ca9f..52f3e20 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/EncounterUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.longline; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.Encounter; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -43,13 +44,13 @@ public class EncounterUIModel extends ContentTableUIModel<ActivityLongline, Enco public EncounterUIModel(EncounterUI ui) { super(ActivityLongline.class, - Encounter.class, - new String[]{ActivityLongline.PROPERTY_ENCOUNTER, - ActivityLongline.PROPERTY_COMMENT}, - new String[]{Encounter.PROPERTY_SPECIES, - Encounter.PROPERTY_DISTANCE, - Encounter.PROPERTY_COUNT, - Encounter.PROPERTY_ENCOUNTER_TYPE}); + Encounter.class, BinderService.EDIT_ENCOUNTER, BinderService.EDIT,ActivityLongline.PROPERTY_ENCOUNTER); +// new String[]{ActivityLongline.PROPERTY_ENCOUNTER, +// ActivityLongline.PROPERTY_COMMENT}, +// new String[]{Encounter.PROPERTY_SPECIES, +// Encounter.PROPERTY_DISTANCE, +// Encounter.PROPERTY_COUNT, +// Encounter.PROPERTY_ENCOUNTER_TYPE}); List<ContentTableMeta<Encounter>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(Encounter.class, Encounter.PROPERTY_ENCOUNTER_TYPE, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIModel.java index 07f7453..d5170b5 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/FloatlinesCompositionUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.longline; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.FloatlinesComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -43,11 +44,11 @@ public class FloatlinesCompositionUIModel extends ContentTableUIModel<SetLonglin public FloatlinesCompositionUIModel(FloatlinesCompositionUI ui) { super(SetLongline.class, - FloatlinesComposition.class, - new String[]{SetLongline.PROPERTY_FLOATLINES_COMPOSITION}, - new String[]{FloatlinesComposition.PROPERTY_LINE_TYPE, - FloatlinesComposition.PROPERTY_LENGTH, - FloatlinesComposition.PROPERTY_PROPORTION}); + FloatlinesComposition.class, BinderService.EDIT_FLOATLINES_COMPOSITION, BinderService.EDIT,SetLongline.PROPERTY_FLOATLINES_COMPOSITION); +// new String[]{SetLongline.PROPERTY_FLOATLINES_COMPOSITION}, +// new String[]{FloatlinesComposition.PROPERTY_LINE_TYPE, +// FloatlinesComposition.PROPERTY_LENGTH, +// FloatlinesComposition.PROPERTY_PROPORTION}); List<ContentTableMeta<FloatlinesComposition>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(FloatlinesComposition.class, FloatlinesComposition.PROPERTY_LINE_TYPE, false), 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 7d50c06..2eed3dc 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 @@ -34,7 +34,6 @@ 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 org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.List; import java.util.Set; @@ -64,30 +63,31 @@ public class GearUseFeaturesLonglineUIModel extends ContentTableUIModel<TripLong public GearUseFeaturesLonglineUIModel(GearUseFeaturesLonglineUI ui) { super(TripLongline.class, - GearUseFeaturesLongline.class, - new String[]{TripLongline.PROPERTY_GEAR_USE_FEATURES_LONGLINE}, - new String[]{ - GearUseFeaturesLongline.PROPERTY_COMMENT, - GearUseFeaturesLongline.PROPERTY_GEAR, - GearUseFeaturesLongline.PROPERTY_NUMBER, - GearUseFeaturesLongline.PROPERTY_USED_IN_TRIP}); + GearUseFeaturesLongline.class,BinderService.EDIT_GEAR_USE_FEATURES_LONGLINE, BinderService.EDIT, + TripLongline.PROPERTY_GEAR_USE_FEATURES_LONGLINE); +// new String[]{TripLongline.PROPERTY_GEAR_USE_FEATURES_LONGLINE}, +// new String[]{ +// GearUseFeaturesLongline.PROPERTY_COMMENT, +// GearUseFeaturesLongline.PROPERTY_GEAR, +// GearUseFeaturesLongline.PROPERTY_NUMBER, +// GearUseFeaturesLongline.PROPERTY_USED_IN_TRIP}); BinderService binderService = ObserveServiceHelper.get().getBinderService(); - String binderName = getClass().getName() + "-open"; +// String binderName = getClass().getName() + "-open"; - TopiaEntityBinder<GearUseFeaturesMeasurementLongline> binder = binderService.getTopiaBinder(GearUseFeaturesMeasurementLongline.class, binderName); + TopiaEntityBinder<GearUseFeaturesMeasurementLongline> binder = binderService.getBinder(GearUseFeaturesMeasurementLongline.class, BinderService.EDIT); - if (binder == null) { - - BinderModelBuilder<GearUseFeaturesMeasurementLongline, GearUseFeaturesMeasurementLongline> builder = - binderService.newBinderBuilder(GearUseFeaturesMeasurementLongline.class, - GearUseFeaturesMeasurementLongline.PROPERTY_GEAR_CARACTERISTIC, - GearUseFeaturesMeasurementLongline.PROPERTY_MEASUREMENT_VALUE); - - binder = binderService.registerTopiaBinder(GearUseFeaturesMeasurementLongline.class, builder, binderName); - - } +// if (binder == null) { +// +// BinderModelBuilder<GearUseFeaturesMeasurementLongline, GearUseFeaturesMeasurementLongline> builder = +// binderService.newBinderBuilder(GearUseFeaturesMeasurementLongline.class, +// GearUseFeaturesMeasurementLongline.PROPERTY_GEAR_CARACTERISTIC, +// GearUseFeaturesMeasurementLongline.PROPERTY_MEASUREMENT_VALUE); +// +// binder = binderService.registerTopiaBinder(GearUseFeaturesMeasurementLongline.class, builder, binderName); +// +// } this.measurementsTableModel = new GearUseFeaturesMeasurementLonglinesTableModel(binder); diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIModel.java index 985a187..8d22b39 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/HooksCompositionUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.longline; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.HooksComposition; import fr.ird.observe.entities.longline.SetLongline; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -43,12 +44,12 @@ public class HooksCompositionUIModel extends ContentTableUIModel<SetLongline, Ho public HooksCompositionUIModel(HooksCompositionUI ui) { super(SetLongline.class, - HooksComposition.class, - new String[]{SetLongline.PROPERTY_HOOKS_COMPOSITION}, - new String[]{HooksComposition.PROPERTY_HOOK_TYPE, - HooksComposition.PROPERTY_HOOK_SIZE, - HooksComposition.PROPERTY_HOOK_OFFSET, - HooksComposition.PROPERTY_PROPORTION}); + HooksComposition.class, BinderService.EDIT_HOOKS_COMPOSITION, BinderService.EDIT,SetLongline.PROPERTY_HOOKS_COMPOSITION); +// new String[]{SetLongline.PROPERTY_HOOKS_COMPOSITION}, +// new String[]{HooksComposition.PROPERTY_HOOK_TYPE, +// HooksComposition.PROPERTY_HOOK_SIZE, +// HooksComposition.PROPERTY_HOOK_OFFSET, +// HooksComposition.PROPERTY_PROPORTION}); List<ContentTableMeta<HooksComposition>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(HooksComposition.class, HooksComposition.PROPERTY_HOOK_TYPE, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIModel.java index d3a8d99..d9b75b6 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/SensorUsedUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.longline; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.longline.ActivityLongline; import fr.ird.observe.entities.longline.SensorUsed; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,15 +45,16 @@ public class SensorUsedUIModel extends ContentTableUIModel<ActivityLongline, Sen public SensorUsedUIModel(SensorUsedUI ui) { super(ActivityLongline.class, - SensorUsed.class, - new String[]{ActivityLongline.PROPERTY_SENSOR_USED, ActivityLongline.PROPERTY_COMMENT}, - new String[]{SensorUsed.PROPERTY_DATA, - SensorUsed.PROPERTY_DATA_FILENAME, - SensorUsed.PROPERTY_DATA_LOCATION, - SensorUsed.PROPERTY_SENSOR_SERIAL_NO, - SensorUsed.PROPERTY_SENSOR_TYPE, - SensorUsed.PROPERTY_SENSOR_BRAND, - SensorUsed.PROPERTY_SENSOR_DATA_FORMAT}); + SensorUsed.class, BinderService.EDIT_SENSOR_USED, BinderService.EDIT, + ActivityLongline.PROPERTY_SENSOR_USED); +// new String[]{ActivityLongline.PROPERTY_SENSOR_USED, ActivityLongline.PROPERTY_COMMENT}, +// new String[]{SensorUsed.PROPERTY_DATA, +// SensorUsed.PROPERTY_DATA_FILENAME, +// SensorUsed.PROPERTY_DATA_LOCATION, +// SensorUsed.PROPERTY_SENSOR_SERIAL_NO, +// SensorUsed.PROPERTY_SENSOR_TYPE, +// SensorUsed.PROPERTY_SENSOR_BRAND, +// SensorUsed.PROPERTY_SENSOR_DATA_FORMAT}); List<ContentTableMeta<SensorUsed>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(SensorUsed.class, SensorUsed.PROPERTY_SENSOR_TYPE, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java index 478277b..5e4059e 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/longline/TdrUIModel.java @@ -30,8 +30,6 @@ import fr.ird.observe.entities.longline.Tdr; 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 org.nuiton.util.beans.Binder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.List; import java.util.Set; @@ -113,57 +111,58 @@ public class TdrUIModel extends ContentTableUIModel<SetLongline, Tdr> { public TdrUIModel(TdrUI ui) { super(SetLongline.class, - Tdr.class, - new String[]{SetLongline.PROPERTY_TDR, - SetLongline.PROPERTY_SETTING_START_TIME_STAMP, - SetLongline.PROPERTY_SETTING_END_TIME_STAMP, - SetLongline.PROPERTY_HAULING_START_TIME_STAMP, - SetLongline.PROPERTY_HAULING_END_TIME_STAMP}, - new String[]{ - - // caracteristics tab - Tdr.PROPERTY_HOME_ID, - Tdr.PROPERTY_SERIAL_NO, - Tdr.PROPERTY_SENSOR_BRAND, - Tdr.PROPERTY_DATA, - Tdr.PROPERTY_DATA_FILENAME, - Tdr.PROPERTY_DATA_LOCATION, - - // localisation tab - Tdr.PROPERTY_SECTION, - Tdr.PROPERTY_BASKET, - Tdr.PROPERTY_BRANCHLINE, - Tdr.PROPERTY_ITEM_HORIZONTAL_POSITION, - Tdr.PROPERTY_ITEM_VERTICAL_POSITION, - Tdr.PROPERTY_FLOATLINE1_LENGTH, - Tdr.PROPERTY_FLOATLINE2_LENGTH, - - // timestamp tab - Tdr.PROPERTY_DEPLOYEMENT_START, - Tdr.PROPERTY_DEPLOYEMENT_START_DATE, - Tdr.PROPERTY_DEPLOYEMENT_START_TIME, - Tdr.PROPERTY_DEPLOYEMENT_END, - Tdr.PROPERTY_DEPLOYEMENT_END_DATE, - Tdr.PROPERTY_DEPLOYEMENT_END_TIME, - Tdr.PROPERTY_FISHING_START, - Tdr.PROPERTY_FISHING_START_DATE, - Tdr.PROPERTY_FISHING_START_TIME, - Tdr.PROPERTY_FISHING_END, - Tdr.PROPERTY_FISHING_END_DATE, - Tdr.PROPERTY_FISHING_END_TIME, - - // key data tab - Tdr.PROPERTY_FISHING_START_DEPTH, - Tdr.PROPERTY_FISHING_END_DEPTH, - Tdr.PROPERTY_MEAN_DEPLOYEMENT_DEPTH, - Tdr.PROPERTY_MEDIAN_DEPLOYEMENT_DEPTH, - Tdr.PROPERTY_MEAN_FISHING_DEPTH, - Tdr.PROPERTY_MEDIAN_FISHING_DEPTH, - Tdr.PROPERTY_MIN_FISHING_DEPTH, - Tdr.PROPERTY_MAX_FISHING_DEPTH, - - // species tab - Tdr.PROPERTY_SPECIES}); + Tdr.class,BinderService.EDIT_TDR, BinderService.EDIT, + SetLongline.PROPERTY_TDR); +// new String[]{SetLongline.PROPERTY_TDR, +// SetLongline.PROPERTY_SETTING_START_TIME_STAMP, +// SetLongline.PROPERTY_SETTING_END_TIME_STAMP, +// SetLongline.PROPERTY_HAULING_START_TIME_STAMP, +// SetLongline.PROPERTY_HAULING_END_TIME_STAMP}, +// new String[]{ +// +// // caracteristics tab +// Tdr.PROPERTY_HOME_ID, +// Tdr.PROPERTY_SERIAL_NO, +// Tdr.PROPERTY_SENSOR_BRAND, +// Tdr.PROPERTY_DATA, +// Tdr.PROPERTY_DATA_FILENAME, +// Tdr.PROPERTY_DATA_LOCATION, +// +// // localisation tab +// Tdr.PROPERTY_SECTION, +// Tdr.PROPERTY_BASKET, +// Tdr.PROPERTY_BRANCHLINE, +// Tdr.PROPERTY_ITEM_HORIZONTAL_POSITION, +// Tdr.PROPERTY_ITEM_VERTICAL_POSITION, +// Tdr.PROPERTY_FLOATLINE1_LENGTH, +// Tdr.PROPERTY_FLOATLINE2_LENGTH, +// +// // timestamp tab +// Tdr.PROPERTY_DEPLOYEMENT_START, +// Tdr.PROPERTY_DEPLOYEMENT_START_DATE, +// Tdr.PROPERTY_DEPLOYEMENT_START_TIME, +// Tdr.PROPERTY_DEPLOYEMENT_END, +// Tdr.PROPERTY_DEPLOYEMENT_END_DATE, +// Tdr.PROPERTY_DEPLOYEMENT_END_TIME, +// Tdr.PROPERTY_FISHING_START, +// Tdr.PROPERTY_FISHING_START_DATE, +// Tdr.PROPERTY_FISHING_START_TIME, +// Tdr.PROPERTY_FISHING_END, +// Tdr.PROPERTY_FISHING_END_DATE, +// Tdr.PROPERTY_FISHING_END_TIME, +// +// // key data tab +// Tdr.PROPERTY_FISHING_START_DEPTH, +// Tdr.PROPERTY_FISHING_END_DEPTH, +// Tdr.PROPERTY_MEAN_DEPLOYEMENT_DEPTH, +// Tdr.PROPERTY_MEDIAN_DEPLOYEMENT_DEPTH, +// Tdr.PROPERTY_MEAN_FISHING_DEPTH, +// Tdr.PROPERTY_MEDIAN_FISHING_DEPTH, +// Tdr.PROPERTY_MIN_FISHING_DEPTH, +// Tdr.PROPERTY_MAX_FISHING_DEPTH, +// +// // species tab +// Tdr.PROPERTY_SPECIES}); List<ContentTableMeta<Tdr>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(Tdr.class, Tdr.PROPERTY_HOME_ID, false), @@ -175,16 +174,16 @@ public class TdrUIModel extends ContentTableUIModel<SetLongline, Tdr> { } - @Override - protected BinderModelBuilder<Tdr, Tdr> prepareChildLoador(BinderService binderService, String binderName) { - - BinderModelBuilder<Tdr, Tdr> builder = super.prepareChildLoador(binderService, binderName); - - builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, Tdr.PROPERTY_SPECIES); - - return builder; - - } +// @Override +// protected BinderModelBuilder<Tdr, Tdr> prepareChildLoador(BinderService binderService, String binderName) { +// +// BinderModelBuilder<Tdr, Tdr> builder = super.prepareChildLoador(binderService, binderName); +// +// builder.addCollectionStrategy(Binder.CollectionStrategy.duplicate, Tdr.PROPERTY_SPECIES); +// +// return builder; +// +// } public boolean isCaracteristicsTabValid() { diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIModel.java index 5e9cd3a..adc3068 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/GearUseFeaturesSeineUIModel.java @@ -34,7 +34,6 @@ 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 org.nuiton.topia.persistence.util.TopiaEntityBinder; -import org.nuiton.util.beans.BinderModelBuilder; import java.util.List; import java.util.Set; @@ -64,30 +63,30 @@ public class GearUseFeaturesSeineUIModel extends ContentTableUIModel<TripSeine, public GearUseFeaturesSeineUIModel(GearUseFeaturesSeineUI ui) { super(TripSeine.class, - GearUseFeaturesSeine.class, - new String[]{TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE}, - new String[]{ - GearUseFeaturesSeine.PROPERTY_COMMENT, - GearUseFeaturesSeine.PROPERTY_GEAR, - GearUseFeaturesSeine.PROPERTY_NUMBER, - GearUseFeaturesSeine.PROPERTY_USED_IN_TRIP}); + GearUseFeaturesSeine.class,BinderService.EDIT_GEAR_USE_FEATURES_SEINE, BinderService.EDIT,TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE); +// new String[]{TripSeine.PROPERTY_GEAR_USE_FEATURES_SEINE}, +// new String[]{ +// GearUseFeaturesSeine.PROPERTY_COMMENT, +// GearUseFeaturesSeine.PROPERTY_GEAR, +// GearUseFeaturesSeine.PROPERTY_NUMBER, +// GearUseFeaturesSeine.PROPERTY_USED_IN_TRIP}); BinderService binderService = ObserveServiceHelper.get().getBinderService(); - String binderName = getClass().getName() + "-open"; +// String binderName = getClass().getName() + "-open"; - TopiaEntityBinder<GearUseFeaturesMeasurementSeine> binder = binderService.getTopiaBinder(GearUseFeaturesMeasurementSeine.class, binderName); + TopiaEntityBinder<GearUseFeaturesMeasurementSeine> binder = binderService.getBinder(GearUseFeaturesMeasurementSeine.class, BinderService.EDIT); - if (binder == null) { - - BinderModelBuilder<GearUseFeaturesMeasurementSeine, GearUseFeaturesMeasurementSeine> builder = - binderService.newBinderBuilder(GearUseFeaturesMeasurementSeine.class, - GearUseFeaturesMeasurementSeine.PROPERTY_GEAR_CARACTERISTIC, - GearUseFeaturesMeasurementSeine.PROPERTY_MEASUREMENT_VALUE); - - binder = binderService.registerTopiaBinder(GearUseFeaturesMeasurementSeine.class, builder, binderName); - - } +// if (binder == null) { +// +// BinderModelBuilder<GearUseFeaturesMeasurementSeine, GearUseFeaturesMeasurementSeine> builder = +// binderService.newBinderBuilder(GearUseFeaturesMeasurementSeine.class, +// GearUseFeaturesMeasurementSeine.PROPERTY_GEAR_CARACTERISTIC, +// GearUseFeaturesMeasurementSeine.PROPERTY_MEASUREMENT_VALUE); +// +// binder = binderService.registerTopiaBinder(GearUseFeaturesMeasurementSeine.class, builder, binderName); +// +// } this.measurementsTableModel = new GearUseFeaturesMeasurementSeinesTableModel(binder); diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIModel.java index bab2cf4..dd4190f 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetCatchUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.NonTargetCatch; import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,21 +45,24 @@ public class NonTargetCatchUIModel extends ContentTableUIModel<SetSeine, NonTarg public NonTargetCatchUIModel(NonTargetCatchUI ui) { super(SetSeine.class, NonTargetCatch.class, - new String[]{SetSeine.PROPERTY_NON_TARGET_CATCH, - SetSeine.PROPERTY_NON_TARGET_DISCARDED}, - new String[]{NonTargetCatch.PROPERTY_SPECIES, - NonTargetCatch.PROPERTY_CATCH_WEIGHT, - NonTargetCatch.PROPERTY_TOTAL_COUNT, - NonTargetCatch.PROPERTY_MEAN_WEIGHT, - NonTargetCatch.PROPERTY_MEAN_LENGTH, - NonTargetCatch.PROPERTY_REASON_FOR_DISCARD, - NonTargetCatch.PROPERTY_SPECIES_FATE, - NonTargetCatch.PROPERTY_TOTAL_COUNT_COMPUTED_SOURCE, - NonTargetCatch.PROPERTY_MEAN_WEIGHT_COMPUTED_SOURCE, - NonTargetCatch.PROPERTY_CATCH_WEIGHT_COMPUTED_SOURCE, - NonTargetCatch.PROPERTY_MEAN_LENGTH_COMPUTED_SOURCE, - NonTargetCatch.PROPERTY_COMMENT - }); + BinderService.EDIT_NON_TARGET_CATCH, + BinderService.EDIT, + SetSeine.PROPERTY_NON_TARGET_CATCH); +// new String[]{SetSeine.PROPERTY_NON_TARGET_CATCH, +// SetSeine.PROPERTY_NON_TARGET_DISCARDED}, +// new String[]{NonTargetCatch.PROPERTY_SPECIES, +// NonTargetCatch.PROPERTY_CATCH_WEIGHT, +// NonTargetCatch.PROPERTY_TOTAL_COUNT, +// NonTargetCatch.PROPERTY_MEAN_WEIGHT, +// NonTargetCatch.PROPERTY_MEAN_LENGTH, +// NonTargetCatch.PROPERTY_REASON_FOR_DISCARD, +// NonTargetCatch.PROPERTY_SPECIES_FATE, +// NonTargetCatch.PROPERTY_TOTAL_COUNT_COMPUTED_SOURCE, +// NonTargetCatch.PROPERTY_MEAN_WEIGHT_COMPUTED_SOURCE, +// NonTargetCatch.PROPERTY_CATCH_WEIGHT_COMPUTED_SOURCE, +// NonTargetCatch.PROPERTY_MEAN_LENGTH_COMPUTED_SOURCE, +// NonTargetCatch.PROPERTY_COMMENT +// }); List<ContentTableMeta<NonTargetCatch>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(NonTargetCatch.class, NonTargetCatch.PROPERTY_SPECIES, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIModel.java index 0a4d3c8..15659f6 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/NonTargetSampleUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.NonTargetLength; import fr.ird.observe.entities.seine.NonTargetSample; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,18 +45,18 @@ public class NonTargetSampleUIModel extends ContentTableUIModel<NonTargetSample, public NonTargetSampleUIModel(NonTargetSampleUI ui) { super(NonTargetSample.class, - NonTargetLength.class, - new String[]{NonTargetSample.PROPERTY_NON_TARGET_LENGTH, NonTargetSample.PROPERTY_COMMENT}, - new String[]{NonTargetLength.PROPERTY_SPECIES, - NonTargetLength.PROPERTY_LENGTH, - NonTargetLength.PROPERTY_LENGTH_SOURCE, - NonTargetLength.PROPERTY_WEIGHT, - NonTargetLength.PROPERTY_WEIGHT_SOURCE, - NonTargetLength.PROPERTY_SEX, - NonTargetLength.PROPERTY_COUNT, - NonTargetLength.PROPERTY_ACQUISITION_MODE, - NonTargetLength.PROPERTY_PICTURES_REFERENCES - }); + NonTargetLength.class, BinderService.EDIT_NON_TARGET_LENGTH, BinderService.EDIT,NonTargetSample.PROPERTY_NON_TARGET_LENGTH); +// new String[]{NonTargetSample.PROPERTY_NON_TARGET_LENGTH, NonTargetSample.PROPERTY_COMMENT}, +// new String[]{NonTargetLength.PROPERTY_SPECIES, +// NonTargetLength.PROPERTY_LENGTH, +// NonTargetLength.PROPERTY_LENGTH_SOURCE, +// NonTargetLength.PROPERTY_WEIGHT, +// NonTargetLength.PROPERTY_WEIGHT_SOURCE, +// NonTargetLength.PROPERTY_SEX, +// NonTargetLength.PROPERTY_COUNT, +// NonTargetLength.PROPERTY_ACQUISITION_MODE, +// NonTargetLength.PROPERTY_PICTURES_REFERENCES +// }); List<ContentTableMeta<NonTargetLength>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(NonTargetLength.class, NonTargetLength.PROPERTY_SPECIES, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIModel.java index 4b31de8..3d6a938 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectObservedSpeciesUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.entities.seine.ObjectObservedSpecies; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,12 +45,13 @@ public class ObjectObservedSpeciesUIModel extends ContentTableUIModel<FloatingOb public ObjectObservedSpeciesUIModel(ObjectObservedSpeciesUI ui) { super(FloatingObject.class, - ObjectObservedSpecies.class, - new String[]{FloatingObject.PROPERTY_OBJECT_OBSERVED_SPECIES, FloatingObject.PROPERTY_COMMENT}, - new String[]{ - ObjectObservedSpecies.PROPERTY_SPECIES, - ObjectObservedSpecies.PROPERTY_SPECIES_STATUS, - ObjectObservedSpecies.PROPERTY_COUNT}); + ObjectObservedSpecies.class, BinderService.EDIT_OBJECT_OBSERVED_SPECIES, BinderService.EDIT, + FloatingObject.PROPERTY_OBJECT_OBSERVED_SPECIES); +// new String[]{FloatingObject.PROPERTY_OBJECT_OBSERVED_SPECIES, FloatingObject.PROPERTY_COMMENT}, +// new String[]{ +// ObjectObservedSpecies.PROPERTY_SPECIES, +// ObjectObservedSpecies.PROPERTY_SPECIES_STATUS, +// ObjectObservedSpecies.PROPERTY_COUNT}); List<ContentTableMeta<ObjectObservedSpecies>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(ObjectObservedSpecies.class, ObjectObservedSpecies.PROPERTY_SPECIES, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java index 5006765..187cf72 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/ObjectSchoolEstimateUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.FloatingObject; import fr.ird.observe.entities.seine.ObjectSchoolEstimate; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,10 +45,10 @@ public class ObjectSchoolEstimateUIModel extends ContentTableUIModel<FloatingObj public ObjectSchoolEstimateUIModel(ObjectSchoolEstimateUI ui) { super(FloatingObject.class, - ObjectSchoolEstimate.class, - new String[]{FloatingObject.PROPERTY_OBJECT_SCHOOL_ESTIMATE, FloatingObject.PROPERTY_COMMENT}, - new String[]{ObjectSchoolEstimate.PROPERTY_SPECIES, ObjectSchoolEstimate.PROPERTY_TOTAL_WEIGHT} - ); + ObjectSchoolEstimate.class, BinderService.EDIT_OBJECT_SCHOOL_ESTIMATE, BinderService.EDIT,FloatingObject.PROPERTY_OBJECT_SCHOOL_ESTIMATE); +// new String[]{FloatingObject.PROPERTY_OBJECT_SCHOOL_ESTIMATE, FloatingObject.PROPERTY_COMMENT}, +// new String[]{ObjectSchoolEstimate.PROPERTY_SPECIES, ObjectSchoolEstimate.PROPERTY_TOTAL_WEIGHT} +// ); List<ContentTableMeta<ObjectSchoolEstimate>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(ObjectSchoolEstimate.class, ObjectSchoolEstimate.PROPERTY_SPECIES, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIModel.java index b71f77a..815193d 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/SchoolEstimateUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.SchoolEstimate; import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,12 +45,12 @@ public class SchoolEstimateUIModel extends ContentTableUIModel<SetSeine, SchoolE public SchoolEstimateUIModel(SchoolEstimateUI ui) { super(SetSeine.class, - SchoolEstimate.class, - new String[]{SetSeine.PROPERTY_SCHOOL_ESTIMATE, SetSeine.PROPERTY_COMMENT}, - new String[]{SchoolEstimate.PROPERTY_SET_SEINE, - SchoolEstimate.PROPERTY_SPECIES, - SchoolEstimate.PROPERTY_TOTAL_WEIGHT, - SchoolEstimate.PROPERTY_MEAN_WEIGHT}); + SchoolEstimate.class, BinderService.EDIT_SCHOOL_ESTIMATE, BinderService.EDIT,SetSeine.PROPERTY_SCHOOL_ESTIMATE); +// new String[]{SetSeine.PROPERTY_SCHOOL_ESTIMATE, SetSeine.PROPERTY_COMMENT}, +// new String[]{SchoolEstimate.PROPERTY_SET_SEINE, +// SchoolEstimate.PROPERTY_SPECIES, +// SchoolEstimate.PROPERTY_TOTAL_WEIGHT, +// SchoolEstimate.PROPERTY_MEAN_WEIGHT}); List<ContentTableMeta<SchoolEstimate>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(SchoolEstimate.class, SchoolEstimate.PROPERTY_SPECIES, false), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIModel.java index 83892f0..ea9e35d 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetCatchUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.referentiel.seine.WeightCategory; import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.entities.seine.TargetCatch; @@ -45,15 +46,15 @@ public class TargetCatchUIModel extends ContentTableUIModel<SetSeine, TargetCatc public TargetCatchUIModel(TargetCatchUI ui) { super(SetSeine.class, - TargetCatch.class, - new String[]{SetSeine.PROPERTY_TARGET_CATCH}, - new String[]{TargetCatch.PROPERTY_SET_SEINE, - TargetCatch.PROPERTY_WEIGHT_CATEGORY, - TargetCatch.PROPERTY_CATCH_WEIGHT, - TargetCatch.PROPERTY_WELL, - TargetCatch.PROPERTY_BROUGHT_ON_DECK, - TargetCatch.PROPERTY_DISCARDED, - TargetCatch.PROPERTY_COMMENT}); + TargetCatch.class, BinderService.EDIT_TARGET_CATCH, BinderService.EDIT_TARGET_CATCH,SetSeine.PROPERTY_TARGET_CATCH); +// new String[]{SetSeine.PROPERTY_TARGET_CATCH}, +// new String[]{TargetCatch.PROPERTY_SET_SEINE, +// TargetCatch.PROPERTY_WEIGHT_CATEGORY, +// TargetCatch.PROPERTY_CATCH_WEIGHT, +// TargetCatch.PROPERTY_WELL, +// TargetCatch.PROPERTY_BROUGHT_ON_DECK, +// TargetCatch.PROPERTY_DISCARDED, +// TargetCatch.PROPERTY_COMMENT}); List<ContentTableMeta<TargetCatch>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(TargetCatch.class, WeightCategory.PROPERTY_SPECIES, true), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIModel.java index 807aec5..fdd83ad 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetDiscardCatchUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.referentiel.seine.WeightCategory; import fr.ird.observe.entities.seine.SetSeine; import fr.ird.observe.entities.seine.TargetCatch; @@ -45,15 +46,15 @@ public class TargetDiscardCatchUIModel extends ContentTableUIModel<SetSeine, Tar public TargetDiscardCatchUIModel(TargetDiscardCatchUI ui) { super(SetSeine.class, - TargetCatch.class, - new String[]{SetSeine.PROPERTY_TARGET_CATCH, SetSeine.PROPERTY_TARGET_DISCARDED}, - new String[]{TargetCatch.PROPERTY_SET_SEINE, - TargetCatch.PROPERTY_WEIGHT_CATEGORY, - TargetCatch.PROPERTY_CATCH_WEIGHT, - TargetCatch.PROPERTY_REASON_FOR_DISCARD, - TargetCatch.PROPERTY_DISCARDED, - TargetCatch.PROPERTY_BROUGHT_ON_DECK, - TargetCatch.PROPERTY_COMMENT}); + TargetCatch.class, BinderService.EDIT_DISCARD_TARGET_CATCH, BinderService.EDIT_DISCARD_TARGET_CATCH,SetSeine.PROPERTY_TARGET_CATCH); +// new String[]{SetSeine.PROPERTY_TARGET_CATCH, SetSeine.PROPERTY_TARGET_DISCARDED}, +// new String[]{TargetCatch.PROPERTY_SET_SEINE, +// TargetCatch.PROPERTY_WEIGHT_CATEGORY, +// TargetCatch.PROPERTY_CATCH_WEIGHT, +// TargetCatch.PROPERTY_REASON_FOR_DISCARD, +// TargetCatch.PROPERTY_DISCARDED, +// TargetCatch.PROPERTY_BROUGHT_ON_DECK, +// TargetCatch.PROPERTY_COMMENT}); List<ContentTableMeta<TargetCatch>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(TargetCatch.class, WeightCategory.PROPERTY_SPECIES, true), diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIModel.java index 53ab578..8279b5d 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/table/impl/seine/TargetSampleUIModel.java @@ -23,6 +23,7 @@ package fr.ird.observe.ui.content.table.impl.seine; */ import com.google.common.collect.Lists; +import fr.ird.observe.BinderService; import fr.ird.observe.entities.seine.TargetLength; import fr.ird.observe.entities.seine.TargetSample; import fr.ird.observe.ui.content.table.ContentTableMeta; @@ -44,17 +45,18 @@ public class TargetSampleUIModel extends ContentTableUIModel<TargetSample, Targe public TargetSampleUIModel(TargetSampleUI ui) { super(TargetSample.class, - TargetLength.class, - new String[]{TargetSample.PROPERTY_TARGET_LENGTH, TargetSample.PROPERTY_COMMENT}, - new String[]{TargetLength.PROPERTY_TARGET_SAMPLE, - TargetLength.PROPERTY_SPECIES, - TargetLength.PROPERTY_LENGTH, - TargetLength.PROPERTY_LENGTH_SOURCE, - TargetLength.PROPERTY_WEIGHT, - TargetLength.PROPERTY_WEIGHT_SOURCE, - TargetLength.PROPERTY_COUNT, - TargetLength.PROPERTY_MEASURE_TYPE, - TargetLength.PROPERTY_ACQUISITION_MODE}); + TargetLength.class, BinderService.EDIT_TARGET_LENGTH, BinderService.EDIT, + TargetSample.PROPERTY_TARGET_LENGTH); +// new String[]{TargetSample.PROPERTY_TARGET_LENGTH, TargetSample.PROPERTY_COMMENT}, +// new String[]{TargetLength.PROPERTY_TARGET_SAMPLE, +// TargetLength.PROPERTY_SPECIES, +// TargetLength.PROPERTY_LENGTH, +// TargetLength.PROPERTY_LENGTH_SOURCE, +// TargetLength.PROPERTY_WEIGHT, +// TargetLength.PROPERTY_WEIGHT_SOURCE, +// TargetLength.PROPERTY_COUNT, +// TargetLength.PROPERTY_MEASURE_TYPE, +// TargetLength.PROPERTY_ACQUISITION_MODE}); List<ContentTableMeta<TargetLength>> metas = Lists.newArrayList( ContentTableModel.newTableMeta(TargetLength.class, TargetLength.PROPERTY_SPECIES, true), -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.
participants (1)
-
codelutin.com scm