public void Can_ConvertElement_R3_Base64Binary_To_R4_Base64Binary() { var value = System.Convert.FromBase64String("VGhpcyB0ZXN0IGNhc2UgdmVyaWZpZXMgdGhhdCB3ZSBjYW4gY29udmVydCBmcm9tIGFuIFIzIGluc3RhbmNlIG9mIEJhc2U2NEJpbmFyeSB0byBhbiBSNCBpbnN0YW5jZSBvZiBCYXNlNjRCaW5hcnk="); var r3TypeInstance = new Base64Binary(value); var r4TypeInstance = new FhirConverter(FhirVersion.R4, FhirVersion.R3) .Convert <Base64Binary, Base64Binary>(r3TypeInstance); Assert.NotNull(r4TypeInstance); Assert.Equal(value, r4TypeInstance.Value); }
/// <summary> /// Parse base64Binary /// </summary> public static Hl7.Fhir.Model.Base64Binary ParseBase64Binary(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Base64Binary existingInstance = null) { Hl7.Fhir.Model.Base64Binary result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Base64Binary(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element value else if (atName == "value") { result.Value = Base64Binary.Parse(reader.ReadPrimitiveContents(typeof(Base64Binary))).Value; } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
static DataTypeDescriptor() { DnsName = new DnsNameDataType(); IpAddress = new IpAddress(); Bag = new Bag(); Time = new Time(); String = new StringDataType(); Rfc822Name = new Rfc822Name(); X500Name = new X500Name(); Double = new DoubleDataType(); YearMonthDuration = new YearMonthDuration(); DaytimeDuration = new DaytimeDuration(); DateTime = new DateTime(); Date = new DateDataType(); Integer = new IntegerDataType(); Boolean = new BooleanDataType(); HexBinary = new HexBinary(); Base64Binary = new Base64Binary(); AnyUri = new AnyUri(); Function = new FunctionDataType(); }
private static List <Expression> ToExpressions(Base64Binary element) => element?.Value == null || element.Value.Length == 0 ? null : ToExpressions(new FhirString(element.ToString()));
/// <summary> /// Parse Binary /// </summary> public static Hl7.Fhir.Model.Binary ParseBinary(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Binary existingInstance = null) { Hl7.Fhir.Model.Binary result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Binary(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element content else if (atName == "content") { result.ContentElement = Base64Binary.Parse(reader.ReadPrimitiveContents(typeof(Base64Binary))); } // Parse element contentType else if (atName == "contentType") { result.ContentTypeElement = FhirString.Parse(reader.ReadPrimitiveContents(typeof(FhirString))); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }