
001package org.hl7.fhir.convertors.conv30_50.resources30_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_50; 004import org.hl7.fhir.convertors.conv30_50.datatypes30_50.ContactDetail30_50; 005import org.hl7.fhir.convertors.conv30_50.datatypes30_50.Reference30_50; 006import org.hl7.fhir.convertors.conv30_50.datatypes30_50.UsageContext30_50; 007import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.CodeableConcept30_50; 008import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Coding30_50; 009import org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50.Identifier30_50; 010import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Boolean30_50; 011import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Code30_50; 012import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.DateTime30_50; 013import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.MarkDown30_50; 014import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.String30_50; 015import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.UnsignedInt30_50; 016import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Uri30_50; 017import org.hl7.fhir.dstu3.model.Enumeration; 018import org.hl7.fhir.dstu3.model.MessageDefinition; 019import org.hl7.fhir.exceptions.FHIRException; 020 021public class MessageDefinition30_50 { 022 023 public static org.hl7.fhir.dstu3.model.MessageDefinition convertMessageDefinition(org.hl7.fhir.r5.model.MessageDefinition src) throws FHIRException { 024 if (src == null) 025 return null; 026 org.hl7.fhir.dstu3.model.MessageDefinition tgt = new org.hl7.fhir.dstu3.model.MessageDefinition(); 027 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyDomainResource(src, tgt); 028 if (src.hasUrl()) 029 tgt.setUrlElement(Uri30_50.convertUri(src.getUrlElement())); 030 if (src.hasIdentifier()) 031 tgt.setIdentifier(Identifier30_50.convertIdentifier(src.getIdentifierFirstRep())); 032 if (src.hasVersion()) 033 tgt.setVersionElement(String30_50.convertString(src.getVersionElement())); 034 if (src.hasName()) 035 tgt.setNameElement(String30_50.convertString(src.getNameElement())); 036 if (src.hasTitle()) 037 tgt.setTitleElement(String30_50.convertString(src.getTitleElement())); 038 if (src.hasStatus()) 039 tgt.setStatusElement(Enumerations30_50.convertPublicationStatus(src.getStatusElement())); 040 if (src.hasExperimental()) 041 tgt.setExperimentalElement(Boolean30_50.convertBoolean(src.getExperimentalElement())); 042 if (src.hasDate()) 043 tgt.setDateElement(DateTime30_50.convertDateTime(src.getDateElement())); 044 if (src.hasPublisher()) 045 tgt.setPublisherElement(String30_50.convertString(src.getPublisherElement())); 046 for (org.hl7.fhir.r5.model.ContactDetail t : src.getContact()) 047 tgt.addContact(ContactDetail30_50.convertContactDetail(t)); 048 if (src.hasDescription()) 049 tgt.setDescriptionElement(MarkDown30_50.convertMarkdown(src.getDescriptionElement())); 050 for (org.hl7.fhir.r5.model.UsageContext t : src.getUseContext()) 051 tgt.addUseContext(UsageContext30_50.convertUsageContext(t)); 052 for (org.hl7.fhir.r5.model.CodeableConcept t : src.getJurisdiction()) 053 tgt.addJurisdiction(CodeableConcept30_50.convertCodeableConcept(t)); 054 if (src.hasPurpose()) 055 tgt.setPurposeElement(MarkDown30_50.convertMarkdown(src.getPurposeElement())); 056 if (src.hasCopyright()) 057 tgt.setCopyrightElement(MarkDown30_50.convertMarkdown(src.getCopyrightElement())); 058 if (src.hasBase()) 059 tgt.setBase(Reference30_50.convertCanonicalToReference(src.getBaseElement())); 060 for (org.hl7.fhir.r5.model.CanonicalType t : src.getParent()) 061 tgt.addParent(Reference30_50.convertCanonicalToReference(t)); 062 for (org.hl7.fhir.r5.model.CanonicalType t : src.getReplaces()) 063 tgt.addReplaces(Reference30_50.convertCanonicalToReference(t)); 064 if (src.hasEventCoding()) 065 tgt.setEvent(Coding30_50.convertCoding(src.getEventCoding())); 066 if (src.hasCategory()) 067 tgt.setCategoryElement(convertMessageSignificanceCategory(src.getCategoryElement())); 068 for (org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionFocusComponent t : src.getFocus()) 069 tgt.addFocus(convertMessageDefinitionFocusComponent(t)); 070 if (src.hasResponseRequired()) 071 tgt.setResponseRequired(src.getResponseRequired() != org.hl7.fhir.r5.model.MessageDefinition.MessageheaderResponseRequest.NEVER); 072 for (org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionAllowedResponseComponent t : src.getAllowedResponse()) 073 tgt.addAllowedResponse(convertMessageDefinitionAllowedResponseComponent(t)); 074 return tgt; 075 } 076 077 public static org.hl7.fhir.r5.model.MessageDefinition convertMessageDefinition(org.hl7.fhir.dstu3.model.MessageDefinition src) throws FHIRException { 078 if (src == null) 079 return null; 080 org.hl7.fhir.r5.model.MessageDefinition tgt = new org.hl7.fhir.r5.model.MessageDefinition(); 081 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyDomainResource(src, tgt); 082 if (src.hasUrl()) 083 tgt.setUrlElement(Uri30_50.convertUri(src.getUrlElement())); 084 if (src.hasIdentifier()) 085 tgt.addIdentifier(Identifier30_50.convertIdentifier(src.getIdentifier())); 086 if (src.hasVersion()) 087 tgt.setVersionElement(String30_50.convertString(src.getVersionElement())); 088 if (src.hasName()) 089 tgt.setNameElement(String30_50.convertString(src.getNameElement())); 090 if (src.hasTitle()) 091 tgt.setTitleElement(String30_50.convertString(src.getTitleElement())); 092 if (src.hasStatus()) 093 tgt.setStatusElement(Enumerations30_50.convertPublicationStatus(src.getStatusElement())); 094 if (src.hasExperimental()) 095 tgt.setExperimentalElement(Boolean30_50.convertBoolean(src.getExperimentalElement())); 096 if (src.hasDate()) 097 tgt.setDateElement(DateTime30_50.convertDateTime(src.getDateElement())); 098 if (src.hasPublisher()) 099 tgt.setPublisherElement(String30_50.convertString(src.getPublisherElement())); 100 for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) 101 tgt.addContact(ContactDetail30_50.convertContactDetail(t)); 102 if (src.hasDescription()) 103 tgt.setDescriptionElement(MarkDown30_50.convertMarkdown(src.getDescriptionElement())); 104 for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) 105 tgt.addUseContext(UsageContext30_50.convertUsageContext(t)); 106 for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) 107 tgt.addJurisdiction(CodeableConcept30_50.convertCodeableConcept(t)); 108 if (src.hasPurpose()) 109 tgt.setPurposeElement(MarkDown30_50.convertMarkdown(src.getPurposeElement())); 110 if (src.hasCopyright()) 111 tgt.setCopyrightElement(MarkDown30_50.convertMarkdown(src.getCopyrightElement())); 112 if (src.hasBase()) 113 tgt.setBaseElement(Reference30_50.convertReferenceToCanonical(src.getBase())); 114 for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) 115 tgt.getParent().add(Reference30_50.convertReferenceToCanonical(t)); 116 for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) 117 tgt.getReplaces().add(Reference30_50.convertReferenceToCanonical(t)); 118 if (src.hasEvent()) 119 tgt.setEvent(Coding30_50.convertCoding(src.getEvent())); 120 if (src.hasCategory()) 121 tgt.setCategoryElement(convertMessageSignificanceCategory(src.getCategoryElement())); 122 for (org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent t : src.getFocus()) 123 tgt.addFocus(convertMessageDefinitionFocusComponent(t)); 124 if (src.hasResponseRequired()) 125 tgt.setResponseRequired(src.getResponseRequired() ? org.hl7.fhir.r5.model.MessageDefinition.MessageheaderResponseRequest.ALWAYS : org.hl7.fhir.r5.model.MessageDefinition.MessageheaderResponseRequest.NEVER); 126 for (org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent t : src.getAllowedResponse()) 127 tgt.addAllowedResponse(convertMessageDefinitionAllowedResponseComponent(t)); 128 return tgt; 129 } 130 131 public static org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent convertMessageDefinitionAllowedResponseComponent(org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionAllowedResponseComponent src) throws FHIRException { 132 if (src == null) 133 return null; 134 org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent(); 135 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyBackboneElement(src,tgt); 136 if (src.hasMessage()) 137 tgt.setMessage(Reference30_50.convertCanonicalToReference(src.getMessageElement())); 138 if (src.hasSituation()) 139 tgt.setSituationElement(MarkDown30_50.convertMarkdown(src.getSituationElement())); 140 return tgt; 141 } 142 143 public static org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionAllowedResponseComponent convertMessageDefinitionAllowedResponseComponent(org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent src) throws FHIRException { 144 if (src == null) 145 return null; 146 org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionAllowedResponseComponent tgt = new org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionAllowedResponseComponent(); 147 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyBackboneElement(src,tgt); 148 if (src.hasMessage()) 149 tgt.setMessageElement(Reference30_50.convertReferenceToCanonical(src.getMessage())); 150 if (src.hasSituation()) 151 tgt.setSituationElement(MarkDown30_50.convertMarkdown(src.getSituationElement())); 152 return tgt; 153 } 154 155 public static org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent convertMessageDefinitionFocusComponent(org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionFocusComponent src) throws FHIRException { 156 if (src == null) 157 return null; 158 org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent tgt = new org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent(); 159 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyBackboneElement(src,tgt); 160 if (src.hasCode()) 161 tgt.setCodeElement(Code30_50.convertCode(src.getCodeElement())); 162 if (src.hasProfile()) 163 tgt.setProfile(Reference30_50.convertCanonicalToReference(src.getProfileElement())); 164 if (src.hasMin()) 165 tgt.setMinElement(UnsignedInt30_50.convertUnsignedInt(src.getMinElement())); 166 if (src.hasMax()) 167 tgt.setMaxElement(String30_50.convertString(src.getMaxElement())); 168 return tgt; 169 } 170 171 public static org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionFocusComponent convertMessageDefinitionFocusComponent(org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent src) throws FHIRException { 172 if (src == null) 173 return null; 174 org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionFocusComponent tgt = new org.hl7.fhir.r5.model.MessageDefinition.MessageDefinitionFocusComponent(); 175 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyBackboneElement(src,tgt); 176 if (src.hasCode()) 177 tgt.setCodeElement(Code30_50.convertCode(src.getCodeElement())); 178 if (src.hasProfile()) 179 tgt.setProfileElement(Reference30_50.convertReferenceToCanonical(src.getProfile())); 180 if (src.hasMin()) 181 tgt.setMinElement(UnsignedInt30_50.convertUnsignedInt(src.getMinElement())); 182 if (src.hasMax()) 183 tgt.setMaxElement(String30_50.convertString(src.getMaxElement())); 184 return tgt; 185 } 186 187 static public org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory> convertMessageSignificanceCategory(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory> src) throws FHIRException { 188 if (src == null || src.isEmpty()) 189 return null; 190 Enumeration<MessageDefinition.MessageSignificanceCategory> tgt = new Enumeration<>(new MessageDefinition.MessageSignificanceCategoryEnumFactory()); 191 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 192 if (src.getValue() == null) { 193 tgt.setValue(null); 194 } else { 195 switch (src.getValue()) { 196 case CONSEQUENCE: 197 tgt.setValue(MessageDefinition.MessageSignificanceCategory.CONSEQUENCE); 198 break; 199 case CURRENCY: 200 tgt.setValue(MessageDefinition.MessageSignificanceCategory.CURRENCY); 201 break; 202 case NOTIFICATION: 203 tgt.setValue(MessageDefinition.MessageSignificanceCategory.NOTIFICATION); 204 break; 205 default: 206 tgt.setValue(MessageDefinition.MessageSignificanceCategory.NULL); 207 break; 208 } 209 } 210 return tgt; 211 } 212 213 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory> convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.Enumeration<org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory> src) throws FHIRException { 214 if (src == null || src.isEmpty()) 215 return null; 216 org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategoryEnumFactory()); 217 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 218 if (src.getValue() == null) { 219 tgt.setValue(null); 220 } else { 221 switch (src.getValue()) { 222 case CONSEQUENCE: 223 tgt.setValue(org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory.CONSEQUENCE); 224 break; 225 case CURRENCY: 226 tgt.setValue(org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory.CURRENCY); 227 break; 228 case NOTIFICATION: 229 tgt.setValue(org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory.NOTIFICATION); 230 break; 231 default: 232 tgt.setValue(org.hl7.fhir.r5.model.MessageDefinition.MessageSignificanceCategory.NULL); 233 break; 234 } 235 } 236 return tgt; 237 } 238}