Ejemplo n.º 1
0
        // All the following use XPath search strings to find various bits of information in the
        // server's WMS capabilities description.

        internal static UriAndFormatType[] GetUriAndFormatInstances(System.Xml.XPath.XPathNavigator node, string pattern)
        {
            System.Xml.XPath.XPathNodeIterator iter = node.Select(Capabilities.ExpandPattern(pattern));
            UriAndFormatType[] retVal = new UriAndFormatType[iter.Count];
            while (iter.MoveNext())
            {
                int i = iter.CurrentPosition - 1;
                retVal[i]        = new UriAndFormatType();
                retVal[i].Format = Capabilities.GetStringInstance(iter.Current, @"./Format");
                retVal[i].Uri    = Capabilities.GetOnlineResourceInstance(iter.Current, @"./OnlineResource");
            }
            return(retVal);
        }
Ejemplo n.º 2
0
        private static LogoOrLegendUriType GetLogoOrLegendUriInstance(System.Xml.XPath.XPathNavigator node, string pattern)
        {
            System.Xml.XPath.XPathNodeIterator iter = node.Select(Capabilities.ExpandPattern(pattern));
            LogoOrLegendUriType retVal = new LogoOrLegendUriType();

            if (iter.MoveNext())
            {
                UriAndFormatType[] t = GetUriAndFormatInstances(iter.Current, @".");
                if (t.Length > 0)
                {
                    retVal.Uri = t[0];
                }
                retVal.Width  = double.Parse(Capabilities.GetStringInstance(iter.Current, @"./@Width"));
                retVal.Height = double.Parse(Capabilities.GetStringInstance(iter.Current, @"./@Height"));
            }
            return(retVal);
        }