// Generated by Haxe 4.3.1
package haxe.java.db;

import haxe.root.*;

@SuppressWarnings(value={"rawtypes", "unchecked"})
public class JdbcConnection extends haxe.lang.HxObject implements sys.db.Connection
{
	static
	{
		//line 38 "/usr/share/haxe/std/java/db/Jdbc.hx"
		haxe.java.db.JdbcConnection.ids = new java.util.concurrent.atomic.AtomicInteger(0);
	}
	
	public JdbcConnection(haxe.lang.EmptyObject empty)
	{
	}
	
	
	public JdbcConnection(java.sql.Connection cnx)
	{
		//line 48 "/usr/share/haxe/std/java/db/Jdbc.hx"
		haxe.java.db.JdbcConnection.__hx_ctor_haxe_java_db_JdbcConnection(this, cnx);
	}
	
	
	protected static void __hx_ctor_haxe_java_db_JdbcConnection(haxe.java.db.JdbcConnection __hx_this, java.sql.Connection cnx)
	{
		//line 49 "/usr/share/haxe/std/java/db/Jdbc.hx"
		__hx_this.id = haxe.java.db.JdbcConnection.ids.getAndIncrement();
		//line 50 "/usr/share/haxe/std/java/db/Jdbc.hx"
		__hx_this.cnx = cnx;
		//line 51 "/usr/share/haxe/std/java/db/Jdbc.hx"
		__hx_this.escapes = new haxe.root.Array(new java.lang.Object[]{});
		//line 52 "/usr/share/haxe/std/java/db/Jdbc.hx"
		__hx_this.escapeRegex = new haxe.root.EReg(haxe.lang.Runtime.toString("@@HX_ESCAPE(\\d+)_(\\d+)@@"), haxe.lang.Runtime.toString(""));
	}
	
	
	public static java.util.concurrent.atomic.AtomicInteger ids;
	
	public int id;
	
	public java.sql.Connection cnx;
	
	public int _lastInsertId;
	
	public haxe.root.EReg escapeRegex;
	
	public haxe.root.Array escapes;
	
