Search in sources :

Example 1 with Entry

use of com.nedap.archie.rm.composition.Entry in project openEHR_SDK by ehrbase.

the class EntryPostprocessor method process.

/**
 * {@inheritDoc}
 */
@Override
public void process(String term, Entry rmObject, Map<FlatPathDto, String> values, Set<String> consumedPaths, Context<Map<FlatPathDto, String>> context) {
    consumedPaths.add(term + PATH_DIVIDER + "encoding|code");
    consumedPaths.add(term + PATH_DIVIDER + "encoding|terminology");
    Map<FlatPathDto, String> subjectValues = FlatHelper.filter(values, term + "/subject", false);
    if (!subjectValues.isEmpty()) {
        if (rmObject.getSubject() == null) {
            // If it was PartyRelated it would be set by now do to the relationship  and if it was
            // PartySelf subjectValues would be empty
            rmObject.setSubject(new PartyIdentified());
        }
        callUnmarshal(term, "subject", rmObject.getSubject(), values, consumedPaths, context, context.getNodeDeque().peek().findChildById("subject").orElse(buildDummyChild("subject", context.getNodeDeque().peek())));
    }
    PartyProxy subject = rmObject.getSubject();
    if (subject == null || (subject instanceof PartyIdentified && ((PartyIdentified) subject).getName() == null && CollectionUtils.isEmpty(((PartyIdentified) subject).getIdentifiers()) && subject.getExternalRef() == null && (!(subject instanceof PartyRelated) || ((PartyRelated) subject).getRelationship() == null || StringUtils.isEmpty(((PartyRelated) subject).getRelationship().getValue())))) {
        rmObject.setSubject(new PartySelf());
    }
    Map<FlatPathDto, String> providerList = values.entrySet().stream().filter(e -> e.getKey().startsWith(term + PATH_DIVIDER + "_provider")).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
    if (!MapUtils.isEmpty(providerList)) {
        if (!(rmObject.getProvider() instanceof PartyIdentified)) {
            rmObject.setProvider(new PartyIdentified());
        }
        PartyIdentifiedRMUnmarshaller partyIdentifiedRMUnmarshaller = new PartyIdentifiedRMUnmarshaller();
        partyIdentifiedRMUnmarshaller.handle(term + PATH_DIVIDER + "_provider", (PartyIdentified) rmObject.getProvider(), providerList, null, consumedPaths);
    }
    Map<Integer, Map<String, String>> other = extractMultiValued(term, "_other_participation", values);
    other.values().stream().map(Map::entrySet).map(s -> s.stream().collect(Collectors.toMap(e -> "ctx/" + DefaultValuePath.PARTICIPATION.getPath() + "_" + e.getKey().replace("identifiers_", "identifiers|"), e -> StringUtils.wrap(e.getValue(), '"'))).entrySet()).map(DefaultValues::buildParticipation).forEach(rmObject::addOtherParticipant);
    consumeAllMatching(term + PATH_DIVIDER + "_other_participation", values, consumedPaths, false);
    Map<FlatPathDto, String> workflowIdValues = filter(values, term + "/_work_flow_id", false);
    if (!workflowIdValues.isEmpty()) {
        ObjectRef<GenericId> ref = new ObjectRef<>();
        ref.setId(new GenericId());
        rmObject.setWorkflowId(ref);
        setValue(term + "/_work_flow_id", "id", workflowIdValues, s -> ref.getId().setValue(s), String.class, consumedPaths);
        setValue(term + "/_work_flow_id", "id_scheme", workflowIdValues, s -> ref.getId().setScheme(s), String.class, consumedPaths);
        setValue(term + "/_work_flow_id", "namespace", workflowIdValues, ref::setNamespace, String.class, consumedPaths);
        setValue(term + "/_work_flow_id", "type", workflowIdValues, ref::setType, String.class, consumedPaths);
    }
}
Also used : Entry(com.nedap.archie.rm.composition.Entry) PartyProxy(com.nedap.archie.rm.generic.PartyProxy) PartySelf(com.nedap.archie.rm.generic.PartySelf) MapUtils(org.apache.commons.collections4.MapUtils) ObjectRef(com.nedap.archie.rm.support.identification.ObjectRef) Context(org.ehrbase.serialisation.walker.Context) FlatHelper(org.ehrbase.serialisation.walker.FlatHelper) PartyIdentified(com.nedap.archie.rm.generic.PartyIdentified) DefaultValuePath(org.ehrbase.serialisation.walker.defaultvalues.DefaultValuePath) FlatPathDto(org.ehrbase.webtemplate.path.flat.FlatPathDto) Set(java.util.Set) DefaultValues(org.ehrbase.serialisation.walker.defaultvalues.DefaultValues) StringUtils(org.apache.commons.lang3.StringUtils) Collectors(java.util.stream.Collectors) CollectionUtils(org.apache.commons.collections4.CollectionUtils) PartyIdentifiedRMUnmarshaller(org.ehrbase.serialisation.flatencoding.std.umarshal.rmunmarshaller.PartyIdentifiedRMUnmarshaller) PATH_DIVIDER(org.ehrbase.webtemplate.parser.OPTParser.PATH_DIVIDER) GenericId(com.nedap.archie.rm.support.identification.GenericId) Map(java.util.Map) PartyRelated(com.nedap.archie.rm.generic.PartyRelated) GenericId(com.nedap.archie.rm.support.identification.GenericId) PartyIdentified(com.nedap.archie.rm.generic.PartyIdentified) FlatPathDto(org.ehrbase.webtemplate.path.flat.FlatPathDto) PartyRelated(com.nedap.archie.rm.generic.PartyRelated) PartySelf(com.nedap.archie.rm.generic.PartySelf) PartyIdentifiedRMUnmarshaller(org.ehrbase.serialisation.flatencoding.std.umarshal.rmunmarshaller.PartyIdentifiedRMUnmarshaller) PartyProxy(com.nedap.archie.rm.generic.PartyProxy) ObjectRef(com.nedap.archie.rm.support.identification.ObjectRef) Map(java.util.Map)

