001package org.hl7.fhir.convertors.conv14_40.datatypes14_40;
002
003import org.hl7.fhir.convertors.advisors.impl.BaseAdvisor_14_40;
004import org.hl7.fhir.convertors.conv14_40.datatypes14_40.complextypes14_40.*;
005import org.hl7.fhir.convertors.conv14_40.datatypes14_40.primitivetypes14_40.*;
006import org.hl7.fhir.exceptions.FHIRException;
007
008public class Type14_40 {
009
010  private final BaseAdvisor_14_40 advisor;
011
012  public Type14_40(BaseAdvisor_14_40 advisor) {
013    this.advisor = advisor;
014  }
015
016  public org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.dstu2016may.model.Type src) throws FHIRException {
017    if (src == null || src.isEmpty()) return null;
018    if (src instanceof org.hl7.fhir.dstu2016may.model.Base64BinaryType)
019      return Base64Binary14_40.convertBase64Binary((org.hl7.fhir.dstu2016may.model.Base64BinaryType) src);
020    if (src instanceof org.hl7.fhir.dstu2016may.model.BooleanType)
021      return Boolean14_40.convertBoolean((org.hl7.fhir.dstu2016may.model.BooleanType) src);
022    if (src instanceof org.hl7.fhir.dstu2016may.model.CodeType)
023      return Code14_40.convertCode((org.hl7.fhir.dstu2016may.model.CodeType) src);
024    if (src instanceof org.hl7.fhir.dstu2016may.model.DateType)
025      return Date14_40.convertDate((org.hl7.fhir.dstu2016may.model.DateType) src);
026    if (src instanceof org.hl7.fhir.dstu2016may.model.DateTimeType)
027      return DateTime14_40.convertDateTime((org.hl7.fhir.dstu2016may.model.DateTimeType) src);
028    if (src instanceof org.hl7.fhir.dstu2016may.model.DecimalType)
029      return Decimal14_40.convertDecimal((org.hl7.fhir.dstu2016may.model.DecimalType) src);
030    if (src instanceof org.hl7.fhir.dstu2016may.model.IdType)
031      return Id14_40.convertId((org.hl7.fhir.dstu2016may.model.IdType) src);
032    if (src instanceof org.hl7.fhir.dstu2016may.model.InstantType)
033      return Instant14_40.convertInstant((org.hl7.fhir.dstu2016may.model.InstantType) src);
034    if (src instanceof org.hl7.fhir.dstu2016may.model.MarkdownType)
035      return MarkDown14_40.convertMarkdown((org.hl7.fhir.dstu2016may.model.MarkdownType) src);
036    if (src instanceof org.hl7.fhir.dstu2016may.model.OidType)
037      return Oid14_40.convertOid((org.hl7.fhir.dstu2016may.model.OidType) src);
038    if (src instanceof org.hl7.fhir.dstu2016may.model.PositiveIntType)
039      return PositiveInt14_40.convertPositiveInt((org.hl7.fhir.dstu2016may.model.PositiveIntType) src);
040    if (src instanceof org.hl7.fhir.dstu2016may.model.StringType)
041      return String14_40.convertString((org.hl7.fhir.dstu2016may.model.StringType) src);
042    if (src instanceof org.hl7.fhir.dstu2016may.model.TimeType)
043      return Time14_40.convertTime((org.hl7.fhir.dstu2016may.model.TimeType) src);
044    if (src instanceof org.hl7.fhir.dstu2016may.model.UnsignedIntType)
045      return UnsignedInt14_40.convertUnsignedInt((org.hl7.fhir.dstu2016may.model.UnsignedIntType) src);
046    if (src instanceof org.hl7.fhir.dstu2016may.model.IntegerType)
047      return Integer14_40.convertInteger((org.hl7.fhir.dstu2016may.model.IntegerType) src);
048    if (src instanceof org.hl7.fhir.dstu2016may.model.UriType)
049      return Uri14_40.convertUri((org.hl7.fhir.dstu2016may.model.UriType) src);
050    if (src instanceof org.hl7.fhir.dstu2016may.model.UuidType)
051      return Uuid14_40.convertUuid((org.hl7.fhir.dstu2016may.model.UuidType) src);
052    if (src instanceof org.hl7.fhir.dstu2016may.model.Extension)
053      return Extension14_40.convertExtension((org.hl7.fhir.dstu2016may.model.Extension) src);
054    if (src instanceof org.hl7.fhir.dstu2016may.model.Narrative)
055      return Narrative14_40.convertNarrative((org.hl7.fhir.dstu2016may.model.Narrative) src);
056    if (src instanceof org.hl7.fhir.dstu2016may.model.Age)
057      return Age14_40.convertAge((org.hl7.fhir.dstu2016may.model.Age) src);
058    if (src instanceof org.hl7.fhir.dstu2016may.model.Annotation)
059      return Annotation14_40.convertAnnotation((org.hl7.fhir.dstu2016may.model.Annotation) src);
060    if (src instanceof org.hl7.fhir.dstu2016may.model.Attachment)
061      return Attachment14_40.convertAttachment((org.hl7.fhir.dstu2016may.model.Attachment) src);
062    if (src instanceof org.hl7.fhir.dstu2016may.model.CodeableConcept)
063      return CodeableConcept14_40.convertCodeableConcept((org.hl7.fhir.dstu2016may.model.CodeableConcept) src);
064    if (src instanceof org.hl7.fhir.dstu2016may.model.Coding)
065      return Coding14_40.convertCoding((org.hl7.fhir.dstu2016may.model.Coding) src);
066    if (src instanceof org.hl7.fhir.dstu2016may.model.Count)
067      return Count14_40.convertCount((org.hl7.fhir.dstu2016may.model.Count) src);
068    if (src instanceof org.hl7.fhir.dstu2016may.model.Distance)
069      return Distance14_40.convertDistance((org.hl7.fhir.dstu2016may.model.Distance) src);
070    if (src instanceof org.hl7.fhir.dstu2016may.model.Duration)
071      return Duration14_40.convertDuration((org.hl7.fhir.dstu2016may.model.Duration) src);
072    if (src instanceof org.hl7.fhir.dstu2016may.model.Identifier)
073      return Identifier14_40.convertIdentifier((org.hl7.fhir.dstu2016may.model.Identifier) src);
074    if (src instanceof org.hl7.fhir.dstu2016may.model.Money)
075      return Money14_40.convertMoney((org.hl7.fhir.dstu2016may.model.Money) src);
076    if (src instanceof org.hl7.fhir.dstu2016may.model.Period)
077      return Period14_40.convertPeriod((org.hl7.fhir.dstu2016may.model.Period) src);
078    if (src instanceof org.hl7.fhir.dstu2016may.model.Quantity)
079      return Quantity14_40.convertQuantity((org.hl7.fhir.dstu2016may.model.Quantity) src);
080    if (src instanceof org.hl7.fhir.dstu2016may.model.Range)
081      return Range14_40.convertRange((org.hl7.fhir.dstu2016may.model.Range) src);
082    if (src instanceof org.hl7.fhir.dstu2016may.model.Ratio)
083      return Ratio14_40.convertRatio((org.hl7.fhir.dstu2016may.model.Ratio) src);
084    if (src instanceof org.hl7.fhir.dstu2016may.model.Reference)
085      return Reference14_40.convertReference((org.hl7.fhir.dstu2016may.model.Reference) src);
086    if (src instanceof org.hl7.fhir.dstu2016may.model.SampledData)
087      return SampledData14_40.convertSampledData((org.hl7.fhir.dstu2016may.model.SampledData) src);
088    if (src instanceof org.hl7.fhir.dstu2016may.model.Signature)
089      return Signature14_40.convertSignature((org.hl7.fhir.dstu2016may.model.Signature) src);
090    if (src instanceof org.hl7.fhir.dstu2016may.model.Address)
091      return Address14_40.convertAddress((org.hl7.fhir.dstu2016may.model.Address) src);
092    if (src instanceof org.hl7.fhir.dstu2016may.model.ContactPoint)
093      return ContactPoint14_40.convertContactPoint((org.hl7.fhir.dstu2016may.model.ContactPoint) src);
094    if (src instanceof org.hl7.fhir.dstu2016may.model.HumanName)
095      return HumanName14_40.convertHumanName((org.hl7.fhir.dstu2016may.model.HumanName) src);
096    if (src instanceof org.hl7.fhir.dstu2016may.model.Meta)
097      return Meta14_40.convertMeta((org.hl7.fhir.dstu2016may.model.Meta) src);
098    if (src instanceof org.hl7.fhir.dstu2016may.model.Timing)
099      return Timing14_40.convertTiming((org.hl7.fhir.dstu2016may.model.Timing) src);
100    if (advisor.failFastOnNullOrUnknownEntry()) {
101      throw new FHIRException("Unknown type " + src.fhirType());
102    } else {
103      return null;
104    }
105  }
106
107  public org.hl7.fhir.dstu2016may.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException {
108    if (src == null || src.isEmpty()) return null;
109    if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType)
110      return Base64Binary14_40.convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src);
111    if (src instanceof org.hl7.fhir.r4.model.BooleanType)
112      return Boolean14_40.convertBoolean((org.hl7.fhir.r4.model.BooleanType) src);
113    if (src instanceof org.hl7.fhir.r4.model.CodeType)
114      return Code14_40.convertCode((org.hl7.fhir.r4.model.CodeType) src);
115    if (src instanceof org.hl7.fhir.r4.model.DateType)
116      return Date14_40.convertDate((org.hl7.fhir.r4.model.DateType) src);
117    if (src instanceof org.hl7.fhir.r4.model.DateTimeType)
118      return DateTime14_40.convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src);
119    if (src instanceof org.hl7.fhir.r4.model.DecimalType)
120      return Decimal14_40.convertDecimal((org.hl7.fhir.r4.model.DecimalType) src);
121    if (src instanceof org.hl7.fhir.r4.model.IdType) return Id14_40.convertId((org.hl7.fhir.r4.model.IdType) src);
122    if (src instanceof org.hl7.fhir.r4.model.InstantType)
123      return Instant14_40.convertInstant((org.hl7.fhir.r4.model.InstantType) src);
124    if (src instanceof org.hl7.fhir.r4.model.MarkdownType)
125      return MarkDown14_40.convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src);
126    if (src instanceof org.hl7.fhir.r4.model.OidType) return Oid14_40.convertOid((org.hl7.fhir.r4.model.OidType) src);
127    if (src instanceof org.hl7.fhir.r4.model.PositiveIntType)
128      return PositiveInt14_40.convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src);
129    if (src instanceof org.hl7.fhir.r4.model.StringType)
130      return String14_40.convertString((org.hl7.fhir.r4.model.StringType) src);
131    if (src instanceof org.hl7.fhir.r4.model.TimeType)
132      return Time14_40.convertTime((org.hl7.fhir.r4.model.TimeType) src);
133    if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType)
134      return UnsignedInt14_40.convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src);
135    if (src instanceof org.hl7.fhir.r4.model.IntegerType)
136      return Integer14_40.convertInteger((org.hl7.fhir.r4.model.IntegerType) src);
137    if (src instanceof org.hl7.fhir.r4.model.UriType) return Uri14_40.convertUri((org.hl7.fhir.r4.model.UriType) src);
138    if (src instanceof org.hl7.fhir.r4.model.UuidType)
139      return Uuid14_40.convertUuid((org.hl7.fhir.r4.model.UuidType) src);
140    if (src instanceof org.hl7.fhir.r4.model.Extension)
141      return Extension14_40.convertExtension((org.hl7.fhir.r4.model.Extension) src);
142    if (src instanceof org.hl7.fhir.r4.model.Narrative)
143      return Narrative14_40.convertNarrative((org.hl7.fhir.r4.model.Narrative) src);
144    if (src instanceof org.hl7.fhir.r4.model.Age) return Age14_40.convertAge((org.hl7.fhir.r4.model.Age) src);
145    if (src instanceof org.hl7.fhir.r4.model.Annotation)
146      return Annotation14_40.convertAnnotation((org.hl7.fhir.r4.model.Annotation) src);
147    if (src instanceof org.hl7.fhir.r4.model.Attachment)
148      return Attachment14_40.convertAttachment((org.hl7.fhir.r4.model.Attachment) src);
149    if (src instanceof org.hl7.fhir.r4.model.CodeableConcept)
150      return CodeableConcept14_40.convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src);
151    if (src instanceof org.hl7.fhir.r4.model.Coding)
152      return Coding14_40.convertCoding((org.hl7.fhir.r4.model.Coding) src);
153    if (src instanceof org.hl7.fhir.r4.model.Count) return Count14_40.convertCount((org.hl7.fhir.r4.model.Count) src);
154    if (src instanceof org.hl7.fhir.r4.model.Distance)
155      return Distance14_40.convertDistance((org.hl7.fhir.r4.model.Distance) src);
156    if (src instanceof org.hl7.fhir.r4.model.Duration)
157      return Duration14_40.convertDuration((org.hl7.fhir.r4.model.Duration) src);
158    if (src instanceof org.hl7.fhir.r4.model.Identifier)
159      return Identifier14_40.convertIdentifier((org.hl7.fhir.r4.model.Identifier) src);
160    if (src instanceof org.hl7.fhir.r4.model.Money) return Money14_40.convertMoney((org.hl7.fhir.r4.model.Money) src);
161    if (src instanceof org.hl7.fhir.r4.model.Period)
162      return Period14_40.convertPeriod((org.hl7.fhir.r4.model.Period) src);
163    if (src instanceof org.hl7.fhir.r4.model.Quantity)
164      return Quantity14_40.convertQuantity((org.hl7.fhir.r4.model.Quantity) src);
165    if (src instanceof org.hl7.fhir.r4.model.Range) return Range14_40.convertRange((org.hl7.fhir.r4.model.Range) src);
166    if (src instanceof org.hl7.fhir.r4.model.Ratio) return Ratio14_40.convertRatio((org.hl7.fhir.r4.model.Ratio) src);
167    if (src instanceof org.hl7.fhir.r4.model.Reference)
168      return Reference14_40.convertReference((org.hl7.fhir.r4.model.Reference) src);
169    if (src instanceof org.hl7.fhir.r4.model.SampledData)
170      return SampledData14_40.convertSampledData((org.hl7.fhir.r4.model.SampledData) src);
171    if (src instanceof org.hl7.fhir.r4.model.Signature)
172      return Signature14_40.convertSignature((org.hl7.fhir.r4.model.Signature) src);
173    if (src instanceof org.hl7.fhir.r4.model.Address)
174      return Address14_40.convertAddress((org.hl7.fhir.r4.model.Address) src);
175    if (src instanceof org.hl7.fhir.r4.model.ContactPoint)
176      return ContactPoint14_40.convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src);
177    if (src instanceof org.hl7.fhir.r4.model.HumanName)
178      return HumanName14_40.convertHumanName((org.hl7.fhir.r4.model.HumanName) src);
179    if (src instanceof org.hl7.fhir.r4.model.Meta) return Meta14_40.convertMeta((org.hl7.fhir.r4.model.Meta) src);
180    if (src instanceof org.hl7.fhir.r4.model.Timing)
181      return Timing14_40.convertTiming((org.hl7.fhir.r4.model.Timing) src);
182    if (advisor.failFastOnNullOrUnknownEntry()) {
183      throw new FHIRException("Unknown type " + src.fhirType());
184    } else {
185      return null;
186    }
187  }
188}