// Path: hive/src/main/java/com/esri/hadoop/hive/GeometryUtils.java
// public enum OGCType {
// 	UNKNOWN(0),
// 	ST_POINT(1),
// 	ST_LINESTRING(2),
// 	ST_POLYGON(3),
// 	ST_MULTIPOINT(4),
// 	ST_MULTILINESTRING(5),
// 	ST_MULTIPOLYGON(6);
// 		
// 	private final int index;
// 		
// 	OGCType(int index){
// 		this.index = index;
// 	}
// 		
// 	public int getIndex(){
// 		return this.index;
// 	}
// }


import org.apache.commons.logging.Log;
import org.apache.hadoop.io.BytesWritable;
import com.esri.hadoop.hive.GeometryUtils.OGCType;
	/**
	 * Log when comparing geometries in different spatial references
	 * 
	 * @param logger
	 * @param geomref1
	 * @param geomref2
	 */
	public static void Log_SRIDMismatch(Log logger, BytesWritable geomref1, BytesWritable geomref2){
		logger.error(String.format(messages[MSG_SRID_MISMATCH], GeometryUtils.getWKID(geomref1), GeometryUtils.getWKID(geomref2)));
	}
	public static void Log_SRIDMismatch(Log logger, BytesWritable geomref1, int wkid2){
		logger.error(String.format(messages[MSG_SRID_MISMATCH], GeometryUtils.getWKID(geomref1), wkid2));
	}
	
	/**
	 * Log when arguments passed to evaluate are null
	 * @param logger
	 */
	public static void Log_ArgumentsNull(Log logger){
		logger.error(messages[MSG_ARGUMENTS_NULL]);
	}
	
	public static void Log_VariableArgumentLengthXY(Log logger){
		logger.error(messages[MSG_ARGUMENT_LENGTH_XY]);
	}
	
	public static void Log_VariableArgumentLengthXY(Log logger, int array_argument_index){
		logger.error(String.format(messages[MSG_MULTI_ARGUMENT_LENGTH_XY], array_argument_index));
	}

// Path: hive/src/main/java/com/esri/hadoop/hive/GeometryUtils.java
// public enum OGCType {
// 	UNKNOWN(0),
// 	ST_POINT(1),
// 	ST_LINESTRING(2),
// 	ST_POLYGON(3),
// 	ST_MULTIPOINT(4),
// 	ST_MULTILINESTRING(5),
// 	ST_MULTIPOLYGON(6);
// 		
// 	private final int index;
// 		
// 	OGCType(int index){
// 		this.index = index;
// 	}
// 		
// 	public int getIndex(){
// 		return this.index;
// 	}
// }


// Path: hive/src/main/java/com/esri/hadoop/hive/LogUtils.java
import org.apache.commons.logging.Log;
import org.apache.hadoop.io.BytesWritable;
import com.esri.hadoop.hive.GeometryUtils.OGCType;

	/**
	 * Log when comparing geometries in different spatial references
	 * 
	 * @param logger
	 * @param geomref1
	 * @param geomref2
	 */
	public static void Log_SRIDMismatch(Log logger, BytesWritable geomref1, BytesWritable geomref2){
		logger.error(String.format(messages[MSG_SRID_MISMATCH], GeometryUtils.getWKID(geomref1), GeometryUtils.getWKID(geomref2)));
	}
	public static void Log_SRIDMismatch(Log logger, BytesWritable geomref1, int wkid2){
		logger.error(String.format(messages[MSG_SRID_MISMATCH], GeometryUtils.getWKID(geomref1), wkid2));
	}
	
	/**
	 * Log when arguments passed to evaluate are null
	 * @param logger
	 */
	public static void Log_ArgumentsNull(Log logger){
		logger.error(messages[MSG_ARGUMENTS_NULL]);
	}
	
	public static void Log_VariableArgumentLengthXY(Log logger){
		logger.error(messages[MSG_ARGUMENT_LENGTH_XY]);
	}
	
	public static void Log_VariableArgumentLengthXY(Log logger, int array_argument_index){
		logger.error(String.format(messages[MSG_MULTI_ARGUMENT_LENGTH_XY], array_argument_index));
	}

	public static void Log_InvalidType(Log logger, OGCType expecting, OGCType actual){