mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
Refactor: Clean up Int_ classes
This commit is contained in:
@@ -95,7 +95,7 @@ public class Db_conn {
|
||||
public Db_stmt Stmt_select_order(String tbl, String[] flds, String[] where, String... orderbys) {return engine.Stmt_by_qry(Db_qry__select_in_tbl.new_(tbl, where, flds, orderbys));}
|
||||
public Db_stmt Stmt_new(Db_qry qry) {return engine.Stmt_by_qry(qry);}
|
||||
public Db_stmt Stmt_sql(String sql) {return engine.Stmt_by_qry(Db_qry_sql.sql_(sql));}
|
||||
public int Exec_qry(Db_qry qry) {return Int_.cast(engine.Exec_as_obj(qry));}
|
||||
public int Exec_qry(Db_qry qry) {return Int_.Cast(engine.Exec_as_obj(qry));}
|
||||
public int Exec_sql_concat(String... ary) {return this.Exec_qry(Db_qry_sql.dml_(String_.Concat_lines_nl_skip_last(ary)));}
|
||||
public int Exec_sql_concat_w_msg(String msg, String... ary) {Gfo_usr_dlg_.Instance.Plog_many("", "", msg); return Exec_sql_concat(ary);}
|
||||
public int Exec_sql(String sql) {return this.Exec_qry(Db_qry_sql.dml_(sql));}
|
||||
@@ -115,13 +115,13 @@ public class Db_conn {
|
||||
}
|
||||
public int Exec_select_max_as_int (String tbl_name, String fld_name, int or) {
|
||||
Object rv = Exec_select_as_obj(String_.Format("SELECT Max({0}) FROM {1}", fld_name, tbl_name));
|
||||
return rv == null ? or : Int_.cast(rv);
|
||||
return rv == null ? or : Int_.Cast(rv);
|
||||
}
|
||||
public int Exec_select_count_as_int(String tbl_name, int or) {
|
||||
Object rv = Exec_select_as_obj(String_.Format("SELECT Count(*) FROM {0}", tbl_name));
|
||||
return rv == null ? or : Int_.cast(rv);
|
||||
return rv == null ? or : Int_.Cast(rv);
|
||||
}
|
||||
public int Exec_select_as_int (String sql, int or) {Object rv = Exec_select_as_obj(sql); return rv == null ? or : Int_.cast(rv);}
|
||||
public int Exec_select_as_int (String sql, int or) {Object rv = Exec_select_as_obj(sql); return rv == null ? or : Int_.Cast(rv);}
|
||||
public double Exec_select_as_double (String sql, double or) {Object rv = Exec_select_as_obj(sql); return rv == null ? or : Double_.cast(rv);}
|
||||
private Object Exec_select_as_obj(String sql) {
|
||||
Db_rdr rdr = Exec_rdr(sql);
|
||||
|
||||
@@ -34,8 +34,8 @@ public class Db_conn_utl {
|
||||
Object val = row[j];
|
||||
switch (fld.Type().Tid_ansi()) {
|
||||
case Dbmeta_fld_tid.Tid__bool: stmt.Val_bool_as_byte (fld_name, Bool_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__byte: stmt.Val_byte (fld_name, Byte_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: stmt.Val_int (fld_name, Int_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__byte: stmt.Val_byte (fld_name, Byte_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: stmt.Val_int (fld_name, Int_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__long: stmt.Val_long (fld_name, Long_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__float: stmt.Val_float (fld_name, Float_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__double: stmt.Val_double (fld_name, Double_.cast(val)); break;
|
||||
|
||||
@@ -29,12 +29,12 @@ public class Db_rdr__basic implements Db_rdr {
|
||||
@gplx.Virtual public void Save_bry_in_parts(Io_url url, String tbl, String fld, String crt_key, Object crt_val) {throw Err_.new_unimplemented();}
|
||||
@gplx.Virtual public String Read_str(String k) {try {return (String)rdr.getObject(k);} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", String_.Cls_val_name);}}
|
||||
@gplx.Virtual public DateAdp Read_date_by_str(String k) {return DateAdp_.parse_iso8561(Read_str(k));}
|
||||
@gplx.Virtual public int Read_int(String k) {try {return Int_.cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Int_.Cls_val_name);}}
|
||||
@gplx.Virtual public int Read_int(String k) {try {return Int_.Cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Int_.Cls_val_name);}}
|
||||
@gplx.Virtual public long Read_long(String k) {try {return Long_.cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Long_.Cls_val_name);}}
|
||||
@gplx.Virtual public float Read_float(String k) {try {return Float_.cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Float_.Cls_val_name);}}
|
||||
@gplx.Virtual public double Read_double(String k) {try {return Double_.cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Double_.Cls_val_name);}}
|
||||
@gplx.Virtual public byte Read_byte(String k) {try {return Byte_.cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Byte_.Cls_val_name);}}
|
||||
@gplx.Virtual public boolean Read_bool_by_byte(String k) {try {return Byte_.cast(rdr.getObject(k)) == 1;} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Bool_.Cls_val_name);}}
|
||||
@gplx.Virtual public byte Read_byte(String k) {try {return Byte_.Cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Byte_.Cls_val_name);}}
|
||||
@gplx.Virtual public boolean Read_bool_by_byte(String k) {try {return Byte_.Cast(rdr.getObject(k)) == 1;} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Bool_.Cls_val_name);}}
|
||||
@gplx.Virtual public int Fld_len() {try {return rdr.getMetaData().getColumnCount();} catch (Exception e) {throw Err_.new_exc(e, "db", "field count failed", "sql", sql);}}
|
||||
@gplx.Virtual public Object Read_obj(String k) {try {return rdr.getObject(k);} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "key", k, "type", Object_.Cls_val_name);}}
|
||||
@gplx.Virtual public Object Read_at(int i) {try {return rdr.getObject(i + 1);} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "idx", i, "type", Object_.Cls_val_name);}}
|
||||
|
||||
@@ -61,8 +61,8 @@ public class Db_stmt_ {
|
||||
int tid = Type_ids_.To_id_by_obj(val);
|
||||
switch (tid) {
|
||||
case Type_ids_.Id__bool: stmt.Val_bool_as_byte (key, Bool_.Cast(val)); break;
|
||||
case Type_ids_.Id__byte: stmt.Val_byte (key, Byte_.cast(val)); break;
|
||||
case Type_ids_.Id__int: stmt.Val_int (key, Int_.cast(val)); break;
|
||||
case Type_ids_.Id__byte: stmt.Val_byte (key, Byte_.Cast(val)); break;
|
||||
case Type_ids_.Id__int: stmt.Val_int (key, Int_.Cast(val)); break;
|
||||
case Type_ids_.Id__long: stmt.Val_long (key, Long_.cast(val)); break;
|
||||
case Type_ids_.Id__float: stmt.Val_float (key, Float_.cast(val)); break;
|
||||
case Type_ids_.Id__double: stmt.Val_double (key, Double_.cast(val)); break;
|
||||
|
||||
@@ -42,7 +42,7 @@ class Gfo_srl_mgr_rdr__db {
|
||||
for (int i = 0; i < crt_len; ++i) {
|
||||
Dbmeta_dat_itm crt = crt_mgr.Get_at(i);
|
||||
switch (crt.Tid) {
|
||||
case Dbmeta_fld_tid.Tid__int: select.Crt_int(crt.Key, Int_.cast(crt.Val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: select.Crt_int(crt.Key, Int_.Cast(crt.Val)); break;
|
||||
}
|
||||
}
|
||||
Db_rdr rdr = select.Exec_select__rls_manual();
|
||||
@@ -63,7 +63,7 @@ class Gfo_srl_mgr_rdr__db {
|
||||
for (int i = 0; i < crt_len; ++i) {
|
||||
Dbmeta_dat_itm crt = crt_mgr.Get_at(i);
|
||||
switch (crt.Tid) {
|
||||
case Dbmeta_fld_tid.Tid__int: delete.Crt_int(crt.Key, Int_.cast(crt.Val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: delete.Crt_int(crt.Key, Int_.Cast(crt.Val)); break;
|
||||
}
|
||||
}
|
||||
delete.Exec_delete();
|
||||
|
||||
@@ -15,7 +15,7 @@ Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt
|
||||
*/
|
||||
package gplx.dbs.engines.mems; import gplx.*; import gplx.dbs.*; import gplx.dbs.engines.*;
|
||||
public class Mem_rdr implements Db_rdr {
|
||||
private final Mem_row[] rows; private int row_idx = -1; private final int rows_len;
|
||||
private final Mem_row[] rows; private int row_idx = -1; private final int rows_len;
|
||||
private Mem_row row;
|
||||
public Mem_rdr(String[] cols, Mem_row[] rows) {
|
||||
this.rows = rows; this.rows_len = rows.length;
|
||||
@@ -31,12 +31,12 @@ public class Mem_rdr implements Db_rdr {
|
||||
public byte[] Read_bry_by_str(String k) {return Bry_.new_u8_safe((String)row.Get_by(k));} // NOTE: null b/c db can have NULL
|
||||
@gplx.Virtual public void Save_bry_in_parts(Io_url url, String tbl, String fld, String crt_key, Object crt_val) {throw Err_.new_unimplemented();}
|
||||
public DateAdp Read_date_by_str(String k) {return DateAdp_.parse_iso8561((String)row.Get_by(k));}
|
||||
public byte Read_byte(String k) {return Byte_.cast(row.Get_by(k));}
|
||||
public int Read_int(String k) {return Int_.cast(row.Get_by(k));}
|
||||
public byte Read_byte(String k) {return Byte_.Cast(row.Get_by(k));}
|
||||
public int Read_int(String k) {return Int_.Cast(row.Get_by(k));}
|
||||
public long Read_long(String k) {return Long_.cast(row.Get_by(k));}
|
||||
public float Read_float(String k) {return Float_.cast(row.Get_by(k));}
|
||||
public double Read_double(String k) {return Double_.cast(row.Get_by(k));}
|
||||
public boolean Read_bool_by_byte(String k) {return Byte_.cast(row.Get_by(k)) == 1;}
|
||||
public boolean Read_bool_by_byte(String k) {return Byte_.Cast(row.Get_by(k)) == 1;}
|
||||
public int Fld_len() {return row.Len();}
|
||||
public Object Read_obj(String k) {return row.Get_by(k);}
|
||||
public Object Read_at(int i) {return row.Get_at(i);}
|
||||
|
||||
@@ -83,7 +83,7 @@ public class Sqlite_engine extends Db_engine_sql_base {
|
||||
}
|
||||
public static final Sqlite_engine Instance = new Sqlite_engine();
|
||||
}
|
||||
class Db_rdr__sqlite extends Db_rdr__basic { @Override public byte Read_byte(String k) {try {return (byte)Int_.cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "k", k, "type", Byte_.Cls_val_name);}}
|
||||
class Db_rdr__sqlite extends Db_rdr__basic { @Override public byte Read_byte(String k) {try {return (byte)Int_.Cast(rdr.getObject(k));} catch (Exception e) {throw Err_.new_exc(e, "db", "read failed", "k", k, "type", Byte_.Cls_val_name);}}
|
||||
@Override public boolean Read_bool_by_byte(String k) {
|
||||
try {
|
||||
int val = rdr.getInt(k);
|
||||
@@ -135,12 +135,12 @@ class Sqlite_rdr extends Db_data_rdr { @Override public float ReadFloat(String
|
||||
@Override public boolean ReadBool(String key) {return ReadBoolOr(key, false);}
|
||||
@Override public boolean ReadBoolOr(String key, boolean or) {
|
||||
Object val = Read(key);
|
||||
return val == null ? or : Int_.cast(val) == 1;
|
||||
return val == null ? or : Int_.Cast(val) == 1;
|
||||
}
|
||||
@Override public byte ReadByte(String key) {return ReadByteOr(key, Byte_.Zero);}
|
||||
@Override public byte ReadByteOr(String key, byte or) {
|
||||
Object val = Read(key);
|
||||
return val == null ? or : (byte)Int_.cast(val);
|
||||
return val == null ? or : (byte)Int_.Cast(val);
|
||||
}
|
||||
@Override public long ReadLong(String key) {return ReadLongOr(key, Long_.Min_value);}
|
||||
@Override public long ReadLongOr(String key, long or) {
|
||||
|
||||
@@ -96,7 +96,7 @@ class Dbmeta_fld_wkr__default extends Dbmeta_fld_wkr__base {
|
||||
case Dbmeta_fld_tid.Tid__bool:
|
||||
case Dbmeta_fld_tid.Tid__byte:
|
||||
case Dbmeta_fld_tid.Tid__short:
|
||||
case Dbmeta_fld_tid.Tid__int: default_val = Int_.parse(Read_str_to_end_of_num(rdr)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: default_val = Int_.Parse(Read_str_to_end_of_num(rdr)); break;
|
||||
case Dbmeta_fld_tid.Tid__long: default_val = Long_.parse(Read_str_to_end_of_num(rdr)); break;
|
||||
case Dbmeta_fld_tid.Tid__float: default_val = Float_.parse(Read_str_to_end_of_num(rdr)); break;
|
||||
case Dbmeta_fld_tid.Tid__double: default_val = Double_.parse(Read_str_to_end_of_num(rdr)); break;
|
||||
|
||||
@@ -56,7 +56,7 @@ public class Db_qry_sql implements Db_qry {
|
||||
if (val == null) {bfr.Add(Bry_null); return;}
|
||||
Class<?> val_type = val.getClass();
|
||||
if (Type_.Eq(val_type, Int_.Cls_ref_type))
|
||||
bfr.Add_int_variable(Int_.cast(val));
|
||||
bfr.Add_int_variable(Int_.Cast(val));
|
||||
else if (Type_.Eq(val_type, Bool_.Cls_ref_type))
|
||||
bfr.Add_int_fixed(1, Bool_.To_int(Bool_.Cast(val))); // NOTE: save boolean to 0 or 1, b/c (a) db may not support bit datatype (sqllite) and (b) avoid i18n issues with "true"/"false"
|
||||
else if (Type_.Eq(val_type, Double_.Cls_ref_type))
|
||||
@@ -66,7 +66,7 @@ public class Db_qry_sql implements Db_qry {
|
||||
else if (Type_.Eq(val_type, Float_.Cls_ref_type))
|
||||
bfr.Add_float(Float_.cast(val));
|
||||
else if (Type_.Eq(val_type, Byte_.Cls_ref_type))
|
||||
bfr.Add_byte(Byte_.cast(val));
|
||||
bfr.Add_byte(Byte_.Cast(val));
|
||||
else if (Type_.Eq(val_type, DateAdp_.Cls_ref_type))
|
||||
bfr.Add_byte_apos().Add_str_a7(DateAdp_.cast(val).XtoStr_gplx_long()).Add_byte_apos();
|
||||
else if (Type_.Eq(val_type, Decimal_adp_.Cls_ref_type))
|
||||
|
||||
@@ -26,18 +26,18 @@ class Sql_select_fld_count extends Sql_select_fld_func { public Sql_select_fld
|
||||
@Override public void GroupBy_type(ClassXtn type) {this.Val_type_(IntClassXtn.Instance);}
|
||||
@Override public Object GroupBy_eval(Object groupByVal, Object curVal, ClassXtn type) {
|
||||
if (groupByVal == null) return 1;
|
||||
return Int_.cast(groupByVal) + 1;
|
||||
return Int_.Cast(groupByVal) + 1;
|
||||
}
|
||||
}
|
||||
class Sql_select_fld_sum extends Sql_select_fld_func { public Sql_select_fld_sum(String tbl, String fld, String alias) {super(tbl, fld, alias);}
|
||||
@Override public String XtoSql_functionName() {return "SUM";}
|
||||
@Override public void GroupBy_type(ClassXtn type) {this.Val_type_(IntClassXtn.Instance);}
|
||||
@Override public Object GroupBy_eval(Object groupByVal, Object curVal, ClassXtn type) {
|
||||
if (groupByVal == null) return Int_.cast(curVal);
|
||||
return Int_.cast(groupByVal) + Int_.cast(curVal);
|
||||
if (groupByVal == null) return Int_.Cast(curVal);
|
||||
return Int_.Cast(groupByVal) + Int_.Cast(curVal);
|
||||
}
|
||||
}
|
||||
class Sql_select_fld_minMax extends Sql_select_fld_func { private final int compareType;
|
||||
class Sql_select_fld_minMax extends Sql_select_fld_func { private final int compareType;
|
||||
public Sql_select_fld_minMax(int compareType, String tbl, String fld, String alias) {super(tbl, fld, alias);
|
||||
this.compareType = compareType;
|
||||
}
|
||||
|
||||
@@ -29,9 +29,9 @@ public class Sql_val_wtr {
|
||||
int tid_type = Type_ids_.To_id_by_type(val.getClass());
|
||||
switch (tid_type) {
|
||||
case Type_ids_.Id__bool: Bld_val__bool (bfr, Bool_.Cast(val)); break;
|
||||
case Type_ids_.Id__byte: Bld_val__byte (bfr, Byte_.cast(val)); break;
|
||||
case Type_ids_.Id__byte: Bld_val__byte (bfr, Byte_.Cast(val)); break;
|
||||
case Type_ids_.Id__short: Bld_val__short (bfr, Short_.cast(val)); break;
|
||||
case Type_ids_.Id__int: Bld_val__int (bfr, Int_.cast(val)); break;
|
||||
case Type_ids_.Id__int: Bld_val__int (bfr, Int_.Cast(val)); break;
|
||||
case Type_ids_.Id__long: Bld_val__long (bfr, Long_.cast(val)); break;
|
||||
case Type_ids_.Id__float: Bld_val__float (bfr, Float_.cast(val)); break;
|
||||
case Type_ids_.Id__double: Bld_val__double (bfr, Double_.cast(val)); break;
|
||||
|
||||
@@ -37,8 +37,8 @@ public class Db_stmt_arg_list {
|
||||
public static void Fill_crt(Db_stmt stmt, int tid, String key, Object val) {
|
||||
switch (tid) {
|
||||
case Dbmeta_fld_tid.Tid__bool: stmt.Crt_bool_as_byte (key, Bool_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__byte: stmt.Crt_byte (key, Byte_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: stmt.Crt_int (key, Int_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__byte: stmt.Crt_byte (key, Byte_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: stmt.Crt_int (key, Int_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__long: stmt.Crt_long (key, Long_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__float: stmt.Crt_float (key, Float_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__double: stmt.Crt_double (key, Double_.cast(val)); break;
|
||||
@@ -51,8 +51,8 @@ public class Db_stmt_arg_list {
|
||||
public static void Fill_val(Db_stmt stmt, int tid, String key, Object val) {
|
||||
switch (tid) {
|
||||
case Dbmeta_fld_tid.Tid__bool: stmt.Val_bool_as_byte (key, Bool_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__byte: stmt.Val_byte (key, Byte_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: stmt.Val_int (key, Int_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__byte: stmt.Val_byte (key, Byte_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__int: stmt.Val_int (key, Int_.Cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__long: stmt.Val_long (key, Long_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__float: stmt.Val_float (key, Float_.cast(val)); break;
|
||||
case Dbmeta_fld_tid.Tid__double: stmt.Val_double (key, Double_.cast(val)); break;
|
||||
|
||||
@@ -28,7 +28,7 @@ class Db_sys_tbl implements Rls_able {
|
||||
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds));}
|
||||
public int Assert_int_or(String key, int or) {
|
||||
String rv = Assert_str_or(key, Int_.To_str(or));
|
||||
try {return Int_.parse(rv);}
|
||||
try {return Int_.Parse(rv);}
|
||||
catch (Exception e) {Err_.Noop(e); return or;}
|
||||
}
|
||||
public String Assert_str_or(String key, String or) {
|
||||
|
||||
Reference in New Issue
Block a user