
001package org.hl7.fhir.convertors.conv30_40.resources30_40; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_40; 004import org.hl7.fhir.convertors.conv30_40.datatypes30_40.Reference30_40; 005import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Annotation30_40; 006import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.CodeableConcept30_40; 007import org.hl7.fhir.convertors.conv30_40.datatypes30_40.complextypes30_40.Identifier30_40; 008import org.hl7.fhir.convertors.conv30_40.datatypes30_40.primitivetypes30_40.DateTime30_40; 009import org.hl7.fhir.exceptions.FHIRException; 010import org.hl7.fhir.r4.model.DeviceUseStatement; 011import org.hl7.fhir.r4.model.Enumeration; 012 013public class DeviceUseStatement30_40 { 014 015 public static org.hl7.fhir.r4.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.dstu3.model.DeviceUseStatement src) throws FHIRException { 016 if (src == null) 017 return null; 018 org.hl7.fhir.r4.model.DeviceUseStatement tgt = new org.hl7.fhir.r4.model.DeviceUseStatement(); 019 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 020 for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) 021 tgt.addIdentifier(Identifier30_40.convertIdentifier(t)); 022 if (src.hasStatus()) 023 tgt.setStatusElement(convertDeviceUseStatementStatus(src.getStatusElement())); 024 if (src.hasSubject()) 025 tgt.setSubject(Reference30_40.convertReference(src.getSubject())); 026 if (src.hasTiming()) 027 tgt.setTiming(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getTiming())); 028 if (src.hasRecordedOn()) 029 tgt.setRecordedOnElement(DateTime30_40.convertDateTime(src.getRecordedOnElement())); 030 if (src.hasSource()) 031 tgt.setSource(Reference30_40.convertReference(src.getSource())); 032 if (src.hasDevice()) 033 tgt.setDevice(Reference30_40.convertReference(src.getDevice())); 034 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getIndication()) 035 tgt.addReasonCode(CodeableConcept30_40.convertCodeableConcept(t)); 036 if (src.hasBodySite()) 037 tgt.setBodySite(CodeableConcept30_40.convertCodeableConcept(src.getBodySite())); 038 for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) tgt.addNote(Annotation30_40.convertAnnotation(t)); 039 return tgt; 040 } 041 042 public static org.hl7.fhir.dstu3.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.r4.model.DeviceUseStatement src) throws FHIRException { 043 if (src == null) 044 return null; 045 org.hl7.fhir.dstu3.model.DeviceUseStatement tgt = new org.hl7.fhir.dstu3.model.DeviceUseStatement(); 046 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyDomainResource(src, tgt); 047 for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) 048 tgt.addIdentifier(Identifier30_40.convertIdentifier(t)); 049 if (src.hasStatus()) 050 tgt.setStatusElement(convertDeviceUseStatementStatus(src.getStatusElement())); 051 if (src.hasSubject()) 052 tgt.setSubject(Reference30_40.convertReference(src.getSubject())); 053 if (src.hasTiming()) 054 tgt.setTiming(ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().convertType(src.getTiming())); 055 if (src.hasRecordedOn()) 056 tgt.setRecordedOnElement(DateTime30_40.convertDateTime(src.getRecordedOnElement())); 057 if (src.hasSource()) 058 tgt.setSource(Reference30_40.convertReference(src.getSource())); 059 if (src.hasDevice()) 060 tgt.setDevice(Reference30_40.convertReference(src.getDevice())); 061 for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) 062 tgt.addIndication(CodeableConcept30_40.convertCodeableConcept(t)); 063 if (src.hasBodySite()) 064 tgt.setBodySite(CodeableConcept30_40.convertCodeableConcept(src.getBodySite())); 065 for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) tgt.addNote(Annotation30_40.convertAnnotation(t)); 066 return tgt; 067 } 068 069 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus> convertDeviceUseStatementStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus> src) throws FHIRException { 070 if (src == null || src.isEmpty()) 071 return null; 072 Enumeration<DeviceUseStatement.DeviceUseStatementStatus> tgt = new Enumeration<>(new DeviceUseStatement.DeviceUseStatementStatusEnumFactory()); 073 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 074 if (src.getValue() == null) { 075 tgt.setValue(null); 076 } else { 077 switch (src.getValue()) { 078 case ACTIVE: 079 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.ACTIVE); 080 break; 081 case COMPLETED: 082 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.COMPLETED); 083 break; 084 case ENTEREDINERROR: 085 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.ENTEREDINERROR); 086 break; 087 case INTENDED: 088 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.INTENDED); 089 break; 090 case STOPPED: 091 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.STOPPED); 092 break; 093 case ONHOLD: 094 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.ONHOLD); 095 break; 096 default: 097 tgt.setValue(DeviceUseStatement.DeviceUseStatementStatus.NULL); 098 break; 099 } 100 } 101 return tgt; 102 } 103 104 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus> convertDeviceUseStatementStatus(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus> src) throws FHIRException { 105 if (src == null || src.isEmpty()) 106 return null; 107 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatusEnumFactory()); 108 ConversionContext30_40.INSTANCE.getVersionConvertor_30_40().copyElement(src, tgt); 109 if (src.getValue() == null) { 110 tgt.setValue(null); 111 } else { 112 switch (src.getValue()) { 113 case ACTIVE: 114 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ACTIVE); 115 break; 116 case COMPLETED: 117 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.COMPLETED); 118 break; 119 case ENTEREDINERROR: 120 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ENTEREDINERROR); 121 break; 122 case INTENDED: 123 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.INTENDED); 124 break; 125 case STOPPED: 126 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.STOPPED); 127 break; 128 case ONHOLD: 129 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ONHOLD); 130 break; 131 default: 132 tgt.setValue(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.NULL); 133 break; 134 } 135 } 136 return tgt; 137 } 138}