'use strict';

var _commonjsHelpers = require('../../../_virtual/_commonjsHelpers.js');
var XMLDOMConfiguration = require('../../../_virtual/XMLDOMConfiguration.js');
var XMLDOMErrorHandler = require('./XMLDOMErrorHandler.js');
var XMLDOMStringList = require('./XMLDOMStringList.js');

var hasRequiredXMLDOMConfiguration;

function requireXMLDOMConfiguration () {
	if (hasRequiredXMLDOMConfiguration) return XMLDOMConfiguration.__module.exports;
	hasRequiredXMLDOMConfiguration = 1;
	// Generated by CoffeeScript 1.12.7
	(function() {
	  var XMLDOMErrorHandler$1, XMLDOMStringList$1;

	  XMLDOMErrorHandler$1 = XMLDOMErrorHandler.__require();

	  XMLDOMStringList$1 = XMLDOMStringList.__require();

	  XMLDOMConfiguration.__module.exports = (function() {
	    function XMLDOMConfiguration() {
	      this.defaultParams = {
	        "canonical-form": false,
	        "cdata-sections": false,
	        "comments": false,
	        "datatype-normalization": false,
	        "element-content-whitespace": true,
	        "entities": true,
	        "error-handler": new XMLDOMErrorHandler$1(),
	        "infoset": true,
	        "validate-if-schema": false,
	        "namespaces": true,
	        "namespace-declarations": true,
	        "normalize-characters": false,
	        "schema-location": '',
	        "schema-type": '',
	        "split-cdata-sections": true,
	        "validate": false,
	        "well-formed": true
	      };
	      this.params = Object.create(this.defaultParams);
	    }

	    Object.defineProperty(XMLDOMConfiguration.prototype, 'parameterNames', {
	      get: function() {
	        return new XMLDOMStringList$1(Object.keys(this.defaultParams));
	      }
	    });

	    XMLDOMConfiguration.prototype.getParameter = function(name) {
	      if (this.params.hasOwnProperty(name)) {
	        return this.params[name];
	      } else {
	        return null;
	      }
	    };

	    XMLDOMConfiguration.prototype.canSetParameter = function(name, value) {
	      return true;
	    };

	    XMLDOMConfiguration.prototype.setParameter = function(name, value) {
	      if (value != null) {
	        return this.params[name] = value;
	      } else {
	        return delete this.params[name];
	      }
	    };

	    return XMLDOMConfiguration;

	  })();

	}).call(_commonjsHelpers.commonjsGlobal);
	return XMLDOMConfiguration.__module.exports;
}

exports.__require = requireXMLDOMConfiguration;
