branch feature/8228 created (now 60197f1)
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 at 60197f1 Ne pas utiliser d'optional à tout bout de champ zone This branch includes the following new commits: new 266ae3f Ne pas tenir compte de l'algorithme si 1/n vaut 0 ou à sexer mais observation sans sexe (See #8228) new b0ce7fa Ne pas utiliser d'optional à tout bout de champ (IndividualObservationUICache#samplingCache) new ced9132 Ne pas utiliser d'optional à tout bout de champ maturityQualitativeValue new 60197f1 Ne pas utiliser d'optional à tout bout de champ zone The 4 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 60197f17e4939fc7f3ca0c4c15698b18053f54ea 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 ced91329779b44cc1351f697b8251481644c4f7b 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 b0ce7fa4fbc2d9a7adf4c1e3f6feb51e73357558 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 266ae3f1cbd5804bde4f907c42bb75bef7f03574 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) -- 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 266ae3f1cbd5804bde4f907c42bb75bef7f03574 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 e1d5c86..91add9b 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 b0ce7fa4fbc2d9a7adf4c1e3f6feb51e73357558 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 5762aef..ea8cbf1 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 @@ -519,7 +519,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 ced91329779b44cc1351f697b8251481644c4f7b 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 91add9b..ba219d5 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 ea8cbf1..7c6684d 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 @@ -220,7 +220,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: { @@ -296,8 +296,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); } @@ -319,14 +319,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; @@ -435,7 +437,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 60197f17e4939fc7f3ca0c4c15698b18053f54ea 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 6616593..1aedc60 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 ba219d5..86fa287 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.forEach(individualObservationBatch -> { @@ -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>.
participants (1)
-
codelutin.com scm