001package org.hl7.fhir.convertors.conv14_50.resources14_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext14_50; 004import org.hl7.fhir.convertors.conv14_50.datatypes14_50.complextypes14_50.ContactPoint14_50; 005import org.hl7.fhir.convertors.conv14_50.datatypes14_50.primitivetypes14_50.*; 006import org.hl7.fhir.exceptions.FHIRException; 007 008public class CompartmentDefinition14_50 { 009 010 public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r5.model.CompartmentDefinition src) throws FHIRException { 011 if (src == null || src.isEmpty()) 012 return null; 013 org.hl7.fhir.dstu2016may.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition(); 014 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyDomainResource(src, tgt); 015 if (src.hasUrlElement()) 016 tgt.setUrlElement(Uri14_50.convertUri(src.getUrlElement())); 017 if (src.hasNameElement()) 018 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 019 if (src.hasStatus()) 020 tgt.setStatusElement(Enumerations14_50.convertConformanceResourceStatus(src.getStatusElement())); 021 if (src.hasExperimental()) 022 tgt.setExperimentalElement(Boolean14_50.convertBoolean(src.getExperimentalElement())); 023 if (src.hasPublisher()) 024 tgt.setPublisherElement(String14_50.convertString(src.getPublisherElement())); 025 for (org.hl7.fhir.r5.model.ContactDetail t : src.getContact()) 026 tgt.addContact(convertCompartmentDefinitionContactComponent(t)); 027 if (src.hasDate()) 028 tgt.setDateElement(DateTime14_50.convertDateTime(src.getDateElement())); 029 if (src.hasDescription()) 030 tgt.setDescription(src.getDescription()); 031 if (src.hasPurpose()) 032 tgt.setRequirements(src.getPurpose()); 033 if (src.hasCode()) 034 tgt.setCodeElement(convertCompartmentType(src.getCodeElement())); 035 if (src.hasSearchElement()) 036 tgt.setSearchElement(Boolean14_50.convertBoolean(src.getSearchElement())); 037 for (org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) 038 tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); 039 return tgt; 040 } 041 042 public static org.hl7.fhir.r5.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu2016may.model.CompartmentDefinition src) throws FHIRException { 043 if (src == null || src.isEmpty()) 044 return null; 045 org.hl7.fhir.r5.model.CompartmentDefinition tgt = new org.hl7.fhir.r5.model.CompartmentDefinition(); 046 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyDomainResource(src, tgt); 047 if (src.hasUrlElement()) 048 tgt.setUrlElement(Uri14_50.convertUri(src.getUrlElement())); 049 if (src.hasNameElement()) 050 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 051 if (src.hasStatus()) 052 tgt.setStatusElement(Enumerations14_50.convertConformanceResourceStatus(src.getStatusElement())); 053 if (src.hasExperimental()) 054 tgt.setExperimentalElement(Boolean14_50.convertBoolean(src.getExperimentalElement())); 055 if (src.hasPublisher()) 056 tgt.setPublisherElement(String14_50.convertString(src.getPublisherElement())); 057 for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent t : src.getContact()) 058 tgt.addContact(convertCompartmentDefinitionContactComponent(t)); 059 if (src.hasDate()) 060 tgt.setDateElement(DateTime14_50.convertDateTime(src.getDateElement())); 061 if (src.hasDescription()) 062 tgt.setDescription(src.getDescription()); 063 if (src.hasRequirements()) 064 tgt.setPurpose(src.getRequirements()); 065 if (src.hasCode()) 066 tgt.setCodeElement(convertCompartmentType(src.getCodeElement())); 067 if (src.hasSearchElement()) 068 tgt.setSearchElement(Boolean14_50.convertBoolean(src.getSearchElement())); 069 for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) 070 tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); 071 return tgt; 072 } 073 074 public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent convertCompartmentDefinitionContactComponent(org.hl7.fhir.r5.model.ContactDetail src) throws FHIRException { 075 if (src == null || src.isEmpty()) 076 return null; 077 org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent(); 078 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 079 if (src.hasName()) 080 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 081 for (org.hl7.fhir.r5.model.ContactPoint t : src.getTelecom()) 082 tgt.addTelecom(ContactPoint14_50.convertContactPoint(t)); 083 return tgt; 084 } 085 086 public static org.hl7.fhir.r5.model.ContactDetail convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent src) throws FHIRException { 087 if (src == null || src.isEmpty()) 088 return null; 089 org.hl7.fhir.r5.model.ContactDetail tgt = new org.hl7.fhir.r5.model.ContactDetail(); 090 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 091 if (src.hasName()) 092 tgt.setNameElement(String14_50.convertString(src.getNameElement())); 093 for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) 094 tgt.addTelecom(ContactPoint14_50.convertContactPoint(t)); 095 return tgt; 096 } 097 098 public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { 099 if (src == null || src.isEmpty()) 100 return null; 101 org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); 102 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 103 if (src.hasCode()) { 104 if (src.hasCodeElement()) 105 tgt.setCodeElement(Code14_50.convertCode(src.getCodeElement())); 106 } 107 for (org.hl7.fhir.r5.model.StringType t : src.getParam()) tgt.addParam(t.getValue()); 108 if (src.hasDocumentation()) 109 tgt.setDocumentationElement(String14_50.convertString(src.getDocumentationElement())); 110 return tgt; 111 } 112 113 public static org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { 114 if (src == null || src.isEmpty()) 115 return null; 116 org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r5.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); 117 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 118 if (src.hasCodeElement()) 119 tgt.setCodeElement(Code14_50.convertCode(src.getCodeElement())); 120 for (org.hl7.fhir.dstu2016may.model.StringType t : src.getParam()) tgt.addParam(t.getValue()); 121 if (src.hasDocumentation()) 122 tgt.setDocumentationElement(String14_50.convertString(src.getDocumentationElement())); 123 return tgt; 124 } 125 126 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompartmentType> convertCompartmentType(org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType> src) throws FHIRException { 127 if (src == null || src.isEmpty()) 128 return null; 129 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompartmentType> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.CompartmentTypeEnumFactory()); 130 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 131 switch (src.getValue()) { 132 case PATIENT: 133 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompartmentType.PATIENT); 134 break; 135 case ENCOUNTER: 136 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompartmentType.ENCOUNTER); 137 break; 138 case RELATEDPERSON: 139 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompartmentType.RELATEDPERSON); 140 break; 141 case PRACTITIONER: 142 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompartmentType.PRACTITIONER); 143 break; 144 case DEVICE: 145 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompartmentType.DEVICE); 146 break; 147 default: 148 tgt.setValue(org.hl7.fhir.r5.model.Enumerations.CompartmentType.NULL); 149 break; 150 } 151 return tgt; 152 } 153 154 static public org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType> convertCompartmentType(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.CompartmentType> src) throws FHIRException { 155 if (src == null || src.isEmpty()) 156 return null; 157 org.hl7.fhir.dstu2016may.model.Enumeration<org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType> tgt = new org.hl7.fhir.dstu2016may.model.Enumeration<>(new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentTypeEnumFactory()); 158 ConversionContext14_50.INSTANCE.getVersionConvertor_14_50().copyElement(src, tgt); 159 switch (src.getValue()) { 160 case PATIENT: 161 tgt.setValue(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PATIENT); 162 break; 163 case ENCOUNTER: 164 tgt.setValue(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.ENCOUNTER); 165 break; 166 case RELATEDPERSON: 167 tgt.setValue(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.RELATEDPERSON); 168 break; 169 case PRACTITIONER: 170 tgt.setValue(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PRACTITIONER); 171 break; 172 case DEVICE: 173 tgt.setValue(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.DEVICE); 174 break; 175 default: 176 tgt.setValue(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.NULL); 177 break; 178 } 179 return tgt; 180 } 181}