
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.CodeableConcept10_30; 006import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Identifier10_30; 007import org.hl7.fhir.convertors.conv10_30.datatypes10_30.complextypes10_30.Period10_30; 008import org.hl7.fhir.dstu2.model.Enumeration; 009import org.hl7.fhir.dstu2.model.EpisodeOfCare; 010import org.hl7.fhir.exceptions.FHIRException; 011 012public class EpisodeOfCare10_30 { 013 014 public static org.hl7.fhir.dstu3.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.dstu2.model.EpisodeOfCare src) throws FHIRException { 015 if (src == null || src.isEmpty()) 016 return null; 017 org.hl7.fhir.dstu3.model.EpisodeOfCare tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare(); 018 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 019 for (org.hl7.fhir.dstu2.model.Identifier t : src.getIdentifier()) 020 tgt.addIdentifier(Identifier10_30.convertIdentifier(t)); 021 if (src.hasStatus()) 022 tgt.setStatusElement(convertEpisodeOfCareStatus(src.getStatusElement())); 023 for (org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) 024 tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); 025 for (org.hl7.fhir.dstu2.model.CodeableConcept t : src.getType()) 026 tgt.addType(CodeableConcept10_30.convertCodeableConcept(t)); 027 if (src.hasPatient()) 028 tgt.setPatient(Reference10_30.convertReference(src.getPatient())); 029 if (src.hasManagingOrganization()) 030 tgt.setManagingOrganization(Reference10_30.convertReference(src.getManagingOrganization())); 031 if (src.hasPeriod()) 032 tgt.setPeriod(Period10_30.convertPeriod(src.getPeriod())); 033 for (org.hl7.fhir.dstu2.model.Reference t : src.getReferralRequest()) 034 tgt.addReferralRequest(Reference10_30.convertReference(t)); 035 if (src.hasCareManager()) 036 tgt.setCareManager(Reference10_30.convertReference(src.getCareManager())); 037 return tgt; 038 } 039 040 public static org.hl7.fhir.dstu2.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.dstu3.model.EpisodeOfCare src) throws FHIRException { 041 if (src == null || src.isEmpty()) 042 return null; 043 org.hl7.fhir.dstu2.model.EpisodeOfCare tgt = new org.hl7.fhir.dstu2.model.EpisodeOfCare(); 044 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyDomainResource(src, tgt); 045 for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) 046 tgt.addIdentifier(Identifier10_30.convertIdentifier(t)); 047 if (src.hasStatus()) 048 tgt.setStatusElement(convertEpisodeOfCareStatus(src.getStatusElement())); 049 for (org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) 050 tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); 051 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) 052 tgt.addType(CodeableConcept10_30.convertCodeableConcept(t)); 053 if (src.hasPatient()) 054 tgt.setPatient(Reference10_30.convertReference(src.getPatient())); 055 if (src.hasManagingOrganization()) 056 tgt.setManagingOrganization(Reference10_30.convertReference(src.getManagingOrganization())); 057 if (src.hasPeriod()) 058 tgt.setPeriod(Period10_30.convertPeriod(src.getPeriod())); 059 for (org.hl7.fhir.dstu3.model.Reference t : src.getReferralRequest()) 060 tgt.addReferralRequest(Reference10_30.convertReference(t)); 061 if (src.hasCareManager()) 062 tgt.setCareManager(Reference10_30.convertReference(src.getCareManager())); 063 return tgt; 064 } 065 066 static public org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatus> convertEpisodeOfCareStatus(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus> src) throws FHIRException { 067 if (src == null || src.isEmpty()) 068 return null; 069 Enumeration<EpisodeOfCare.EpisodeOfCareStatus> tgt = new Enumeration<>(new EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 070 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 071 if (src.getValue() == null) { 072 tgt.setValue(null); 073 } else { 074 switch (src.getValue()) { 075 case PLANNED: 076 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.PLANNED); 077 break; 078 case WAITLIST: 079 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.WAITLIST); 080 break; 081 case ACTIVE: 082 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.ACTIVE); 083 break; 084 case ONHOLD: 085 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.ONHOLD); 086 break; 087 case FINISHED: 088 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.FINISHED); 089 break; 090 case CANCELLED: 091 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.CANCELLED); 092 break; 093 default: 094 tgt.setValue(EpisodeOfCare.EpisodeOfCareStatus.NULL); 095 break; 096 } 097 } 098 return tgt; 099 } 100 101 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus> convertEpisodeOfCareStatus(org.hl7.fhir.dstu2.model.Enumeration<org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatus> src) throws FHIRException { 102 if (src == null || src.isEmpty()) 103 return null; 104 org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus> tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusEnumFactory()); 105 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyElement(src, tgt); 106 if (src.getValue() == null) { 107 tgt.setValue(null); 108 } else { 109 switch (src.getValue()) { 110 case PLANNED: 111 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED); 112 break; 113 case WAITLIST: 114 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST); 115 break; 116 case ACTIVE: 117 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE); 118 break; 119 case ONHOLD: 120 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD); 121 break; 122 case FINISHED: 123 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED); 124 break; 125 case CANCELLED: 126 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED); 127 break; 128 default: 129 tgt.setValue(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.NULL); 130 break; 131 } 132 } 133 return tgt; 134 } 135 136 public static org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { 137 if (src == null || src.isEmpty()) 138 return null; 139 org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 140 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 141 if (src.hasStatus()) 142 tgt.setStatusElement(convertEpisodeOfCareStatus(src.getStatusElement())); 143 if (src.hasPeriod()) 144 tgt.setPeriod(Period10_30.convertPeriod(src.getPeriod())); 145 return tgt; 146 } 147 148 public static org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.dstu2.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { 149 if (src == null || src.isEmpty()) 150 return null; 151 org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); 152 ConversionContext10_30.INSTANCE.getVersionConvertor_10_30().copyBackboneElement(src,tgt); 153 if (src.hasStatus()) 154 tgt.setStatusElement(convertEpisodeOfCareStatus(src.getStatusElement())); 155 if (src.hasPeriod()) 156 tgt.setPeriod(Period10_30.convertPeriod(src.getPeriod())); 157 return tgt; 158 } 159}