Exemplo n.º 1
0
        private static HealthRecordUpdateInfo ParseHealthRecordUpdateInfo(XPathNavigator navigator)
        {
            Guid    recordId       = new Guid(navigator.SelectSingleNode("record-id").Value);
            Guid    personId       = new Guid(navigator.SelectSingleNode("person-id").Value);
            Instant lastUpdateDate = SDKHelper.InstantFromXml(navigator.SelectSingleNode("update-date").Value);
            long    latestOperationSequenceNumber = navigator.SelectSingleNode("latest-operation-sequence-number").ValueAsLong;

            return(new HealthRecordUpdateInfo(recordId, lastUpdateDate, personId, latestOperationSequenceNumber));
        }
        internal static List <AuthorizationSetDefinition> CreateSets(
            XPathNavigator setNav)
        {
            List <AuthorizationSetDefinition> sets =
                new List <AuthorizationSetDefinition>();

            // date range
            XPathNodeIterator dateSets = setNav.Select("date-range");

            foreach (XPathNavigator dateSet in dateSets)
            {
                Instant?       dateMin    = null;
                XPathNavigator dateMinNav = dateSet.SelectSingleNode("date-min");
                if (dateMinNav != null)
                {
                    dateMin = SDKHelper.InstantFromXml(dateMinNav.Value);
                }

                Instant?       dateMax    = null;
                XPathNavigator dateMaxNav =
                    dateSet.SelectSingleNode("date-max");
                if (dateMaxNav != null)
                {
                    dateMax = SDKHelper.InstantFromXml(dateMaxNav.Value);
                }

                sets.Add(new DateRangeSetDefinition(dateMin, dateMax));
            }

            // TypeId
            XPathNodeIterator typeSets = setNav.Select("type-id");

            foreach (XPathNavigator typeSet in typeSets)
            {
                Guid setId = new Guid(typeSet.Value);
                sets.Add(new TypeIdSetDefinition(setId));
            }

            return(sets);
        }