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