// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/InfluxDBException.java
// public class InfluxDBException extends RuntimeException {
// 
// 	private static final long serialVersionUID = -4410268653794610252L;
// 
// 	public InfluxDBException() {
// 		super();
// 	}
// 
// 	public InfluxDBException(String message, Throwable cause) {
// 		super(message, cause);
// 	}
// 
// 	public InfluxDBException(String message) {
// 		super(message);
// 	}
// 
// 	public InfluxDBException(Throwable cause) {
// 		super(cause);
// 	}
// }
// 
// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/ql/InfluxQLStatement.java
// public static enum ACTION {
// 	SELECT, EXECUTE
// }


import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.springframework.beans.factory.xml.DefaultDocumentLoader;
import org.springframework.beans.factory.xml.DocumentLoader;
import org.springframework.core.io.DefaultResourceLoader;
import org.springframework.core.io.InputStreamResource;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import org.springframework.util.xml.XmlValidationModeDetector;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.ErrorHandler;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import com.vgerbot.orm.influxdb.InfluxDBException;
import com.vgerbot.orm.influxdb.ql.InfluxQLStatement.ACTION;

		@Override
		public void fatalError(SAXParseException exception) throws SAXException {
			logger.log(Level.SEVERE, exception.getMessage(), exception);
		}

		@Override
		public void error(SAXParseException exception) throws SAXException {
			logger.log(Level.OFF, exception.getMessage(), exception);
		}
	};

	private InfluxQLMapper() {
	}

	public InfluxQLStatement getStatement(String key) {
		return statementsMap.get(key);
	}

	public InfluxQLMapper union(InfluxQLMapper other) {
		InfluxQLMapper newmapper = new InfluxQLMapper();
		newmapper.statementsMap.putAll(this.statementsMap);
		newmapper.statementsMap.putAll(other.statementsMap);
		return newmapper;
	}

	public static final InfluxQLMapper empty() {
		return new InfluxQLMapper();
	}

// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/InfluxDBException.java
// public class InfluxDBException extends RuntimeException {
// 
// 	private static final long serialVersionUID = -4410268653794610252L;
// 
// 	public InfluxDBException() {
// 		super();
// 	}
// 
// 	public InfluxDBException(String message, Throwable cause) {
// 		super(message, cause);
// 	}
// 
// 	public InfluxDBException(String message) {
// 		super(message);
// 	}
// 
// 	public InfluxDBException(Throwable cause) {
// 		super(cause);
// 	}
// }
// 
// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/ql/InfluxQLStatement.java
// public static enum ACTION {
// 	SELECT, EXECUTE
// }


// Path: spring-influxdb-orm/src/main/java/com/vgerbot/orm/influxdb/ql/InfluxQLMapper.java
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.springframework.beans.factory.xml.DefaultDocumentLoader;
import org.springframework.beans.factory.xml.DocumentLoader;
import org.springframework.core.io.DefaultResourceLoader;
import org.springframework.core.io.InputStreamResource;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import org.springframework.util.xml.XmlValidationModeDetector;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.ErrorHandler;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import com.vgerbot.orm.influxdb.InfluxDBException;
import com.vgerbot.orm.influxdb.ql.InfluxQLStatement.ACTION;


		@Override
		public void fatalError(SAXParseException exception) throws SAXException {
			logger.log(Level.SEVERE, exception.getMessage(), exception);
		}

		@Override
		public void error(SAXParseException exception) throws SAXException {
			logger.log(Level.OFF, exception.getMessage(), exception);
		}
	};

	private InfluxQLMapper() {
	}

	public InfluxQLStatement getStatement(String key) {
		return statementsMap.get(key);
	}

	public InfluxQLMapper union(InfluxQLMapper other) {
		InfluxQLMapper newmapper = new InfluxQLMapper();
		newmapper.statementsMap.putAll(this.statementsMap);
		newmapper.statementsMap.putAll(other.statementsMap);
		return newmapper;
	}

	public static final InfluxQLMapper empty() {
		return new InfluxQLMapper();
	}

	public static final InfluxQLMapper parseFrom(String resourceLocation) throws InfluxDBException {