/** * domhandler.js - WebDAV Client dom handler. * * This is a xml dom parse handler. * * @license Copyright 2011 The xhrdavclient library authors. * All rights reserved. */ goog.provide('xhrdav.parser.DomHandler'); goog.require('goog.Disposable'); /** * XML Dom handler * * @constructor * @extends {goog.Disposable} */ xhrdav.parser.DomHandler = function() { /** * @private * @type {Object} */ this.resources_ = null; }; goog.inherits(xhrdav.parser.DomHandler, goog.Disposable); /** @override */ xhrdav.parser.DomHandler.prototype.disposeInternal = function() { goog.base(this, 'disposeInternal'); this.resources_ = null; }; /** * Handle start document */ xhrdav.parser.DomHandler.prototype.startDocument = function() { this.resources_ = {}; }; /** * Handle end document */ xhrdav.parser.DomHandler.prototype.endDocument = function() {}; /** * Execute parse Document * * @param {xhrdav.DomParser} parser Xml dom parser object. * @param {Object} xml parsing xml. * @see xhrdav.DomParser */ xhrdav.parser.DomHandler.prototype.execute = function(parser, xml) { this.resources_ = parser.parseDocument(xml); }; /** * Get object * * @return {Object} converted response xml to object. */ xhrdav.parser.DomHandler.prototype.getObject = function() { return this.resources_; }; /* Entry Point for closure compiler */ goog.exportSymbol('xhrdav.parser.DomHandler', xhrdav.parser.DomHandler); goog.exportProperty(xhrdav.parser.DomHandler.prototype, 'startDocument', xhrdav.parser.DomHandler.prototype.startDocument); goog.exportProperty(xhrdav.parser.DomHandler.prototype, 'endDocument', xhrdav.parser.DomHandler.prototype.endDocument); goog.exportProperty(xhrdav.parser.DomHandler.prototype, 'execute', xhrdav.parser.DomHandler.prototype.execute); goog.exportProperty(xhrdav.parser.DomHandler.prototype, 'getObject', xhrdav.parser.DomHandler.prototype.getObject);