Example 2 with Entry

use of com.nedap.archie.rm.composition.Entry in project openEHR_SDK by ehrbase.

the class StdToCompositionWalker method postHandle.

@Override
protected void postHandle(Context<Map<FlatPathDto, String>> context) {
    super.postHandle(context);
    if (isRaw(context)) {
        handleRaw(context);
    }
    WebTemplateNode currentNode = context.getNodeDeque().peek();
    currentNode.getChildren().forEach(childNode -> {
        // Check for Raw in optional (skipped Nodes)
        if (context.getFlatHelper().skip(childNode, currentNode)) {
            context.getNodeDeque().push(childNode);
            context.getRmObjectDeque().push(new RMObject() {
            });
            String path = context.getFlatHelper().buildNamePath(context, true);
            Map<FlatPathDto, String> subValues = context.getObjectDeque().peek().entrySet().stream().filter(e -> e.getKey().startsWith(path + "/_" + childNode.getId())).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
            context.getObjectDeque().push(subValues);
            if (isRaw(context)) {
                handleRaw(context);
            }
            context.getNodeDeque().poll();
            context.getRmObjectDeque().poll();
            context.getObjectDeque().poll();
        }
    });
    List<? extends UnmarshalPostprocessor<? extends RMObject>> postprocessor = findUnmarshalPostprocessors(context.getRmObjectDeque().peek().getClass());
    String namePath = buildNamePathWithElementHandling(context);
    if (Entry.class.isAssignableFrom(context.getRmObjectDeque().peek().getClass())) {
        if (((Entry) context.getRmObjectDeque().peek()).getSubject() instanceof PartyRelated) {
            Optional.ofNullable(context.getNodeDeque().peek()).flatMap(c -> c.findChildById("subject")).flatMap(c -> c.findChildById("relationship")).stream().map(WebTemplateNode::getInputs).flatMap(List::stream).filter(i -> "code".equals(i.getSuffix())).map(WebTemplateInput::getList).map(l -> l.size() == 1 ? l.get(0) : null).filter(Objects::nonNull).findAny().ifPresent(v -> ((PartyRelated) ((Entry) context.getRmObjectDeque().peek()).getSubject()).setRelationship(new DvCodedText(v.getLabel(), new CodePhrase(new TerminologyId("openehr"), v.getValue()))));
        }
    }
    postprocessor.forEach(p -> ((UnmarshalPostprocessor) p).process(namePath, context.getRmObjectDeque().peek(), context.getObjectDeque().peek(), consumedPaths, context));
}
Also used : Composition(com.nedap.archie.rm.composition.Composition) TerminologyId(com.nedap.archie.rm.support.identification.TerminologyId) ToCompositionWalker(org.ehrbase.serialisation.walker.ToCompositionWalker) DefaultRMUnmarshaller(org.ehrbase.serialisation.flatencoding.std.umarshal.rmunmarshaller.DefaultRMUnmarshaller) Element(com.nedap.archie.rm.datastructures.Element) StringUtils(org.apache.commons.lang3.StringUtils) CollectionUtils(org.apache.commons.collections4.CollectionUtils) ArrayList(java.util.ArrayList) WebTemplateSkeletonBuilder(org.ehrbase.building.webtemplateskeletnbuilder.WebTemplateSkeletonBuilder) HashSet(java.util.HashSet) Map(java.util.Map) DvCodedText(com.nedap.archie.rm.datavalues.DvCodedText) CodePhrase(com.nedap.archie.rm.datatypes.CodePhrase) Entry(com.nedap.archie.rm.composition.Entry) UnmarshalPostprocessor(org.ehrbase.serialisation.flatencoding.std.umarshal.postprocessor.UnmarshalPostprocessor) DV_TEXT(org.ehrbase.util.rmconstants.RmConstants.DV_TEXT) Context(org.ehrbase.serialisation.walker.Context) ReflectionHelper(org.ehrbase.util.reflection.ReflectionHelper) ELEMENT(org.ehrbase.util.rmconstants.RmConstants.ELEMENT) CanonicalJson(org.ehrbase.serialisation.jsonencoding.CanonicalJson) DvText(com.nedap.archie.rm.datavalues.DvText) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) WebTemplateInput(org.ehrbase.webtemplate.model.WebTemplateInput) FlatPathDto(org.ehrbase.webtemplate.path.flat.FlatPathDto) Set(java.util.Set) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) DefaultValues(org.ehrbase.serialisation.walker.defaultvalues.DefaultValues) DV_CODED_TEXT(org.ehrbase.util.rmconstants.RmConstants.DV_CODED_TEXT) Collectors(java.util.stream.Collectors) ImmutablePair(org.apache.commons.lang3.tuple.ImmutablePair) UnmarshalException(org.ehrbase.serialisation.exception.UnmarshalException) JacksonUtil(org.ehrbase.serialisation.jsonencoding.JacksonUtil) Objects(java.util.Objects) WebTemplate(org.ehrbase.webtemplate.model.WebTemplate) List(java.util.List) WebTemplateUtils(org.ehrbase.webtemplate.util.WebTemplateUtils) RMObject(com.nedap.archie.rm.RMObject) Optional(java.util.Optional) RMUnmarshaller(org.ehrbase.serialisation.flatencoding.std.umarshal.rmunmarshaller.RMUnmarshaller) NodeId(org.ehrbase.serialisation.walker.NodeId) WebTemplateNode(org.ehrbase.webtemplate.model.WebTemplateNode) PartyRelated(com.nedap.archie.rm.generic.PartyRelated) Collections(java.util.Collections) Filter(org.ehrbase.webtemplate.filter.Filter) TerminologyId(com.nedap.archie.rm.support.identification.TerminologyId) DvCodedText(com.nedap.archie.rm.datavalues.DvCodedText) CodePhrase(com.nedap.archie.rm.datatypes.CodePhrase) WebTemplateNode(org.ehrbase.webtemplate.model.WebTemplateNode) FlatPathDto(org.ehrbase.webtemplate.path.flat.FlatPathDto) WebTemplateInput(org.ehrbase.webtemplate.model.WebTemplateInput) PartyRelated(com.nedap.archie.rm.generic.PartyRelated) Entry(com.nedap.archie.rm.composition.Entry) Objects(java.util.Objects) ArrayList(java.util.ArrayList) List(java.util.List) Map(java.util.Map) RMObject(com.nedap.archie.rm.RMObject)

