diff --git a/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_basic_tbl.java b/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_basic_tbl.java index 73cacc6fe..d3419b75c 100644 --- a/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_basic_tbl.java +++ b/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_basic_tbl.java @@ -17,51 +17,45 @@ along with this program. If not, see . */ package gplx.xowa.parsers.logs; import gplx.*; import gplx.xowa.*; import gplx.xowa.parsers.*; import gplx.dbs.*; import gplx.dbs.qrys.*; import gplx.dbs.engines.sqlite.*; -public class Xop_log_basic_tbl implements Db_tbl { +public class Xop_log_basic_tbl implements Db_tbl { + public final Dbmeta_fld_list flds = new Dbmeta_fld_list(); + public final String fld__log_id, fld__log_tid, fld__log_msg, fld__log_time, fld__page_id, fld__page_ttl, fld__args_len, fld__args_str, fld__src_len, fld__src_str; private Db_stmt stmt_insert; public Xop_log_basic_tbl(Db_conn conn){ this.conn = conn; + this.tbl_name = "log_basic_temp"; + this.fld__log_id = flds.Add_int_pkey_autonum("log_id"); + this.fld__log_tid = flds.Add_int("log_tid"); + this.fld__log_msg = flds.Add_str("log_msg", 255); + this.fld__log_time = flds.Add_int("log_time"); + this.fld__page_id = flds.Add_int("page_id"); + this.fld__page_ttl = flds.Add_str("page_ttl", 255); + this.fld__args_len = flds.Add_int("args_len"); + this.fld__args_str = flds.Add_str("args_str", 4096); + this.fld__src_len = flds.Add_int("src_len"); + this.fld__src_str = flds.Add_str("src_str", 4096); + conn.Rls_reg(this); this.Create_tbl(); } - public Db_conn Conn() {return conn;} private final Db_conn conn; - public String Tbl_name() {return TBL_NAME;} - public void Create_tbl() {Sqlite_engine_.Tbl_create(conn, TBL_NAME, Tbl_sql);} - public void Delete() {conn.Exec_qry(Db_qry_delete.new_all_(TBL_NAME));} + public Db_conn Conn() {return conn;} private final Db_conn conn; + public String Tbl_name() {return tbl_name;} private final String tbl_name; + public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds));} + public void Delete() {conn.Exec_qry(Db_qry_delete.new_all_(tbl_name));} public void Insert(int log_tid, String log_msg, int log_time, int page_id, String page_ttl, int args_len, String args_str, int src_len, String src_str) { - if (stmt_insert == null) stmt_insert = Db_stmt_.new_insert_(conn, TBL_NAME, Fld_log_tid, Fld_log_msg, Fld_log_time, Fld_page_id, Fld_page_ttl, Fld_args_len, Fld_args_str, Fld_src_len, Fld_src_str); + if (stmt_insert == null) stmt_insert = Db_stmt_.new_insert_(conn, tbl_name, fld__log_tid, fld__log_msg, fld__log_time, fld__page_id, fld__page_ttl, fld__args_len, fld__args_str, fld__src_len, fld__src_str); stmt_insert.Clear() - .Val_int(log_tid) - .Val_str(log_msg) - .Val_int(log_time) - .Val_int(page_id) - .Val_str(page_ttl) - .Val_int(args_len) - .Val_str(args_str) - .Val_int(src_len) - .Val_str(src_str) + .Val_int(fld__log_tid, log_tid) + .Val_str(fld__log_msg, log_msg) + .Val_int(fld__log_time, log_time) + .Val_int(fld__page_id, page_id) + .Val_str(fld__page_ttl, page_ttl) + .Val_int(fld__args_len, args_len) + .Val_str(fld__args_str, args_str) + .Val_int(fld__src_len, src_len) + .Val_str(fld__src_str, src_str) .Exec_insert(); } public void Rls() { - stmt_insert.Rls(); + stmt_insert = Db_stmt_.Rls(stmt_insert); } - public static final String TBL_NAME = "log_basic_temp" - , Fld_log_tid = "log_tid", Fld_log_msg = "log_msg", Fld_log_time = "log_time" - , Fld_page_id = "page_id", Fld_page_ttl = "page_ttl" - , Fld_args_len = "args_len", Fld_args_str = "args_str" - , Fld_src_len = "src_len", Fld_src_str = "src_str" - ; - private static final String Tbl_sql = String_.Concat_lines_nl - ( "CREATE TABLE IF NOT EXISTS log_basic_temp" - , "( log_id integer NOT NULL PRIMARY KEY AUTOINCREMENT" - , ", log_tid integer NOT NULL" - , ", log_msg varchar(255) NOT NULL" - , ", log_time integer NOT NULL" - , ", page_id integer NOT NULL" - , ", page_ttl varchar(255) NOT NULL" - , ", args_len integer NOT NULL" - , ", args_str varchar(4096) NOT NULL" - , ", src_len integer NOT NULL" - , ", src_str varchar(4096) NOT NULL" - , ");" - ); } diff --git a/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_mgr.java b/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_mgr.java index d725efc09..091255ac8 100644 --- a/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_mgr.java +++ b/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_mgr.java @@ -41,8 +41,10 @@ public class Xop_log_mgr implements Gfo_invk { public Xop_log_invoke_wkr Make_wkr_invoke() {return new Xop_log_invoke_wkr(this.Conn());} public Xop_log_property_wkr Make_wkr_property() {return new Xop_log_property_wkr(this.Conn());} public Xop_log_basic_wkr Make_wkr() { - if (log_tbl == null) + if (log_tbl == null) { log_tbl = new Xop_log_basic_tbl(this.Conn()); + this.Conn().Meta_tbl_assert(log_tbl); + } return new Xop_log_basic_wkr(log_tbl); } public void Commit_chk() { diff --git a/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_wkr_factory.java b/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_wkr_factory.java index 4f4b4614f..199454993 100644 --- a/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_wkr_factory.java +++ b/400_xowa/src/gplx/xowa/parsers/logs/Xop_log_wkr_factory.java @@ -23,7 +23,10 @@ public class Xop_log_wkr_factory { public Xop_log_invoke_wkr Make__invoke() {return new Xop_log_invoke_wkr(conn);} public Xop_log_property_wkr Make__property() {return new Xop_log_property_wkr(conn);} public Xop_log_basic_wkr Make__generic() { - if (log_tbl == null) log_tbl = new Xop_log_basic_tbl(conn); + if (log_tbl == null) { + log_tbl = new Xop_log_basic_tbl(conn); + conn.Meta_tbl_assert(log_tbl); + } return new Xop_log_basic_wkr(log_tbl); } } diff --git a/400_xowa/src/gplx/xowa/xtns/math/bldrs/Xomath_check_mgr.java b/400_xowa/src/gplx/xowa/xtns/math/bldrs/Xomath_check_mgr.java index a86065180..790f43e7b 100644 --- a/400_xowa/src/gplx/xowa/xtns/math/bldrs/Xomath_check_mgr.java +++ b/400_xowa/src/gplx/xowa/xtns/math/bldrs/Xomath_check_mgr.java @@ -25,14 +25,15 @@ class Xomath_check_mgr { // get db, conn, rdr Xob_db_file log_db = Xob_db_file.New__file_make(wiki.Fsys_mgr().Root_dir()); Db_conn log_conn = log_db.Conn(); - Db_rdr rdr = log_conn.Stmt_sql("SELECT * FROM " + Xop_log_basic_tbl.TBL_NAME).Exec_select__rls_auto(); + Xop_log_basic_tbl log_tbl = new Xop_log_basic_tbl(log_conn); + Db_rdr rdr = log_conn.Stmt_select_all(log_tbl.Tbl_name(), log_tbl.flds).Exec_select__rls_auto(); // loop try { while (rdr.Move_next()) { // get page_id, src - int page_id = rdr.Read_int(Xop_log_basic_tbl.Fld_page_id); - byte[] src = rdr.Read_bry_by_str(Xop_log_basic_tbl.Fld_src_str); + int page_id = rdr.Read_int(log_tbl.fld__page_id); + byte[] src = rdr.Read_bry_by_str(log_tbl.fld__src_str); count_total++; src = Assert_flanking_math_ndes(page_id, src);