Skip to content

andrew-kamenchuk/xmlparser-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 

Repository files navigation

XML Parser

SAX and DOM works together

Concept

The parser uses SAXParser to seek through your file.xml, and uses your handlers to process DOM nodes

Usage

import org.j.xmlparser.Parser;
import org.w3c.dom.Element;

// ...

Parser parser = new Parser();

parser.addHandler("tag", (Element element) -> {
    // do whatever you want
});

parser.parse("path/to/file.xml");

sharing context:

import org.j.xmlparser.Parser;
import org.j.xmlparser.annotations.Handles;
import org.w3c.dom.Element;

// ...
public class TagsHandler {

    @Handles("tag1")
    public void handleTag1(Element element) {
        //...
    }

    @Handles("tag2")
    public void handleTag2(Element element) {
        //...
    }
}

// ...

Parser parser = new Parser();

parser.addHandler(new TagsHandler());

parser.parse("path/to/file.xml");

concurrent execution:

import org.j.xmlparser.Parser;

// ...
Parser parser = new Parser();

// add handlers

parser.parseFixedThreadPool("path/to/file.xml", nThreads);
// or
parser.parseCachedThreadPool("path/to/file.xml");
// or
parser.setExecutor(new ThreadPoolExecutor(...));
parser.parse("path/to/file.xml");
// or as alternative
parser.parse("path/to/file.xml", new ThreadPoolExecutor(...));

Releases

No releases published

Packages

No packages published

Languages