Example 3 with Entry

use of com.nedap.archie.rm.composition.Entry in project openEHR_SDK by ehrbase.

the class WorkflowIdTestOverwrite method workflowIdInCtx.

@Override
@Test
public void workflowIdInCtx() throws Exception {
    String template = this.getFileContent("/res/Demo Vitals.opt");
    Map<String, Object> flatComposition = ImmutableMap.<String, Object>builder().put("ctx/language", "sl").put("ctx/territory", "SI").put("ctx/composer_name", "Composer").put("ctx/id_scheme", "ispek").put("ctx/id_namespace", "ispek").put("ctx/end_time", "2016-01-01T12:30:30Z").put("ctx/work_flow_id|id", "wf_id").put("ctx/work_flow_id|namespace", "wf_ns").put("ctx/work_flow_id|id_scheme", "wf_scheme").put("ctx/work_flow_id|type", "wf_type").put("vitals/vitals/haemoglobin_a1c/any_event/test_status|terminology", "local").put("vitals/vitals/haemoglobin_a1c/any_event/test_status|code", "at0037").build();
    RMDataFormat flatJson = getFlatJson(template, FlatFormat.SIM_SDT);
    Composition composition = flatJson.unmarshal(OBJECT_MAPPER.writeValueAsString(flatComposition));
    Entry contentItem = (Entry) ((Section) composition.getContent().get(0)).getItems().get(0);
    ObjectRef<? extends ObjectId> workflowId = contentItem.getWorkflowId();
    assertThat(workflowId).isNotNull();
    assertThat(workflowId.getId()).hasSameClassAs(new GenericId()).extracting(ObjectId::getValue, i -> ((GenericId) i).getScheme()).containsExactly("wf_id", "wf_scheme");
    assertThat(workflowId.getNamespace()).isEqualTo("wf_ns");
    assertThat(workflowId.getType()).isEqualTo("wf_type");
    Map<String, Object> map = OBJECT_MAPPER.readValue(flatJson.marshal(composition), Map.class);
    assertThat(map).containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|id", "wf_id").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|id_scheme", "wf_scheme").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|type", "wf_type").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|namespace", "wf_ns");
}
Also used : Entry(com.nedap.archie.rm.composition.Entry) ObjectRef(com.nedap.archie.rm.support.identification.ObjectRef) Composition(com.nedap.archie.rm.composition.Composition) ImmutableMap(com.google.common.collect.ImmutableMap) ZonedDateTime(java.time.ZonedDateTime) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Test(org.junit.Test) ObjectId(com.nedap.archie.rm.support.identification.ObjectId) Section(com.nedap.archie.rm.composition.Section) ZoneId(java.time.ZoneId) WorkflowIdTest(care.better.platform.web.template.WorkflowIdTest) OffsetDateTime(java.time.OffsetDateTime) Helper.getFlatJson(org.ehrbase.conformance_test.extern.Helper.getFlatJson) RMDataFormat(org.ehrbase.serialisation.RMDataFormat) GenericId(com.nedap.archie.rm.support.identification.GenericId) DateTimeFormatter(java.time.format.DateTimeFormatter) Map(java.util.Map) FlatFormat(org.ehrbase.serialisation.flatencoding.FlatFormat) Composition(com.nedap.archie.rm.composition.Composition) Entry(com.nedap.archie.rm.composition.Entry) GenericId(com.nedap.archie.rm.support.identification.GenericId) RMDataFormat(org.ehrbase.serialisation.RMDataFormat) Section(com.nedap.archie.rm.composition.Section) Test(org.junit.Test) WorkflowIdTest(care.better.platform.web.template.WorkflowIdTest)

