001package org.hl7.fhir.convertors.conv30_50.datatypes30_50.complextypes30_50; 002 003import org.hl7.fhir.convertors.context.ConversionContext30_50; 004import org.hl7.fhir.convertors.conv30_50.datatypes30_50.Reference30_50; 005import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Base64Binary30_50; 006import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Code30_50; 007import org.hl7.fhir.convertors.conv30_50.datatypes30_50.primitivetypes30_50.Instant30_50; 008import org.hl7.fhir.exceptions.FHIRException; 009import org.hl7.fhir.r5.model.Reference; 010 011public class Signature30_50 { 012 public static org.hl7.fhir.r5.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { 013 if (src == null) return null; 014 org.hl7.fhir.r5.model.Signature tgt = new org.hl7.fhir.r5.model.Signature(); 015 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 016 for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) tgt.addType(Coding30_50.convertCoding(t)); 017 if (src.hasWhen()) tgt.setWhenElement(Instant30_50.convertInstant(src.getWhenElement())); 018 if (src.hasWho()) { 019 if (src.hasWhoUriType()) tgt.setWho(new org.hl7.fhir.r5.model.Reference(src.getWhoUriType().getValue())); 020 else tgt.setWho(Reference30_50.convertReference(src.getWhoReference())); 021 } 022 if (src.hasOnBehalfOf()) { 023 if (src.hasOnBehalfOfUriType()) tgt.setOnBehalfOf(new Reference(src.getOnBehalfOfUriType().primitiveValue())); 024 else tgt.setOnBehalfOf(Reference30_50.convertReference(src.getOnBehalfOfReference())); 025 } 026 if (src.hasContentType()) tgt.setSigFormatElement(Code30_50.convertCode(src.getContentTypeElement())); 027 if (src.hasBlob()) tgt.setDataElement(Base64Binary30_50.convertBase64Binary(src.getBlobElement())); 028 return tgt; 029 } 030 031 public static org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.r5.model.Signature src) throws FHIRException { 032 if (src == null) return null; 033 org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); 034 ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().copyElement(src, tgt); 035 for (org.hl7.fhir.r5.model.Coding t : src.getType()) tgt.addType(Coding30_50.convertCoding(t)); 036 if (src.hasWhen()) tgt.setWhenElement(Instant30_50.convertInstant(src.getWhenElement())); 037 if (src.hasWho()) tgt.setWho(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getWho())); 038 if (src.hasOnBehalfOf()) 039 tgt.setOnBehalfOf(ConversionContext30_50.INSTANCE.getVersionConvertor_30_50().convertType(src.getOnBehalfOf())); 040 if (src.hasSigFormat()) tgt.setContentTypeElement(Code30_50.convertCode(src.getSigFormatElement())); 041 if (src.hasData()) tgt.setBlobElement(Base64Binary30_50.convertBase64Binary(src.getDataElement())); 042 return tgt; 043 } 044}