001package org.hl7.fhir.convertors.conv10_30.datatypes10_30; 002 003import java.util.ArrayList; 004 005import org.hl7.fhir.convertors.advisors.impl.BaseAdvisor_10_30; 006import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Address10_30; 007import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Age10_30; 008import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Annotation10_30; 009import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Attachment10_30; 010import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.CodeableConcept10_30; 011import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Coding10_30; 012import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.ContactPoint10_30; 013import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Count10_30; 014import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Distance10_30; 015import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Duration10_30; 016import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.HumanName10_30; 017import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Identifier10_30; 018import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Money10_30; 019import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Period10_30; 020import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Quantity10_30; 021import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Range10_30; 022import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Ratio10_30; 023import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.SampledData10_30; 024import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Signature10_30; 025import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.SimpleQuantity10_30; 026import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Timing10_30; 027import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Base64Binary10_30; 028import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Boolean10_30; 029import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Code10_30; 030import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Date10_30; 031import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.DateTime10_30; 032import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Decimal10_30; 033import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Id10_30; 034import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Instant10_30; 035import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Integer10_30; 036import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.MarkDown10_30; 037import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Oid10_30; 038import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.PositiveInt10_30; 039import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.String10_30; 040import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Time10_30; 041import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.UnsignedInt10_30; 042import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Uri10_30; 043import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Uuid10_30; 044import org.hl7.fhir.exceptions.FHIRException; 045 046public class Type10_30 { 047 048 private final BaseAdvisor_10_30 advisor; 049 050 public Type10_30(BaseAdvisor_10_30 advisor) { 051 this.advisor = advisor; 052 } 053 054 public org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.dstu2.model.Type src) throws FHIRException { 055 if (src == null || src.isEmpty()) return null; 056 if (src instanceof org.hl7.fhir.dstu2.model.Base64BinaryType) 057 return Base64Binary10_30.convertBase64Binary((org.hl7.fhir.dstu2.model.Base64BinaryType) src); 058 if (src instanceof org.hl7.fhir.dstu2.model.BooleanType) 059 return Boolean10_30.convertBoolean((org.hl7.fhir.dstu2.model.BooleanType) src); 060 if (src instanceof org.hl7.fhir.dstu2.model.CodeType) 061 return Code10_30.convertCode((org.hl7.fhir.dstu2.model.CodeType) src); 062 if (src instanceof org.hl7.fhir.dstu2.model.DateType) 063 return Date10_30.convertDate((org.hl7.fhir.dstu2.model.DateType) src); 064 if (src instanceof org.hl7.fhir.dstu2.model.DateTimeType) 065 return DateTime10_30.convertDateTime((org.hl7.fhir.dstu2.model.DateTimeType) src); 066 if (src instanceof org.hl7.fhir.dstu2.model.DecimalType) 067 return Decimal10_30.convertDecimal((org.hl7.fhir.dstu2.model.DecimalType) src); 068 if (src instanceof org.hl7.fhir.dstu2.model.IdType) return Id10_30.convertId((org.hl7.fhir.dstu2.model.IdType) src); 069 if (src instanceof org.hl7.fhir.dstu2.model.InstantType) 070 return Instant10_30.convertInstant((org.hl7.fhir.dstu2.model.InstantType) src); 071 if (src instanceof org.hl7.fhir.dstu2.model.PositiveIntType) 072 return PositiveInt10_30.convertPositiveInt((org.hl7.fhir.dstu2.model.PositiveIntType) src); 073 if (src instanceof org.hl7.fhir.dstu2.model.UnsignedIntType) 074 return UnsignedInt10_30.convertUnsignedInt((org.hl7.fhir.dstu2.model.UnsignedIntType) src); 075 if (src instanceof org.hl7.fhir.dstu2.model.IntegerType) 076 return Integer10_30.convertInteger((org.hl7.fhir.dstu2.model.IntegerType) src); 077 if (src instanceof org.hl7.fhir.dstu2.model.MarkdownType) 078 return MarkDown10_30.convertMarkdown((org.hl7.fhir.dstu2.model.MarkdownType) src); 079 if (src instanceof org.hl7.fhir.dstu2.model.OidType) 080 return Oid10_30.convertOid((org.hl7.fhir.dstu2.model.OidType) src); 081 if (src instanceof org.hl7.fhir.dstu2.model.StringType) 082 return String10_30.convertString((org.hl7.fhir.dstu2.model.StringType) src); 083 if (src instanceof org.hl7.fhir.dstu2.model.TimeType) 084 return Time10_30.convertTime((org.hl7.fhir.dstu2.model.TimeType) src); 085 if (src instanceof org.hl7.fhir.dstu2.model.UuidType) 086 return Uuid10_30.convertUuid((org.hl7.fhir.dstu2.model.UuidType) src); 087 if (src instanceof org.hl7.fhir.dstu2.model.UriType) 088 return Uri10_30.convertUri((org.hl7.fhir.dstu2.model.UriType) src); 089 if (src instanceof org.hl7.fhir.dstu2.model.Extension) 090 return Extension10_30.convertExtension((org.hl7.fhir.dstu2.model.Extension) src); 091 if (src instanceof org.hl7.fhir.dstu2.model.Narrative) 092 return Narrative10_30.convertNarrative((org.hl7.fhir.dstu2.model.Narrative) src); 093 if (src instanceof org.hl7.fhir.dstu2.model.Annotation) 094 return Annotation10_30.convertAnnotation((org.hl7.fhir.dstu2.model.Annotation) src); 095 if (src instanceof org.hl7.fhir.dstu2.model.Attachment) 096 return Attachment10_30.convertAttachment((org.hl7.fhir.dstu2.model.Attachment) src); 097 if (src instanceof org.hl7.fhir.dstu2.model.CodeableConcept) 098 return CodeableConcept10_30.convertCodeableConcept((org.hl7.fhir.dstu2.model.CodeableConcept) src); 099 if (src instanceof org.hl7.fhir.dstu2.model.Coding) 100 return Coding10_30.convertCoding((org.hl7.fhir.dstu2.model.Coding) src); 101 if (src instanceof org.hl7.fhir.dstu2.model.Identifier) 102 return Identifier10_30.convertIdentifier((org.hl7.fhir.dstu2.model.Identifier) src); 103 if (src instanceof org.hl7.fhir.dstu2.model.Period) 104 return Period10_30.convertPeriod((org.hl7.fhir.dstu2.model.Period) src); 105 if (src instanceof org.hl7.fhir.dstu2.model.Age) return Age10_30.convertAge((org.hl7.fhir.dstu2.model.Age) src); 106 if (src instanceof org.hl7.fhir.dstu2.model.Count) 107 return Count10_30.convertCount((org.hl7.fhir.dstu2.model.Count) src); 108 if (src instanceof org.hl7.fhir.dstu2.model.Distance) 109 return Distance10_30.convertDistance((org.hl7.fhir.dstu2.model.Distance) src); 110 if (src instanceof org.hl7.fhir.dstu2.model.Duration) 111 return Duration10_30.convertDuration((org.hl7.fhir.dstu2.model.Duration) src); 112 if (src instanceof org.hl7.fhir.dstu2.model.Money) 113 return Money10_30.convertMoney((org.hl7.fhir.dstu2.model.Money) src); 114 if (src instanceof org.hl7.fhir.dstu2.model.SimpleQuantity) 115 return SimpleQuantity10_30.convertSimpleQuantity((org.hl7.fhir.dstu2.model.SimpleQuantity) src); 116 if (src instanceof org.hl7.fhir.dstu2.model.Quantity) 117 return Quantity10_30.convertQuantity((org.hl7.fhir.dstu2.model.Quantity) src); 118 if (src instanceof org.hl7.fhir.dstu2.model.Range) 119 return Range10_30.convertRange((org.hl7.fhir.dstu2.model.Range) src); 120 if (src instanceof org.hl7.fhir.dstu2.model.Ratio) 121 return Ratio10_30.convertRatio((org.hl7.fhir.dstu2.model.Ratio) src); 122 if (src instanceof org.hl7.fhir.dstu2.model.Reference) 123 return Reference10_30.convertReference((org.hl7.fhir.dstu2.model.Reference) src); 124 if (src instanceof org.hl7.fhir.dstu2.model.SampledData) 125 return SampledData10_30.convertSampledData((org.hl7.fhir.dstu2.model.SampledData) src); 126 if (src instanceof org.hl7.fhir.dstu2.model.Signature) 127 return Signature10_30.convertSignature((org.hl7.fhir.dstu2.model.Signature) src); 128 if (src instanceof org.hl7.fhir.dstu2.model.Address) 129 return Address10_30.convertAddress((org.hl7.fhir.dstu2.model.Address) src); 130 if (src instanceof org.hl7.fhir.dstu2.model.ContactPoint) 131 return ContactPoint10_30.convertContactPoint((org.hl7.fhir.dstu2.model.ContactPoint) src); 132 if (src instanceof org.hl7.fhir.dstu2.model.ElementDefinition) 133 return ElementDefinition10_30.convertElementDefinition((org.hl7.fhir.dstu2.model.ElementDefinition) src, new ArrayList<String>()); 134 if (src instanceof org.hl7.fhir.dstu2.model.HumanName) 135 return HumanName10_30.convertHumanName((org.hl7.fhir.dstu2.model.HumanName) src); 136 if (src instanceof org.hl7.fhir.dstu2.model.Meta) return Meta10_30.convertMeta((org.hl7.fhir.dstu2.model.Meta) src); 137 if (src instanceof org.hl7.fhir.dstu2.model.Timing) 138 return Timing10_30.convertTiming((org.hl7.fhir.dstu2.model.Timing) src); 139 if (advisor.failFastOnNullOrUnknownEntry()) { 140 throw new FHIRException("The type " + src.fhirType()+" cannot be converted from R2 to R3"); 141 } else { 142 return null; 143 } 144 } 145 146 public org.hl7.fhir.dstu2.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { 147 if (src == null || src.isEmpty()) return null; 148 if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) 149 return Base64Binary10_30.convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); 150 if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) 151 return Boolean10_30.convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); 152 if (src instanceof org.hl7.fhir.dstu3.model.CodeType) 153 return Code10_30.convertCode((org.hl7.fhir.dstu3.model.CodeType) src); 154 if (src instanceof org.hl7.fhir.dstu3.model.DateType) 155 return Date10_30.convertDate((org.hl7.fhir.dstu3.model.DateType) src); 156 if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) 157 return DateTime10_30.convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); 158 if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) 159 return Decimal10_30.convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); 160 if (src instanceof org.hl7.fhir.dstu3.model.IdType) return Id10_30.convertId((org.hl7.fhir.dstu3.model.IdType) src); 161 if (src instanceof org.hl7.fhir.dstu3.model.InstantType) 162 return Instant10_30.convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); 163 if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) 164 return PositiveInt10_30.convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); 165 if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) 166 return UnsignedInt10_30.convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); 167 if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) 168 return Integer10_30.convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); 169 if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) 170 return MarkDown10_30.convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); 171 if (src instanceof org.hl7.fhir.dstu3.model.OidType) 172 return Oid10_30.convertOid((org.hl7.fhir.dstu3.model.OidType) src); 173 if (src instanceof org.hl7.fhir.dstu3.model.StringType) 174 return String10_30.convertString((org.hl7.fhir.dstu3.model.StringType) src); 175 if (src instanceof org.hl7.fhir.dstu3.model.TimeType) 176 return Time10_30.convertTime((org.hl7.fhir.dstu3.model.TimeType) src); 177 if (src instanceof org.hl7.fhir.dstu3.model.UuidType) 178 return Uuid10_30.convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); 179 if (src instanceof org.hl7.fhir.dstu3.model.UriType) 180 return Uri10_30.convertUri((org.hl7.fhir.dstu3.model.UriType) src); 181 if (src instanceof org.hl7.fhir.dstu3.model.Extension) 182 return Extension10_30.convertExtension((org.hl7.fhir.dstu3.model.Extension) src); 183 if (src instanceof org.hl7.fhir.dstu3.model.Narrative) 184 return Narrative10_30.convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); 185 if (src instanceof org.hl7.fhir.dstu3.model.Annotation) 186 return Annotation10_30.convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); 187 if (src instanceof org.hl7.fhir.dstu3.model.Attachment) 188 return Attachment10_30.convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); 189 if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) 190 return CodeableConcept10_30.convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); 191 if (src instanceof org.hl7.fhir.dstu3.model.Coding) 192 return Coding10_30.convertCoding((org.hl7.fhir.dstu3.model.Coding) src); 193 if (src instanceof org.hl7.fhir.dstu3.model.Identifier) 194 return Identifier10_30.convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); 195 if (src instanceof org.hl7.fhir.dstu3.model.Period) 196 return Period10_30.convertPeriod((org.hl7.fhir.dstu3.model.Period) src); 197 if (src instanceof org.hl7.fhir.dstu3.model.Age) return Age10_30.convertAge((org.hl7.fhir.dstu3.model.Age) src); 198 if (src instanceof org.hl7.fhir.dstu3.model.Count) 199 return Count10_30.convertCount((org.hl7.fhir.dstu3.model.Count) src); 200 if (src instanceof org.hl7.fhir.dstu3.model.Distance) 201 return Distance10_30.convertDistance((org.hl7.fhir.dstu3.model.Distance) src); 202 if (src instanceof org.hl7.fhir.dstu3.model.Duration) 203 return Duration10_30.convertDuration((org.hl7.fhir.dstu3.model.Duration) src); 204 if (src instanceof org.hl7.fhir.dstu3.model.Money) 205 return Money10_30.convertMoney((org.hl7.fhir.dstu3.model.Money) src); 206 if (src instanceof org.hl7.fhir.dstu3.model.SimpleQuantity) 207 return SimpleQuantity10_30.convertSimpleQuantity((org.hl7.fhir.dstu3.model.SimpleQuantity) src); 208 if (src instanceof org.hl7.fhir.dstu3.model.Quantity) 209 return Quantity10_30.convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); 210 if (src instanceof org.hl7.fhir.dstu3.model.Range) 211 return Range10_30.convertRange((org.hl7.fhir.dstu3.model.Range) src); 212 if (src instanceof org.hl7.fhir.dstu3.model.Ratio) 213 return Ratio10_30.convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); 214 if (src instanceof org.hl7.fhir.dstu3.model.Reference) 215 return Reference10_30.convertReference((org.hl7.fhir.dstu3.model.Reference) src); 216 if (src instanceof org.hl7.fhir.dstu3.model.SampledData) 217 return SampledData10_30.convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); 218 if (src instanceof org.hl7.fhir.dstu3.model.Signature) 219 return Signature10_30.convertSignature((org.hl7.fhir.dstu3.model.Signature) src); 220 if (src instanceof org.hl7.fhir.dstu3.model.Address) 221 return Address10_30.convertAddress((org.hl7.fhir.dstu3.model.Address) src); 222 if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) 223 return ContactPoint10_30.convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); 224 if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) 225 return ElementDefinition10_30.convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); 226 if (src instanceof org.hl7.fhir.dstu3.model.HumanName) 227 return HumanName10_30.convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); 228 if (src instanceof org.hl7.fhir.dstu3.model.Meta) return Meta10_30.convertMeta((org.hl7.fhir.dstu3.model.Meta) src); 229 if (src instanceof org.hl7.fhir.dstu3.model.Timing) 230 return Timing10_30.convertTiming((org.hl7.fhir.dstu3.model.Timing) src); 231 if (advisor.failFastOnNullOrUnknownEntry()) { 232 throw new FHIRException("The type " + src.fhirType()+" cannot be converted from R3 to R2"); 233 } else { 234 return null; 235 } 236 } 237}