Example 4 with Entry

use of com.nedap.archie.rm.composition.Entry in project openEHR_SDK by ehrbase.

the class WorkflowIdTestOverwrite method workflowIdDirect.

@Override
@Test
public void workflowIdDirect() throws Exception {
    String template = this.getFileContent("/res/Demo Vitals.opt");
    OffsetDateTime dateTime = ZonedDateTime.of(2015, 1, 1, 10, 31, 16, 0, ZoneId.systemDefault()).toOffsetDateTime();
    Map<String, Object> flatComposition = ImmutableMap.<String, Object>builder().put("ctx/language", "sl").put("ctx/territory", "SI").put("ctx/composer_name", "Composer").put("ctx/id_scheme", "ispek").put("ctx/id_namespace", "ispek").put("ctx/end_time", "2016-01-01T12:30:30Z").put("vitals/vitals/haemoglobin_a1c/history_origin", DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(dateTime)).put("vitals/vitals/haemoglobin_a1c/any_event/test_status|terminology", "local").put("vitals/vitals/haemoglobin_a1c/any_event/test_status|code", "at0037").put("vitals/vitals/haemoglobin_a1c/_work_flow_id|id", "1").put("vitals/vitals/haemoglobin_a1c/_work_flow_id|id_scheme", "x").put("vitals/vitals/haemoglobin_a1c/_work_flow_id|namespace", "y").put("vitals/vitals/haemoglobin_a1c/_work_flow_id|type", "wf").build();
    RMDataFormat flatJson = getFlatJson(template, FlatFormat.SIM_SDT);
    Composition composition = flatJson.unmarshal(OBJECT_MAPPER.writeValueAsString(flatComposition));
    Entry contentItem = (Entry) ((Section) composition.getContent().get(0)).getItems().get(0);
    ObjectRef<? extends ObjectId> workflowId = contentItem.getWorkflowId();
    assertThat(workflowId).isNotNull();
    assertThat(workflowId.getId()).hasSameClassAs(new GenericId()).extracting(ObjectId::getValue, i -> ((GenericId) i).getScheme()).containsExactly("1", "x");
    assertThat(workflowId.getNamespace()).isEqualTo("y");
    assertThat(workflowId.getType()).isEqualTo("wf");
    Map<String, Object> map = OBJECT_MAPPER.readValue(flatJson.marshal(composition), Map.class);
    assertThat(map).containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|id", "1").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|id_scheme", "x").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|type", "wf").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|namespace", "y");
}
Also used : Entry(com.nedap.archie.rm.composition.Entry) ObjectRef(com.nedap.archie.rm.support.identification.ObjectRef) Composition(com.nedap.archie.rm.composition.Composition) ImmutableMap(com.google.common.collect.ImmutableMap) ZonedDateTime(java.time.ZonedDateTime) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Test(org.junit.Test) ObjectId(com.nedap.archie.rm.support.identification.ObjectId) Section(com.nedap.archie.rm.composition.Section) ZoneId(java.time.ZoneId) WorkflowIdTest(care.better.platform.web.template.WorkflowIdTest) OffsetDateTime(java.time.OffsetDateTime) Helper.getFlatJson(org.ehrbase.conformance_test.extern.Helper.getFlatJson) RMDataFormat(org.ehrbase.serialisation.RMDataFormat) GenericId(com.nedap.archie.rm.support.identification.GenericId) DateTimeFormatter(java.time.format.DateTimeFormatter) Map(java.util.Map) FlatFormat(org.ehrbase.serialisation.flatencoding.FlatFormat) Composition(com.nedap.archie.rm.composition.Composition) Entry(com.nedap.archie.rm.composition.Entry) GenericId(com.nedap.archie.rm.support.identification.GenericId) OffsetDateTime(java.time.OffsetDateTime) RMDataFormat(org.ehrbase.serialisation.RMDataFormat) Section(com.nedap.archie.rm.composition.Section) Test(org.junit.Test) WorkflowIdTest(care.better.platform.web.template.WorkflowIdTest)

