Skip to content

Commit 9f1a3a8

Browse files
author
Adrian Clay
authored
Inline the MultiStatementObservationHolderFactory dependency (#960)
This factory didn't appear to be providing any value, and is used only by the ObservationMapper, so inline it to simplify.
1 parent 5594d34 commit 9f1a3a8

File tree

7 files changed

+13
-40
lines changed

7 files changed

+13
-40
lines changed

service/src/main/java/uk/nhs/adaptors/gp2gp/ehr/mapper/diagnosticreport/MultiStatementObservationHolderFactory.java

Lines changed: 0 additions & 19 deletions
This file was deleted.

service/src/main/java/uk/nhs/adaptors/gp2gp/ehr/mapper/diagnosticreport/ObservationMapper.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
import lombok.RequiredArgsConstructor;
3131
import lombok.extern.slf4j.Slf4j;
3232
import uk.nhs.adaptors.gp2gp.common.service.ConfidentialityService;
33+
import uk.nhs.adaptors.gp2gp.common.service.RandomIdGeneratorService;
3334
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrMapperException;
3435
import uk.nhs.adaptors.gp2gp.ehr.mapper.CodeableConceptCdMapper;
3536
import uk.nhs.adaptors.gp2gp.ehr.mapper.CommentType;
@@ -87,12 +88,11 @@ public class ObservationMapper {
8788
private final StructuredObservationValueMapper structuredObservationValueMapper;
8889
private final CodeableConceptCdMapper codeableConceptCdMapper;
8990
private final ParticipantMapper participantMapper;
90-
private final MultiStatementObservationHolderFactory multiStatementObservationHolderFactory;
91+
private final RandomIdGeneratorService randomIdGeneratorService;
9192
private final ConfidentialityService confidentialityService;
9293

9394
public String mapObservationToCompoundStatement(Observation observationAssociatedWithSpecimen) {
94-
var holder = multiStatementObservationHolderFactory.newInstance(observationAssociatedWithSpecimen);
95-
return mapAndVerify(holder);
95+
return mapAndVerify(createHolder(observationAssociatedWithSpecimen));
9696
}
9797

9898
private String mapAndVerify(MultiStatementObservationHolder observationAssociatedWithSpecimen) {
@@ -178,7 +178,7 @@ private List<MultiStatementObservationHolder> getRelatedObservations(
178178
.map(referenceElement -> messageContext.getInputBundleHolder().getResource(referenceElement))
179179
.flatMap(Optional::stream)
180180
.map(Observation.class::cast)
181-
.map(multiStatementObservationHolderFactory::newInstance)
181+
.map(observation -> createHolder(observation))
182182
.collect(Collectors.toList());
183183
}
184184

@@ -548,4 +548,8 @@ private boolean hasValidType(Observation.ObservationRelatedComponent observation
548548
private boolean hasValidComment(Observation observation) {
549549
return observation.hasComment() && hasCode(observation.getCode(), List.of(COMMENT_NOTE_CODE));
550550
}
551+
552+
private MultiStatementObservationHolder createHolder(Observation observationAssociatedWithSpecimen) {
553+
return new MultiStatementObservationHolder(observationAssociatedWithSpecimen, messageContext, randomIdGeneratorService);
554+
}
551555
}

service/src/test/java/uk/nhs/adaptors/gp2gp/ehr/mapper/EhrExtractMapperComponentTest.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import uk.nhs.adaptors.gp2gp.common.service.RandomIdGeneratorService;
2020
import uk.nhs.adaptors.gp2gp.common.service.TimestampService;
2121
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.DiagnosticReportMapper;
22-
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.MultiStatementObservationHolderFactory;
2322
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.ObservationMapper;
2423
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.SpecimenMapper;
2524
import uk.nhs.adaptors.gp2gp.ehr.mapper.parameters.EhrExtractTemplateParameters;
@@ -148,11 +147,9 @@ public void setUp() {
148147

149148
ParticipantMapper participantMapper = new ParticipantMapper();
150149
StructuredObservationValueMapper structuredObservationValueMapper = new StructuredObservationValueMapper();
151-
MultiStatementObservationHolderFactory multiStatementObservationHolderFactory =
152-
new MultiStatementObservationHolderFactory(messageContext, randomIdGeneratorService);
153150
ObservationMapper specimenObservationMapper = new ObservationMapper(
154151
messageContext, structuredObservationValueMapper, codeableConceptCdMapper,
155-
participantMapper, multiStatementObservationHolderFactory, confidentialityService);
152+
participantMapper, randomIdGeneratorService, confidentialityService);
156153
SpecimenMapper specimenMapper = new SpecimenMapper(messageContext, specimenObservationMapper,
157154
randomIdGeneratorService, confidentialityService);
158155
DocumentReferenceToNarrativeStatementMapper documentReferenceToNarrativeStatementMapper

service/src/test/java/uk/nhs/adaptors/gp2gp/ehr/mapper/EncounterComponentsMapperTest.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
import uk.nhs.adaptors.gp2gp.common.service.TimestampService;
2525
import uk.nhs.adaptors.gp2gp.ehr.exception.EhrMapperException;
2626
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.DiagnosticReportMapper;
27-
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.MultiStatementObservationHolderFactory;
2827
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.ObservationMapper;
2928
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.SpecimenMapper;
3029
import uk.nhs.adaptors.gp2gp.ehr.utils.BloodPressureValidator;
@@ -207,11 +206,9 @@ public void setUp() {
207206

208207
private @NotNull SpecimenMapper getSpecimenMapper(StructuredObservationValueMapper structuredObservationValueMapper,
209208
ParticipantMapper participantMapper) {
210-
MultiStatementObservationHolderFactory multiStatementObservationHolderFactory =
211-
new MultiStatementObservationHolderFactory(messageContext, randomIdGeneratorService);
212209
ObservationMapper specimenObservationMapper = new ObservationMapper(
213210
messageContext, structuredObservationValueMapper, codeableConceptCdMapper, participantMapper,
214-
multiStatementObservationHolderFactory, confidentialityService);
211+
randomIdGeneratorService, confidentialityService);
215212
return new SpecimenMapper(messageContext, specimenObservationMapper, randomIdGeneratorService, confidentialityService);
216213
}
217214

service/src/test/java/uk/nhs/adaptors/gp2gp/ehr/mapper/diagnosticreport/DiagnosticReportMapperTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ void When_DiagnosticReport_With_NoReferencedSpecimenAndFilingCommentWithNoCommen
275275
new StructuredObservationValueMapper(),
276276
codeableConceptCdMapper,
277277
new ParticipantMapper(),
278-
new MultiStatementObservationHolderFactory(messageContext, randomIdGeneratorService),
278+
randomIdGeneratorService,
279279
confidentialityService
280280
),
281281
randomIdGeneratorService,

service/src/test/java/uk/nhs/adaptors/gp2gp/ehr/mapper/diagnosticreport/ObservationMapperTest.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -159,15 +159,12 @@ void setUp() {
159159
when(idMapper.getOrNew(any(ResourceType.class), any(IdType.class)))
160160
.thenAnswer(params -> "Mapped-From-" + ((IdType) params.getArgument(1)).getValue());
161161

162-
MultiStatementObservationHolderFactory multiStatementObservationHolderFactory =
163-
new MultiStatementObservationHolderFactory(messageContext, randomIdGeneratorService);
164-
165162
observationMapper = new ObservationMapper(
166163
messageContext,
167164
new StructuredObservationValueMapper(),
168165
new CodeableConceptCdMapper(),
169166
new ParticipantMapper(),
170-
multiStatementObservationHolderFactory,
167+
randomIdGeneratorService,
171168
confidentialityService
172169
);
173170
}

service/src/test/java/uk/nhs/adaptors/gp2gp/uat/EhrExtractUATTest.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@
4545
import uk.nhs.adaptors.gp2gp.ehr.mapper.StructuredObservationValueMapper;
4646
import uk.nhs.adaptors.gp2gp.ehr.mapper.SupportedContentTypes;
4747
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.DiagnosticReportMapper;
48-
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.MultiStatementObservationHolderFactory;
4948
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.ObservationMapper;
5049
import uk.nhs.adaptors.gp2gp.ehr.mapper.diagnosticreport.SpecimenMapper;
5150
import uk.nhs.adaptors.gp2gp.ehr.mapper.parameters.EhrExtractTemplateParameters;
@@ -168,11 +167,9 @@ public void setUp() {
168167
CodeableConceptCdMapper codeableConceptCdMapper) {
169168
StructuredObservationValueMapper structuredObservationValueMapper = new StructuredObservationValueMapper();
170169
ParticipantMapper participantMapper = new ParticipantMapper();
171-
MultiStatementObservationHolderFactory multiStatementObservationHolderFactory =
172-
new MultiStatementObservationHolderFactory(messageContext, randomIdGeneratorService);
173170
ObservationMapper specimenObservationMapper = new ObservationMapper(
174171
messageContext, structuredObservationValueMapper, codeableConceptCdMapper, participantMapper,
175-
multiStatementObservationHolderFactory, confidentialityService);
172+
randomIdGeneratorService, confidentialityService);
176173
SpecimenMapper specimenMapper = new SpecimenMapper(messageContext, specimenObservationMapper,
177174
randomIdGeneratorService, confidentialityService);
178175
DocumentReferenceToNarrativeStatementMapper documentReferenceToNarrativeStatementMapper

0 commit comments

Comments
 (0)