uidate: fix newsfeed images
[scilab.git] / scilab / modules / ui_data / src / java / org / scilab / modules / ui_data / newsfeed / NewsFetcher.java
index 9d09079..21653c1 100644 (file)
@@ -75,23 +75,38 @@ public class NewsFetcher {
             Date date = formatter.parse(dateStr);\r
             String description = getItemValue(item, "description");\r
             String content = getItemValue(item, "content:encoded");\r
+            // media content\r
+            NewsMediaContent mediaContent = null;\r
+            Node mediaContentNode = getItemNode(item, "media:content");\r
+            if (mediaContentNode != null) {\r
+                String url = mediaContentNode.getAttributes().getNamedItem("url").getNodeValue();\r
+                String width = mediaContentNode.getAttributes().getNamedItem("width").getNodeValue();\r
+                String height = mediaContentNode.getAttributes().getNamedItem("height").getNodeValue();\r
+                mediaContent = new NewsMediaContent(url, width, height);\r
+            }\r
             String link = getItemValue(item, "link");\r
-            newsList.add(new News(title, date, description, content, link));\r
+            newsList.add(new News(title, date, description, content, mediaContent, link));\r
         }\r
         return newsList;\r
     }\r
 \r
-    private String getItemValue(Element item, String nodeName) {\r
+    private Node getItemNode(Element item, String nodeName) {\r
         NodeList nodeList = item.getElementsByTagName(nodeName);\r
         if (nodeList.getLength() > 0) {\r
-            Node node = nodeList.item(0);\r
+            return nodeList.item(0);\r
+        } else {\r
+            return null;\r
+        }\r
+    }\r
+\r
+    private String getItemValue(Element item, String nodeName) {\r
+        Node node = getItemNode(item, nodeName);\r
+        if (node != null) {\r
             if (node.hasChildNodes()) {\r
                 return node.getFirstChild().getNodeValue();\r
-            } else {\r
-                return null;\r
             }\r
-        } else {\r
-            return null;\r
         }\r
+        return null;\r
     }\r
+\r
 }\r