001package org.hl7.fhir.convertors.conv30_50.datatypes30_50; 002 003import org.hl7.fhir.convertors.advisors.impl.BaseAdvisor_30_50; 004import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Address30_50; 005import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Age30_50; 006import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Annotation30_50; 007import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Attachment30_50; 008import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.CodeableConcept30_50; 009import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Coding30_50; 010import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.ContactPoint30_50; 011import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Count30_50; 012import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Distance30_50; 013import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Duration30_50; 014import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.HumanName30_50; 015import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Identifier30_50; 016import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Money30_50; 017import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Period30_50; 018import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Quantity30_50; 019import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Range30_50; 020import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Ratio30_50; 021import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.SampledData30_50; 022import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Signature30_50; 023import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Timing30_50; 024import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Base64Binary30_50; 025import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Boolean30_50; 026import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Code30_50; 027import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Date30_50; 028import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.DateTime30_50; 029import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Decimal30_50; 030import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Id30_50; 031import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Instant30_50; 032import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Integer30_50; 033import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.MarkDown30_50; 034import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Oid30_50; 035import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.PositiveInt30_50; 036import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.String30_50; 037import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Time30_50; 038import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.UnsignedInt30_50; 039import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Uri30_50; 040import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Uuid30_50; 041import org.hl7.fhir.exceptions.FHIRException; 042 043public class Type30_50 { 044 045 private final BaseAdvisor_30_50 advisor; 046 047 public Type30_50(BaseAdvisor_30_50 advisor) { 048 this.advisor = advisor; 049 } 050 051 public org.hl7.fhir.r5.model.DataType convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { 052 if (src == null || src.isEmpty()) return null; 053 if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) 054 return Base64Binary30_50.convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); 055 if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) 056 return Boolean30_50.convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); 057 if (src instanceof org.hl7.fhir.dstu3.model.CodeType) 058 return Code30_50.convertCode((org.hl7.fhir.dstu3.model.CodeType) src); 059 if (src instanceof org.hl7.fhir.dstu3.model.DateType) 060 return Date30_50.convertDate((org.hl7.fhir.dstu3.model.DateType) src); 061 if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) 062 return DateTime30_50.convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); 063 if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) 064 return Decimal30_50.convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); 065 if (src instanceof org.hl7.fhir.dstu3.model.IdType) return Id30_50.convertId((org.hl7.fhir.dstu3.model.IdType) src); 066 if (src instanceof org.hl7.fhir.dstu3.model.InstantType) 067 return Instant30_50.convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); 068 if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) 069 return PositiveInt30_50.convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); 070 if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) 071 return UnsignedInt30_50.convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); 072 if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) 073 return Integer30_50.convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); 074 if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) 075 return MarkDown30_50.convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); 076 if (src instanceof org.hl7.fhir.dstu3.model.OidType) 077 return Oid30_50.convertOid((org.hl7.fhir.dstu3.model.OidType) src); 078 if (src instanceof org.hl7.fhir.dstu3.model.StringType) 079 return String30_50.convertString((org.hl7.fhir.dstu3.model.StringType) src); 080 if (src instanceof org.hl7.fhir.dstu3.model.TimeType) 081 return Time30_50.convertTime((org.hl7.fhir.dstu3.model.TimeType) src); 082 if (src instanceof org.hl7.fhir.dstu3.model.UuidType) 083 return Uuid30_50.convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); 084 if (src instanceof org.hl7.fhir.dstu3.model.UriType) 085 return Uri30_50.convertUri((org.hl7.fhir.dstu3.model.UriType) src); 086 if (src instanceof org.hl7.fhir.dstu3.model.Extension) 087 return Extension30_50.convertExtension((org.hl7.fhir.dstu3.model.Extension) src); 088 if (src instanceof org.hl7.fhir.dstu3.model.Narrative) 089 return Narrative30_50.convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); 090 if (src instanceof org.hl7.fhir.dstu3.model.Age) return Age30_50.convertAge((org.hl7.fhir.dstu3.model.Age) src); 091 if (src instanceof org.hl7.fhir.dstu3.model.Annotation) 092 return Annotation30_50.convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); 093 if (src instanceof org.hl7.fhir.dstu3.model.Attachment) 094 return Attachment30_50.convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); 095 if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) 096 return CodeableConcept30_50.convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); 097 if (src instanceof org.hl7.fhir.dstu3.model.Coding) 098 return Coding30_50.convertCoding((org.hl7.fhir.dstu3.model.Coding) src); 099 if (src instanceof org.hl7.fhir.dstu3.model.Count) 100 return Count30_50.convertCount((org.hl7.fhir.dstu3.model.Count) src); 101 if (src instanceof org.hl7.fhir.dstu3.model.Distance) 102 return Distance30_50.convertDistance((org.hl7.fhir.dstu3.model.Distance) src); 103 if (src instanceof org.hl7.fhir.dstu3.model.Duration) 104 return Duration30_50.convertDuration((org.hl7.fhir.dstu3.model.Duration) src); 105 if (src instanceof org.hl7.fhir.dstu3.model.Identifier) 106 return Identifier30_50.convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); 107 if (src instanceof org.hl7.fhir.dstu3.model.Money) 108 return Money30_50.convertMoney((org.hl7.fhir.dstu3.model.Money) src); 109 if (src instanceof org.hl7.fhir.dstu3.model.Period) 110 return Period30_50.convertPeriod((org.hl7.fhir.dstu3.model.Period) src); 111 if (src instanceof org.hl7.fhir.dstu3.model.Quantity) 112 return Quantity30_50.convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); 113 if (src instanceof org.hl7.fhir.dstu3.model.Range) 114 return Range30_50.convertRange((org.hl7.fhir.dstu3.model.Range) src); 115 if (src instanceof org.hl7.fhir.dstu3.model.Ratio) 116 return Ratio30_50.convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); 117 if (src instanceof org.hl7.fhir.dstu3.model.Reference) 118 return Reference30_50.convertReference((org.hl7.fhir.dstu3.model.Reference) src); 119 if (src instanceof org.hl7.fhir.dstu3.model.SampledData) 120 return SampledData30_50.convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); 121 if (src instanceof org.hl7.fhir.dstu3.model.Signature) 122 return Signature30_50.convertSignature((org.hl7.fhir.dstu3.model.Signature) src); 123 if (src instanceof org.hl7.fhir.dstu3.model.Address) 124 return Address30_50.convertAddress((org.hl7.fhir.dstu3.model.Address) src); 125 if (src instanceof org.hl7.fhir.dstu3.model.ContactDetail) 126 return ContactDetail30_50.convertContactDetail((org.hl7.fhir.dstu3.model.ContactDetail) src); 127 if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) 128 return ContactPoint30_50.convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); 129 if (src instanceof org.hl7.fhir.dstu3.model.Contributor) 130 return Contributor30_50.convertContributor((org.hl7.fhir.dstu3.model.Contributor) src); 131 if (src instanceof org.hl7.fhir.dstu3.model.Dosage) 132 return Dosage30_50.convertDosage((org.hl7.fhir.dstu3.model.Dosage) src); 133 if (src instanceof org.hl7.fhir.dstu3.model.HumanName) 134 return HumanName30_50.convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); 135 if (src instanceof org.hl7.fhir.dstu3.model.Meta) return Meta30_50.convertMeta((org.hl7.fhir.dstu3.model.Meta) src); 136 if (src instanceof org.hl7.fhir.dstu3.model.ParameterDefinition) 137 return ParameterDefinition30_50.convertParameterDefinition((org.hl7.fhir.dstu3.model.ParameterDefinition) src); 138 if (src instanceof org.hl7.fhir.dstu3.model.RelatedArtifact) 139 return RelatedArtifact30_50.convertRelatedArtifact((org.hl7.fhir.dstu3.model.RelatedArtifact) src); 140 if (src instanceof org.hl7.fhir.dstu3.model.Timing) 141 return Timing30_50.convertTiming((org.hl7.fhir.dstu3.model.Timing) src); 142 if (src instanceof org.hl7.fhir.dstu3.model.UsageContext) 143 return UsageContext30_50.convertUsageContext((org.hl7.fhir.dstu3.model.UsageContext) src); 144 if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) 145 return ElementDefinition30_50.convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); 146 if (src instanceof org.hl7.fhir.dstu3.model.DataRequirement) 147 return DataRequirement30_50.convertDataRequirement((org.hl7.fhir.dstu3.model.DataRequirement) src); 148 if (src instanceof org.hl7.fhir.dstu3.model.TriggerDefinition) 149 return TriggerDefinition30_50.convertTriggerDefinition((org.hl7.fhir.dstu3.model.TriggerDefinition) src); 150 if (advisor.failFastOnNullOrUnknownEntry()) { 151 throw new FHIRException("The type " + src.fhirType()+" cannot be converted from R3 to R5"); 152 } else { 153 return null; 154 } 155 } 156 157 public org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.r5.model.DataType src) throws FHIRException { 158 if (src == null || src.isEmpty()) return null; 159 if (src instanceof org.hl7.fhir.r5.model.Base64BinaryType) 160 return Base64Binary30_50.convertBase64Binary((org.hl7.fhir.r5.model.Base64BinaryType) src); 161 if (src instanceof org.hl7.fhir.r5.model.BooleanType) 162 return Boolean30_50.convertBoolean((org.hl7.fhir.r5.model.BooleanType) src); 163 if (src instanceof org.hl7.fhir.r5.model.CodeType) 164 return Code30_50.convertCode((org.hl7.fhir.r5.model.CodeType) src); 165 if (src instanceof org.hl7.fhir.r5.model.DateType) 166 return Date30_50.convertDate((org.hl7.fhir.r5.model.DateType) src); 167 if (src instanceof org.hl7.fhir.r5.model.DateTimeType) 168 return DateTime30_50.convertDateTime((org.hl7.fhir.r5.model.DateTimeType) src); 169 if (src instanceof org.hl7.fhir.r5.model.DecimalType) 170 return Decimal30_50.convertDecimal((org.hl7.fhir.r5.model.DecimalType) src); 171 if (src instanceof org.hl7.fhir.r5.model.IdType) return Id30_50.convertId((org.hl7.fhir.r5.model.IdType) src); 172 if (src instanceof org.hl7.fhir.r5.model.InstantType) 173 return Instant30_50.convertInstant((org.hl7.fhir.r5.model.InstantType) src); 174 if (src instanceof org.hl7.fhir.r5.model.PositiveIntType) 175 return PositiveInt30_50.convertPositiveInt((org.hl7.fhir.r5.model.PositiveIntType) src); 176 if (src instanceof org.hl7.fhir.r5.model.UnsignedIntType) 177 return UnsignedInt30_50.convertUnsignedInt((org.hl7.fhir.r5.model.UnsignedIntType) src); 178 if (src instanceof org.hl7.fhir.r5.model.Integer64Type) 179 return Decimal30_50.convertInteger64((org.hl7.fhir.r5.model.Integer64Type) src); 180 if (src instanceof org.hl7.fhir.r5.model.IntegerType) 181 return Integer30_50.convertInteger((org.hl7.fhir.r5.model.IntegerType) src); 182 if (src instanceof org.hl7.fhir.r5.model.MarkdownType) 183 return MarkDown30_50.convertMarkdown((org.hl7.fhir.r5.model.MarkdownType) src); 184 if (src instanceof org.hl7.fhir.r5.model.OidType) return Oid30_50.convertOid((org.hl7.fhir.r5.model.OidType) src); 185 if (src instanceof org.hl7.fhir.r5.model.StringType) 186 return String30_50.convertString((org.hl7.fhir.r5.model.StringType) src); 187 if (src instanceof org.hl7.fhir.r5.model.TimeType) 188 return Time30_50.convertTime((org.hl7.fhir.r5.model.TimeType) src); 189 if (src instanceof org.hl7.fhir.r5.model.UuidType) 190 return Uuid30_50.convertUuid((org.hl7.fhir.r5.model.UuidType) src); 191 if (src instanceof org.hl7.fhir.r5.model.UriType) return Uri30_50.convertUri((org.hl7.fhir.r5.model.UriType) src); 192 if (src instanceof org.hl7.fhir.r5.model.Extension) 193 return Extension30_50.convertExtension((org.hl7.fhir.r5.model.Extension) src); 194 if (src instanceof org.hl7.fhir.r5.model.Narrative) 195 return Narrative30_50.convertNarrative((org.hl7.fhir.r5.model.Narrative) src); 196 if (src instanceof org.hl7.fhir.r5.model.Age) return Age30_50.convertAge((org.hl7.fhir.r5.model.Age) src); 197 if (src instanceof org.hl7.fhir.r5.model.Annotation) 198 return Annotation30_50.convertAnnotation((org.hl7.fhir.r5.model.Annotation) src); 199 if (src instanceof org.hl7.fhir.r5.model.Attachment) 200 return Attachment30_50.convertAttachment((org.hl7.fhir.r5.model.Attachment) src); 201 if (src instanceof org.hl7.fhir.r5.model.CodeableConcept) 202 return CodeableConcept30_50.convertCodeableConcept((org.hl7.fhir.r5.model.CodeableConcept) src); 203 if (src instanceof org.hl7.fhir.r5.model.Coding) 204 return Coding30_50.convertCoding((org.hl7.fhir.r5.model.Coding) src); 205 if (src instanceof org.hl7.fhir.r5.model.Count) return Count30_50.convertCount((org.hl7.fhir.r5.model.Count) src); 206 if (src instanceof org.hl7.fhir.r5.model.Distance) 207 return Distance30_50.convertDistance((org.hl7.fhir.r5.model.Distance) src); 208 if (src instanceof org.hl7.fhir.r5.model.Duration) 209 return Duration30_50.convertDuration((org.hl7.fhir.r5.model.Duration) src); 210 if (src instanceof org.hl7.fhir.r5.model.Identifier) 211 return Identifier30_50.convertIdentifier((org.hl7.fhir.r5.model.Identifier) src); 212 if (src instanceof org.hl7.fhir.r5.model.Money) return Money30_50.convertMoney((org.hl7.fhir.r5.model.Money) src); 213 if (src instanceof org.hl7.fhir.r5.model.Period) 214 return Period30_50.convertPeriod((org.hl7.fhir.r5.model.Period) src); 215 if (src instanceof org.hl7.fhir.r5.model.Quantity) 216 return Quantity30_50.convertQuantity((org.hl7.fhir.r5.model.Quantity) src); 217 if (src instanceof org.hl7.fhir.r5.model.Range) return Range30_50.convertRange((org.hl7.fhir.r5.model.Range) src); 218 if (src instanceof org.hl7.fhir.r5.model.Ratio) return Ratio30_50.convertRatio((org.hl7.fhir.r5.model.Ratio) src); 219 if (src instanceof org.hl7.fhir.r5.model.Reference) 220 return Reference30_50.convertReference((org.hl7.fhir.r5.model.Reference) src); 221 if (src instanceof org.hl7.fhir.r5.model.SampledData) 222 return SampledData30_50.convertSampledData((org.hl7.fhir.r5.model.SampledData) src); 223 if (src instanceof org.hl7.fhir.r5.model.Signature) 224 return Signature30_50.convertSignature((org.hl7.fhir.r5.model.Signature) src); 225 if (src instanceof org.hl7.fhir.r5.model.Address) 226 return Address30_50.convertAddress((org.hl7.fhir.r5.model.Address) src); 227 if (src instanceof org.hl7.fhir.r5.model.ContactDetail) 228 return ContactDetail30_50.convertContactDetail((org.hl7.fhir.r5.model.ContactDetail) src); 229 if (src instanceof org.hl7.fhir.r5.model.ContactPoint) 230 return ContactPoint30_50.convertContactPoint((org.hl7.fhir.r5.model.ContactPoint) src); 231 if (src instanceof org.hl7.fhir.r5.model.Contributor) 232 return Contributor30_50.convertContributor((org.hl7.fhir.r5.model.Contributor) src); 233 if (src instanceof org.hl7.fhir.r5.model.Dosage) 234 return Dosage30_50.convertDosage((org.hl7.fhir.r5.model.Dosage) src); 235 if (src instanceof org.hl7.fhir.r5.model.HumanName) 236 return HumanName30_50.convertHumanName((org.hl7.fhir.r5.model.HumanName) src); 237 if (src instanceof org.hl7.fhir.r5.model.Meta) return Meta30_50.convertMeta((org.hl7.fhir.r5.model.Meta) src); 238 if (src instanceof org.hl7.fhir.r5.model.ParameterDefinition) 239 return ParameterDefinition30_50.convertParameterDefinition((org.hl7.fhir.r5.model.ParameterDefinition) src); 240 if (src instanceof org.hl7.fhir.r5.model.RelatedArtifact) 241 return RelatedArtifact30_50.convertRelatedArtifact((org.hl7.fhir.r5.model.RelatedArtifact) src); 242 if (src instanceof org.hl7.fhir.r5.model.Timing) 243 return Timing30_50.convertTiming((org.hl7.fhir.r5.model.Timing) src); 244 if (src instanceof org.hl7.fhir.r5.model.UsageContext) 245 return UsageContext30_50.convertUsageContext((org.hl7.fhir.r5.model.UsageContext) src); 246 if (src instanceof org.hl7.fhir.r5.model.ElementDefinition) 247 return ElementDefinition30_50.convertElementDefinition((org.hl7.fhir.r5.model.ElementDefinition) src); 248 if (src instanceof org.hl7.fhir.r5.model.DataRequirement) 249 return DataRequirement30_50.convertDataRequirement((org.hl7.fhir.r5.model.DataRequirement) src); 250 if (src instanceof org.hl7.fhir.r5.model.TriggerDefinition) 251 return TriggerDefinition30_50.convertTriggerDefinition((org.hl7.fhir.r5.model.TriggerDefinition) src); 252 if (advisor.failFastOnNullOrUnknownEntry()) { 253 throw new FHIRException("The type " + src.fhirType()+" cannot be converted from R5 to R3"); 254 } else { 255 return null; 256 } 257 } 258}