001package org.hl7.fhir.convertors.conv10_30.resources10_30;
002
003import org.hl7.fhir.convertors.context.ConversionContext10_30;
004import org.hl7.fhir.convertors.conv10_30.datatypes10_30.Reference10_30;
005import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Coding10_30;
006import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Identifier10_30;
007import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.DateTime10_30;
008import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.Oid10_30;
009import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.String10_30;
010import org.hl7.fhir.convertors.conv10_30.datatypes10_30.primitivetypes10_30.UnsignedInt10_30;
011import org.hl7.fhir.dstu2.model.Enumeration;
012import org.hl7.fhir.dstu2.model.ImagingStudy;
013import org.hl7.fhir.exceptions.FHIRException;
014
015public class ImagingStudy10_30 {
016
017  public static org.hl7.fhir.dstu3.model.ImagingStudy convertImagingStudy(org.hl7.fhir.dstu2.model.ImagingStudy src) throws FHIRException {
018    if (src == null || src.isEmpty())
019      return null;
020    org.hl7.fhir.dstu3.model.ImagingStudy tgt = new org.hl7.fhir.dstu3.model.ImagingStudy();
021    ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt);
022    if (src.hasUidElement())
023      tgt.setUidElement(Oid10_30.convertOid(src.getUidElement()));
024    if (src.hasAccession())
025      tgt.setAccession(Identifier10_30.convertIdentifier(src.getAccession()));
026    for (org.hl7.fhir.dstu2.model.Identifier t : src.getIdentifier())
027      tgt.addIdentifier(Identifier10_30.convertIdentifier(t));
028    if (src.hasAvailability())
029      tgt.setAvailabilityElement(convertInstanceAvailability(src.getAvailabilityElement()));
030    for (org.hl7.fhir.dstu2.model.Coding t : src.getModalityList()) tgt.addModalityList(Coding10_30.convertCoding(t));
031    if (src.hasPatient())
032      tgt.setPatient(Reference10_30.convertReference(src.getPatient()));
033    if (src.hasStartedElement())
034      tgt.setStartedElement(DateTime10_30.convertDateTime(src.getStartedElement()));
035    if (src.hasReferrer())
036      tgt.setReferrer(Reference10_30.convertReference(src.getReferrer()));
037    if (src.hasInterpreter())
038      tgt.addInterpreter(Reference10_30.convertReference(src.getInterpreter()));
039    if (src.hasNumberOfSeriesElement())
040      tgt.setNumberOfSeriesElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberOfSeriesElement()));
041    if (src.hasNumberOfInstancesElement())
042      tgt.setNumberOfInstancesElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberOfInstancesElement()));
043    for (org.hl7.fhir.dstu2.model.Reference t : src.getProcedure())
044      tgt.addProcedureReference(Reference10_30.convertReference(t));
045    if (src.hasDescriptionElement())
046      tgt.setDescriptionElement(String10_30.convertString(src.getDescriptionElement()));
047    for (org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries())
048      tgt.addSeries(convertImagingStudySeriesComponent(t));
049    return tgt;
050  }
051
052  public static org.hl7.fhir.dstu2.model.ImagingStudy convertImagingStudy(org.hl7.fhir.dstu3.model.ImagingStudy src) throws FHIRException {
053    if (src == null || src.isEmpty())
054      return null;
055    org.hl7.fhir.dstu2.model.ImagingStudy tgt = new org.hl7.fhir.dstu2.model.ImagingStudy();
056    ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt);
057    if (src.hasUidElement())
058      tgt.setUidElement(Oid10_30.convertOid(src.getUidElement()));
059    if (src.hasAccession())
060      tgt.setAccession(Identifier10_30.convertIdentifier(src.getAccession()));
061    for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier())
062      tgt.addIdentifier(Identifier10_30.convertIdentifier(t));
063    if (src.hasAvailability())
064      tgt.setAvailabilityElement(convertInstanceAvailability(src.getAvailabilityElement()));
065    for (org.hl7.fhir.dstu3.model.Coding t : src.getModalityList()) tgt.addModalityList(Coding10_30.convertCoding(t));
066    if (src.hasPatient())
067      tgt.setPatient(Reference10_30.convertReference(src.getPatient()));
068    if (src.hasStartedElement())
069      tgt.setStartedElement(DateTime10_30.convertDateTime(src.getStartedElement()));
070    if (src.hasReferrer())
071      tgt.setReferrer(Reference10_30.convertReference(src.getReferrer()));
072    for (org.hl7.fhir.dstu3.model.Reference t : src.getInterpreter())
073      tgt.setInterpreter(Reference10_30.convertReference(t));
074    if (src.hasNumberOfSeriesElement())
075      tgt.setNumberOfSeriesElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberOfSeriesElement()));
076    if (src.hasNumberOfInstancesElement())
077      tgt.setNumberOfInstancesElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberOfInstancesElement()));
078    for (org.hl7.fhir.dstu3.model.Reference t : src.getProcedureReference())
079      tgt.addProcedure(Reference10_30.convertReference(t));
080    if (src.hasDescriptionElement())
081      tgt.setDescriptionElement(String10_30.convertString(src.getDescriptionElement()));
082    for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries())
083      tgt.addSeries(convertImagingStudySeriesComponent(t));
084    return tgt;
085  }
086
087  public static org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException {
088    if (src == null || src.isEmpty())
089      return null;
090    org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesComponent();
091    ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt);
092    if (src.hasUidElement())
093      tgt.setUidElement(Oid10_30.convertOid(src.getUidElement()));
094    if (src.hasNumberElement())
095      tgt.setNumberElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberElement()));
096    if (src.hasModality())
097      tgt.setModality(Coding10_30.convertCoding(src.getModality()));
098    if (src.hasDescriptionElement())
099      tgt.setDescriptionElement(String10_30.convertString(src.getDescriptionElement()));
100    if (src.hasNumberOfInstancesElement())
101      tgt.setNumberOfInstancesElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberOfInstancesElement()));
102    if (src.hasAvailability())
103      tgt.setAvailabilityElement(convertInstanceAvailability(src.getAvailabilityElement()));
104    if (src.hasBodySite())
105      tgt.setBodySite(Coding10_30.convertCoding(src.getBodySite()));
106    if (src.hasLaterality())
107      tgt.setLaterality(Coding10_30.convertCoding(src.getLaterality()));
108    if (src.hasStartedElement())
109      tgt.setStartedElement(DateTime10_30.convertDateTime(src.getStartedElement()));
110    for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance())
111      tgt.addInstance(convertImagingStudySeriesInstanceComponent(t));
112    return tgt;
113  }
114
115  public static org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException {
116    if (src == null || src.isEmpty())
117      return null;
118    org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent();
119    ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt);
120    if (src.hasUidElement())
121      tgt.setUidElement(Oid10_30.convertOid(src.getUidElement()));
122    if (src.hasNumberElement())
123      tgt.setNumberElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberElement()));
124    if (src.hasModality())
125      tgt.setModality(Coding10_30.convertCoding(src.getModality()));
126    if (src.hasDescriptionElement())
127      tgt.setDescriptionElement(String10_30.convertString(src.getDescriptionElement()));
128    if (src.hasNumberOfInstancesElement())
129      tgt.setNumberOfInstancesElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberOfInstancesElement()));
130    if (src.hasAvailability())
131      tgt.setAvailabilityElement(convertInstanceAvailability(src.getAvailabilityElement()));
132    if (src.hasBodySite())
133      tgt.setBodySite(Coding10_30.convertCoding(src.getBodySite()));
134    if (src.hasLaterality())
135      tgt.setLaterality(Coding10_30.convertCoding(src.getLaterality()));
136    if (src.hasStartedElement())
137      tgt.setStartedElement(DateTime10_30.convertDateTime(src.getStartedElement()));
138    for (org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance())
139      tgt.addInstance(convertImagingStudySeriesInstanceComponent(t));
140    return tgt;
141  }
142
143  public static org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException {
144    if (src == null || src.isEmpty())
145      return null;
146    org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent();
147    ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt);
148    if (src.hasUidElement())
149      tgt.setUidElement(Oid10_30.convertOid(src.getUidElement()));
150    if (src.hasNumberElement())
151      tgt.setNumberElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberElement()));
152    if (src.hasSopClassElement())
153      tgt.setSopClassElement(Oid10_30.convertOid(src.getSopClassElement()));
154    if (src.hasTitleElement())
155      tgt.setTitleElement(String10_30.convertString(src.getTitleElement()));
156    return tgt;
157  }
158
159  public static org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException {
160    if (src == null || src.isEmpty())
161      return null;
162    org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.dstu2.model.ImagingStudy.ImagingStudySeriesInstanceComponent();
163    ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt);
164    if (src.hasUidElement())
165      tgt.setUidElement(Oid10_30.convertOid(src.getUidElement()));
166    if (src.hasNumberElement())
167      tgt.setNumberElement(UnsignedInt10_30.convertUnsignedInt(src.getNumberElement()));
168    if (src.hasSopClassElement())
169      tgt.setSopClassElement(Oid10_30.convertOid(src.getSopClassElement()));
170    if (src.hasTitleElement())
171      tgt.setTitleElement(String10_30.convertString(src.getTitleElement()));
172    return tgt;
173  }
174
175  static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ImagingStudy.InstanceAvailability> convertInstanceAvailability(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability> src) throws FHIRException {
176      if (src == null || src.isEmpty())
177          return null;
178      Enumeration<ImagingStudy.InstanceAvailability> tgt = new Enumeration<>(new ImagingStudy.InstanceAvailabilityEnumFactory());
179      ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt);
180      if (src.getValue() == null) {
181          tgt.setValue(null);
182      } else {
183          switch (src.getValue()) {
184              case ONLINE:
185                  tgt.setValue(ImagingStudy.InstanceAvailability.ONLINE);
186                  break;
187              case OFFLINE:
188                  tgt.setValue(ImagingStudy.InstanceAvailability.OFFLINE);
189                  break;
190              case NEARLINE:
191                  tgt.setValue(ImagingStudy.InstanceAvailability.NEARLINE);
192                  break;
193              case UNAVAILABLE:
194                  tgt.setValue(ImagingStudy.InstanceAvailability.UNAVAILABLE);
195                  break;
196              default:
197                  tgt.setValue(ImagingStudy.InstanceAvailability.NULL);
198                  break;
199          }
200      }
201      return tgt;
202  }
203
204  static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability> convertInstanceAvailability(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.ImagingStudy.InstanceAvailability> src) throws FHIRException {
205      if (src == null || src.isEmpty())
206          return null;
207      org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailabilityEnumFactory());
208      ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt);
209      if (src.getValue() == null) {
210          tgt.setValue(null);
211      } else {
212          switch (src.getValue()) {
213              case ONLINE:
214                  tgt.setValue(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.ONLINE);
215                  break;
216              case OFFLINE:
217                  tgt.setValue(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.OFFLINE);
218                  break;
219              case NEARLINE:
220                  tgt.setValue(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NEARLINE);
221                  break;
222              case UNAVAILABLE:
223                  tgt.setValue(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.UNAVAILABLE);
224                  break;
225              default:
226                  tgt.setValue(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NULL);
227                  break;
228          }
229      }
230      return tgt;
231  }
232}