KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openi > xml > RssTest


1 /*********************************************************************************
2  * The contents of this file are subject to the OpenI Public License Version 1.0
3  * ("License"); You may not use this file except in compliance with the
4  * License. You may obtain a copy of the License at
5  * http://www.openi.org/docs/LICENSE.txt
6  *
7  * Software distributed under the License is distributed on an "AS IS" basis,
8  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
9  * the specific language governing rights and limitations under the License.
10  *
11  * The Original Code is: OpenI Open Source
12  *
13  * The Initial Developer of the Original Code is Loyalty Matrix, Inc.
14  * Portions created by Loyalty Matrix, Inc. are
15  * Copyright (C) 2005 Loyalty Matrix, Inc.; All Rights Reserved.
16  *
17  * Contributor(s): ______________________________________.
18  *
19  ********************************************************************************/

20 package org.openi.xml;
21
22 import junit.framework.TestCase;
23 import org.apache.log4j.Logger;
24 import org.openi.menu.Menu;
25 import org.openi.menu.MenuItem;
26 import org.openi.project.ProjectContext;
27 import org.openi.test.Util;
28 import org.openi.xml.RssFeedGenerator;
29
30 import de.nava.informa.core.ChannelIF;
31 import de.nava.informa.core.ParseException;
32 import de.nava.informa.impl.basic.ChannelBuilder;
33 import de.nava.informa.impl.basic.Item;
34 import de.nava.informa.parsers.FeedParser;
35
36 import java.io.FileInputStream JavaDoc;
37 import java.io.IOException JavaDoc;
38 import java.io.InputStream JavaDoc;
39 import java.io.StringBufferInputStream JavaDoc;
40 import java.io.StringWriter JavaDoc;
41 import java.util.Collection JavaDoc;
42 import java.util.Iterator JavaDoc;
43
44 import javax.xml.transform.TransformerException JavaDoc;
45
46
47 public class RssTest extends TestCase {
48     private static Logger logger = Logger.getLogger(RssTest.class);
49
50     public RssTest(String JavaDoc arg0) {
51         super(arg0);
52     }
53
54     protected void setUp() throws Exception JavaDoc {
55         super.setUp();
56         Util.setupLog4j();
57     }
58
59     protected void tearDown() throws Exception JavaDoc {
60         super.tearDown();
61     }
62
63     public void testCreateRss() throws Exception JavaDoc {
64         StringWriter JavaDoc writer = new StringWriter JavaDoc();
65         RssFeedGenerator.exportFeed(writer, RssFeedGenerator.createStaticChannel());
66         assertTrue(writer.toString().length() > 0);
67
68         // logger.debug(writer.toString());
69
}
70     
71     private void printChannel(ChannelIF channel){
72         Iterator JavaDoc items = channel.getItems().iterator();
73         // System.out.println("img: " + channel.getImage().getLocation());
74
System.out.println(channel.getTitle());
75         while(items.hasNext()){
76             Item item = (Item)items.next();
77             System.out.println(item.getTitle());
78         }
79     }
80     
81     public void testGetRss() throws IOException JavaDoc, ParseException{
82         // String feed = "http://www.flickr.com/services/feeds/photos_public.gne?tags=kitties&format=rss_200";
83
// String feed = "http://wiki.intelligenceportal.com/lmiwiki/RecentChanges?action=rss_rc";
84
String JavaDoc feed = "http://digg.com/rss/index.xml";
85         // String feed = "http://dev.intelligenceportal.com/mo";
86
ChannelIF channel = FeedParser.parse(new ChannelBuilder(), feed);
87         printChannel(channel);
88     }
89     
90     public void testCreateRssFromMenu() throws IOException JavaDoc, TransformerException JavaDoc{
91         ProjectContext context = Util.createTestProjectContext("projectUser");
92         
93         Menu menu = context.buildMenu();
94         String JavaDoc menuXml = new BeanStorage().toXmlString(menu);
95         InputStream JavaDoc xslStream = new FileInputStream JavaDoc(Util.findTestDirectory() + "/../web/WEB-INF/openi/menu2rss.xsl");
96         InputStream JavaDoc xmlStream = new StringBufferInputStream JavaDoc(menuXml);
97         String JavaDoc rss = XMLTransformer.transform(xslStream, xmlStream);
98         logger.debug(rss);
99     }
100     
101
102     
103     
104 }
105
Popular Tags