| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/framework7/cordova/node_modules/elementtree/lib/parsers/ |
Upload File : |
var util = require('util');
var sax = require('sax');
var TreeBuilder = require('./../treebuilder').TreeBuilder;
function XMLParser(target) {
this.parser = sax.parser(true);
this.target = (target) ? target : new TreeBuilder();
this.parser.onopentag = this._handleOpenTag.bind(this);
this.parser.ontext = this._handleText.bind(this);
this.parser.oncdata = this._handleCdata.bind(this);
this.parser.ondoctype = this._handleDoctype.bind(this);
this.parser.oncomment = this._handleComment.bind(this);
this.parser.onclosetag = this._handleCloseTag.bind(this);
this.parser.onerror = this._handleError.bind(this);
}
XMLParser.prototype._handleOpenTag = function(tag) {
this.target.start(tag.name, tag.attributes);
};
XMLParser.prototype._handleText = function(text) {
this.target.data(text);
};
XMLParser.prototype._handleCdata = function(text) {
this.target.data(text);
};
XMLParser.prototype._handleDoctype = function(text) {
};
XMLParser.prototype._handleComment = function(comment) {
};
XMLParser.prototype._handleCloseTag = function(tag) {
this.target.end(tag);
};
XMLParser.prototype._handleError = function(err) {
throw err;
};
XMLParser.prototype.feed = function(chunk) {
this.parser.write(chunk);
};
XMLParser.prototype.close = function() {
this.parser.close();
return this.target.close();
};
exports.XMLParser = XMLParser;