OSDN Git Service

70dca51e でHttpClientに移行した箇所の例外処理の抜けを修正
authorKimura Youichi <kim.upsilon@bucyou.net>
Sat, 26 Apr 2014 07:51:51 +0000 (16:51 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Sat, 26 Apr 2014 09:45:07 +0000 (18:45 +0900)
OpenTween/Thumbnail/Services/MetaThumbnailService.cs
OpenTween/Thumbnail/Services/Tinami.cs
OpenTween/Thumbnail/Services/ViaMe.cs
OpenTween/Thumbnail/Services/Vimeo.cs

index 8867ebe..b801147 100644 (file)
@@ -68,10 +68,9 @@ namespace OpenTween.Thumbnail.Services
                     TooltipText = null,
                 };
             }
-            catch (WebException)
-            {
-                return null;
-            }
+            catch (HttpRequestException) { }
+
+            return null;
         }
 
         protected virtual string GetThumbnailUrl(string html)
index 9496c33..22ef1df 100644 (file)
@@ -53,24 +53,28 @@ namespace OpenTween.Thumbnail.Services
 
             var contentId = match.Groups["ContentId"].Value;
 
-            var xdoc = await this.FetchContentInfoApiAsync(contentId, token)
-                .ConfigureAwait(false);
-
-            if (xdoc.XPathSelectElement("/rsp").Attribute("stat").Value == "ok")
+            try
             {
+                var xdoc = await this.FetchContentInfoApiAsync(contentId, token)
+                    .ConfigureAwait(false);
+
+                if (xdoc.XPathSelectElement("/rsp").Attribute("stat").Value != "ok")
+                    return null;
+
                 var thumbUrlElm = xdoc.XPathSelectElement("/rsp/content/thumbnails/thumbnail_150x150");
-                if (thumbUrlElm != null)
+                if (thumbUrlElm == null)
+                    return null;
+
+                var descElm = xdoc.XPathSelectElement("/rsp/content/description");
+
+                return new ThumbnailInfo
                 {
-                    var descElm = xdoc.XPathSelectElement("/rsp/content/description");
-
-                    return new ThumbnailInfo
-                    {
-                        ImageUrl = url,
-                        ThumbnailUrl = thumbUrlElm.Attribute("url").Value,
-                        TooltipText = descElm == null ? null : descElm.Value,
-                    };
-                }
+                    ImageUrl = url,
+                    ThumbnailUrl = thumbUrlElm.Attribute("url").Value,
+                    TooltipText = descElm == null ? null : descElm.Value,
+                };
             }
+            catch (HttpRequestException) { }
 
             return null;
         }
index 72054d5..e22ac8b 100644 (file)
@@ -54,30 +54,35 @@ namespace OpenTween.Thumbnail.Services
                 return null;
 
             var postId = match.Groups[1].Value;
-            var apiUrl = "http://via.me/api/v1/posts/" + postId;
 
-            var json = await this.http.GetByteArrayAsync(apiUrl)
-                .ConfigureAwait(false);
-
-            using (var jsonReader = JsonReaderWriterFactory.CreateJsonReader(json, XmlDictionaryReaderQuotas.Max))
+            try
             {
-                var xElm = XElement.Load(jsonReader);
+                var apiUrl = "http://via.me/api/v1/posts/" + postId;
+
+                var json = await this.http.GetByteArrayAsync(apiUrl)
+                    .ConfigureAwait(false);
 
-                var thumbUrlElm = xElm.XPathSelectElement("/response/post/thumb_url");
-                if (thumbUrlElm == null)
+                using (var jsonReader = JsonReaderWriterFactory.CreateJsonReader(json, XmlDictionaryReaderQuotas.Max))
                 {
-                    return null;
-                }
+                    var xElm = XElement.Load(jsonReader);
 
-                var textElm = xElm.XPathSelectElement("/response/post/text");
+                    var thumbUrlElm = xElm.XPathSelectElement("/response/post/thumb_url");
+                    if (thumbUrlElm == null)
+                        return null;
 
-                return new ThumbnailInfo
-                {
-                    ImageUrl = url,
-                    ThumbnailUrl = thumbUrlElm.Value,
-                    TooltipText = textElm == null ? null : textElm.Value,
-                };
+                    var textElm = xElm.XPathSelectElement("/response/post/text");
+
+                    return new ThumbnailInfo
+                    {
+                        ImageUrl = url,
+                        ThumbnailUrl = thumbUrlElm.Value,
+                        TooltipText = textElm == null ? null : textElm.Value,
+                    };
+                }
             }
+            catch (HttpRequestException) { }
+
+            return null;
         }
     }
 }
index 78b11ca..8224ae0 100644 (file)
@@ -53,16 +53,19 @@ namespace OpenTween.Thumbnail.Services
             if (!match.Success)
                 return null;
 
-            var apiUrl = "http://vimeo.com/api/oembed.xml?url=" + Uri.EscapeDataString(url);
+            try
+            {
+                var apiUrl = "http://vimeo.com/api/oembed.xml?url=" + Uri.EscapeDataString(url);
 
-            var xmlStr = await this.http.GetStringAsync(apiUrl)
-                .ConfigureAwait(false);
+                var xmlStr = await this.http.GetStringAsync(apiUrl)
+                    .ConfigureAwait(false);
 
-            var xdoc = XDocument.Parse(xmlStr);
+                var xdoc = XDocument.Parse(xmlStr);
+
+                var thumbUrlElm = xdoc.XPathSelectElement("/oembed/thumbnail_url");
+                if (thumbUrlElm == null)
+                    return null;
 
-            var thumbUrlElm = xdoc.XPathSelectElement("/oembed/thumbnail_url");
-            if (thumbUrlElm != null)
-            {
                 var titleElm = xdoc.XPathSelectElement("/oembed/title");
                 var durationElm = xdoc.XPathSelectElement("/oembed/duration");
 
@@ -82,6 +85,7 @@ namespace OpenTween.Thumbnail.Services
                     TooltipText = tooltipText,
                 };
             }
+            catch (HttpRequestException) { }
 
             return null;
         }