This repository has been archived by the owner on Mar 25, 2022. It is now read-only.
/
BaseOpenMRSDataUtil.java
78 lines (66 loc) · 4.28 KB
/
BaseOpenMRSDataUtil.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
package org.openmrs.module.fhir.api.util;
import org.hl7.fhir.dstu3.model.DomainResource;
import org.hl7.fhir.dstu3.model.Element;
import org.hl7.fhir.dstu3.model.Extension;
import org.openmrs.BaseOpenmrsData;
import org.openmrs.BaseOpenmrsMetadata;
public final class BaseOpenMRSDataUtil {
private BaseOpenMRSDataUtil() { }
public static void setBaseExtensionFields(DomainResource fhirResource, BaseOpenmrsData openmrsData) {
fhirResource.addExtension(ExtensionsUtil.createDateCreatedExtension(openmrsData.getDateCreated()));
fhirResource.addExtension(ExtensionsUtil.createCreatorExtension(openmrsData.getCreator()));
if (openmrsData.getDateChanged() != null) {
fhirResource.addExtension(ExtensionsUtil.createDateChangedExtension(openmrsData.getDateChanged()));
fhirResource.addExtension(ExtensionsUtil.createChangedByExtension(openmrsData.getChangedBy()));
}
if (openmrsData.getVoided()) {
fhirResource.addExtension(ExtensionsUtil.createVoidedExtension(openmrsData.getVoided()));
fhirResource.addExtension(ExtensionsUtil.createDateVoidedExtension(openmrsData.getDateVoided()));
fhirResource.addExtension(ExtensionsUtil.createVoidedByExtension(openmrsData.getVoidedBy()));
fhirResource.addExtension(ExtensionsUtil.createVoidReasonExtension(openmrsData.getVoidReason()));
}
}
public static void setBaseExtensionFields(Element element, BaseOpenmrsData openmrsData) {
element.addExtension(ExtensionsUtil.createDateCreatedExtension(openmrsData.getDateCreated()));
element.addExtension(ExtensionsUtil.createCreatorExtension(openmrsData.getCreator()));
if (openmrsData.getDateChanged() != null) {
element.addExtension(ExtensionsUtil.createDateChangedExtension(openmrsData.getDateChanged()));
element.addExtension(ExtensionsUtil.createChangedByExtension(openmrsData.getChangedBy()));
}
if (openmrsData.getVoided()) {
element.addExtension(ExtensionsUtil.createVoidedExtension(openmrsData.getVoided()));
element.addExtension(ExtensionsUtil.createDateVoidedExtension(openmrsData.getDateVoided()));
element.addExtension(ExtensionsUtil.createVoidedByExtension(openmrsData.getVoidedBy()));
element.addExtension(ExtensionsUtil.createVoidReasonExtension(openmrsData.getVoidReason()));
}
}
public static void setBaseExtensionFields(DomainResource fhirResource, BaseOpenmrsMetadata openmrsMetadata) {
fhirResource.addExtension(ExtensionsUtil.createDateCreatedExtension(openmrsMetadata.getDateCreated()));
fhirResource.addExtension(ExtensionsUtil.createCreatorExtension(openmrsMetadata.getCreator()));
if (openmrsMetadata.getDateChanged() != null) {
fhirResource.addExtension(ExtensionsUtil.createDateChangedExtension(openmrsMetadata.getDateChanged()));
fhirResource.addExtension(ExtensionsUtil.createChangedByExtension(openmrsMetadata.getChangedBy()));
}
if (openmrsMetadata.getRetired()) {
fhirResource.addExtension(ExtensionsUtil.createRetiredExtension(openmrsMetadata.getRetired()));
fhirResource.addExtension(ExtensionsUtil.createDateRetiredExtension(openmrsMetadata.getDateRetired()));
fhirResource.addExtension(ExtensionsUtil.createRetiredByExtension(openmrsMetadata.getRetiredBy()));
fhirResource.addExtension(ExtensionsUtil.createRetireReasonExtension(openmrsMetadata.getRetireReason()));
}
}
public static void readBaseExtensionFields(BaseOpenmrsData openmrsData, DomainResource fhirResource) {
for (Extension extension : fhirResource.getExtension()) {
ExtensionsUtil.setBaseOpenMRSData(openmrsData, extension);
}
}
public static void readBaseExtensionFields(BaseOpenmrsData openmrsData, Element fhirResource) {
for (Extension extension : fhirResource.getExtension()) {
ExtensionsUtil.setBaseOpenMRSData(openmrsData, extension);
}
}
public static void readBaseExtensionFields(BaseOpenmrsMetadata openmrsMetadata, DomainResource fhirResource) {
for (Extension extension : fhirResource.getExtension()) {
ExtensionsUtil.setBaseOpenMRSMetadata(openmrsMetadata, extension);
}
}
}