
001package org.hl7.fhir.convertors.conv40_50.resources40_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext40_50; 004import org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50.CodeableConcept40_50; 005import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.String40_50; 006import org.hl7.fhir.exceptions.FHIRException; 007import org.hl7.fhir.r5.model.Enumeration; 008import org.hl7.fhir.r5.model.OperationOutcome; 009 010/* 011 Copyright (c) 2011+, HL7, Inc. 012 All rights reserved. 013 014 Redistribution and use in source and binary forms, with or without modification, 015 are permitted provided that the following conditions are met: 016 017 * Redistributions of source code must retain the above copyright notice, this 018 list of conditions and the following disclaimer. 019 * Redistributions in binary form must reproduce the above copyright notice, 020 this list of conditions and the following disclaimer in the documentation 021 and/or other materials provided with the distribution. 022 * Neither the name of HL7 nor the names of its contributors may be used to 023 endorse or promote products derived from this software without specific 024 prior written permission. 025 026 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 027 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 028 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 029 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 030 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 031 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 032 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 033 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 034 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 035 POSSIBILITY OF SUCH DAMAGE. 036 037*/ 038// Generated on Sun, Feb 24, 2019 11:37+1100 for FHIR v4.0.0 039public class OperationOutcome40_50 { 040 041 public static org.hl7.fhir.r5.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { 042 if (src == null) 043 return null; 044 org.hl7.fhir.r5.model.OperationOutcome tgt = new org.hl7.fhir.r5.model.OperationOutcome(); 045 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyDomainResource(src, tgt); 046 for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) 047 tgt.addIssue(convertOperationOutcomeIssueComponent(t)); 048 return tgt; 049 } 050 051 public static org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r5.model.OperationOutcome src) throws FHIRException { 052 if (src == null) 053 return null; 054 org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); 055 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyDomainResource(src, tgt); 056 for (org.hl7.fhir.r5.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) 057 tgt.addIssue(convertOperationOutcomeIssueComponent(t)); 058 return tgt; 059 } 060 061 public static org.hl7.fhir.r5.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { 062 if (src == null) 063 return null; 064 org.hl7.fhir.r5.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r5.model.OperationOutcome.OperationOutcomeIssueComponent(); 065 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyBackboneElement(src, tgt); 066 if (src.hasSeverity()) 067 tgt.setSeverityElement(convertIssueSeverity(src.getSeverityElement())); 068 if (src.hasCode()) 069 tgt.setCodeElement(convertIssueType(src.getCodeElement())); 070 if (src.hasDetails()) 071 tgt.setDetails(CodeableConcept40_50.convertCodeableConcept(src.getDetails())); 072 if (src.hasDiagnostics()) 073 tgt.setDiagnosticsElement(String40_50.convertString(src.getDiagnosticsElement())); 074 for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) tgt.getLocation().add(String40_50.convertString(t)); 075 for (org.hl7.fhir.r4.model.StringType t : src.getExpression()) 076 tgt.getExpression().add(String40_50.convertString(t)); 077 return tgt; 078 } 079 080 public static org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r5.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { 081 if (src == null) 082 return null; 083 org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); 084 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyBackboneElement(src, tgt); 085 if (src.hasSeverity()) 086 tgt.setSeverityElement(convertIssueSeverity(src.getSeverityElement())); 087 if (src.hasCode()) 088 tgt.setCodeElement(convertIssueType(src.getCodeElement())); 089 if (src.hasDetails()) 090 tgt.setDetails(CodeableConcept40_50.convertCodeableConcept(src.getDetails())); 091 if (src.hasDiagnostics()) 092 tgt.setDiagnosticsElement(String40_50.convertString(src.getDiagnosticsElement())); 093 for (org.hl7.fhir.r5.model.StringType t : src.getLocation()) tgt.getLocation().add(String40_50.convertString(t)); 094 for (org.hl7.fhir.r5.model.StringType t : src.getExpression()) 095 tgt.getExpression().add(String40_50.convertString(t)); 096 return tgt; 097 } 098 099 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.OperationOutcome.IssueSeverity> convertIssueSeverity(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity> src) throws FHIRException { 100 if (src == null || src.isEmpty()) 101 return null; 102 Enumeration<OperationOutcome.IssueSeverity> tgt = new Enumeration<>(new OperationOutcome.IssueSeverityEnumFactory()); 103 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 104 if (src.getValue() == null) { 105 tgt.setValue(null); 106 } else { 107 switch (src.getValue()) { 108 case FATAL: 109 tgt.setValue(OperationOutcome.IssueSeverity.FATAL); 110 break; 111 case ERROR: 112 tgt.setValue(OperationOutcome.IssueSeverity.ERROR); 113 break; 114 case WARNING: 115 tgt.setValue(OperationOutcome.IssueSeverity.WARNING); 116 break; 117 case INFORMATION: 118 tgt.setValue(OperationOutcome.IssueSeverity.INFORMATION); 119 break; 120 default: 121 tgt.setValue(OperationOutcome.IssueSeverity.NULL); 122 break; 123 } 124 } 125 return tgt; 126 } 127 128 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity> convertIssueSeverity(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.OperationOutcome.IssueSeverity> src) throws FHIRException { 129 if (src == null || src.isEmpty()) 130 return null; 131 org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.OperationOutcome.IssueSeverityEnumFactory()); 132 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 133 if (src.getValue() == null) { 134 tgt.setValue(null); 135 } else { 136 switch (src.getValue()) { 137 case FATAL: 138 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL); 139 break; 140 case ERROR: 141 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR); 142 break; 143 case WARNING: 144 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING); 145 break; 146 case INFORMATION: 147 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION); 148 break; 149 default: 150 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL); 151 break; 152 } 153 } 154 return tgt; 155 } 156 157 static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.OperationOutcome.IssueType> convertIssueType(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.OperationOutcome.IssueType> src) throws FHIRException { 158 if (src == null || src.isEmpty()) 159 return null; 160 Enumeration<OperationOutcome.IssueType> tgt = new Enumeration<>(new OperationOutcome.IssueTypeEnumFactory()); 161 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 162 if (src.getValue() == null) { 163 tgt.setValue(null); 164 } else { 165 switch (src.getValue()) { 166 case INVALID: 167 tgt.setValue(OperationOutcome.IssueType.INVALID); 168 break; 169 case STRUCTURE: 170 tgt.setValue(OperationOutcome.IssueType.STRUCTURE); 171 break; 172 case REQUIRED: 173 tgt.setValue(OperationOutcome.IssueType.REQUIRED); 174 break; 175 case VALUE: 176 tgt.setValue(OperationOutcome.IssueType.VALUE); 177 break; 178 case INVARIANT: 179 tgt.setValue(OperationOutcome.IssueType.INVARIANT); 180 break; 181 case SECURITY: 182 tgt.setValue(OperationOutcome.IssueType.SECURITY); 183 break; 184 case LOGIN: 185 tgt.setValue(OperationOutcome.IssueType.LOGIN); 186 break; 187 case UNKNOWN: 188 tgt.setValue(OperationOutcome.IssueType.UNKNOWN); 189 break; 190 case EXPIRED: 191 tgt.setValue(OperationOutcome.IssueType.EXPIRED); 192 break; 193 case FORBIDDEN: 194 tgt.setValue(OperationOutcome.IssueType.FORBIDDEN); 195 break; 196 case SUPPRESSED: 197 tgt.setValue(OperationOutcome.IssueType.SUPPRESSED); 198 break; 199 case PROCESSING: 200 tgt.setValue(OperationOutcome.IssueType.PROCESSING); 201 break; 202 case NOTSUPPORTED: 203 tgt.setValue(OperationOutcome.IssueType.NOTSUPPORTED); 204 break; 205 case DUPLICATE: 206 tgt.setValue(OperationOutcome.IssueType.DUPLICATE); 207 break; 208 case MULTIPLEMATCHES: 209 tgt.setValue(OperationOutcome.IssueType.MULTIPLEMATCHES); 210 break; 211 case NOTFOUND: 212 tgt.setValue(OperationOutcome.IssueType.NOTFOUND); 213 break; 214 case DELETED: 215 tgt.setValue(OperationOutcome.IssueType.DELETED); 216 break; 217 case TOOLONG: 218 tgt.setValue(OperationOutcome.IssueType.TOOLONG); 219 break; 220 case CODEINVALID: 221 tgt.setValue(OperationOutcome.IssueType.CODEINVALID); 222 break; 223 case EXTENSION: 224 tgt.setValue(OperationOutcome.IssueType.EXTENSION); 225 break; 226 case TOOCOSTLY: 227 tgt.setValue(OperationOutcome.IssueType.TOOCOSTLY); 228 break; 229 case BUSINESSRULE: 230 tgt.setValue(OperationOutcome.IssueType.BUSINESSRULE); 231 break; 232 case CONFLICT: 233 tgt.setValue(OperationOutcome.IssueType.CONFLICT); 234 break; 235 case TRANSIENT: 236 tgt.setValue(OperationOutcome.IssueType.TRANSIENT); 237 break; 238 case LOCKERROR: 239 tgt.setValue(OperationOutcome.IssueType.LOCKERROR); 240 break; 241 case NOSTORE: 242 tgt.setValue(OperationOutcome.IssueType.NOSTORE); 243 break; 244 case EXCEPTION: 245 tgt.setValue(OperationOutcome.IssueType.EXCEPTION); 246 break; 247 case TIMEOUT: 248 tgt.setValue(OperationOutcome.IssueType.TIMEOUT); 249 break; 250 case INCOMPLETE: 251 tgt.setValue(OperationOutcome.IssueType.INCOMPLETE); 252 break; 253 case THROTTLED: 254 tgt.setValue(OperationOutcome.IssueType.THROTTLED); 255 break; 256 case INFORMATIONAL: 257 tgt.setValue(OperationOutcome.IssueType.INFORMATIONAL); 258 break; 259 default: 260 tgt.setValue(OperationOutcome.IssueType.NULL); 261 break; 262 } 263 } 264 return tgt; 265 } 266 267 static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.OperationOutcome.IssueType> convertIssueType(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.OperationOutcome.IssueType> src) throws FHIRException { 268 if (src == null || src.isEmpty()) 269 return null; 270 org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.OperationOutcome.IssueType> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.OperationOutcome.IssueTypeEnumFactory()); 271 ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt); 272 if (src.getValue() == null) { 273 tgt.setValue(null); 274 } else { 275 switch (src.getValue()) { 276 case INVALID: 277 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID); 278 break; 279 case STRUCTURE: 280 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE); 281 break; 282 case REQUIRED: 283 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED); 284 break; 285 case VALUE: 286 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE); 287 break; 288 case INVARIANT: 289 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT); 290 break; 291 case SECURITY: 292 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY); 293 break; 294 case LOGIN: 295 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN); 296 break; 297 case UNKNOWN: 298 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN); 299 break; 300 case EXPIRED: 301 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED); 302 break; 303 case FORBIDDEN: 304 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN); 305 break; 306 case SUPPRESSED: 307 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED); 308 break; 309 case PROCESSING: 310 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING); 311 break; 312 case NOTSUPPORTED: 313 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED); 314 break; 315 case DUPLICATE: 316 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE); 317 break; 318 case MULTIPLEMATCHES: 319 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.MULTIPLEMATCHES); 320 break; 321 case NOTFOUND: 322 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND); 323 break; 324 case DELETED: 325 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.DELETED); 326 break; 327 case TOOLONG: 328 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG); 329 break; 330 case CODEINVALID: 331 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID); 332 break; 333 case EXTENSION: 334 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION); 335 break; 336 case TOOCOSTLY: 337 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY); 338 break; 339 case BUSINESSRULE: 340 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE); 341 break; 342 case CONFLICT: 343 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT); 344 break; 345 case TRANSIENT: 346 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT); 347 break; 348 case LOCKERROR: 349 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR); 350 break; 351 case NOSTORE: 352 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE); 353 break; 354 case EXCEPTION: 355 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION); 356 break; 357 case TIMEOUT: 358 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT); 359 break; 360 case INCOMPLETE: 361 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE); 362 break; 363 case THROTTLED: 364 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED); 365 break; 366 case INFORMATIONAL: 367 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL); 368 break; 369 default: 370 tgt.setValue(org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL); 371 break; 372 } 373 } 374 return tgt; 375 } 376}