001package org.hl7.fhir.convertors.conv14_30.datatypes14_30;
002
003import org.hl7.fhir.convertors.advisors.impl.BaseAdvisor_14_30;
004import org.hl7.fhir.convertors.conv14_30.datatypes14_30.complextypes14_30.*;
005import org.hl7.fhir.convertors.conv14_30.datatypes14_30.primitivetypes14_30.*;
006import org.hl7.fhir.exceptions.FHIRException;
007
008public class Type14_30 {
009
010  private final BaseAdvisor_14_30 advisor;
011
012  public Type14_30(BaseAdvisor_14_30 advisor) {
013    this.advisor = advisor;
014  }
015
016  public org.hl7.fhir.dstu3.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_30.convertBase64Binary((org.hl7.fhir.dstu2016may.model.Base64BinaryType) src);
020    if (src instanceof org.hl7.fhir.dstu2016may.model.BooleanType)
021      return Boolean14_30.convertBoolean((org.hl7.fhir.dstu2016may.model.BooleanType) src);
022    if (src instanceof org.hl7.fhir.dstu2016may.model.CodeType)
023      return Code14_30.convertCode((org.hl7.fhir.dstu2016may.model.CodeType) src);
024    if (src instanceof org.hl7.fhir.dstu2016may.model.DateType)
025      return Date14_30.convertDate((org.hl7.fhir.dstu2016may.model.DateType) src);
026    if (src instanceof org.hl7.fhir.dstu2016may.model.DateTimeType)
027      return DateTime14_30.convertDateTime((org.hl7.fhir.dstu2016may.model.DateTimeType) src);
028    if (src instanceof org.hl7.fhir.dstu2016may.model.DecimalType)
029      return Decimal14_30.convertDecimal((org.hl7.fhir.dstu2016may.model.DecimalType) src);
030    if (src instanceof org.hl7.fhir.dstu2016may.model.IdType)
031      return Id14_30.convertId((org.hl7.fhir.dstu2016may.model.IdType) src);
032    if (src instanceof org.hl7.fhir.dstu2016may.model.InstantType)
033      return Instant14_30.convertInstant((org.hl7.fhir.dstu2016may.model.InstantType) src);
034    if (src instanceof org.hl7.fhir.dstu2016may.model.MarkdownType)
035      return MarkDown14_30.convertMarkdown((org.hl7.fhir.dstu2016may.model.MarkdownType) src);
036    if (src instanceof org.hl7.fhir.dstu2016may.model.OidType)
037      return Oid14_30.convertOid((org.hl7.fhir.dstu2016may.model.OidType) src);
038    if (src instanceof org.hl7.fhir.dstu2016may.model.PositiveIntType)
039      return PositiveInt14_30.convertPositiveInt((org.hl7.fhir.dstu2016may.model.PositiveIntType) src);
040    if (src instanceof org.hl7.fhir.dstu2016may.model.StringType)
041      return String14_30.convertString((org.hl7.fhir.dstu2016may.model.StringType) src);
042    if (src instanceof org.hl7.fhir.dstu2016may.model.TimeType)
043      return Time14_30.convertTime((org.hl7.fhir.dstu2016may.model.TimeType) src);
044    if (src instanceof org.hl7.fhir.dstu2016may.model.UnsignedIntType)
045      return UnsignedInt14_30.convertUnsignedInt((org.hl7.fhir.dstu2016may.model.UnsignedIntType) src);
046    if (src instanceof org.hl7.fhir.dstu2016may.model.IntegerType)
047      return Integer14_30.convertInteger((org.hl7.fhir.dstu2016may.model.IntegerType) src);
048    if (src instanceof org.hl7.fhir.dstu2016may.model.UriType)
049      return Uri14_30.convertUri((org.hl7.fhir.dstu2016may.model.UriType) src);
050    if (src instanceof org.hl7.fhir.dstu2016may.model.UuidType)
051      return Uuid14_30.convertUuid((org.hl7.fhir.dstu2016may.model.UuidType) src);
052    if (src instanceof org.hl7.fhir.dstu2016may.model.Extension)
053      return Extension14_30.convertExtension((org.hl7.fhir.dstu2016may.model.Extension) src);
054    if (src instanceof org.hl7.fhir.dstu2016may.model.Narrative)
055      return Narrative14_30.convertNarrative((org.hl7.fhir.dstu2016may.model.Narrative) src);
056    if (src instanceof org.hl7.fhir.dstu2016may.model.Age)
057      return Age14_30.convertAge((org.hl7.fhir.dstu2016may.model.Age) src);
058    if (src instanceof org.hl7.fhir.dstu2016may.model.Annotation)
059      return Annotation14_30.convertAnnotation((org.hl7.fhir.dstu2016may.model.Annotation) src);
060    if (src instanceof org.hl7.fhir.dstu2016may.model.Attachment)
061      return Attachment14_30.convertAttachment((org.hl7.fhir.dstu2016may.model.Attachment) src);
062    if (src instanceof org.hl7.fhir.dstu2016may.model.CodeableConcept)
063      return CodeableConcept14_30.convertCodeableConcept((org.hl7.fhir.dstu2016may.model.CodeableConcept) src);
064    if (src instanceof org.hl7.fhir.dstu2016may.model.Coding)
065      return Code14_30.convertCoding((org.hl7.fhir.dstu2016may.model.Coding) src);
066    if (src instanceof org.hl7.fhir.dstu2016may.model.Count)
067      return Count14_30.convertCount((org.hl7.fhir.dstu2016may.model.Count) src);
068    if (src instanceof org.hl7.fhir.dstu2016may.model.Distance)
069      return Distance14_30.convertDistance((org.hl7.fhir.dstu2016may.model.Distance) src);
070    if (src instanceof org.hl7.fhir.dstu2016may.model.Duration)
071      return Duration14_30.convertDuration((org.hl7.fhir.dstu2016may.model.Duration) src);
072    if (src instanceof org.hl7.fhir.dstu2016may.model.Identifier)
073      return Identifier14_30.convertIdentifier((org.hl7.fhir.dstu2016may.model.Identifier) src);
074    if (src instanceof org.hl7.fhir.dstu2016may.model.Money)
075      return Money14_30.convertMoney((org.hl7.fhir.dstu2016may.model.Money) src);
076    if (src instanceof org.hl7.fhir.dstu2016may.model.Period)
077      return Period14_30.convertPeriod((org.hl7.fhir.dstu2016may.model.Period) src);
078    if (src instanceof org.hl7.fhir.dstu2016may.model.Quantity)
079      return Quantity14_30.convertQuantity((org.hl7.fhir.dstu2016may.model.Quantity) src);
080    if (src instanceof org.hl7.fhir.dstu2016may.model.Range)
081      return Range14_30.convertRange((org.hl7.fhir.dstu2016may.model.Range) src);
082    if (src instanceof org.hl7.fhir.dstu2016may.model.Ratio)
083      return Ratio14_30.convertRatio((org.hl7.fhir.dstu2016may.model.Ratio) src);
084    if (src instanceof org.hl7.fhir.dstu2016may.model.Reference)
085      return Reference14_30.convertReference((org.hl7.fhir.dstu2016may.model.Reference) src);
086    if (src instanceof org.hl7.fhir.dstu2016may.model.SampledData)
087      return SampledData14_30.convertSampledData((org.hl7.fhir.dstu2016may.model.SampledData) src);
088    if (src instanceof org.hl7.fhir.dstu2016may.model.Signature)
089      return Signature14_30.convertSignature((org.hl7.fhir.dstu2016may.model.Signature) src);
090    if (src instanceof org.hl7.fhir.dstu2016may.model.Address)
091      return Address14_30.convertAddress((org.hl7.fhir.dstu2016may.model.Address) src);
092    if (src instanceof org.hl7.fhir.dstu2016may.model.ContactPoint)
093      return ContactPoint14_30.convertContactPoint((org.hl7.fhir.dstu2016may.model.ContactPoint) src);
094    if (src instanceof org.hl7.fhir.dstu2016may.model.ElementDefinition)
095      return ElementDefinition14_30.convertElementDefinition((org.hl7.fhir.dstu2016may.model.ElementDefinition) src);
096    if (src instanceof org.hl7.fhir.dstu2016may.model.HumanName)
097      return HumanName14_30.convertHumanName((org.hl7.fhir.dstu2016may.model.HumanName) src);
098    if (src instanceof org.hl7.fhir.dstu2016may.model.Meta)
099      return Meta14_30.convertMeta((org.hl7.fhir.dstu2016may.model.Meta) src);
100    if (src instanceof org.hl7.fhir.dstu2016may.model.Timing)
101      return Timing14_30.convertTiming((org.hl7.fhir.dstu2016may.model.Timing) src);
102    if (advisor.failFastOnNullOrUnknownEntry()) {
103      throw new FHIRException("Unknown type " + src.fhirType());
104    } else {
105      return null;
106    }
107  }
108
109  public org.hl7.fhir.dstu2016may.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException {
110    if (src == null || src.isEmpty()) return null;
111    if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType)
112      return Base64Binary14_30.convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src);
113    if (src instanceof org.hl7.fhir.dstu3.model.BooleanType)
114      return Boolean14_30.convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src);
115    if (src instanceof org.hl7.fhir.dstu3.model.CodeType)
116      return Code14_30.convertCode((org.hl7.fhir.dstu3.model.CodeType) src);
117    if (src instanceof org.hl7.fhir.dstu3.model.DateType)
118      return Date14_30.convertDate((org.hl7.fhir.dstu3.model.DateType) src);
119    if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType)
120      return DateTime14_30.convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src);
121    if (src instanceof org.hl7.fhir.dstu3.model.DecimalType)
122      return Decimal14_30.convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src);
123    if (src instanceof org.hl7.fhir.dstu3.model.IdType) return Id14_30.convertId((org.hl7.fhir.dstu3.model.IdType) src);
124    if (src instanceof org.hl7.fhir.dstu3.model.InstantType)
125      return Instant14_30.convertInstant((org.hl7.fhir.dstu3.model.InstantType) src);
126    if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType)
127      return MarkDown14_30.convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src);
128    if (src instanceof org.hl7.fhir.dstu3.model.OidType)
129      return Oid14_30.convertOid((org.hl7.fhir.dstu3.model.OidType) src);
130    if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType)
131      return PositiveInt14_30.convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src);
132    if (src instanceof org.hl7.fhir.dstu3.model.StringType)
133      return String14_30.convertString((org.hl7.fhir.dstu3.model.StringType) src);
134    if (src instanceof org.hl7.fhir.dstu3.model.TimeType)
135      return Time14_30.convertTime((org.hl7.fhir.dstu3.model.TimeType) src);
136    if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType)
137      return UnsignedInt14_30.convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src);
138    if (src instanceof org.hl7.fhir.dstu3.model.IntegerType)
139      return Integer14_30.convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src);
140    if (src instanceof org.hl7.fhir.dstu3.model.UriType)
141      return Uri14_30.convertUri((org.hl7.fhir.dstu3.model.UriType) src);
142    if (src instanceof org.hl7.fhir.dstu3.model.UuidType)
143      return Uuid14_30.convertUuid((org.hl7.fhir.dstu3.model.UuidType) src);
144    if (src instanceof org.hl7.fhir.dstu3.model.Extension)
145      return Extension14_30.convertExtension((org.hl7.fhir.dstu3.model.Extension) src);
146    if (src instanceof org.hl7.fhir.dstu3.model.Narrative)
147      return Narrative14_30.convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src);
148    if (src instanceof org.hl7.fhir.dstu3.model.Age) return Age14_30.convertAge((org.hl7.fhir.dstu3.model.Age) src);
149    if (src instanceof org.hl7.fhir.dstu3.model.Annotation)
150      return Annotation14_30.convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src);
151    if (src instanceof org.hl7.fhir.dstu3.model.Attachment)
152      return Attachment14_30.convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src);
153    if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept)
154      return CodeableConcept14_30.convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src);
155    if (src instanceof org.hl7.fhir.dstu3.model.Coding)
156      return Code14_30.convertCoding((org.hl7.fhir.dstu3.model.Coding) src);
157    if (src instanceof org.hl7.fhir.dstu3.model.Count)
158      return Count14_30.convertCount((org.hl7.fhir.dstu3.model.Count) src);
159    if (src instanceof org.hl7.fhir.dstu3.model.Distance)
160      return Distance14_30.convertDistance((org.hl7.fhir.dstu3.model.Distance) src);
161    if (src instanceof org.hl7.fhir.dstu3.model.Duration)
162      return Duration14_30.convertDuration((org.hl7.fhir.dstu3.model.Duration) src);
163    if (src instanceof org.hl7.fhir.dstu3.model.Identifier)
164      return Identifier14_30.convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src);
165    if (src instanceof org.hl7.fhir.dstu3.model.Money)
166      return Money14_30.convertMoney((org.hl7.fhir.dstu3.model.Money) src);
167    if (src instanceof org.hl7.fhir.dstu3.model.Period)
168      return Period14_30.convertPeriod((org.hl7.fhir.dstu3.model.Period) src);
169    if (src instanceof org.hl7.fhir.dstu3.model.Quantity)
170      return Quantity14_30.convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src);
171    if (src instanceof org.hl7.fhir.dstu3.model.Range)
172      return Range14_30.convertRange((org.hl7.fhir.dstu3.model.Range) src);
173    if (src instanceof org.hl7.fhir.dstu3.model.Ratio)
174      return Ratio14_30.convertRatio((org.hl7.fhir.dstu3.model.Ratio) src);
175    if (src instanceof org.hl7.fhir.dstu3.model.Reference)
176      return Reference14_30.convertReference((org.hl7.fhir.dstu3.model.Reference) src);
177    if (src instanceof org.hl7.fhir.dstu3.model.SampledData)
178      return SampledData14_30.convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src);
179    if (src instanceof org.hl7.fhir.dstu3.model.Signature)
180      return Signature14_30.convertSignature((org.hl7.fhir.dstu3.model.Signature) src);
181    if (src instanceof org.hl7.fhir.dstu3.model.Address)
182      return Address14_30.convertAddress((org.hl7.fhir.dstu3.model.Address) src);
183    if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint)
184      return ContactPoint14_30.convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src);
185    if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition)
186      return ElementDefinition14_30.convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src);
187    if (src instanceof org.hl7.fhir.dstu3.model.HumanName)
188      return HumanName14_30.convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src);
189    if (src instanceof org.hl7.fhir.dstu3.model.Meta) return Meta14_30.convertMeta((org.hl7.fhir.dstu3.model.Meta) src);
190    if (src instanceof org.hl7.fhir.dstu3.model.Timing)
191      return Timing14_30.convertTiming((org.hl7.fhir.dstu3.model.Timing) src);
192    if (advisor.failFastOnNullOrUnknownEntry()) {
193      throw new FHIRException("Unknown type " + src.fhirType());
194    } else {
195      return null;
196    }
197  }
198}