From 6fa158e435d8be4e1f667454a4e71491415d2b6d Mon Sep 17 00:00:00 2001 From: Nick <53413353+nickpalladino@users.noreply.github.com> Date: Fri, 18 Jul 2025 17:04:34 -0400 Subject: [PATCH] Don't create empty treatments array in sub-entity obs units --- .../brapi/v2/services/BrAPITrialService.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/breedinginsight/brapi/v2/services/BrAPITrialService.java b/src/main/java/org/breedinginsight/brapi/v2/services/BrAPITrialService.java index 6b7a01fec..b11983b56 100644 --- a/src/main/java/org/breedinginsight/brapi/v2/services/BrAPITrialService.java +++ b/src/main/java/org/breedinginsight/brapi/v2/services/BrAPITrialService.java @@ -501,14 +501,16 @@ public BrAPIObservationUnit createSubObservationUnit( } // Set treatment factors. - List treatmentFactors = new ArrayList<>(); - for (BrAPIObservationTreatment t : expUnit.getTreatments()) { - BrAPIObservationTreatment treatment = new BrAPIObservationTreatment(); - treatment.setFactor(t.getFactor()); - treatment.setModality(t.getModality()); - treatmentFactors.add(treatment); + if (!expUnit.getTreatments().isEmpty()) { + List treatmentFactors = new ArrayList<>(); + for (BrAPIObservationTreatment t : expUnit.getTreatments()) { + BrAPIObservationTreatment treatment = new BrAPIObservationTreatment(); + treatment.setFactor(t.getFactor()); + treatment.setModality(t.getModality()); + treatmentFactors.add(treatment); + } + observationUnit.setTreatments(treatmentFactors); } - observationUnit.setTreatments(treatmentFactors); // Put level in additional info: keep this in case we decide to rename levels in future. observationUnit.putAdditionalInfoItem(BrAPIAdditionalInfoFields.OBSERVATION_LEVEL, subEntityDatasetName);