branch feature/8228 updated (acf08b3 -> dd2d7b6)
This is an automated email from the git hooks/post-receive script. New change to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git omits acf08b3 Fix npe quand recopie poids + suppression méthode inutile omits 31626fa Ne pas utiliser d'optional à tout bout de champ (maturityColumnId) + meilleure gestion generics omits b7e2fc7 Ne pas utiliser d'optional à tout bout de champ omits 347a4fa Ne pas utiliser d'optional à tout bout de champ zone omits 8776b3b Ne pas utiliser d'optional à tout bout de champ maturityQualitativeValue omits e2a1d8a Ne pas utiliser d'optional à tout bout de champ (IndividualObservationUICache#samplingCache) omits 1d55529 Ne pas tenir compte de l'algorithme si 1/n vaut 0 ou à sexer mais observation sans sexe (See #8228) adds 74e40d3 Utilisation du bon identifiant pour supprimer un lot (See #8136) adds 4705d3f Ajout toString sur SampleData adds c09526f On ne peut supprimer que des observations qui ont une taille adds d7ebcc4 Livrable #8136 Merge branch 'feature/8136' into develop new e47e9ad Ne pas tenir compte de l'algorithme si 1/n vaut 0 ou à sexer mais observation sans sexe (See #8228) new 20e2e77 Ne pas utiliser d'optional à tout bout de champ (IndividualObservationUICache#samplingCache) new efb7f63 Ne pas utiliser d'optional à tout bout de champ maturityQualitativeValue new 988efaf Ne pas utiliser d'optional à tout bout de champ zone new 8bccbbc Ne pas utiliser d'optional à tout bout de champ new b2025da Ne pas utiliser d'optional à tout bout de champ (maturityColumnId) + meilleure gestion generics new dd2d7b6 Fix npe quand recopie poids + suppression méthode inutile This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (acf08b3) \ N -- N -- N refs/heads/feature/8228 (dd2d7b6) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omits" are not gone; other references still refer to them. Any revisions marked "discards" are gone forever. The 7 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit dd2d7b6cbadd7bf52bcbc01daa02322c6cbb3f8c Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 06:11:03 2016 +0200 Fix npe quand recopie poids + suppression méthode inutile commit b2025da20da8529095c09cbe432928383890e338 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:31:02 2016 +0200 Ne pas utiliser d'optional à tout bout de champ (maturityColumnId) + meilleure gestion generics commit 8bccbbc737559f9d5bd4659b4ec0d81cf5c3398d Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:22:14 2016 +0200 Ne pas utiliser d'optional à tout bout de champ commit 988efaf87ec30a64db2771a1b5fb83d3c7cf4b04 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:15:53 2016 +0200 Ne pas utiliser d'optional à tout bout de champ zone commit efb7f6354b81827ebaefaf5d3f28b6b54b68b46e Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:04:02 2016 +0200 Ne pas utiliser d'optional à tout bout de champ maturityQualitativeValue commit 20e2e7787b22fcc745fd7c6a08814f5145a8ad41 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 02:52:11 2016 +0200 Ne pas utiliser d'optional à tout bout de champ (IndividualObservationUICache#samplingCache) commit e47e9ad5a2e0981485b0a350e9c0e464a8c09aa5 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 02:47:53 2016 +0200 Ne pas tenir compte de l'algorithme si 1/n vaut 0 ou à sexer mais observation sans sexe (See #8228) Summary of changes: .../main/java/fr/ifremer/tutti/service/PersistenceService.java | 4 ++-- .../fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java | 4 ++-- .../tutti/service/sampling/CruiseSamplingInternalCache.java | 8 ++++++++ 3 files changed, 12 insertions(+), 4 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit e47e9ad5a2e0981485b0a350e9c0e464a8c09aa5 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 02:47:53 2016 +0200 Ne pas tenir compte de l'algorithme si 1/n vaut 0 ou à sexer mais observation sans sexe (See #8228) --- .../service/sampling/CruiseSamplingCache.java | 189 +++++++++++++-------- 1 file changed, 114 insertions(+), 75 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java index 64ac5a8..bfde9b2 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java @@ -279,47 +279,52 @@ public class CruiseSamplingCache implements Closeable { if (log.isInfoEnabled()) { log.info("Found matching sampling definition: " + cpsDefinition); } - int samplingInterval = cpsDefinition.getSamplingInterval(); - // on ne prend pas en compte les intervales à 0, ni quand l'espece doit etre sexee et que le sexe est nul - if (samplingInterval > 0 && (!cpsDefinition.isSex() || gender != null)) { + if (!canUseCalcifiedPiecesSamplingDefinition(cpsDefinition, gender)) { - if (!cpsDefinition.isSex()) { - gender = null; + if (log.isInfoEnabled()) { + log.info("No using the calcified pieces sampling definition for previous reasons."); } - String samplingKey = CruiseSamplingInternalCache.createSamplingKey(species, gender, maturity, lengthStep); + return; + } + int samplingInterval = cpsDefinition.getSamplingInterval(); - int totalValue = totalCruiseCache.incrementObservationNb(samplingKey); - int totalSamplingNb = totalCruiseCache.getSamplingNb(samplingKey); + if (!cpsDefinition.isSex()) { + gender = null; + } - int zoneValue = 0; - int zoneSamplingNb = 0; - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); - zoneValue = zoneCache.incrementObservationNb(zoneKey); - zoneSamplingNb = zoneCache.getSamplingNb(zoneKey); - } - String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); + String samplingKey = CruiseSamplingInternalCache.createSamplingKey(species, gender, maturity, lengthStep); - int operationValue = operationCache.incrementObservationNb(operationKey); - int operationSamplingNb = operationCache.getSamplingNb(operationKey); + int totalValue = totalCruiseCache.incrementObservationNb(samplingKey); + int totalSamplingNb = totalCruiseCache.getSamplingNb(samplingKey); - if (log.isInfoEnabled()) { - log.info("add Individual Observation " + samplingKey + " => op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); - } + int zoneValue = 0; + int zoneSamplingNb = 0; + if (optionalZone.isPresent()) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + zoneValue = zoneCache.incrementObservationNb(zoneKey); + zoneSamplingNb = zoneCache.getSamplingNb(zoneKey); + } + String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); - SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + int operationValue = operationCache.incrementObservationNb(operationKey); + int operationSamplingNb = operationCache.getSamplingNb(operationKey); - if (!isLoading() && (totalValue == 1 || samplingInterval == 1 || totalValue % samplingInterval == 1)) { - if (log.isInfoEnabled()) { - log.info("-> needs sampling"); - } - fireSamplingNeeded(event); - } + if (log.isInfoEnabled()) { + log.info("add Individual Observation " + samplingKey + " => op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); + } - fireSummaryUpdated(event); + SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + if (!isLoading() && (totalValue == 1 || samplingInterval == 1 || totalValue % samplingInterval == 1)) { + if (log.isInfoEnabled()) { + log.info("-> needs sampling"); + } + fireSamplingNeeded(event); } + + fireSummaryUpdated(event); + } } @@ -494,31 +499,34 @@ public class CruiseSamplingCache implements Closeable { if (log.isInfoEnabled()) { log.info("Found matching sampling definition: " + cpsDefinition); } - int samplingInterval = cpsDefinition.getSamplingInterval(); - - // on ne prend pas en compte les intervales à 0, ni quand l'espece doit etre sexee et que le sexe est nul - if (samplingInterval > 0 && (!cpsDefinition.isSex() || gender != null)) { - if (!cpsDefinition.isSex()) { - gender = null; + if (!canUseCalcifiedPiecesSamplingDefinition(cpsDefinition, gender)) { + if (log.isInfoEnabled()) { + log.info("No using the calcified pieces sampling definition for previous reasons."); } + return; + } - String samplingKey = CruiseSamplingInternalCache.createSamplingKey(species, gender, maturity, lengthStep); + if (!cpsDefinition.isSex()) { + gender = null; + } - int totalValue = totalCruiseCache.decrementObservationNb(samplingKey); - int zoneValue = 0; - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); - zoneValue = zoneCache.decrementObservationNb(zoneKey); - } - String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); + String samplingKey = CruiseSamplingInternalCache.createSamplingKey(species, gender, maturity, lengthStep); + + int totalValue = totalCruiseCache.decrementObservationNb(samplingKey); + int zoneValue = 0; + if (optionalZone.isPresent()) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + zoneValue = zoneCache.decrementObservationNb(zoneKey); + } + String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); - int operationValue = operationCache.decrementObservationNb(operationKey); + int operationValue = operationCache.decrementObservationNb(operationKey); - if (log.isInfoEnabled()) { - log.info("remove individual observation " + samplingKey + " ⇒ op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); - } + if (log.isInfoEnabled()) { + log.info("remove individual observation " + samplingKey + " ⇒ op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); } + } } @@ -648,16 +656,17 @@ public class CruiseSamplingCache implements Closeable { } public Optional<SamplingEvent> getEventForSummary(FishingOperation fishingOperation, - Species species, Boolean maturity, + Species species, + Boolean maturity, CaracteristicQualitativeValue gender, int lengthStep) { Objects.requireNonNull(fishingOperation); Objects.requireNonNull(species); - Optional < CalcifiedPiecesSamplingDefinition > cpsDefinitionOpt = getCalcifiedPiecesSamplingDefinition(species, maturity, lengthStep); + Optional<CalcifiedPiecesSamplingDefinition> cpsDefinitionOpt = getCalcifiedPiecesSamplingDefinition(species, maturity, lengthStep); - Optional<SamplingEvent> result; + SamplingEvent event = null; if (cpsDefinitionOpt.isPresent()) { CalcifiedPiecesSamplingDefinition cpsDefinition = cpsDefinitionOpt.get(); @@ -666,41 +675,48 @@ public class CruiseSamplingCache implements Closeable { log.info("Found matching sampling definition: " + cpsDefinition); } - if (!cpsDefinition.isSex()) { - gender = null; - } - String samplingKey = CruiseSamplingInternalCache.createSamplingKey(species, gender, maturity, lengthStep); + if (!canUseCalcifiedPiecesSamplingDefinition(cpsDefinition, gender)) { - int totalValue = totalCruiseCache.getObservationNb(samplingKey); - int totalSamplingNb = totalCruiseCache.getSamplingNb(samplingKey); + if (log.isInfoEnabled()) { + log.info("No using the calcified pieces sampling definition for previous reasons."); + } - int zoneValue = 0; - int zoneSamplingNb = 0; + } else { - Optional<Zone> optionalZone = tryFindZone(fishingOperation); - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); - zoneValue = zoneCache.getObservationNb(zoneKey); - zoneSamplingNb = zoneCache.getSamplingNb(zoneKey); - } + if (!cpsDefinition.isSex()) { + gender = null; + } + String samplingKey = CruiseSamplingInternalCache.createSamplingKey(species, gender, maturity, lengthStep); - String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperation.getIdAsInt(), samplingKey); + int totalValue = totalCruiseCache.getObservationNb(samplingKey); + int totalSamplingNb = totalCruiseCache.getSamplingNb(samplingKey); - int operationValue = operationCache.getObservationNb(operationKey); - int operationSamplingNb = operationCache.getSamplingNb(operationKey); + int zoneValue = 0; + int zoneSamplingNb = 0; - if (log.isInfoEnabled()) { - log.info("add Individual Observation " + samplingKey + " => op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); - } + Optional<Zone> optionalZone = tryFindZone(fishingOperation); + if (optionalZone.isPresent()) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + zoneValue = zoneCache.getObservationNb(zoneKey); + zoneSamplingNb = zoneCache.getSamplingNb(zoneKey); + } - SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); - result = Optional.of(event); + String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperation.getIdAsInt(), samplingKey); + + int operationValue = operationCache.getObservationNb(operationKey); + int operationSamplingNb = operationCache.getSamplingNb(operationKey); + + if (log.isInfoEnabled()) { + log.info("add Individual Observation " + samplingKey + " => op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); + } + + event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + + } - } else { - result = Optional.empty(); } - return result; + return Optional.ofNullable(event); } public Optional<Zone> tryFindZone(FishingOperation operation) { @@ -837,4 +853,27 @@ public class CruiseSamplingCache implements Closeable { return result; } + protected boolean canUseCalcifiedPiecesSamplingDefinition(CalcifiedPiecesSamplingDefinition cpsDefinition, CaracteristicQualitativeValue gender) { + + int samplingInterval = cpsDefinition.getSamplingInterval(); + + // on ne prend pas en compte les intervales à 0 + if (samplingInterval == 0) { + if (log.isInfoEnabled()) { + log.info("Reject matching sampling definition (sampling interval is zero)"); + } + return false; + } + // on ne prend pas en compte quand l'espece doit etre sexee et que le sexe est nul + if (cpsDefinition.isSex() && gender == null) { + if (log.isInfoEnabled()) { + log.info("Reject matching sampling definition (sampling should be sexed, but observation was not)"); + } + return false; + } + + return true; + + } + } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit 20e2e7787b22fcc745fd7c6a08814f5145a8ad41 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 02:52:11 2016 +0200 Ne pas utiliser d'optional à tout bout de champ (IndividualObservationUICache#samplingCache) --- .../frequency/IndividualObservationUICache.java | 93 +++++++++++----------- .../frequency/SpeciesFrequencyUIHandler.java | 2 +- 2 files changed, 48 insertions(+), 47 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java index 03b7b97..f441d61 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java @@ -27,7 +27,6 @@ package fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.protocol.CalcifiedPiecesSamplingDefinition; import fr.ifremer.tutti.persistence.entities.protocol.Zone; -import fr.ifremer.tutti.persistence.entities.referential.Caracteristic; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import fr.ifremer.tutti.persistence.entities.referential.Species; import fr.ifremer.tutti.service.DecoratorService; @@ -68,7 +67,7 @@ public class IndividualObservationUICache implements Closeable { private static final Log log = LogFactory.getLog(IndividualObservationUICache.class); private final SamplingListener samplingListener; - private final Optional<CruiseSamplingCache> samplingCache; + private final CruiseSamplingCache samplingCache; private final SpeciesFrequencyUIModel uiModel; private SpeciesBatchRowModel speciesEditRow; @@ -95,7 +94,7 @@ public class IndividualObservationUICache implements Closeable { */ private boolean on; - public IndividualObservationUICache(Optional<CruiseSamplingCache> samplingCache, SpeciesFrequencyUIModel uiModel, Caracteristic sexCaracteristic) { + public IndividualObservationUICache(CruiseSamplingCache samplingCache, SpeciesFrequencyUIModel uiModel) { this.samplingCache = samplingCache; this.uiModel = uiModel; @@ -116,7 +115,7 @@ public class IndividualObservationUICache implements Closeable { } else { // model no more loading, cache is on if data cache is present - on = samplingCache.isPresent(); + on = withSamplingCache(); if (log.isInfoEnabled()) { if (on) { log.info("Cache is on : ui model loading is done and sampling cache is present"); @@ -181,25 +180,29 @@ public class IndividualObservationUICache implements Closeable { this.speciesEditRow = speciesEditRow; this.species = speciesEditRow.getSpecies(); this.fishingOperation = fishingOperation; - if (samplingCache.isPresent()) { - samplingCache.get().addSamplingListener(samplingListener); + if (withSamplingCache()) { + samplingCache.addSamplingListener(samplingListener); } this.samplingCodesAvailable.clear(); this.samplingCodesNotAvailable.clear(); - + individualObservationRows.stream() .filter(individualObservationRow -> individualObservationRow.getSamplingCode() != null) .forEach(individualObservationRow -> addSamplingCodeNotAvailable(individualObservationRow.getSamplingCode())); } + protected boolean withSamplingCache() { + return samplingCache != null; + } + @Override public void close() { this.ui = null; this.speciesEditRow = null; this.species = null; this.fishingOperation = null; - if (samplingCache.isPresent()) { - samplingCache.get().removeSamplingListener(samplingListener); + if (withSamplingCache()) { + samplingCache.removeSamplingListener(samplingListener); } } @@ -248,12 +251,12 @@ public class IndividualObservationUICache implements Closeable { return; } - Boolean maturity = samplingCache.get().getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); - samplingCache.get().addIndividualObservation(fishingOperation, - species, - gender, - maturity, - uiModel.getLengthStepInMm(lengthStep)); + Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); + samplingCache.addIndividualObservation(fishingOperation, + species, + gender, + maturity, + uiModel.getLengthStepInMm(lengthStep)); if (samplingCode.isPresent()) { incrementsSamplingNb(gender, maturityQualitativeValue, lengthStep, samplingCode.get()); @@ -280,14 +283,14 @@ public class IndividualObservationUICache implements Closeable { return; } - Boolean maturity = samplingCache.get().getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); + Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); Integer lengthStepInMm = lengthStep == null ? null : uiModel.getLengthStepInMm(lengthStep); - samplingCache.get().addSampling(fishingOperation, - species, - gender, - maturity, - lengthStepInMm, - samplingCode); + samplingCache.addSampling(fishingOperation, + species, + gender, + maturity, + lengthStepInMm, + samplingCode); // Le code n'est plus utilisable addSamplingCodeNotAvailable(samplingCode); @@ -340,12 +343,12 @@ public class IndividualObservationUICache implements Closeable { return; } - Boolean maturity = samplingCache.get().getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); - samplingCache.get().removeIndividualObservation(fishingOperation, - species, - gender, - maturity, - uiModel.getLengthStepInMm(lengthStep)); + Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); + samplingCache.removeIndividualObservation(fishingOperation, + species, + gender, + maturity, + uiModel.getLengthStepInMm(lengthStep)); if (samplingCode.isPresent()) { decrementsSamplingNb(gender, maturityQualitativeValue, lengthStep, samplingCode.get()); @@ -372,13 +375,13 @@ public class IndividualObservationUICache implements Closeable { return; } - Boolean maturity = samplingCache.get().getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); - samplingCache.get().removeSampling(fishingOperation, - species, - gender, - maturity, - uiModel.getLengthStepInMm(lengthStep), - samplingCode); + Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); + samplingCache.removeSampling(fishingOperation, + species, + gender, + maturity, + uiModel.getLengthStepInMm(lengthStep), + samplingCode); addSamplingCodeAvailable(samplingCode); @@ -442,8 +445,8 @@ public class IndividualObservationUICache implements Closeable { public void addSamplingCodeAvailable(String samplingCode) { int samplingCodeNumber = SamplingCodePrefix.extractSamplingCodeIdFromSamplingCode(samplingCode); - if (log.isInfoEnabled()) { - log.info(String.format("Make samplingCode: %s (%d) available", samplingCode, samplingCodeNumber)); + if (log.isDebugEnabled()) { + log.debug(String.format("Make samplingCode: %s (%d) available", samplingCode, samplingCodeNumber)); } samplingCodesNotAvailable.remove(samplingCodeNumber); samplingCodesAvailable.add(samplingCodeNumber); @@ -453,8 +456,8 @@ public class IndividualObservationUICache implements Closeable { public void addSamplingCodeNotAvailable(String samplingCode) { int samplingCodeNumber = SamplingCodePrefix.extractSamplingCodeIdFromSamplingCode(samplingCode); - if (log.isInfoEnabled()) { - log.info(String.format("Make samplingCode: %s (%d) not available", samplingCode, samplingCodeNumber)); + if (log.isDebugEnabled()) { + log.debug(String.format("Make samplingCode: %s (%d) not available", samplingCode, samplingCodeNumber)); } samplingCodesNotAvailable.add(samplingCodeNumber); samplingCodesAvailable.remove(samplingCodeNumber); @@ -464,17 +467,15 @@ public class IndividualObservationUICache implements Closeable { public void updateSelectedRow(Optional<IndividualObservationBatchRowModel> optSelectedRow) { Optional<SamplingEvent> event; - if (samplingCache.isPresent() && optSelectedRow.isPresent() && optSelectedRow.get().withSize()) { + if (withSamplingCache() && optSelectedRow.isPresent() && optSelectedRow.get().withSize()) { IndividualObservationBatchRowModel selectedRow = optSelectedRow.get(); - CruiseSamplingCache cruiseSamplingCache = samplingCache.get(); - Optional<CaracteristicQualitativeValue> maturityQualitativeValue = uiModel.getOptionalMaturityValue(selectedRow); - Boolean maturity = cruiseSamplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); + Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); int lengthstep = uiModel.getLengthStepInMm(selectedRow.getSize()); - event = cruiseSamplingCache.getEventForSummary(fishingOperation, species, maturity, uiModel.getGender(selectedRow), lengthstep); + event = samplingCache.getEventForSummary(fishingOperation, species, maturity, uiModel.getGender(selectedRow), lengthstep); } else { event = Optional.empty(); @@ -505,8 +506,8 @@ public class IndividualObservationUICache implements Closeable { Decorator<Species> speciesDecorator = ui.getHandler().getDecorator(Species.class, DecoratorService.WITH_SURVEY_CODE); String key = speciesDecorator.toString(species) - + " " + Numbers.convertFromMm(event.getLengthStep(), uiModel.getLengthStepCaracteristicUnit()) - + " " + uiModel.getLengthStepCaracteristicUnit(); + + " " + Numbers.convertFromMm(event.getLengthStep(), uiModel.getLengthStepCaracteristicUnit()) + + " " + uiModel.getLengthStepCaracteristicUnit(); if (event.getGender() != null) { key += " " + event.getGender().getDescription(); } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java index ee7faf3..c2b8b6d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java @@ -504,7 +504,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci }); this.individualObservationUICache = new IndividualObservationUICache( - getDataContext().getOptionalCruiseSamplingCache(), model, sexCaracteristic); + getDataContext().getOptionalCruiseSamplingCache().orElse(null), model); } @Override -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit efb7f6354b81827ebaefaf5d3f28b6b54b68b46e Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:04:02 2016 +0200 Ne pas utiliser d'optional à tout bout de champ maturityQualitativeValue --- .../service/sampling/CruiseSamplingCache.java | 8 +++--- .../IndividualObservationBatchTableModel.java | 5 ++-- .../frequency/IndividualObservationUICache.java | 31 +++++++--------------- .../frequency/SpeciesFrequencyUIHandler.java | 14 +++++----- .../species/frequency/SpeciesFrequencyUIModel.java | 9 +++---- 5 files changed, 28 insertions(+), 39 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java index bfde9b2..01cb50a 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java @@ -794,11 +794,11 @@ public class CruiseSamplingCache implements Closeable { return maturity; } - public Boolean getMaturity(int speciesId, Optional<CaracteristicQualitativeValue> maturityQualitativeValue) { + public Boolean getMaturity(int speciesId, CaracteristicQualitativeValue maturityQualitativeValue) { Boolean maturity = null; - Optional<Caracteristic> maturityCaracteristic = Optional.ofNullable(maturityCaracteristicBySpecies.get(speciesId)); - if (maturityCaracteristic.isPresent() && maturityQualitativeValue.isPresent()) { - maturity = matureStatesByMaturityCracteristic.containsEntry(maturityCaracteristic.get().getId(), maturityQualitativeValue.get().getId()); + Caracteristic maturityCaracteristic = maturityCaracteristicBySpecies.get(speciesId); + if (maturityCaracteristic != null && maturityQualitativeValue != null) { + maturity = matureStatesByMaturityCracteristic.containsEntry(maturityCaracteristic.getId(), maturityQualitativeValue.getId()); } return maturity; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchTableModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchTableModel.java index f7cb8ae..8a6a924 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchTableModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchTableModel.java @@ -37,7 +37,6 @@ import org.nuiton.jaxx.application.swing.table.ColumnIdentifier; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.io.Serializable; -import java.util.Optional; import java.util.Set; import java.util.stream.Collectors; @@ -182,8 +181,8 @@ public class IndividualObservationBatchTableModel extends AbstractApplicationTab parentModel.setGenderValueToDefaultCaracterictis(result, gender); if (parentModel.withMaturityCaracteristic()) { - Optional<CaracteristicQualitativeValue> maturityState = parentModel.getOptionalMaturityValue(lastRow); - parentModel.setMaturityValueToDefaultCaracterictis(result, maturityState.orElse(null)); + CaracteristicQualitativeValue maturityState = parentModel.getMaturityValue(lastRow); + parentModel.setMaturityValueToDefaultCaracterictis(result, maturityState); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java index f441d61..d05bd2e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java @@ -214,7 +214,7 @@ public class IndividualObservationUICache implements Closeable { public void increments(IndividualObservationBatchRowModel row) { incrementsObservationNb(uiModel.getGender(row), - uiModel.getOptionalMaturityValue(row), + uiModel.getMaturityValue(row), row.getSize(), row.getOptionalSamplingCode()); @@ -226,21 +226,10 @@ public class IndividualObservationUICache implements Closeable { * @param gender le sexe * @param maturityQualitativeValue l'état de maturité * @param lengthStep la classe de taille - */ - public void incrementsObservationNb(CaracteristicQualitativeValue gender, Optional<CaracteristicQualitativeValue> maturityQualitativeValue, float lengthStep) { - incrementsObservationNb(gender, maturityQualitativeValue, lengthStep, Optional.empty()); - } - - /** - * Ajoute une observation individuelle via ses composantes (sexe, maturité, classe de taille) dans le cache. - * - * @param gender le sexe - * @param maturityQualitativeValue l'état de maturité - * @param lengthStep la classe de taille * @param samplingCode le code de prélèvement ajouté s'il y en a un */ public void incrementsObservationNb(CaracteristicQualitativeValue gender, - Optional<CaracteristicQualitativeValue> maturityQualitativeValue, + CaracteristicQualitativeValue maturityQualitativeValue, float lengthStep, Optional<String> samplingCode) { @@ -272,8 +261,8 @@ public class IndividualObservationUICache implements Closeable { * @param samplingCode le code de prélèvement ajouté */ public void incrementsSamplingNb(CaracteristicQualitativeValue gender, - Optional<CaracteristicQualitativeValue> maturityQualitativeValue, - Float lengthStep, + CaracteristicQualitativeValue maturityQualitativeValue, + float lengthStep, String samplingCode) { if (!on) { @@ -284,7 +273,7 @@ public class IndividualObservationUICache implements Closeable { } Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); - Integer lengthStepInMm = lengthStep == null ? null : uiModel.getLengthStepInMm(lengthStep); + int lengthStepInMm = uiModel.getLengthStepInMm(lengthStep); samplingCache.addSampling(fishingOperation, species, gender, @@ -305,7 +294,7 @@ public class IndividualObservationUICache implements Closeable { public void decrements(IndividualObservationBatchRowModel row) { decrementsObservationNb(uiModel.getGender(row), - uiModel.getOptionalMaturityValue(row), + uiModel.getMaturityValue(row), row.getSize(), row.getOptionalSamplingCode()); @@ -318,7 +307,7 @@ public class IndividualObservationUICache implements Closeable { * @param maturityQualitativeValue l'état de maturité * @param lengthStep la classe de taille */ - public void decrementsObservationNb(CaracteristicQualitativeValue gender, Optional<CaracteristicQualitativeValue> maturityQualitativeValue, float lengthStep) { + public void decrementsObservationNb(CaracteristicQualitativeValue gender, CaracteristicQualitativeValue maturityQualitativeValue, float lengthStep) { decrementsObservationNb(gender, maturityQualitativeValue, lengthStep, Optional.empty()); } @@ -332,7 +321,7 @@ public class IndividualObservationUICache implements Closeable { * @param samplingCode le code de prélèvement supprimée */ public void decrementsObservationNb(CaracteristicQualitativeValue gender, - Optional<CaracteristicQualitativeValue> maturityQualitativeValue, + CaracteristicQualitativeValue maturityQualitativeValue, float lengthStep, Optional<String> samplingCode) { @@ -364,7 +353,7 @@ public class IndividualObservationUICache implements Closeable { * @param samplingCode le code de prélèvement supprimé */ public void decrementsSamplingNb(CaracteristicQualitativeValue gender, - Optional<CaracteristicQualitativeValue> maturityQualitativeValue, + CaracteristicQualitativeValue maturityQualitativeValue, Float lengthStep, String samplingCode) { @@ -471,7 +460,7 @@ public class IndividualObservationUICache implements Closeable { IndividualObservationBatchRowModel selectedRow = optSelectedRow.get(); - Optional<CaracteristicQualitativeValue> maturityQualitativeValue = uiModel.getOptionalMaturityValue(selectedRow); + CaracteristicQualitativeValue maturityQualitativeValue = uiModel.getMaturityValue(selectedRow); Boolean maturity = samplingCache.getMaturity(uiModel.getBatch().getSpecies().getReferenceTaxonId(), maturityQualitativeValue); int lengthstep = uiModel.getLengthStepInMm(selectedRow.getSize()); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java index c2b8b6d..c1b2c88 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java @@ -217,7 +217,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci SpeciesFrequencyUIModel model = getModel(); CaracteristicQualitativeValue gender = model.getGender(row); - Optional<CaracteristicQualitativeValue> maturity = model.getOptionalMaturityValue(row); + CaracteristicQualitativeValue maturity = model.getMaturityValue(row); switch (propertyName) { case IndividualObservationBatchRowModel.PROPERTY_SIZE: { @@ -293,8 +293,8 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci } if (model.withMaturityCaracteristic()) { - Optional<CaracteristicQualitativeValue> oldMaturity = model.getOptionalMaturityValue(oldValue); - Optional<CaracteristicQualitativeValue> newMaturity = model.getOptionalMaturityValue(newValue); + CaracteristicQualitativeValue oldMaturity = model.getMaturityValue(oldValue); + CaracteristicQualitativeValue newMaturity = model.getMaturityValue(newValue); if (log.isInfoEnabled()) { log.info("maturities : " + oldMaturity + " " + newMaturity); } @@ -316,14 +316,16 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci case IndividualObservationBatchRowModel.PROPERTY_SAMPLING_CODE: if (row.withSize()) { + float size = row.getSize(); + String oldValue = (String) evt.getOldValue(); String newValue = (String) evt.getNewValue(); if (StringUtils.isNotBlank(oldValue)) { - individualObservationUICache.decrementsSamplingNb(gender, maturity, row.getSize(), oldValue); + individualObservationUICache.decrementsSamplingNb(gender, maturity, size, oldValue); } if (StringUtils.isNotBlank(newValue)) { - individualObservationUICache.incrementsSamplingNb(gender, maturity, row.getSize(), newValue); + individualObservationUICache.incrementsSamplingNb(gender, maturity, size, newValue); } } break; @@ -420,7 +422,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci // clean log table SpeciesFrequencyLogsTableModel logsTableModel = (SpeciesFrequencyLogsTableModel) ui.getLogsTable().getModel(); - logsTableModel.setRows(Lists.<SpeciesFrequencyLogRowModel>newArrayList()); + logsTableModel.setRows(new ArrayList<>()); getModel().setModify(false); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java index 93a31b7..377d728 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java @@ -51,7 +51,6 @@ import java.util.Collection; import java.util.HashSet; import java.util.List; import java.util.Map; -import java.util.Optional; import java.util.Set; /** @@ -1092,23 +1091,23 @@ public class SpeciesFrequencyUIModel extends AbstractTuttiTableUIModel<SpeciesBa firePropertyChange(PROPERTY_MATURITY_CARACTERISTIC, oldValue, maturityCaracteristic); } - public Optional<CaracteristicQualitativeValue> getOptionalMaturityValue(IndividualObservationBatchRowModel row) { + public CaracteristicQualitativeValue getMaturityValue(IndividualObservationBatchRowModel row) { CaracteristicQualitativeValue caracteristicValue = null; if (withMaturityCaracteristic()) { caracteristicValue = row.getCaracteristicQualitativeValue(maturityCaracteristic); } - return Optional.ofNullable(caracteristicValue); + return caracteristicValue; } - public Optional<CaracteristicQualitativeValue> getOptionalMaturityValue(CaracteristicMap caracteristicMap) { + public CaracteristicQualitativeValue getMaturityValue(CaracteristicMap caracteristicMap) { CaracteristicQualitativeValue caracteristicValue = null; if (withMaturityCaracteristic()) { caracteristicValue = caracteristicMap.getQualitativeValue(maturityCaracteristic); } - return Optional.ofNullable(caracteristicValue); + return caracteristicValue; } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit 988efaf87ec30a64db2771a1b5fb83d3c7cf4b04 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:15:53 2016 +0200 Ne pas utiliser d'optional à tout bout de champ zone --- .../ifremer/tutti/service/PersistenceService.java | 2 +- .../service/sampling/CruiseSamplingCache.java | 61 +++++++++++----------- .../sampling/CruiseSamplingCacheLoader.java | 5 +- .../tutti/service/sampling/SamplingEvent.java | 7 ++- .../frequency/IndividualObservationUICache.java | 4 +- 5 files changed, 38 insertions(+), 41 deletions(-) diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java index 93777d3..7abb271 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java @@ -1698,7 +1698,7 @@ public class PersistenceService extends AbstractTuttiService implements TuttiPer FishingOperation fishingOperation = context.getDataContext().getFishingOperation(); Integer fishingOperationId = fishingOperation.getIdAsInt(); - Optional<Zone> optionalZone = cruiseSamplingCache.tryFindZone(fishingOperation); + Zone optionalZone = cruiseSamplingCache.tryFindZone(fishingOperation).orElse(null); Set<Integer> batchIds = new LinkedHashSet<>(); if (addBatchId) { diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java index 01cb50a..0ff282b 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCache.java @@ -188,7 +188,7 @@ public class CruiseSamplingCache implements Closeable { * @param individualObservationBatch l'observation individuelle à ajouter au cache */ public void addIndividualObservation(int fishingOperationId, - Optional<Zone> optionalZone, + Zone optionalZone, IndividualObservationBatch individualObservationBatch) { Objects.requireNonNull(fishingOperationId); @@ -245,7 +245,7 @@ public class CruiseSamplingCache implements Closeable { Optional<Zone> optionalZone = tryFindZone(fishingOperation); - addIndividualObservation(fishingOperation.getIdAsInt(), optionalZone, species, gender, maturity, lengthStep); + addIndividualObservation(fishingOperation.getIdAsInt(), optionalZone.orElse(null), species, gender, maturity, lengthStep); } @@ -253,14 +253,14 @@ public class CruiseSamplingCache implements Closeable { * Ajout d'une observation dans le cache. * * @param fishingOperationId l'identifiant de l'opération de pêche concernée - * @param optionalZone la zone (facultative) de l'opération de pêche concernée + * @param zone la zone (facultative) de l'opération de pêche concernée * @param species l'espèces concernée * @param gender le sexe de l'échantillon (peut-être null) * @param maturity la maturité de l'échantillon (peut-être null) * @param lengthStep la classe de taille de l'échantillon (en mm) */ public void addIndividualObservation(int fishingOperationId, - Optional<Zone> optionalZone, + Zone zone, Species species, CaracteristicQualitativeValue gender, Boolean maturity, @@ -300,8 +300,8 @@ public class CruiseSamplingCache implements Closeable { int zoneValue = 0; int zoneSamplingNb = 0; - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + if (zone != null) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(zone.getId(), samplingKey); zoneValue = zoneCache.incrementObservationNb(zoneKey); zoneSamplingNb = zoneCache.getSamplingNb(zoneKey); } @@ -314,7 +314,7 @@ public class CruiseSamplingCache implements Closeable { log.info("add Individual Observation " + samplingKey + " => op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); } - SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, zone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); if (!isLoading() && (totalValue == 1 || samplingInterval == 1 || totalValue % samplingInterval == 1)) { if (log.isInfoEnabled()) { @@ -350,14 +350,14 @@ public class CruiseSamplingCache implements Closeable { Optional<Zone> optionalZone = tryFindZone(fishingOperation); - addSampling(fishingOperation.getIdAsInt(), optionalZone, species, gender, maturity, lengthStep, samplingCode); + addSampling(fishingOperation.getIdAsInt(), optionalZone.orElse(null), species, gender, maturity, lengthStep, samplingCode); } /** * Ajout d'un prélèvement dans le cache. * * @param fishingOperationId l'identifiant de l'opération de pêche concernée - * @param optionalZone la zone (facultative) de l'opération de pêche concernée + * @param zone la zone (facultative) de l'opération de pêche concernée * @param species l'espèces concernée * @param gender le sexe de l'échantillon (peut-être null) * @param maturity la maturité de l'échantillon (peut-être null) @@ -365,7 +365,7 @@ public class CruiseSamplingCache implements Closeable { * @param samplingCode le code de prélèvement ajouté */ public void addSampling(int fishingOperationId, - Optional<Zone> optionalZone, + Zone zone, Species species, CaracteristicQualitativeValue gender, Boolean maturity, @@ -385,8 +385,8 @@ public class CruiseSamplingCache implements Closeable { int totalSamplingNb = totalCruiseCache.incrementSamplingNb(samplingKey); int zoneSamplingNb = 0; - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + if (zone != null) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(zone.getId(), samplingKey); zoneSamplingNb = zoneCache.incrementSamplingNb(zoneKey); } String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); @@ -398,7 +398,7 @@ public class CruiseSamplingCache implements Closeable { } if (cpsDefinitionOpt.isPresent()) { - SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinitionOpt.get(), optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinitionOpt.get(), zone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); fireSummaryUpdated(event); } @@ -409,15 +409,15 @@ public class CruiseSamplingCache implements Closeable { * Suppression d'un échantillon du cache. * * @param fishingOperationId l'identifiant de l'opération de pêche concernée - * @param optionalZone la zone (facultative) de l'opération de pêche concernée + * @param zone la zone (facultative) de l'opération de pêche concernée * @param individualObservationBatches les observations individuelles à supprimer du cache */ public void removeIndividualObservations(int fishingOperationId, - Optional<Zone> optionalZone, + Zone zone, Collection<IndividualObservationBatch> individualObservationBatches) { Objects.requireNonNull(fishingOperationId); - Objects.requireNonNull(optionalZone); + Objects.requireNonNull(zone); Objects.requireNonNull(individualObservationBatches); individualObservationBatches.stream() @@ -436,11 +436,11 @@ public class CruiseSamplingCache implements Closeable { String samplingCode = individualObservationBatch.getSamplingCode(); if (samplingCode != null) { - removeSampling(fishingOperationId, optionalZone, species, gender, maturity, lengthStepInMm, samplingCode); + removeSampling(fishingOperationId, zone, species, gender, maturity, lengthStepInMm, samplingCode); } - removeIndividualObservation(fishingOperationId, optionalZone, species, gender, maturity, lengthStepInMm); + removeIndividualObservation(fishingOperationId, zone, species, gender, maturity, lengthStepInMm); }); @@ -466,7 +466,7 @@ public class CruiseSamplingCache implements Closeable { Optional<Zone> optionalZone = tryFindZone(fishingOperation); - removeIndividualObservation(fishingOperation.getIdAsInt(), optionalZone, species, gender, maturity, lengthStep); + removeIndividualObservation(fishingOperation.getIdAsInt(), optionalZone.orElse(null), species, gender, maturity, lengthStep); } @@ -474,21 +474,20 @@ public class CruiseSamplingCache implements Closeable { * Suppression d'un échantillon du cache. * * @param fishingOperationId l'identifiant de l'opération de pêche concernée - * @param optionalZone la zone (facultative) de l'opération de pêche concernée + * @param zone la zone (facultative) de l'opération de pêche concernée * @param species l'espèces concernée * @param gender le sexe de l'échantillon (peut-être null) * @param maturity la maturité de l'échantillon (peut-être null) * @param lengthStep la classe de taille de l'échantillon (en mm) */ public void removeIndividualObservation(int fishingOperationId, - Optional<Zone> optionalZone, + Zone zone, Species species, CaracteristicQualitativeValue gender, Boolean maturity, int lengthStep) { Objects.requireNonNull(fishingOperationId); - Objects.requireNonNull(optionalZone); Objects.requireNonNull(species); Optional<CalcifiedPiecesSamplingDefinition> cpsDefinitionOpt = getCalcifiedPiecesSamplingDefinition(species, maturity, lengthStep); @@ -515,8 +514,8 @@ public class CruiseSamplingCache implements Closeable { int totalValue = totalCruiseCache.decrementObservationNb(samplingKey); int zoneValue = 0; - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + if (zone != null) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(zone.getId(), samplingKey); zoneValue = zoneCache.decrementObservationNb(zoneKey); } String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); @@ -553,14 +552,14 @@ public class CruiseSamplingCache implements Closeable { Optional<Zone> optionalZone = tryFindZone(fishingOperation); - removeSampling(fishingOperation.getIdAsInt(), optionalZone, species, gender, maturity, lengthStep, samplingCode); + removeSampling(fishingOperation.getIdAsInt(), optionalZone.orElse(null), species, gender, maturity, lengthStep, samplingCode); } /** * Suppression d'un prélèvement dans le cache. * * @param fishingOperationId l'identifiant de l'opération de pêche concernée - * @param optionalZone la zone (facultative) de l'opération de pêche concernée + * @param zone la zone (facultative) de l'opération de pêche concernée * @param species l'espèces concernée * @param gender le sexe de l'échantillon (peut-être null) * @param maturity la maturité de l'échantillon (peut-être null) @@ -568,7 +567,7 @@ public class CruiseSamplingCache implements Closeable { * @param samplingCode le code de prélèvement supprimé */ public void removeSampling(int fishingOperationId, - Optional<Zone> optionalZone, + Zone zone, Species species, CaracteristicQualitativeValue gender, Boolean maturity, @@ -588,8 +587,8 @@ public class CruiseSamplingCache implements Closeable { int totalSamplingNb = totalCruiseCache.decrementSamplingNb(samplingKey); int zoneSamplingNb = 0; - if (optionalZone.isPresent()) { - String zoneKey = CruiseSamplingInternalCache.addPrefixKey(optionalZone.get().getId(), samplingKey); + if (zone != null) { + String zoneKey = CruiseSamplingInternalCache.addPrefixKey(zone.getId(), samplingKey); zoneSamplingNb = zoneCache.decrementSamplingNb(zoneKey); } String operationKey = CruiseSamplingInternalCache.addPrefixKey(fishingOperationId, samplingKey); @@ -602,7 +601,7 @@ public class CruiseSamplingCache implements Closeable { if (cpsDefinitionOpt.isPresent()) { - SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinitionOpt.get(), optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + SamplingEvent event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinitionOpt.get(), zone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); fireSummaryUpdated(event); } @@ -710,7 +709,7 @@ public class CruiseSamplingCache implements Closeable { log.info("add Individual Observation " + samplingKey + " => op " + operationValue + " / zone " + zoneValue + " / cruise " + totalValue); } - event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone, totalSamplingNb, zoneSamplingNb, operationSamplingNb); + event = new SamplingEvent(this, lengthStep, gender, maturity, cpsDefinition, optionalZone.orElse(null), totalSamplingNb, zoneSamplingNb, operationSamplingNb); } diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCacheLoader.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCacheLoader.java index 6406a1a..c9a702e 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCacheLoader.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/CruiseSamplingCacheLoader.java @@ -38,7 +38,6 @@ import org.nuiton.decorator.Decorator; import java.util.Collection; import java.util.List; -import java.util.Optional; import static org.nuiton.i18n.I18n.t; @@ -93,7 +92,7 @@ public class CruiseSamplingCacheLoader { List<IndividualObservationBatch> allIndividualObservationBatchsForFishingOperation = persistenceService.getAllIndividualObservationBatchsForFishingOperation(fishingOperationId); - Optional<Zone> optionalZone = cruiseSamplingCache.tryFindZone(fishingOperation); + Zone optionalZone = cruiseSamplingCache.tryFindZone(fishingOperation).orElse(null); allIndividualObservationBatchsForFishingOperation.stream().filter(obs -> obs.getSize() != null).forEach( individualObservationBatch -> cruiseSamplingCache.addIndividualObservation(fishingOperationId, optionalZone, individualObservationBatch)); @@ -122,7 +121,7 @@ public class CruiseSamplingCacheLoader { Integer fishingOperationId = fishingOperation.getIdAsInt(); - Optional<Zone> optionalZone = cruiseSamplingCache.tryFindZone(fishingOperation); + Zone optionalZone = cruiseSamplingCache.tryFindZone(fishingOperation).orElse(null); if (log.isInfoEnabled()) { log.info("Loading cruise sampling cache for fishing operation: " + fishingOperationId + " - " + cruiseSamplingCache); diff --git a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/SamplingEvent.java b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/SamplingEvent.java index bc4e570..79f204c 100644 --- a/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/SamplingEvent.java +++ b/tutti-service/src/main/java/fr/ifremer/tutti/service/sampling/SamplingEvent.java @@ -29,7 +29,6 @@ import fr.ifremer.tutti.persistence.entities.protocol.Zone; import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue; import java.util.EventObject; -import java.util.Optional; /** * @author Kevin Morin (Code Lutin) @@ -45,7 +44,7 @@ public class SamplingEvent extends EventObject { protected final CalcifiedPiecesSamplingDefinition cpsDef; - protected final Optional<Zone> zone; + protected final Zone zone; protected final int nbSamplingForCruise; @@ -54,7 +53,7 @@ public class SamplingEvent extends EventObject { protected final int nbSamplingForOperation; public SamplingEvent(CruiseSamplingCache source, int lengthStep, CaracteristicQualitativeValue gender, Boolean maturity, - CalcifiedPiecesSamplingDefinition cpsDef, Optional<Zone> zone, int nbSamplingForCruise, int nbSamplingForZone, int nbSamplingForOperation) { + CalcifiedPiecesSamplingDefinition cpsDef, Zone zone, int nbSamplingForCruise, int nbSamplingForZone, int nbSamplingForOperation) { super(source); this.lengthStep = lengthStep; this.gender = gender; @@ -82,7 +81,7 @@ public class SamplingEvent extends EventObject { return cpsDef; } - public Optional<Zone> getZone() { + public Zone getZone() { return zone; } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java index d05bd2e..b1502cf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/IndividualObservationUICache.java @@ -507,9 +507,9 @@ public class IndividualObservationUICache implements Closeable { key += " " + t("tutti.editSpeciesFrequencies.samplingNeeded.immature"); } } - if (event.getZone().isPresent()) { + if (event.getZone() != null) { Decorator<Zone> zoneDecorator = ui.getHandler().getDecorator(Zone.class, null); - String zone = zoneDecorator.toString(event.getZone().get()); + String zone = zoneDecorator.toString(event.getZone()); summary = t("tutti.editSpeciesFrequencies.samplingNeeded.summary", key, nbForOperationLabel, zone, nbForZoneLabel, nbForCruiseLabel); } else { summary = t("tutti.editSpeciesFrequencies.samplingNeeded.summary.noZone", key, nbForOperationLabel, nbForZoneLabel, nbForCruiseLabel); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit 8bccbbc737559f9d5bd4659b4ec0d81cf5c3398d Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:22:14 2016 +0200 Ne pas utiliser d'optional à tout bout de champ --- .../operation/catches/species/EditSpeciesBatchPanelUIHandler.java | 2 +- .../catches/species/frequency/SpeciesFrequencyUIHandler.java | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/EditSpeciesBatchPanelUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/EditSpeciesBatchPanelUIHandler.java index 2e98a91..6ffbe81 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/EditSpeciesBatchPanelUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/EditSpeciesBatchPanelUIHandler.java @@ -116,7 +116,7 @@ public class EditSpeciesBatchPanelUIHandler extends AbstractTuttiUIHandler<EditS editBatchTitle, "", false); - frequencyEditor.getHandler().editBatch(editor, Optional.of(frequenciesTitle)); + frequencyEditor.getHandler().editBatch(editor, frequenciesTitle); // open frequency editor ui.switchToEditFrequency(); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java index c1b2c88..a51c3c6 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java @@ -855,7 +855,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci } - public void editBatch(FrequencyCellEditor editor, Optional<String> optionalTitle) { + public void editBatch(FrequencyCellEditor editor, String title) { SpeciesBatchRowModel speciesBatch = editor.getEditRow(); Objects.requireNonNull(speciesBatch, "Impossible d'éditer un lot non renseigné"); @@ -868,9 +868,8 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci maturityColumnId = Optional.empty(); } - if (optionalTitle.isPresent()) { + if (title != null) { - String title = optionalTitle.get(); frequenciesHistogramPopup.setTitle(title + t("tutti.editSpeciesFrequencies.title")); averageWeightsHistogramPopup.setTitle(title + weightUnit.decorateLabel(t("tutti.editSpeciesFrequencies.field.graphAverageWeight"))); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit b2025da20da8529095c09cbe432928383890e338 Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 03:31:02 2016 +0200 Ne pas utiliser d'optional à tout bout de champ (maturityColumnId) + meilleure gestion generics --- .../frequency/SpeciesFrequencyUIHandler.java | 42 +++++++++++----------- .../util/table/CaracteristicColumnIdentifier.java | 4 +-- 2 files changed, 24 insertions(+), 22 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java index a51c3c6..0e4d39c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java @@ -177,7 +177,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci protected PropertyChangeListener obsChangedListener; - protected Optional<CaracteristicColumnIdentifier<IndividualObservationBatchRowModel>> maturityColumnId = Optional.empty(); + protected CaracteristicColumnIdentifier<IndividualObservationBatchRowModel> maturityColumnId; protected SpeciesOrBenthosBatchUISupport speciesOrBenthosBatchUISupport; @@ -837,12 +837,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci parent.switchToEditBatch(); // on supprime la colonne maturité en fermant, pour avoir les même colonnes qu'à la création de l'écran (important pour la swing session) - if (maturityColumnId.isPresent()) { - TableColumnExt maturityColumn = ui.getObsTable().getColumnExt(maturityColumnId.get()); - ui.getObsTable().removeColumn(maturityColumn); - getObsTableModel().removeMaturityIdentifier(maturityColumnId.get()); - maturityColumnId = Optional.empty(); - } + removeMaturityColumnIfPresent(); TuttiUIContext context = getContext(); @@ -861,12 +856,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci Objects.requireNonNull(speciesBatch, "Impossible d'éditer un lot non renseigné"); // on enlève la colonne spécifique à l'espèce précédente - if (maturityColumnId.isPresent()) { - TableColumnExt maturityColumn = ui.getObsTable().getColumnExt(maturityColumnId.get()); - ui.getObsTable().removeColumn(maturityColumn); - getObsTableModel().removeMaturityIdentifier(maturityColumnId.get()); - maturityColumnId = Optional.empty(); - } + removeMaturityColumnIfPresent(); if (title != null) { @@ -1408,14 +1398,16 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci TableColumnModelExt columnModel = (TableColumnModelExt) obsTable.getColumnModel(); - maturityColumnId = Optional.of(addCaracteristicColumnToModel(obsTable, - columnModel, - caracteristicDecorator, - caracteristicTipDecorator, - caracteristicQualitativeDecorator, - caracteristic)); + maturityColumnId = addCaracteristicColumnToModel(obsTable, + columnModel, + caracteristicDecorator, + caracteristicTipDecorator, + caracteristicQualitativeDecorator, + caracteristic); + + Objects.requireNonNull(maturityColumnId); - getObsTableModel().addMaturityIdentifier(maturityColumnId.get()); + getObsTableModel().addMaturityIdentifier(maturityColumnId); // on cherche le bon index où insérer la colonne maturité (avant les autres caractéristiques, mais elle peut etre cachee) int modelIndex = columnModel.getColumnExt(IndividualObservationBatchTableModel.OTHER_CARACTERISTICS).getModelIndex(); @@ -1900,4 +1892,14 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci model.setCanDisplayNotifications(true); } } + + protected void removeMaturityColumnIfPresent() { + if (maturityColumnId != null) { + TableColumnExt maturityColumn = ui.getObsTable().getColumnExt(maturityColumnId); + ui.getObsTable().removeColumn(maturityColumn); + getObsTableModel().removeMaturityIdentifier(maturityColumnId); + maturityColumnId = null; + } + } + } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/CaracteristicColumnIdentifier.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/CaracteristicColumnIdentifier.java index 9b3c83e..e8e8150 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/CaracteristicColumnIdentifier.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/CaracteristicColumnIdentifier.java @@ -39,13 +39,13 @@ public class CaracteristicColumnIdentifier<R> extends ColumnIdentifier<R> { private static final long serialVersionUID = 1L; - public static <R> CaracteristicColumnIdentifier newCaracteristicId( + public static <R> CaracteristicColumnIdentifier<R> newCaracteristicId( Caracteristic caracteristic, String propertyName, String headerI18nKey, String headerTipI18nKey) { - return new CaracteristicColumnIdentifier<R>(caracteristic, propertyName, + return new CaracteristicColumnIdentifier<>(caracteristic, propertyName, headerI18nKey, headerTipI18nKey ); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/8228 in repository tutti. See https://gitlab.nuiton.org/codelutin/tutti.git commit dd2d7b6cbadd7bf52bcbc01daa02322c6cbb3f8c Author: Tony CHEMIT <chemit@codelutin.com> Date: Tue Apr 12 06:11:03 2016 +0200 Fix npe quand recopie poids + suppression méthode inutile --- .../catches/species/frequency/SpeciesFrequencyUIHandler.java | 8 ++++---- .../catches/species/frequency/SpeciesFrequencyUIModel.java | 4 ---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java index 0e4d39c..7d925f0 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java @@ -242,8 +242,8 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci getTableModel().incrementFrequencyRowsNumbers(newValue); } - Float weight = row.getWeight(); - if (model.mustCopyIndividualObservationWeight() && weight != null) { + if (model.isCopyIndividualObservationAll() && row.withWeight()) { + float weight = row.getWeight(); if (oldValue != null) { getTableModel().removeWeightToFrequencyRow(oldValue, weight); } @@ -256,7 +256,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci break; case IndividualObservationBatchRowModel.PROPERTY_WEIGHT: - if (row.isValid() && model.mustCopyIndividualObservationWeight()) { + if (row.isValid() && model.isCopyIndividualObservationAll()) { Float oldValue = (Float) evt.getOldValue(); Float newValue = (Float) evt.getNewValue(); @@ -344,7 +344,7 @@ public class SpeciesFrequencyUIHandler extends AbstractTuttiTableUIHandler<Speci if (model.mustCopyIndividualObservationSize()) { getTableModel().incrementFrequencyRowsNumbers(row); } - if (model.mustCopyIndividualObservationWeight()) { + if (model.isCopyIndividualObservationAll() && row.withWeight()) { getTableModel().addWeightToFrequencyRow(row, row.getWeight()); } } diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java index 377d728..da6a793 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIModel.java @@ -736,10 +736,6 @@ public class SpeciesFrequencyUIModel extends AbstractTuttiTableUIModel<SpeciesBa return isCopyIndividualObservationAll() || isCopyIndividualObservationSize(); } - public boolean mustCopyIndividualObservationWeight() { - return isCopyIndividualObservationAll(); - } - public boolean isCopyIndividualObservationAll() { return copyIndividualObservationMode == CopyIndividualObservationMode.ALL; } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm