public virtual void ShouldRenderASimpleMessageWithTemplates() { FindCandidatesQueryMessageBean tealBean = new FindCandidatesQueryMessageBean(); tealBean.ControlActEventBean = new QueryControlActEventBean <FindCandidatesCriteria>(); tealBean.ControlActEventBean.QueryByParameter.ParameterList = new FindCandidatesCriteria(); MessageBeanBuilderSupport.PopulateMoreBetterStandardValues(tealBean); tealBean.ControlActEventBean.Code = Ca.Infoway.Messagebuilder.Domainvalue.Transport.HL7TriggerEventCode.FIND_CANDIDATES_QUERY; this.walker = new TealBeanRenderWalker(tealBean, MockVersionNumber.MOCK_MR2009, null, null, new MockTestCaseMessageDefinitionService ()); AuthorBean author = new AuthorBean(); author.Time = new PlatformDate(); author.Id = new Identifier("1.2.3.4", "authorExtension"); tealBean.ControlActEventBean.Author = author; tealBean.ControlActEventBean.QueryId = new Identifier(UUID.RandomUUID().ToString()); tealBean.ControlActEventBean.EventId = new Identifier(UUID.RandomUUID().ToString()); tealBean.ControlActEventBean.GetCriteria().Gender = Ca.Infoway.Messagebuilder.Domainvalue.Payload.AdministrativeGender.MALE; XmlRenderingVisitor visitor = new XmlRenderingVisitor(MockVersionNumber.MOCK_MR2009); this.walker.Accept(visitor); string xml = visitor.ToXml().GetXmlMessage(); System.Console.Out.WriteLine(xml); AssertValidHl7Message(xml); }
public virtual void ShouldRenderCompleteSolution() { FindCandidatesQueryMessageBean message = new FindCandidatesQueryMessageBean(); message.ControlActEventBean = new QueryControlActEventBean <FindCandidatesCriteria>(new FindCandidatesCriteria()); message.ControlActEventBean.GetCriteria().BirthDate = DateUtil.GetDate(1966, 0, 5); XmlRenderingVisitor visitor = new XmlRenderingVisitor(MockVersionNumber.MOCK_NEWFOUNDLAND); new TealBeanRenderWalker(message, MockVersionNumber.MOCK_NEWFOUNDLAND, null, null, this.service).Accept(visitor); System.Console.Out.WriteLine(visitor.ToXml().GetXmlMessage()); }
public virtual void ShouldRenderNonStructuralAttributeWithNullFlavorForCDA() { this.visitor = new XmlRenderingVisitor(true, true, null); IIImpl attributeValue = new IIImpl(Ca.Infoway.Messagebuilder.Domainvalue.Nullflavor.NullFlavor.MASKED); Relationship relationship = CreateNonStructuralRelationship(); ExerciseVisitorOverInteractionWithAttribute(attributeValue, relationship); string xml = this.visitor.ToXml().GetXmlMessage(); AssertXmlEquals("xml", "<ClinicalDocument xmlns=\"urn:hl7-org:v3\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:sdtc=\"urn:hl7-org:sdtc\" xmlns:cda=\"urn:hl7-org:v3\"" + ">" + "<id nullFlavor=\"MSK\"/>" + "</ClinicalDocument>", xml); }
public virtual void ShouldRenderASimpleHl7Message() { GenericResponseMessageBean tealBean = new GenericResponseMessageBean(); MessageBeanBuilderSupport.PopulateMoreBetterStandardValues(tealBean); tealBean.Acknowledgement.AcknowledgementDetails.Add(CreateDetail(Ca.Infoway.Messagebuilder.Domainvalue.Transport.AcknowledgementDetailCode .SYNTAX_ERROR, "I hate you", Ca.Infoway.Messagebuilder.Domainvalue.Transport.AcknowledgementDetailType.ERROR)); tealBean.Acknowledgement.AcknowledgementDetails.Add(CreateDetail(Ca.Infoway.Messagebuilder.Domainvalue.Transport.AcknowledgementDetailCode .UNKNOWN_SENDER, "Unauthorized user", Ca.Infoway.Messagebuilder.Domainvalue.Transport.AcknowledgementDetailType.ERROR)); XmlRenderingVisitor visitor = new XmlRenderingVisitor(MockVersionNumber.MOCK_MR2009); this.walker = new TealBeanRenderWalker(tealBean, MockVersionNumber.MOCK_MR2009, null, null, new MockTestCaseMessageDefinitionService ()); this.walker.Accept(visitor); string xml = visitor.ToXml().GetXmlMessage(); System.Console.Out.WriteLine(xml); AssertValidHl7Message(xml); }
public virtual void SetUp() { ignoredAsNotAllowedOriginalValue = Runtime.GetProperty(ConformanceLevelUtil.IGNORED_AS_NOT_ALLOWED); CodeResolverRegistry.RegisterResolver(typeof(ActStatus), new EnumBasedCodeResolver(typeof(Ca.Infoway.Messagebuilder.Domainvalue.Controlact.ActStatus ))); CodeResolverRegistry.RegisterResolver(typeof(Realm), new EnumBasedCodeResolver(typeof(Domainvalue.Transport.Realm))); this.visitor = new XmlRenderingVisitor(MockVersionNumber.MOCK_MR2009); this.partBridge = new MockPartBridge(); this.attributeBridge = new MockAttributeBridge("aPropertyName"); this.interation = new Interaction(); this.interation.Name = "ABCD_IN123456CA"; Argument argument = new Argument(); argument.Name = "ABCD_MT987654CA.Baby"; argument.TemplateParameterName = "act"; argument.TraversalName = "bambino"; this.interation.Arguments.Add(argument); }
public virtual ModelToXmlResult TransformToHl7(VersionNumber version, IInteraction messageBean, TimeZoneInfo dateTimeZone , TimeZoneInfo dateTimeTimeZone, GenericCodeResolverRegistry codeResolverRegistryOverride) { CodeResolverRegistry.SetThreadLocalVersion(version); CodeResolverRegistry.SetThreadLocalCodeResolverRegistryOverride(codeResolverRegistryOverride); XmlRenderingVisitor visitor = new XmlRenderingVisitor(this.service.IsR2(version), this.service.IsCda(version), version); // TODO: Since the two boolean flags are derived from the version, we chould simplify this interface new TealBeanRenderWalker(messageBean, version, dateTimeZone, dateTimeTimeZone, this.service).Accept(visitor); CodeResolverRegistry.ClearThreadLocalVersion(); CodeResolverRegistry.ClearThreadLocalCodeResolverRegistryOverride(); ModelToXmlResult result = visitor.ToXml(); if (this.service.IsCda(version)) { PerformAdditionalCdaValidation(version, result.GetXmlMessage(), result); } if (!result.IsValid() && IsStrict()) { throw new InvalidRenderInputException(result.GetHl7Errors()); } return(result); }
public Buffer(XmlRenderingVisitor _enclosing, string name, int indent) { this._enclosing = _enclosing; this.name = name; this.indent = indent; }