package feed.parser;
import java.net.URL;
import org.caudexorigo.Shutdown;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class Test
{
public static void main(String[] args)
{
try
{
// String rss = IOUtils.toString(new FileInputStream("./tests/maissemanario.xml"), Charset.forName("UTF-8"));
URL oracle = new URL("http://sol.sapo.pt/feedsapo.xml");
FeedParser parser = new FeedParser();
FeedChannel feed = parser.parse(oracle.openStream(), true, true);
// feed.addCategory("foo");
// feed.addCategory("bar");
// System.out.println(feed);
final ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
mapper.enable(SerializationFeature.INDENT_OUTPUT);
String json_feed = mapper.writeValueAsString(feed);
System.out.println(json_feed);
FeedChannel feed_from_json = mapper.readValue(json_feed, FeedChannel.class);
System.out.println(feed_from_json.toString());
// JAXBContext jaxbContext = JAXBContext.newInstance(Rss.class);
// Marshaller jaxbMarshaller = jaxbContext.createMarshaller();
//
// // output pretty printed
// jaxbMarshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
// jaxbMarshaller.setProperty(Marshaller.JAXB_FRAGMENT, Boolean.TRUE);
//
// jaxbMarshaller.marshal(new Rss(feed), System.out);
}
catch (Throwable e)
{
Shutdown.now(e);
}
}
}