Package org.apache.abdera.parser

Examples of org.apache.abdera.parser.Parser


  @SuppressWarnings("unchecked")
  public ResponseContext createEntry(
    RequestContext request) {
      Abdera abdera = request.getServiceContext().getAbdera();
      Factory factory = abdera.getFactory();
      Parser parser = abdera.getParser();
      try {
        MimeType contentType = request.getContentType();
        String ctype = (contentType != null) ? contentType.toString() : null;
        if (ctype != null && !MimeTypeHelper.isAtom(ctype) && !MimeTypeHelper.isXml(ctype))
          return new EmptyResponseContext(415);
View Full Code Here


  @SuppressWarnings("unchecked")
  public ResponseContext updateEntry(
    RequestContext request) {
      Abdera abdera = request.getServiceContext().getAbdera();
      Parser parser = abdera.getParser();
      Factory factory = abdera.getFactory();
      Entry orig_entry = getEntry(request);
      if (orig_entry != null) {
        try {
          MimeType contentType = request.getContentType();
View Full Code Here

        try {
            syndOutput.output(syndFeed, new OutputStreamWriter(bos));
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        Parser parser = Abdera.getNewParser();
        Document<Feed> document = parser.parse(new ByteArrayInputStream(bos.toByteArray()));
       
        return document.getRoot();
    }
View Full Code Here

        try {
            syndOutput.output(syndFeed, new OutputStreamWriter(bos));
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        Parser parser = Abdera.getNewParser();
        Document<Feed> document = parser.parse(new ByteArrayInputStream(bos.toByteArray()));
       
        return document.getRoot();
    }
View Full Code Here

        return new ByteArrayInputStream(base64.decode(bo.toByteArray()));
    }

    private <T extends Element> Document<T> getEntry(InputStream stream, RequestContext request) throws ParseException,
        IOException {
        Parser parser = request.getAbdera().getParser();
        if (parser == null)
            throw new IllegalArgumentException("No Parser implementation was provided");
        Document<?> document =
            parser.parse(stream, request.getResolvedUri().toString(), parser.getDefaultParserOptions());
        return (Document<T>)document;
    }
View Full Code Here

public class UnacceptableElementsExample {

    public static void main(String[] args) throws Exception {

        Parser parser = Abdera.getNewParser();

        /**
         * By subclassing BlackListParseFilter, we can throw an error when the parsed XML contains any content we don't
         * want
         */
        ListParseFilter exceptionFilter = new BlackListParseFilter() {
            private static final long serialVersionUID = 7564587859561916928L;

            @Override
            public boolean acceptable(QName qname) {
                boolean answer = super.acceptable(qname);
                if (!(answer)) {
                    throw new FOMException("Unacceptable element ::" + qname);
                }
                return answer;
            }

            @Override
            public boolean acceptable(QName qname, QName attribute) {
                return true;
            }
        };
        exceptionFilter.add(new QName("http://example.org", "a"));

        ParserOptions options = parser.getDefaultParserOptions();
        options.setParseFilter(exceptionFilter);
        Document<Feed> doc =
            parser.parse(UnacceptableElementsExample.class.getResourceAsStream("/xmlcontent.xml"), null, options);

        // this will throw a FOMException
        doc.writeTo(System.out);

    }
View Full Code Here

public class Parse {

    public static void main(String[] args) throws Exception {

        Parser parser = Abdera.getNewParser();

        InputStream in = Parse.class.getResourceAsStream("/simple.xml");
        Document<Feed> doc = parser.parse(in);
        Feed feed = doc.getRoot();

        System.out.println(feed.getTitle());
        System.out.println(feed.getTitleType());
        System.out.println(feed.getAlternateLink().getResolvedHref());
View Full Code Here

public class XPathExample {

    public static void main(String[] args) throws Exception {

        Abdera abdera = new Abdera();
        Parser parser = abdera.getParser();
        XPath xpath = abdera.getXPath();

        InputStream in = XPathExample.class.getResourceAsStream("/simple.xml");
        Document<Feed> doc = parser.parse(in);
        Feed feed = doc.getRoot();

        System.out.println(xpath.evaluate("count(/a:feed)", feed)); // 1.0
        System.out.println(xpath.numericValueOf("count(/a:feed)", feed)); // 1.0
        System.out.println(xpath.booleanValueOf("/a:feed/a:entry", feed)); // true (the feed has an entry)
View Full Code Here

public class XsltExample {

    public static void main(String[] args) {

        Parser parser = Abdera.getNewParser();

        try {

            // Apply an XSLT transform to the entire Feed
            TransformerFactory factory = TransformerFactory.newInstance();

            // Abdera is capable of parsing any well-formed XML document, even XSLT
            Document<Element> xslt = parser.parse(XsltExample.class.getResourceAsStream("/test.xslt"));
            AbderaSource xsltSource = new AbderaSource(xslt);
            Transformer transformer = factory.newTransformer(xsltSource);

            // Now let's get the feed we're going to transform
            Document<Feed> feed = parser.parse(XsltExample.class.getResourceAsStream("/simple.xml"));
            AbderaSource feedSource = new AbderaSource(feed);

            // Prepare the output
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            Result result = new StreamResult(out);
            transformer.transform(feedSource, result);
            System.out.println(out); // "This is a test urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6"

            // Apply an XSLT transform to XML in the content element
            xslt = parser.parse(XsltExample.class.getResourceAsStream("/content.xslt"));
            xsltSource = new AbderaSource(xslt);
            transformer = factory.newTransformer(xsltSource);

            feed = parser.parse(XsltExample.class.getResourceAsStream("/xmlcontent.xml"));
            Entry entry = feed.getRoot().getEntries().get(0);
            Content content = entry.getContentElement();
            AbderaSource contentSource = new AbderaSource(content.getValueElement());

            // Note that the AbderaSource is set to the value element of atom:content!!
View Full Code Here

        assertXpathEvaluatesTo(QUERY_TERMS, "//os:Query/@searchTerms", result);
    }

    @Test
    public void testAtomResponseParsing() throws Exception {
        Parser parser = Abdera.getNewParser();

        InputStream stream = OpenSearchAtomTest.class.getResourceAsStream("/atomResponse.xml");
        Document<Element> doc = parser.parse(stream);

        IntegerElement tr = doc.getRoot().getFirstChild(OpenSearchConstants.TOTAL_RESULTS);
        assertNotNull(tr);
        assertEquals(47, tr.getValue());
View Full Code Here

TOP

Related Classes of org.apache.abdera.parser.Parser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.