001package org.hl7.fhir.convertors.conv40_50.datatypes40_50;
002
003import java.util.Arrays;
004
005import org.hl7.fhir.convertors.context.ConversionContext40_50;
006import org.hl7.fhir.convertors.conv40_50.datatypes40_50.special40_50.Extension40_50;
007import org.hl7.fhir.exceptions.FHIRException;
008
009public class BackboneElement40_50 {
010  public static void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.r5.model.BackboneElement tgt, String ... extensionUrlsToIgnore) throws FHIRException {
011    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt, extensionUrlsToIgnore);
012    for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) {
013      if (!isExemptExtension(e.getUrl(), extensionUrlsToIgnore)) {
014        tgt.addModifierExtension(Extension40_50.convertExtension(e));
015      }
016    }
017  }
018
019  public static boolean isExemptExtension(String url, String[] extensionsToIgnore) {
020    return Arrays.asList(extensionsToIgnore).contains(url);
021  }
022  
023  public static void copyBackboneElement(org.hl7.fhir.r5.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt, String... extensionUrlsToIgnore) throws FHIRException {
024    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt, extensionUrlsToIgnore);
025    for (org.hl7.fhir.r5.model.Extension e : src.getModifierExtension()) {
026      if (!isExemptExtension(e.getUrl(), extensionUrlsToIgnore)) {
027        tgt.addModifierExtension(Extension40_50.convertExtension(e));
028      }
029    }
030  }
031
032  public static void copyBackboneElement(org.hl7.fhir.r5.model.BackboneType src, org.hl7.fhir.r4.model.BackboneType tgt, String... var) throws FHIRException {
033    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt, var);
034    for (org.hl7.fhir.r5.model.Extension e : src.getModifierExtension()) {
035      tgt.addModifierExtension(Extension40_50.convertExtension(e));
036    }
037  }
038
039  public static void copyBackboneElement(org.hl7.fhir.r4.model.BackboneType src, org.hl7.fhir.r5.model.BackboneType tgt, String... var) throws FHIRException {
040    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt, var);
041    for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) {
042      tgt.addModifierExtension(Extension40_50.convertExtension(e));
043    }
044  }
045}