Example 5 with Entry

use of com.nedap.archie.rm.composition.Entry in project openEHR_SDK by ehrbase.

the class WorkflowIdTestOverwrite method workflowIdInCtxAndDirect.

@Override
@Test
public void workflowIdInCtxAndDirect() throws Exception {
    String template = this.getFileContent("/res/Demo Vitals.opt");
    Map<String, Object> flatComposition = ImmutableMap.<String, Object>builder().put("ctx/language", "sl").put("ctx/territory", "SI").put("ctx/composer_name", "Composer").put("ctx/id_scheme", "ispek").put("ctx/id_namespace", "ispek").put("ctx/end_time", "2016-01-01T12:30:30Z").put("ctx/work_flow_id|id", "wf_id").put("ctx/work_flow_id|namespace", "wf_ns").put("ctx/work_flow_id|id_scheme", "wf_scheme").put("ctx/work_flow_id|type", "wf_type").put("vitals/vitals/haemoglobin_a1c/any_event/test_status|terminology", "local").put("vitals/vitals/haemoglobin_a1c/any_event/test_status|code", "at0037").put("vitals/vitals/haemoglobin_a1c:1/any_event/test_status|terminology", "local").put("vitals/vitals/haemoglobin_a1c:1/any_event/test_status|code", "at0037").put("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|id", "1").put("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|id_scheme", "x").put("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|namespace", "y").put("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|type", "wf").build();
    RMDataFormat flatJson = getFlatJson(template, FlatFormat.SIM_SDT);
    Composition composition = flatJson.unmarshal(OBJECT_MAPPER.writeValueAsString(flatComposition));
    Entry contentItem1 = (Entry) ((Section) composition.getContent().get(0)).getItems().get(0);
    ObjectRef<? extends ObjectId> workflowId1 = contentItem1.getWorkflowId();
    assertThat(workflowId1).isNotNull();
    assertThat(workflowId1.getId()).hasSameClassAs(new GenericId()).extracting(ObjectId::getValue, i -> ((GenericId) i).getScheme()).containsExactly("wf_id", "wf_scheme");
    assertThat(workflowId1.getNamespace()).isEqualTo("wf_ns");
    assertThat(workflowId1.getType()).isEqualTo("wf_type");
    Entry contentItem2 = (Entry) ((Section) composition.getContent().get(0)).getItems().get(1);
    ObjectRef<? extends ObjectId> workflowId2 = contentItem2.getWorkflowId();
    assertThat(workflowId2).isNotNull();
    assertThat(workflowId2.getId()).hasSameClassAs(new GenericId()).extracting(ObjectId::getValue, i -> ((GenericId) i).getScheme()).containsExactly("1", "x");
    assertThat(workflowId2.getNamespace()).isEqualTo("y");
    assertThat(workflowId2.getType()).isEqualTo("wf");
    Map<String, Object> map = OBJECT_MAPPER.readValue(flatJson.marshal(composition), Map.class);
    assertThat(map).containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|id", "wf_id").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|id_scheme", "wf_scheme").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|type", "wf_type").containsEntry("vitals/vitals/haemoglobin_a1c:0/_work_flow_id|namespace", "wf_ns").containsEntry("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|id", "1").containsEntry("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|id_scheme", "x").containsEntry("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|type", "wf").containsEntry("vitals/vitals/haemoglobin_a1c:1/_work_flow_id|namespace", "y");
}
Also used : Entry(com.nedap.archie.rm.composition.Entry) ObjectRef(com.nedap.archie.rm.support.identification.ObjectRef) Composition(com.nedap.archie.rm.composition.Composition) ImmutableMap(com.google.common.collect.ImmutableMap) ZonedDateTime(java.time.ZonedDateTime) Assertions.assertThat(org.assertj.core.api.Assertions.assertThat) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) Test(org.junit.Test) ObjectId(com.nedap.archie.rm.support.identification.ObjectId) Section(com.nedap.archie.rm.composition.Section) ZoneId(java.time.ZoneId) WorkflowIdTest(care.better.platform.web.template.WorkflowIdTest) OffsetDateTime(java.time.OffsetDateTime) Helper.getFlatJson(org.ehrbase.conformance_test.extern.Helper.getFlatJson) RMDataFormat(org.ehrbase.serialisation.RMDataFormat) GenericId(com.nedap.archie.rm.support.identification.GenericId) DateTimeFormatter(java.time.format.DateTimeFormatter) Map(java.util.Map) FlatFormat(org.ehrbase.serialisation.flatencoding.FlatFormat) Composition(com.nedap.archie.rm.composition.Composition) Entry(com.nedap.archie.rm.composition.Entry) GenericId(com.nedap.archie.rm.support.identification.GenericId) RMDataFormat(org.ehrbase.serialisation.RMDataFormat) Section(com.nedap.archie.rm.composition.Section) Test(org.junit.Test) WorkflowIdTest(care.better.platform.web.template.WorkflowIdTest)

