1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.commons.betwixt;
17
18 import java.io.FileInputStream;
19 import java.io.InputStream;
20
21 import org.apache.commons.betwixt.io.BeanWriter;
22 import org.apache.commons.digester.rss.RSSDigester;
23
24 /*** Reads an RSS file using Digesters's RSS demo then uses Betwixt
25 * to output it as XML again.
26 *
27 * @author <a href="mailto:jstrachan@apache.org">James Strachan</a>
28 * @version $Revision: 155402 $
29 */
30 public class RSSBeanWriter extends AbstractTestCase {
31
32 public RSSBeanWriter(String testName) {
33 super(testName);
34 }
35
36 public static void main(String[] args) throws Exception {
37 RSSBeanWriter sample = new RSSBeanWriter("RSS");
38 sample.run( args );
39 }
40
41 public void run(String[] args) throws Exception {
42 RSSDigester digester = new RSSDigester();
43 Object bean = null;
44 if ( args.length > 0 ) {
45 bean = digester.parse( args[0] );
46 }
47 else {
48 InputStream in = new FileInputStream( getTestFile("src/test/org/apache/commons/betwixt/rss-example.xml") );
49 bean = digester.parse( in );
50 in.close();
51 }
52
53 write( bean );
54 }
55
56 public void write(Object bean) throws Exception {
57 BeanWriter writer = new BeanWriter();
58 writer.getXMLIntrospector().getConfiguration().setAttributesForPrimitives(false);
59 writer.enablePrettyPrint();
60 writer.write( bean );
61 }
62 }
63