001package org.hl7.fhir.convertors.conv10_50.datatypes10_50;
002
003import org.hl7.fhir.convertors.advisors.impl.BaseAdvisor_10_50;
004import org.hl7.fhir.convertors.conv10_50.datatypes10_50.complextypes10_50.*;
005import org.hl7.fhir.convertors.conv10_50.datatypes10_50.primitivetypes10_50.*;
006import org.hl7.fhir.exceptions.FHIRException;
007
008public class Type10_50 {
009
010  private final BaseAdvisor_10_50 advisor;
011
012  public Type10_50(BaseAdvisor_10_50 advisor) {
013    this.advisor = advisor;
014  }
015
016  public org.hl7.fhir.r5.model.DataType convertType(org.hl7.fhir.dstu2.model.Type src) throws FHIRException {
017    if (src == null || src.isEmpty()) return null;
018    if (src instanceof org.hl7.fhir.dstu2.model.Base64BinaryType)
019      return Base64Binary10_50.convertBase64Binary((org.hl7.fhir.dstu2.model.Base64BinaryType) src);
020    if (src instanceof org.hl7.fhir.dstu2.model.BooleanType)
021      return Boolean10_50.convertBoolean((org.hl7.fhir.dstu2.model.BooleanType) src);
022    if (src instanceof org.hl7.fhir.dstu2.model.CodeType)
023      return Code10_50.convertCode((org.hl7.fhir.dstu2.model.CodeType) src);
024    if (src instanceof org.hl7.fhir.dstu2.model.DateType)
025      return Date10_50.convertDate((org.hl7.fhir.dstu2.model.DateType) src);
026    if (src instanceof org.hl7.fhir.dstu2.model.DateTimeType)
027      return DateTime10_50.convertDateTime((org.hl7.fhir.dstu2.model.DateTimeType) src);
028    if (src instanceof org.hl7.fhir.dstu2.model.DecimalType)
029      return Decimal10_50.convertDecimal((org.hl7.fhir.dstu2.model.DecimalType) src);
030    if (src instanceof org.hl7.fhir.dstu2.model.IdType) return Id10_50.convertId((org.hl7.fhir.dstu2.model.IdType) src);
031    if (src instanceof org.hl7.fhir.dstu2.model.InstantType)
032      return Instant10_50.convertInstant((org.hl7.fhir.dstu2.model.InstantType) src);
033    if (src instanceof org.hl7.fhir.dstu2.model.MarkdownType)
034      return MarkDown10_50.convertMarkdown((org.hl7.fhir.dstu2.model.MarkdownType) src);
035    if (src instanceof org.hl7.fhir.dstu2.model.OidType)
036      return Oid10_50.convertOid((org.hl7.fhir.dstu2.model.OidType) src);
037    if (src instanceof org.hl7.fhir.dstu2.model.PositiveIntType)
038      return PositiveInt10_50.convertPositiveInt((org.hl7.fhir.dstu2.model.PositiveIntType) src);
039    if (src instanceof org.hl7.fhir.dstu2.model.StringType)
040      return String10_50.convertString((org.hl7.fhir.dstu2.model.StringType) src);
041    if (src instanceof org.hl7.fhir.dstu2.model.TimeType)
042      return Time10_50.convertTime((org.hl7.fhir.dstu2.model.TimeType) src);
043    if (src instanceof org.hl7.fhir.dstu2.model.UnsignedIntType)
044      return UnsignedInt10_50.convertUnsignedInt((org.hl7.fhir.dstu2.model.UnsignedIntType) src);
045    if (src instanceof org.hl7.fhir.dstu2.model.IntegerType)
046      return Integer10_50.convertInteger((org.hl7.fhir.dstu2.model.IntegerType) src);
047    if (src instanceof org.hl7.fhir.dstu2.model.UriType)
048      return Uri10_50.convertUri((org.hl7.fhir.dstu2.model.UriType) src);
049    if (src instanceof org.hl7.fhir.dstu2.model.UuidType)
050      return Uuid10_50.convertUuid((org.hl7.fhir.dstu2.model.UuidType) src);
051    if (src instanceof org.hl7.fhir.dstu2.model.Extension)
052      return Extension10_50.convertExtension((org.hl7.fhir.dstu2.model.Extension) src);
053    if (src instanceof org.hl7.fhir.dstu2.model.Narrative)
054      return Narrative10_50.convertNarrative((org.hl7.fhir.dstu2.model.Narrative) src);
055    if (src instanceof org.hl7.fhir.dstu2.model.Annotation)
056      return Annotation10_50.convertAnnotation((org.hl7.fhir.dstu2.model.Annotation) src);
057    if (src instanceof org.hl7.fhir.dstu2.model.Attachment)
058      return Attachment10_50.convertAttachment((org.hl7.fhir.dstu2.model.Attachment) src);
059    if (src instanceof org.hl7.fhir.dstu2.model.CodeableConcept)
060      return CodeableConcept10_50.convertCodeableConcept((org.hl7.fhir.dstu2.model.CodeableConcept) src);
061    if (src instanceof org.hl7.fhir.dstu2.model.Coding)
062      return Coding10_50.convertCoding((org.hl7.fhir.dstu2.model.Coding) src);
063    if (src instanceof org.hl7.fhir.dstu2.model.Identifier)
064      return Identifier10_50.convertIdentifier((org.hl7.fhir.dstu2.model.Identifier) src);
065    if (src instanceof org.hl7.fhir.dstu2.model.Period)
066      return Period10_50.convertPeriod((org.hl7.fhir.dstu2.model.Period) src);
067    if (src instanceof org.hl7.fhir.dstu2.model.Quantity)
068      return Quantity10_50.convertQuantity((org.hl7.fhir.dstu2.model.Quantity) src);
069    if (src instanceof org.hl7.fhir.dstu2.model.Range)
070      return Range10_50.convertRange((org.hl7.fhir.dstu2.model.Range) src);
071    if (src instanceof org.hl7.fhir.dstu2.model.Ratio)
072      return Ratio10_50.convertRatio((org.hl7.fhir.dstu2.model.Ratio) src);
073    if (src instanceof org.hl7.fhir.dstu2.model.Reference)
074      return Reference10_50.convertReference((org.hl7.fhir.dstu2.model.Reference) src);
075    if (src instanceof org.hl7.fhir.dstu2.model.SampledData)
076      return SampledData10_50.convertSampledData((org.hl7.fhir.dstu2.model.SampledData) src);
077    if (src instanceof org.hl7.fhir.dstu2.model.Signature)
078      return Signature10_50.convertSignature((org.hl7.fhir.dstu2.model.Signature) src);
079    if (src instanceof org.hl7.fhir.dstu2.model.Address)
080      return Address10_50.convertAddress((org.hl7.fhir.dstu2.model.Address) src);
081    if (src instanceof org.hl7.fhir.dstu2.model.ContactPoint)
082      return ContactPoint10_50.convertContactPoint((org.hl7.fhir.dstu2.model.ContactPoint) src);
083    if (src instanceof org.hl7.fhir.dstu2.model.HumanName)
084      return HumanName10_50.convertHumanName((org.hl7.fhir.dstu2.model.HumanName) src);
085    if (src instanceof org.hl7.fhir.dstu2.model.Meta) return Meta10_50.convertMeta((org.hl7.fhir.dstu2.model.Meta) src);
086    if (src instanceof org.hl7.fhir.dstu2.model.Timing)
087      return Timing10_50.convertTiming((org.hl7.fhir.dstu2.model.Timing) src);
088    if (src instanceof org.hl7.fhir.dstu2.model.Age) return Age10_50.convertAge((org.hl7.fhir.dstu2.model.Age) src);
089    if (src instanceof org.hl7.fhir.dstu2.model.Count)
090      return Count10_50.convertCount((org.hl7.fhir.dstu2.model.Count) src);
091    if (src instanceof org.hl7.fhir.dstu2.model.Distance)
092      return Distance10_50.convertDistance((org.hl7.fhir.dstu2.model.Distance) src);
093    if (src instanceof org.hl7.fhir.dstu2.model.Duration)
094      return Duration10_50.convertDuration((org.hl7.fhir.dstu2.model.Duration) src);
095    if (src instanceof org.hl7.fhir.dstu2.model.Money)
096      return Money10_50.convertMoney((org.hl7.fhir.dstu2.model.Money) src);
097    if (src instanceof org.hl7.fhir.dstu2.model.SimpleQuantity)
098      return SimpleQuantity10_50.convertSimpleQuantity((org.hl7.fhir.dstu2.model.SimpleQuantity) src);
099    if (advisor.failFastOnNullOrUnknownEntry()) {
100      throw new FHIRException("Unknown type " + src.fhirType());
101    } else {
102      return null;
103    }
104  }
105
106  public org.hl7.fhir.dstu2.model.Type convertType(org.hl7.fhir.r5.model.DataType src) throws FHIRException {
107    if (src == null || src.isEmpty()) return null;
108    if (src instanceof org.hl7.fhir.r5.model.Base64BinaryType)
109      return Base64Binary10_50.convertBase64Binary((org.hl7.fhir.r5.model.Base64BinaryType) src);
110    if (src instanceof org.hl7.fhir.r5.model.BooleanType)
111      return Boolean10_50.convertBoolean((org.hl7.fhir.r5.model.BooleanType) src);
112    if (src instanceof org.hl7.fhir.r5.model.CodeType)
113      return Code10_50.convertCode((org.hl7.fhir.r5.model.CodeType) src);
114    if (src instanceof org.hl7.fhir.r5.model.DateType)
115      return Date10_50.convertDate((org.hl7.fhir.r5.model.DateType) src);
116    if (src instanceof org.hl7.fhir.r5.model.DateTimeType)
117      return DateTime10_50.convertDateTime((org.hl7.fhir.r5.model.DateTimeType) src);
118    if (src instanceof org.hl7.fhir.r5.model.DecimalType)
119      return Decimal10_50.convertDecimal((org.hl7.fhir.r5.model.DecimalType) src);
120    if (src instanceof org.hl7.fhir.r5.model.IdType) return Id10_50.convertId((org.hl7.fhir.r5.model.IdType) src);
121    if (src instanceof org.hl7.fhir.r5.model.InstantType)
122      return Instant10_50.convertInstant((org.hl7.fhir.r5.model.InstantType) src);
123    if (src instanceof org.hl7.fhir.r5.model.MarkdownType)
124      return MarkDown10_50.convertMarkdown((org.hl7.fhir.r5.model.MarkdownType) src);
125    if (src instanceof org.hl7.fhir.r5.model.OidType) return Oid10_50.convertOid((org.hl7.fhir.r5.model.OidType) src);
126    if (src instanceof org.hl7.fhir.r5.model.PositiveIntType)
127      return PositiveInt10_50.convertPositiveInt((org.hl7.fhir.r5.model.PositiveIntType) src);
128    if (src instanceof org.hl7.fhir.r5.model.StringType)
129      return String10_50.convertString((org.hl7.fhir.r5.model.StringType) src);
130    if (src instanceof org.hl7.fhir.r5.model.TimeType)
131      return Time10_50.convertTime((org.hl7.fhir.r5.model.TimeType) src);
132    if (src instanceof org.hl7.fhir.r5.model.UnsignedIntType)
133      return UnsignedInt10_50.convertUnsignedInt((org.hl7.fhir.r5.model.UnsignedIntType) src);
134    if (src instanceof org.hl7.fhir.r5.model.IntegerType)
135      return Integer10_50.convertInteger((org.hl7.fhir.r5.model.IntegerType) src);
136    if (src instanceof org.hl7.fhir.r5.model.UriType) return Uri10_50.convertUri((org.hl7.fhir.r5.model.UriType) src);
137    if (src instanceof org.hl7.fhir.r5.model.UuidType)
138      return Uuid10_50.convertUuid((org.hl7.fhir.r5.model.UuidType) src);
139    if (src instanceof org.hl7.fhir.r5.model.Extension)
140      return Extension10_50.convertExtension((org.hl7.fhir.r5.model.Extension) src);
141    if (src instanceof org.hl7.fhir.r5.model.Narrative)
142      return Narrative10_50.convertNarrative((org.hl7.fhir.r5.model.Narrative) src);
143    if (src instanceof org.hl7.fhir.r5.model.Annotation)
144      return Annotation10_50.convertAnnotation((org.hl7.fhir.r5.model.Annotation) src);
145    if (src instanceof org.hl7.fhir.r5.model.Attachment)
146      return Attachment10_50.convertAttachment((org.hl7.fhir.r5.model.Attachment) src);
147    if (src instanceof org.hl7.fhir.r5.model.CodeableConcept)
148      return CodeableConcept10_50.convertCodeableConcept((org.hl7.fhir.r5.model.CodeableConcept) src);
149    if (src instanceof org.hl7.fhir.r5.model.Coding)
150      return Coding10_50.convertCoding((org.hl7.fhir.r5.model.Coding) src);
151    if (src instanceof org.hl7.fhir.r5.model.Identifier)
152      return Identifier10_50.convertIdentifier((org.hl7.fhir.r5.model.Identifier) src);
153    if (src instanceof org.hl7.fhir.r5.model.Period)
154      return Period10_50.convertPeriod((org.hl7.fhir.r5.model.Period) src);
155    if (src instanceof org.hl7.fhir.r5.model.Quantity)
156      return Quantity10_50.convertQuantity((org.hl7.fhir.r5.model.Quantity) src);
157    if (src instanceof org.hl7.fhir.r5.model.Range) return Range10_50.convertRange((org.hl7.fhir.r5.model.Range) src);
158    if (src instanceof org.hl7.fhir.r5.model.Ratio) return Ratio10_50.convertRatio((org.hl7.fhir.r5.model.Ratio) src);
159    if (src instanceof org.hl7.fhir.r5.model.Reference)
160      return Reference10_50.convertReference((org.hl7.fhir.r5.model.Reference) src);
161    if (src instanceof org.hl7.fhir.r5.model.SampledData)
162      return SampledData10_50.convertSampledData((org.hl7.fhir.r5.model.SampledData) src);
163    if (src instanceof org.hl7.fhir.r5.model.Signature)
164      return Signature10_50.convertSignature((org.hl7.fhir.r5.model.Signature) src);
165    if (src instanceof org.hl7.fhir.r5.model.Address)
166      return Address10_50.convertAddress((org.hl7.fhir.r5.model.Address) src);
167    if (src instanceof org.hl7.fhir.r5.model.ContactPoint)
168      return ContactPoint10_50.convertContactPoint((org.hl7.fhir.r5.model.ContactPoint) src);
169    if (src instanceof org.hl7.fhir.r5.model.HumanName)
170      return HumanName10_50.convertHumanName((org.hl7.fhir.r5.model.HumanName) src);
171    if (src instanceof org.hl7.fhir.r5.model.Meta) return Meta10_50.convertMeta((org.hl7.fhir.r5.model.Meta) src);
172    if (src instanceof org.hl7.fhir.r5.model.Timing)
173      return Timing10_50.convertTiming((org.hl7.fhir.r5.model.Timing) src);
174    if (src instanceof org.hl7.fhir.r5.model.Age) return Age10_50.convertAge((org.hl7.fhir.r5.model.Age) src);
175    if (src instanceof org.hl7.fhir.r5.model.Count) return Count10_50.convertCount((org.hl7.fhir.r5.model.Count) src);
176    if (src instanceof org.hl7.fhir.r5.model.Distance)
177      return Distance10_50.convertDistance((org.hl7.fhir.r5.model.Distance) src);
178    if (src instanceof org.hl7.fhir.r5.model.Duration)
179      return Duration10_50.convertDuration((org.hl7.fhir.r5.model.Duration) src);
180    if (src instanceof org.hl7.fhir.r5.model.Money) return Money10_50.convertMoney((org.hl7.fhir.r5.model.Money) src);
181    if (src instanceof org.hl7.fhir.r5.model.SimpleQuantity)
182      return SimpleQuantity10_50.convertSimpleQuantity((org.hl7.fhir.r5.model.SimpleQuantity) src);
183    if (advisor.failFastOnNullOrUnknownEntry()) {
184      throw new FHIRException("Unknown type " + src.fhirType());
185    } else {
186      return null;
187    }
188  }
189}