private void SetParametersInProgressTaskLoad(Task Task) { Task.Status = IFhirSpecificationDefinitionLoaderParameters.TaskStatus.Value; Task.Output = new List <Task.OutputComponent>(); //Update Task Completed LIst foreach (string FileNameCompleted in IFhirSpecificationDefinitionLoaderParameters.FileCompletedList) { var FhirStringValue = new FhirString(FileNameCompleted); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.Completed.GetLiteral(), Task.TaskStatus.Completed.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } if (!string.IsNullOrWhiteSpace(IFhirSpecificationDefinitionLoaderParameters.FileInProgress)) { var FhirStringValue = new FhirString(IFhirSpecificationDefinitionLoaderParameters.FileInProgress); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.InProgress.GetLiteral(), Task.TaskStatus.InProgress.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } }
public void GivenListOfPrimitiveElementNodes_WhenGetDecendantsByType_AllNodesShouldBeReturned() { Date date = new Date(); Instant instant = new Instant(); FhirBoolean boolean = new FhirBoolean(); FhirString fhirString = new FhirString(); var nodes = new PrimitiveType[] { date, instant, boolean, fhirString }.Select(n => ElementNode.FromElement(n.ToTypedElement())); var results = FhirPathSymbolExtensions.NodesByType(nodes, "string").Select(n => n.Location); Assert.Single(results); Assert.Contains("string", results); results = FhirPathSymbolExtensions.NodesByType(nodes, "date").Select(n => n.Location); Assert.Single(results); Assert.Contains("date", results); results = FhirPathSymbolExtensions.NodesByType(nodes, "boolean").Select(n => n.Location); Assert.Single(results); Assert.Contains("boolean", results); results = FhirPathSymbolExtensions.NodesByType(nodes, "instant").Select(n => n.Location); Assert.Single(results); Assert.Contains("instant", results); }
private void SetParametersInProgressTaskLoad(Task Task) { Task.Status = Task.TaskStatus.InProgress; Task.Output = new List <Task.OutputComponent>(); //Update Task Completed LIst foreach (string FileNameCompleted in _SearchParameterResourceProcessedIdList) { var FhirStringValue = new FhirString(FileNameCompleted); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.Completed.GetLiteral(), Task.TaskStatus.Completed.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } if (!string.IsNullOrWhiteSpace(_ResourceIdInProgress)) { var FhirStringValue = new FhirString(_ResourceIdInProgress); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.InProgress.GetLiteral(), Task.TaskStatus.InProgress.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } }
private void PopulateBinding(TemplateConstraint constraint, FhirString fhirString) { if (fhirString != null) { constraint.Value = fhirString.Value; } }
private static Resource ValidateCodeOperation(string systemURL, NameValueCollection queryParam) { string codeVal = Utilities.GetQueryValue("code", queryParam); string displayVal = Utilities.GetQueryValue("display", queryParam); string languageVal = Utilities.GetQueryValue("displayLanguage", queryParam); if (!string.IsNullOrEmpty(languageVal) && languageVal != "en-NZ") { throw new Exception(UNSUPPORTED_DISPLAY_LANGUAGE); } FhirBoolean validCode = new FhirBoolean(false); FhirString validDisplay = new FhirString(); if (FhirSnomed.IsValidURI(systemURL)) { validCode = new FhirBoolean(FhirSnomed.ValidateCode(codeVal, displayVal, out string prefTerm)); validDisplay = new FhirString(prefTerm); } else { CodeSystem codeSys = GetCodeSystem(TerminologyOperation.validate_code, systemURL, queryParam); foreach (CodeSystem.ConceptDefinitionComponent cc in codeSys.Concept) { if (string.IsNullOrEmpty(displayVal)) { validCode = new FhirBoolean(true); validDisplay = new FhirString(cc.Display); } else if (displayVal.Trim().ToLower() == cc.Display.Trim().ToLower()) { validCode = new FhirBoolean(true); validDisplay = new FhirString(cc.Display); } else { validDisplay = new FhirString(cc.Display); } } } // build return parameters resource from search result Parameters param = new Parameters(); param.Add("result", validCode); if (validCode.Value == false) { param.Add("message", new FhirString("The code/display value " + codeVal + " / " + displayVal + " passed is incorrect")); } if (!string.IsNullOrEmpty(validDisplay.Value)) { param.Add("display", validDisplay); } return(param); }
public static Parameters TranslateConcept(this FhirClient client, string id, Code code, FhirUri system, FhirString version, FhirUri valueSet, Coding coding, CodeableConcept codeableConcept, FhirUri target, IEnumerable <TranslateConceptDependency> dependencies) { return(TranslateConceptAsync(client, id, code, system, version, valueSet, coding, codeableConcept, target, dependencies).WaitResult()); }
public static ValidateCodeResult ValidateCode(this IFhirClient client, FhirUri identifier = null, FhirUri context = null, ValueSet valueSet = null, Code code = null, FhirUri system = null, FhirString version = null, FhirString display = null, Coding coding = null, CodeableConcept codeableConcept = null, FhirDateTime date = null, FhirBoolean @abstract = null) { return(ValidateCodeAsync(client, identifier, context, valueSet, code, system, version, display, coding, codeableConcept, date, @abstract).WaitResult()); }
public void ToStringHandlesNullObjectValue() { var s = new FhirString(null); Assert.IsNull(s.ToString()); var i = new FhirBoolean(null); Assert.IsNull(i.ToString()); }
public void Can_ConvertElement_R3_FhirString_To_R4_FhirString() { var value = "This is a FhirString converted from R3 to R4"; var r3TypeInstance = new FhirString(value); var r4TypeInstance = new FhirConverter(FhirVersion.R4, FhirVersion.R3) .Convert <FhirString, FhirString>(r3TypeInstance); Assert.NotNull(r4TypeInstance); Assert.Equal(value, r4TypeInstance.Value); }
private Parameters FormatVersionsResultAsParameters() { var supportedVersion = new FhirString(_versionsResult.Versions.First()); var defaultVersion = new FhirString(_versionsResult.DefaultVersion); Parameters parameters = new Parameters() .Add("version", supportedVersion) .Add("default", defaultVersion); return(parameters); }
public void FhirStringMapTest() { var input = new FhirString("bla"); var result = _sut.Map(input); Assert.Single(result); Assert.IsType <StringValue>(result[0]); Assert.Equal("bla", (result[0] as StringValue).Value); }
public void FhirStringMapTest() { var input = new FhirString("bla"); var result = sut.Map(input); Assert.AreEqual(1, result.Count()); Assert.IsInstanceOfType(result[0], typeof(StringValue)); Assert.AreEqual("bla", (result[0] as StringValue).Value); }
public string Cast(FhirString s) { if (s != null) { return(s.Value); } else { return(null); } }
public void Test_FhirString_DateTimeIndexSetter_Date_GoodFormat() { //Arrange var FhirString = new FhirString("1974-12-25"); DateTimeIndex Index = new DateTimeIndex(); //Act IndexSetterFactory.Create(typeof(DateTimeIndex)).Set(FhirString, Index); //Assert Assert.AreEqual(new DateTimeOffset(1974, 12, 25, 00, 00, 00, TimeZoneInfo.Local.GetUtcOffset(DateTime.Now)), Index.DateTimeOffset); }
public void Test_FhirString_StringIndexSetter_NoAddress() { //Arrange var FhirString = new FhirString(); StringIndex Index = new StringIndex(); //Act Index = IndexSetterFactory.Create(typeof(StringIndex)).Set(FhirString, Index) as StringIndex; //Assert Assert.IsNull(Index); }
public void Test_FhirString_TokenIndexSetter_FhirString_IsNull() { //Arrange FhirString FhirString = null; TokenIndex Index = new TokenIndex(); //Act ActualValueDelegate <TokenIndex> testDelegate = () => IndexSetterFactory.Create(typeof(TokenIndex)).Set(FhirString, Index) as TokenIndex; //Assert Assert.That(testDelegate, Throws.TypeOf <ArgumentNullException>()); }
static ElementDefinition.BaseComponent createBaseComponent(FhirString maxElement, Integer minElement, FhirString pathElement) { var result = new ElementDefinition.BaseComponent() { MaxElement = (FhirString)maxElement?.DeepCopy(), MinElement = (Integer)minElement?.DeepCopy(), PathElement = (FhirString)pathElement?.DeepCopy() }; result.SetCreatedBySnapshotGenerator(); return(result); }
public void Test_FhirString_StringIndexSetter_Address_IsNull() { //Arrange var FhirString = new FhirString(); StringIndex Index = null; //Act ActualValueDelegate <StringIndex> testDelegate = () => IndexSetterFactory.Create(typeof(StringIndex)).Set(FhirString, Index) as StringIndex; //Assert Assert.That(testDelegate, Throws.TypeOf <ArgumentNullException>()); }
public void Test_FhirString_DateTimeIndexSetter_DateTime_GoodFormat_Milli_ZuluTime() { //Arrange var FhirString = new FhirString("1974-12-25T14:35:45.123Z"); DateTimeIndex Index = new DateTimeIndex(); //Act IndexSetterFactory.Create(typeof(DateTimeIndex)).Set(FhirString, Index); //Assert Assert.AreEqual(new DateTimeOffset(1974, 12, 25, 14, 35, 45, 123, new TimeSpan(00, 00, 00)), Index.DateTimeOffset); }
ResourceMap.Node CreateMapNode(DomainResource r) { String structureName = r.TypeName; String resourceUrl; String baseName = null; String title; switch (r) { case ValueSet vs: resourceUrl = vs.Url; title = vs.Title; break; case StructureDefinition sd: resourceUrl = sd.Url; baseName = sd.BaseDefinition.LastUriPart(); title = sd.Title; break; default: return(null); } string mapName = r.GetStringExtension(Global.ResourceMapNameUrl); if (String.IsNullOrEmpty(mapName) == true) { throw new Exception($"Mapname missing from {resourceUrl}"); } String[] mapNameArray = mapName.Split('/'); Extension isFragmentExtension = r.GetExtension(Global.IsFragmentExtensionUrl); ResourceMap.Node retVal = this.CreateMapNode(resourceUrl, title, mapNameArray, structureName, isFragmentExtension != null); foreach (Extension link in r.GetExtensions(Global.ResourceMapLinkUrl)) { FhirString s = (FhirString)link.Value; dynamic mapLink = JObject.Parse(s.Value); mapLink.LinkSource = resourceUrl; this.links.Add(mapLink); retVal.AddLink(mapLink); } return(retVal); }
public void Test_FhirString_DateTimeIndexSetter_BadFormat_NoSecs() { //Arrange var FhirString = new FhirString("1974-12-25T14:35-05:00"); DateTimeIndex DateIndex = new DateTimeIndex(); //Act DateIndex = IndexSetterFactory.Create(typeof(DateTimeIndex)).Set(FhirString, DateIndex) as DateTimeIndex; //Assert Assert.IsNull(DateIndex); }
public void ExtensionManagement() { Patient p = new Patient(); var u1 = "http://fhir.org/ext/ext-test"; Assert.IsNull(p.GetExtension("http://fhir.org/ext/ext-test")); Extension newEx = p.SetExtension(u1, new FhirBoolean(true)); Assert.AreSame(newEx, p.GetExtension(u1)); p.AddExtension("http://fhir.org/ext/ext-test2", new FhirString("Ewout")); Assert.AreSame(newEx, p.GetExtension(u1)); p.RemoveExtension(u1); Assert.IsNull(p.GetExtension(u1)); p.SetExtension("http://fhir.org/ext/ext-test2", new FhirString("Ewout Kramer")); var ew = p.GetExtensions("http://fhir.org/ext/ext-test2"); Assert.AreEqual(1, ew.Count()); p.AddExtension("http://fhir.org/ext/ext-test2", new FhirString("Wouter Kramer")); ew = p.GetExtensions("http://fhir.org/ext/ext-test2"); Assert.AreEqual(2, ew.Count()); Assert.AreEqual(0, p.ModifierExtension.Count()); var me = p.AddExtension("http://fhir.org/ext/ext-test3", new FhirString("bla"), isModifier: true); Assert.AreEqual(1, p.ModifierExtension.Count()); Assert.AreEqual(me, p.GetExtension("http://fhir.org/ext/ext-test3")); Assert.AreEqual(me, p.GetExtensions("http://fhir.org/ext/ext-test3").Single()); Assert.AreEqual(3, p.AllExtensions().Count()); var code = new Code("test"); p.AddExtension("http://fhir.org/ext/code", code); Assert.AreEqual(code, p.GetExtensionValue <Code>("http://fhir.org/ext/code")); var text = new FhirString("test"); p.AddExtension("http://fhir.org/ext/string", text); Assert.AreEqual(text, p.GetExtensionValue <FhirString>("http://fhir.org/ext/string")); var fhirbool = new FhirBoolean(true); p.AddExtension("http://fhir.org/ext/bool", fhirbool); Assert.AreEqual(fhirbool, p.GetExtensionValue <FhirBoolean>("http://fhir.org/ext/bool")); }
private void SetParametersOnFailedTaskLoad(Task Task) { Task.Status = IFhirSpecificationDefinitionLoaderParameters.TaskStatus.Value; Task.ExecutionPeriod.EndElement = new FhirDateTime(DateTimeOffset.Now); Task.Output = new List <Task.OutputComponent>(); //Update Task Completed LIst foreach (string FileNameCompleted in IFhirSpecificationDefinitionLoaderParameters.FileCompletedList) { var FhirStringValue = new FhirString(FileNameCompleted); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.Completed.GetLiteral(), Task.TaskStatus.Completed.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } //Update Task InProgress if (IFhirSpecificationDefinitionLoaderParameters.TaskStatus == Task.TaskStatus.InProgress && !string.IsNullOrWhiteSpace(IFhirSpecificationDefinitionLoaderParameters.FileInProgress)) { var FhirStringValue = new FhirString(IFhirSpecificationDefinitionLoaderParameters.FileInProgress); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.InProgress.GetLiteral(), Task.TaskStatus.InProgress.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } //Update Task File Failed if (IFhirSpecificationDefinitionLoaderParameters.TaskStatus == Task.TaskStatus.Failed && !string.IsNullOrWhiteSpace(IFhirSpecificationDefinitionLoaderParameters.FileInError)) { var FhirStringValue = new FhirString($"{IFhirSpecificationDefinitionLoaderParameters.FileInError}: {IFhirSpecificationDefinitionLoaderParameters.ErrorMessage}"); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.Failed.GetLiteral(), Task.TaskStatus.Failed.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } //Update whole Task Failed if (IFhirSpecificationDefinitionLoaderParameters.TaskStatus == Task.TaskStatus.Failed && string.IsNullOrWhiteSpace(IFhirSpecificationDefinitionLoaderParameters.FileInError) && !string.IsNullOrWhiteSpace(IFhirSpecificationDefinitionLoaderParameters.ErrorMessage)) { var FhirStringValue = new FhirString(IFhirSpecificationDefinitionLoaderParameters.ErrorMessage); var MyCodableConcept = new CodeableConcept(_TaskStatusSystem, Task.TaskStatus.Failed.GetLiteral(), Task.TaskStatus.Failed.GetLiteral()); Task.Output.Add(new Task.OutputComponent() { Type = MyCodableConcept, Value = FhirStringValue }); } }
internal static Address GetAddress(string address) { Address fhirAddress = new Address(); fhirAddress.City = string.Empty; fhirAddress.PostalCode = string.Empty; fhirAddress.Use = Address.AddressUse.Work; fhirAddress.Type = Address.AddressType.Physical; try { if (address.EndsWith(",")) { address = address.Remove(address.LastIndexOf(","), 1); } string[] addressParts = address.Split(','); int lineNo = 1; foreach (string addrPart in addressParts) { if (lineNo == addressParts.Length) { string[] cityZip = addrPart.Split(' '); foreach (string czPart in cityZip) { int xx; if (int.TryParse(czPart, out xx)) { fhirAddress.PostalCode = czPart; } else { fhirAddress.City = czPart.Trim(); } } } else { FhirString al = new FhirString(addrPart.Trim()); fhirAddress.LineElement.Add(al); } lineNo++; } fhirAddress.Text = address; } catch { } return(fhirAddress); }
public void TestValueValidation() { var ed = new ElementDefinition { Binding = new ElementDefinition.BindingComponent { Strength = BindingStrength.Required, ValueSet = new ResourceReference("http://hl7.org/fhir/ValueSet/data-absent-reason") } }; // Non-bindeable things should succeed Element v = new FhirBoolean(true); var nav = new PocoNavigator(v); Assert.True(_validator.ValidateBinding(ed, nav).Success); v = new Quantity(4.0m, "masked", "http://hl7.org/fhir/data-absent-reason"); // nonsense, but hey UCUM is not provided with the spec nav = new PocoNavigator(v); Assert.True(_validator.ValidateBinding(ed, nav).Success); v = new Quantity(4.0m, "maskedx", "http://hl7.org/fhir/data-absent-reason"); // nonsense, but hey UCUM is not provided with the spec nav = new PocoNavigator(v); Assert.False(_validator.ValidateBinding(ed, nav).Success); v = new Quantity(4.0m, "kg"); // sorry, UCUM is not provided with the spec - still validate against data-absent-reason nav = new PocoNavigator(v); Assert.False(_validator.ValidateBinding(ed, nav).Success); v = new FhirString("masked"); nav = new PocoNavigator(v); Assert.True(_validator.ValidateBinding(ed, nav).Success); v = new FhirString("maskedx"); nav = new PocoNavigator(v); Assert.False(_validator.ValidateBinding(ed, nav).Success); var ic = new Coding("http://hl7.org/fhir/data-absent-reason", "masked"); var ext = new Extension { Value = ic }; nav = new PocoNavigator(ext); Assert.True(_validator.ValidateBinding(ed, nav).Success); ic.Code = "maskedx"; nav = new PocoNavigator(ext); Assert.False(_validator.ValidateBinding(ed, nav).Success); }
public SubsumesParameters WithCoding(Coding codingA, Coding codingB, string system = null, string version = null) { CodingA = codingA; CodingB = codingB; if (!string.IsNullOrWhiteSpace(system)) { System = new FhirUri(system); } if (!string.IsNullOrWhiteSpace(version)) { Version = new FhirString(version); } return(this); }
public void Test_FhirString_DateTimePeriodIndexSetter_BadFormat() { //Arrange var FhirString = new FhirString(); var DateTimeOffSet = new DateTimeOffset(1974, 12, 25, 10, 35, 45, new TimeSpan(-5, 00, 00)); FhirString.Value = "1974-12-25T25:35:45-05:00"; DateTimePeriodIndex Index = new DateTimePeriodIndex(); //Act Index = IndexSetterFactory.Create(typeof(DateTimePeriodIndex)).Set(FhirString, Index) as DateTimePeriodIndex; //Assert Assert.IsNull(Index); }
public IValue <string> Create( string value) { IValue <string> instance = null; try { instance = new FhirString( value); } finally { } return(instance); }
/// <summary> /// Parse string /// </summary> public static Hl7.Fhir.Model.FhirString ParseFhirString(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.FhirString existingInstance = null) { Hl7.Fhir.Model.FhirString result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.FhirString(); 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 = FhirString.Parse(reader.ReadPrimitiveContents(typeof(FhirString))).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); }
public void Test_FhirString_StringIndexSetter_GoodFormat() { //Arrange string Text = "This is the Fhir string Text"; var FhirString = new FhirString(); FhirString.Value = Text; StringIndex Index = new StringIndex(); //Act Index = IndexSetterFactory.Create(typeof(StringIndex)).Set(FhirString, Index) as StringIndex; //Assert Assert.AreEqual(Index.String, Pyro.Common.Tools.StringSupport.ToLowerAndRemoveDiacritics(Text)); }