Beispiel #1
0
        public void SettingAnAcceptHeaderShouldBePassedToTheRequest()
        {
            var link = new Link
            {
                Target = new Uri("Http://localhost"),
            };

            link.AddRequestBuilder(new InlineRequestBuilder((r) =>
            {
                r.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/vnd.hal"));
                r.Headers.UserAgent.Add(new ProductInfoHeaderValue("foo", "1.1"));
                return(r);
            }));


            var request = link.CreateRequest();

            Assert.True(request.Headers.Accept.Any(h => h.MediaType == "application/vnd.hal"));
        }
        public OpenSearchDescription(XDocument document)
        {
            if (document.Root == null) return;
        
            var ns = document.Root.Name.Namespace;
            var root = document.Root;

            ShortName = root.Element(ns + "ShortName").Value;
            Description = root.Element(ns + "Description").Value;
            InputEncoding = root.Element(ns + "InputEncoding").Value;
            var url = root.Element(ns + "Url");
            Url = new Link()
                {
                    Target = new Uri(url.Attribute("template").Value),
                    Type = url.Attribute("type").Value
                };
            Url.AddRequestBuilder(new InlineRequestBuilder((r) => {r.Method = new HttpMethod(url.Attribute("method").Value.ToUpper());
                                                                      return r;
            })); 

        }
        public OpenSearchDescription(XDocument document)
        {
            if (document.Root == null)
            {
                return;
            }

            var ns   = document.Root.Name.Namespace;
            var root = document.Root;

            ShortName     = root.Element(ns + "ShortName").Value;
            Description   = root.Element(ns + "Description").Value;
            InputEncoding = root.Element(ns + "InputEncoding").Value;
            var url = root.Element(ns + "Url");

            Url = new Link()
            {
                Target = new Uri(url.Attribute("template").Value),
                Type   = url.Attribute("type").Value
            };
            Url.AddRequestBuilder(new InlineRequestBuilder((r) => { r.Method = new HttpMethod(url.Attribute("method").Value.ToUpper());
                                                                    return(r); }));
        }