	public void close()
	{
		//line 57 "/usr/share/haxe/std/java/db/Jdbc.hx"
		try 
		{
			//line 57 "/usr/share/haxe/std/java/db/Jdbc.hx"
			this.cnx.close();
		}
		catch (java.lang.Throwable _g)
		{
			//line 58 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.Object e = ((java.lang.Object) (haxe.Exception.caught(_g).unwrap()) );
			//line 59 "/usr/share/haxe/std/java/db/Jdbc.hx"
			throw ((java.lang.RuntimeException) (haxe.Exception.thrown(e)) );
		}
		
		
	}
	
	
	public java.lang.String dbName()
	{
		//line 89 "/usr/share/haxe/std/java/db/Jdbc.hx"
		try 
		{
			//line 90 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.String ret = this.cnx.getMetaData().getDriverName();
			//line 91 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.String retc = ret.toLowerCase();
			//line 92 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( haxe.lang.StringExt.indexOf(retc, "mysql", null) != -1 )) 
			{
				//line 93 "/usr/share/haxe/std/java/db/Jdbc.hx"
				return "MySQL";
			}
			else
			{
				//line 94 "/usr/share/haxe/std/java/db/Jdbc.hx"
				if (( haxe.lang.StringExt.indexOf(retc, "sqlite", null) != -1 )) 
				{
					//line 95 "/usr/share/haxe/std/java/db/Jdbc.hx"
					return "SQLite";
				}
				
			}
			
			//line 96 "/usr/share/haxe/std/java/db/Jdbc.hx"
			return ret;
		}
		catch (java.lang.Throwable _g)
		{
			//line 97 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.Object e = ((java.lang.Object) (haxe.Exception.caught(_g).unwrap()) );
			//line 98 "/usr/share/haxe/std/java/db/Jdbc.hx"
			throw ((java.lang.RuntimeException) (haxe.Exception.thrown(e)) );
		}
		
		
	}
	
	
	public sys.db.ResultSet request(java.lang.String s)
	{
		//line 125 "/usr/share/haxe/std/java/db/Jdbc.hx"
		haxe.root.StringBuf newst = new haxe.root.StringBuf();
		//line 126 "/usr/share/haxe/std/java/db/Jdbc.hx"
		haxe.root.Array sentArray = new haxe.root.Array(new java.lang.Object[]{});
		//line 129 "/usr/share/haxe/std/java/db/Jdbc.hx"
		haxe.root.EReg r = this.escapeRegex;
		//line 130 "/usr/share/haxe/std/java/db/Jdbc.hx"
		java.lang.String myid = ( this.id + "" );
		//line 130 "/usr/share/haxe/std/java/db/Jdbc.hx"
		haxe.root.Array escapes = this.escapes;
		//line 130 "/usr/share/haxe/std/java/db/Jdbc.hx"
		int elen = escapes.length;
		//line 131 "/usr/share/haxe/std/java/db/Jdbc.hx"
		try 
		{
			//line 132 "/usr/share/haxe/std/java/db/Jdbc.hx"
			while (r.match(s))
			{
				//line 133 "/usr/share/haxe/std/java/db/Jdbc.hx"
				java.lang.String id = r.matched(1);
				//line 134 "/usr/share/haxe/std/java/db/Jdbc.hx"
				if ( ! (haxe.lang.Runtime.valEq(id, myid)) ) 
				{
					//line 135 "/usr/share/haxe/std/java/db/Jdbc.hx"
					throw ((java.lang.RuntimeException) (haxe.Exception.thrown("Request quotes are only valid for one single request; They can\'t be cached.")) );
				}
				
				//line 137 "/usr/share/haxe/std/java/db/Jdbc.hx"
				newst.add(haxe.lang.Runtime.toString(r.matchedLeft()));
				//line 137 "/usr/share/haxe/std/java/db/Jdbc.hx"
				java.lang.Object __temp_expr1 = ((java.lang.Object) (null) );
				//line 138 "/usr/share/haxe/std/java/db/Jdbc.hx"
				java.lang.Object eid = haxe.root.Std.parseInt(r.matched(2));
				//line 139 "/usr/share/haxe/std/java/db/Jdbc.hx"
				if (( haxe.lang.Runtime.eq(eid, null) || ( ((int) (haxe.lang.Runtime.toInt(eid)) ) > elen ) )) 
				{
					//line 140 "/usr/share/haxe/std/java/db/Jdbc.hx"
					throw ((java.lang.RuntimeException) (haxe.Exception.thrown(( haxe.lang.Runtime.toString("Invalid request quote ID ") + haxe.lang.Runtime.toString(eid) ))) );
				}
				
				//line 141 "/usr/share/haxe/std/java/db/Jdbc.hx"
				sentArray.push(escapes.__get(( ((int) (haxe.lang.Runtime.toInt(eid)) ) - ((int) (1) ) )));
				//line 142 "/usr/share/haxe/std/java/db/Jdbc.hx"
				newst.add(haxe.lang.Runtime.toString("?"));
				//line 142 "/usr/share/haxe/std/java/db/Jdbc.hx"
				java.lang.Object __temp_expr2 = ((java.lang.Object) (null) );
				//line 143 "/usr/share/haxe/std/java/db/Jdbc.hx"
				s = r.matchedRight();
			}
			
			//line 145 "/usr/share/haxe/std/java/db/Jdbc.hx"
			newst.add(haxe.lang.Runtime.toString(s));
			//line 145 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.Object __temp_expr3 = ((java.lang.Object) (null) );
			//line 146 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.sql.PreparedStatement stmt = this.cnx.prepareStatement(haxe.lang.Runtime.toString(newst.toString()), ((int) (java.sql.Statement.RETURN_GENERATED_KEYS) ));
			//line 148 "/usr/share/haxe/std/java/db/Jdbc.hx"
			{
				//line 148 "/usr/share/haxe/std/java/db/Jdbc.hx"
				int _g = 0;
				//line 148 "/usr/share/haxe/std/java/db/Jdbc.hx"
				int _g1 = sentArray.length;
				//line 148 "/usr/share/haxe/std/java/db/Jdbc.hx"
				while (( _g < _g1 ))
				{
					//line 148 "/usr/share/haxe/std/java/db/Jdbc.hx"
					int i = _g++;
					//line 149 "/usr/share/haxe/std/java/db/Jdbc.hx"
					stmt.setObject(((int) (( i + 1 )) ), ((java.lang.Object) (sentArray.__get(i)) ));
				}
				
			}
			
			//line 152 "/usr/share/haxe/std/java/db/Jdbc.hx"
			haxe.java.db.JdbcResultSet ret = null;
			//line 152 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.String dbName = this.dbName();
			//line 153 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (stmt.execute()) 
			{
				//line 155 "/usr/share/haxe/std/java/db/Jdbc.hx"
				java.sql.ResultSet rs = stmt.getResultSet();
				//line 156 "/usr/share/haxe/std/java/db/Jdbc.hx"
				ret = new haxe.java.db.JdbcResultSet(((java.sql.ResultSet) (rs) ), haxe.lang.Runtime.toString(dbName), ((java.sql.ResultSetMetaData) (stmt.getMetaData()) ));
			}
			else
			{
				//line 159 "/usr/share/haxe/std/java/db/Jdbc.hx"
				int affected = stmt.getUpdateCount();
				//line 160 "/usr/share/haxe/std/java/db/Jdbc.hx"
				if (( affected == 1 )) 
				{
					//line 161 "/usr/share/haxe/std/java/db/Jdbc.hx"
					java.sql.ResultSet autogen = stmt.getGeneratedKeys();
					//line 162 "/usr/share/haxe/std/java/db/Jdbc.hx"
					if (autogen.next()) 
					{
						//line 163 "/usr/share/haxe/std/java/db/Jdbc.hx"
						this._lastInsertId = autogen.getInt(((int) (1) ));
					}
					
				}
				
				//line 166 "/usr/share/haxe/std/java/db/Jdbc.hx"
				ret = new haxe.java.db.JdbcResultSet(((java.sql.ResultSet) (null) ), haxe.lang.Runtime.toString(dbName), ((java.sql.ResultSetMetaData) (null) ));
			}
			
			//line 169 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( escapes.length != 0 )) 
			{
				//line 170 "/usr/share/haxe/std/java/db/Jdbc.hx"
				escapes = new haxe.root.Array(new java.lang.Object[]{});
			}
			
			//line 171 "/usr/share/haxe/std/java/db/Jdbc.hx"
			this.id = haxe.java.db.JdbcConnection.ids.getAndIncrement();
			//line 172 "/usr/share/haxe/std/java/db/Jdbc.hx"
			return ret;
		}
		catch (java.lang.Throwable _g2)
		{
			//line 173 "/usr/share/haxe/std/java/db/Jdbc.hx"
			java.lang.Object e = ((java.lang.Object) (haxe.Exception.caught(_g2).unwrap()) );
			//line 174 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( escapes.length != 0 )) 
			{
				//line 175 "/usr/share/haxe/std/java/db/Jdbc.hx"
				escapes = new haxe.root.Array(new java.lang.Object[]{});
			}
			
			//line 176 "/usr/share/haxe/std/java/db/Jdbc.hx"
			this.id = haxe.java.db.JdbcConnection.ids.getAndIncrement();
			//line 177 "/usr/share/haxe/std/java/db/Jdbc.hx"
			throw ((java.lang.RuntimeException) (haxe.Exception.thrown(e)) );
		}
		
		
	}
	
	
	@Override public double __hx_setField_f(java.lang.String field, double value, boolean handleProperties)
	{
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		{
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			boolean __temp_executeDef1 = true;
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( field != null )) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				switch (field.hashCode())
				{
					case 1012821065:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("_lastInsertId")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this._lastInsertId = ((int) (value) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 3355:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("id")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this.id = ((int) (value) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
				}
				
			}
			
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (__temp_executeDef1) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				return super.__hx_setField_f(field, value, handleProperties);
			}
			else
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				throw null;
			}
			
		}
		
	}
	
	
	@Override public java.lang.Object __hx_setField(java.lang.String field, java.lang.Object value, boolean handleProperties)
	{
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		{
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			boolean __temp_executeDef1 = true;
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( field != null )) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				switch (field.hashCode())
				{
					case -1464627182:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("escapes")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this.escapes = ((haxe.root.Array) (value) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 3355:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("id")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this.id = ((int) (haxe.lang.Runtime.toInt(value)) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 63416390:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("escapeRegex")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this.escapeRegex = ((haxe.root.EReg) (value) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 98669:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("cnx")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this.cnx = ((java.sql.Connection) (value) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 1012821065:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("_lastInsertId")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this._lastInsertId = ((int) (haxe.lang.Runtime.toInt(value)) );
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return value;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
				}
				
			}
			
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (__temp_executeDef1) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				return super.__hx_setField(field, value, handleProperties);
			}
			else
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				throw null;
			}
			
		}
		
	}
	
	
	@Override public java.lang.Object __hx_getField(java.lang.String field, boolean throwErrors, boolean isCheck, boolean handleProperties)
	{
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		{
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			boolean __temp_executeDef1 = true;
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( field != null )) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				switch (field.hashCode())
				{
					case 1095692943:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("request")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return ((haxe.lang.Function) (new haxe.lang.Closure(this, "request")) );
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 3355:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("id")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this.id;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case -1339126743:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("dbName")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return ((haxe.lang.Function) (new haxe.lang.Closure(this, "dbName")) );
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 98669:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("cnx")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this.cnx;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 94756344:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("close")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return ((haxe.lang.Function) (new haxe.lang.Closure(this, "close")) );
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 1012821065:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("_lastInsertId")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this._lastInsertId;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case -1464627182:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("escapes")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this.escapes;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 63416390:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("escapeRegex")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this.escapeRegex;
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
				}
				
			}
			
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (__temp_executeDef1) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				return super.__hx_getField(field, throwErrors, isCheck, handleProperties);
			}
			else
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				throw null;
			}
			
		}
		
	}
	
	
	@Override public double __hx_getField_f(java.lang.String field, boolean throwErrors, boolean handleProperties)
	{
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		{
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			boolean __temp_executeDef1 = true;
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( field != null )) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				switch (field.hashCode())
				{
					case 1012821065:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("_lastInsertId")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return ((double) (this._lastInsertId) );
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 3355:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("id")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return ((double) (this.id) );
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
				}
				
			}
			
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (__temp_executeDef1) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				return super.__hx_getField_f(field, throwErrors, handleProperties);
			}
			else
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				throw null;
			}
			
		}
		
	}
	
	
	@Override public java.lang.Object __hx_invokeField(java.lang.String field, java.lang.Object[] dynargs)
	{
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		{
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			boolean __temp_executeDef1 = true;
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (( field != null )) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				switch (field.hashCode())
				{
					case 1095692943:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("request")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this.request(haxe.lang.Runtime.toString(dynargs[0]));
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case 94756344:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("close")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							this.close();
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
					case -1339126743:
					{
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						if (field.equals("dbName")) 
						{
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							__temp_executeDef1 = false;
							//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
							return this.dbName();
						}
						
						//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
						break;
					}
					
					
				}
				
			}
			
			//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
			if (__temp_executeDef1) 
			{
				//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
				return super.__hx_invokeField(field, dynargs);
			}
			
		}
		
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		return null;
	}
	
	
	@Override public void __hx_getFields(haxe.root.Array<java.lang.String> baseArr)
	{
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		baseArr.push("escapes");
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		baseArr.push("escapeRegex");
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		baseArr.push("_lastInsertId");
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		baseArr.push("cnx");
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		baseArr.push("id");
		//line 37 "/usr/share/haxe/std/java/db/Jdbc.hx"
		super.__hx_getFields(baseArr);
	}
	
	
}


