1 package transactions.rss; 2 3 import dinamica.*; 4 import electric.xml.*; 5 6 16 public class RSSConsumer extends GenericTransaction 17 { 18 19 22 public int service(Recordset inputParams) throws Throwable 23 { 24 25 int rc = super.service(inputParams); 27 28 Recordset rs = new Recordset(); 30 rs.append("title", java.sql.Types.VARCHAR); 31 rs.append("description", java.sql.Types.VARCHAR); 32 rs.append("link", java.sql.Types.VARCHAR); 33 rs.append("pubDate", java.sql.Types.VARCHAR); 34 35 String url = getConfig().getConfigValue("url"); 37 38 String data = StringUtil.httpGet(url, true); 40 41 Document doc = new Document(data); 43 Element root = doc.getRoot(); 44 Elements items = root.getElements(new XPath("//item")); 45 while (items.hasMoreElements()) 46 { 47 rs.addNew(); 49 Element item = items.next(); 50 Elements fields = item.getElements(); 51 while (fields.hasMoreElements()) 53 { 54 Element field = fields.next(); 55 String name = field.getName(); 56 rs.setValue(name, field.getString()); 57 } 58 } 59 60 publish("rss", rs); 62 63 return rc; 64 65 } 66 67 } 68 | Popular Tags |