
001package org.hl7.fhir.convertors.conv30_40.resources30_40; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_40; 004import org.hl7.fhir.convertors.conv30_40.datatypes30_40.Reference30_40; 005import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.CodeableConcept30_40; 006import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Coding30_40; 007import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Period30_40; 008import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Signature30_40; 009import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.Instant30_40; 010import org.hl7.fhir.exceptions.FHIRException; 011import org.hl7.fhir.r4.model.*; 012 013public class Provenance30_40 { 014 015 public static org.hl7.fhir.r4.model.CodeableConcept convertCodingToCodeableConcept(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { 016 if (src == null) 017 return null; 018 org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); 019 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 020 if (src.hasSystem()) 021 tgt.getCodingFirstRep().setSystem(src.getSystem()); 022 if (src.hasVersion()) 023 tgt.getCodingFirstRep().setVersion(src.getVersion()); 024 if (src.hasCode()) 025 tgt.getCodingFirstRep().setCode(src.getCode()); 026 if (src.hasDisplay()) 027 tgt.getCodingFirstRep().setDisplay(src.getDisplay()); 028 if (src.hasUserSelected()) 029 tgt.getCodingFirstRep().setUserSelected(src.getUserSelected()); 030 return tgt; 031 } 032 033 public static org.hl7.fhir.dstu3.model.Provenance convertProvenance(org.hl7.fhir.r4.model.Provenance src) throws FHIRException { 034 if (src == null) 035 return null; 036 org.hl7.fhir.dstu3.model.Provenance tgt = new org.hl7.fhir.dstu3.model.Provenance(); 037 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 038 for (org.hl7.fhir.r4.model.Reference t : src.getTarget()) tgt.addTarget(Reference30_40.convertReference(t)); 039 if (src.hasOccurredPeriod()) 040 tgt.setPeriod(Period30_40.convertPeriod(src.getOccurredPeriod())); 041 if (src.hasRecorded()) 042 tgt.setRecordedElement(Instant30_40.convertInstant(src.getRecordedElement())); 043 for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) tgt.addPolicy(t.getValue()); 044 if (src.hasLocation()) 045 tgt.setLocation(Reference30_40.convertReference(src.getLocation())); 046 for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) 047 for (org.hl7.fhir.r4.model.Coding tc : t.getCoding()) tgt.addReason(Coding30_40.convertCoding(tc)); 048 if (src.hasActivity()) 049 tgt.setActivity(Coding30_40.convertCoding(src.getActivity())); 050 for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) 051 tgt.addAgent(convertProvenanceAgentComponent(t)); 052 for (org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) 053 tgt.addEntity(convertProvenanceEntityComponent(t)); 054 for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) tgt.addSignature(Signature30_40.convertSignature(t)); 055 return tgt; 056 } 057 058 public static org.hl7.fhir.r4.model.Provenance convertProvenance(org.hl7.fhir.dstu3.model.Provenance src) throws FHIRException { 059 if (src == null) 060 return null; 061 org.hl7.fhir.r4.model.Provenance tgt = new org.hl7.fhir.r4.model.Provenance(); 062 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 063 for (org.hl7.fhir.dstu3.model.Reference t : src.getTarget()) tgt.addTarget(Reference30_40.convertReference(t)); 064 if (src.hasPeriod()) 065 tgt.setOccurred(Period30_40.convertPeriod(src.getPeriod())); 066 if (src.hasRecorded()) 067 tgt.setRecordedElement(Instant30_40.convertInstant(src.getRecordedElement())); 068 for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) tgt.addPolicy(t.getValue()); 069 if (src.hasLocation()) 070 tgt.setLocation(Reference30_40.convertReference(src.getLocation())); 071 for (org.hl7.fhir.dstu3.model.Coding t : src.getReason()) tgt.addReason(convertCodingToCodeableConcept(t)); 072 if (src.hasActivity()) 073 tgt.setActivity(convertCodingToCodeableConcept(src.getActivity())); 074 for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) 075 tgt.addAgent(convertProvenanceAgentComponent(t)); 076 for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) 077 tgt.addEntity(convertProvenanceEntityComponent(t)); 078 for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) 079 tgt.addSignature(Signature30_40.convertSignature(t)); 080 return tgt; 081 } 082 083 public static org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { 084 if (src == null) 085 return null; 086 org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent(); 087 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 088 for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) 089 tgt.addRole(CodeableConcept30_40.convertCodeableConcept(t)); 090 if (src.hasWho()) 091 tgt.setWho(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getWho())); 092 if (src.hasOnBehalfOf()) 093 tgt.setOnBehalfOf(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getOnBehalfOf())); 094 return tgt; 095 } 096 097 public static org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { 098 if (src == null) 099 return null; 100 org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent(); 101 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 102 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) 103 tgt.addRole(CodeableConcept30_40.convertCodeableConcept(t)); 104 if (src.hasWho()) { 105 Type t = ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getWho()); 106 if (t instanceof Reference) 107 tgt.setWho((Reference) t); 108 if (t instanceof UriType) 109 tgt.getWho().setReference(t.primitiveValue()); 110 } 111 if (src.hasOnBehalfOf()) { 112 Type t = ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getOnBehalfOf()); 113 if (t instanceof Reference) 114 tgt.setOnBehalfOf((Reference) t); 115 if (t instanceof UriType) 116 tgt.getOnBehalfOf().setReference(t.primitiveValue()); 117 } 118 return tgt; 119 } 120 121 public static org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { 122 if (src == null) 123 return null; 124 org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent(); 125 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 126 if (src.hasRole()) 127 tgt.setRoleElement(convertProvenanceEntityRole(src.getRoleElement())); 128 if (src.hasWhat()) 129 tgt.setWhat(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getWhat())); 130 for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) 131 tgt.addAgent(convertProvenanceAgentComponent(t)); 132 return tgt; 133 } 134 135 public static org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { 136 if (src == null) 137 return null; 138 org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent(); 139 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyBackboneElement(src,tgt); 140 if (src.hasRole()) 141 tgt.setRoleElement(convertProvenanceEntityRole(src.getRoleElement())); 142 if (src.hasWhat()) { 143 Type t = ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getWhat()); 144 if (t instanceof Reference) 145 tgt.setWhat((Reference) t); 146 else if (t instanceof Identifier) 147 tgt.getWhat().setIdentifier((Identifier) t); 148 else if (t instanceof UriType) 149 tgt.getWhat().setReference(t.primitiveValue()); 150 } 151 for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) 152 tgt.addAgent(convertProvenanceAgentComponent(t)); 153 return tgt; 154 } 155 156 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole> convertProvenanceEntityRole(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole> src) throws FHIRException { 157 if (src == null || src.isEmpty()) 158 return null; 159 Enumeration<Provenance.ProvenanceEntityRole> tgt = new Enumeration<>(new Provenance.ProvenanceEntityRoleEnumFactory()); 160 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 161 if (src.getValue() == null) { 162 tgt.setValue(null); 163 } else { 164 switch (src.getValue()) { 165 case DERIVATION: 166 tgt.setValue(Provenance.ProvenanceEntityRole.DERIVATION); 167 break; 168 case REVISION: 169 tgt.setValue(Provenance.ProvenanceEntityRole.REVISION); 170 break; 171 case QUOTATION: 172 tgt.setValue(Provenance.ProvenanceEntityRole.QUOTATION); 173 break; 174 case SOURCE: 175 tgt.setValue(Provenance.ProvenanceEntityRole.SOURCE); 176 break; 177 case REMOVAL: 178 tgt.setValue(Provenance.ProvenanceEntityRole.REMOVAL); 179 break; 180 default: 181 tgt.setValue(Provenance.ProvenanceEntityRole.NULL); 182 break; 183 } 184 } 185 return tgt; 186 } 187 188 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole> convertProvenanceEntityRole(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole> src) throws FHIRException { 189 if (src == null || src.isEmpty()) 190 return null; 191 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRoleEnumFactory()); 192 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 193 if (src.getValue() == null) { 194 tgt.setValue(null); 195 } else { 196 switch (src.getValue()) { 197 case DERIVATION: 198 tgt.setValue(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.DERIVATION); 199 break; 200 case REVISION: 201 tgt.setValue(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REVISION); 202 break; 203 case QUOTATION: 204 tgt.setValue(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.QUOTATION); 205 break; 206 case SOURCE: 207 tgt.setValue(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.SOURCE); 208 break; 209 case REMOVAL: 210 tgt.setValue(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REMOVAL); 211 break; 212 default: 213 tgt.setValue(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.NULL); 214 break; 215 } 216 } 217 return tgt; 218 } 219}