Aggregations

Entry (com.nedap.archie.rm.composition.Entry)6 Composition (com.nedap.archie.rm.composition.Composition)5 Map (java.util.Map)5 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)4 GenericId (com.nedap.archie.rm.support.identification.GenericId)4 ObjectRef (com.nedap.archie.rm.support.identification.ObjectRef)4 WorkflowIdTest (care.better.platform.web.template.WorkflowIdTest)3 ImmutableMap (com.google.common.collect.ImmutableMap)3 Section (com.nedap.archie.rm.composition.Section)3 PartyRelated (com.nedap.archie.rm.generic.PartyRelated)3 ObjectId (com.nedap.archie.rm.support.identification.ObjectId)3 OffsetDateTime (java.time.OffsetDateTime)3 ZoneId (java.time.ZoneId)3 ZonedDateTime (java.time.ZonedDateTime)3 DateTimeFormatter (java.time.format.DateTimeFormatter)3 Assertions.assertThat (org.assertj.core.api.Assertions.assertThat)3 Helper.getFlatJson (org.ehrbase.conformance_test.extern.Helper.getFlatJson)3 RMDataFormat (org.ehrbase.serialisation.RMDataFormat)3 FlatFormat (org.ehrbase.serialisation.flatencoding.FlatFormat)3 Test (org.junit.Test)3