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