mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v2.10.3.1
This commit is contained in:
@@ -65,16 +65,16 @@ public abstract class Db_engine_sql_base implements Db_engine {
|
||||
}
|
||||
}
|
||||
public void Ddl_append_fld(String tbl, Db_meta_fld fld) {
|
||||
Gfo_usr_dlg_.I.Plog_many("", "", "adding column to table: db=~{0} tbl=~{1} fld=~{2}", conn_info.Database(), tbl, fld.Name());
|
||||
Gfo_usr_dlg_.Instance.Plog_many("", "", "adding column to table: db=~{0} tbl=~{1} fld=~{2}", conn_info.Database(), tbl, fld.Name());
|
||||
try {
|
||||
Exec_as_int(Db_sqlbldr__sqlite.I.Bld_alter_tbl_add(tbl, fld));
|
||||
Gfo_usr_dlg_.I.Plog_many("", "", "column added to table: db=~{0} tbl=~{1} fld=~{2}", conn_info.Database(), tbl, fld.Name());
|
||||
Exec_as_int(Db_sqlbldr__sqlite.Instance.Bld_alter_tbl_add(tbl, fld));
|
||||
Gfo_usr_dlg_.Instance.Plog_many("", "", "column added to table: db=~{0} tbl=~{1} fld=~{2}", conn_info.Database(), tbl, fld.Name());
|
||||
}
|
||||
catch (Exception e) { // catch error if column already added to table
|
||||
Gfo_usr_dlg_.I.Warn_many("", "", "column not added to table: db=~{0} tbl=~{1} fld=~{2} err=~{3}", conn_info.Database(), tbl, fld.Name(), Err_.Message_gplx_full(e));
|
||||
Gfo_usr_dlg_.Instance.Warn_many("", "", "column not added to table: db=~{0} tbl=~{1} fld=~{2} err=~{3}", conn_info.Database(), tbl, fld.Name(), Err_.Message_gplx_full(e));
|
||||
}
|
||||
}
|
||||
public void Ddl_delete_tbl(String tbl) {Exec_as_int(Db_sqlbldr__sqlite.I.Bld_drop_tbl(tbl));}
|
||||
public void Ddl_delete_tbl(String tbl) {Exec_as_int(Db_sqlbldr__sqlite.Instance.Bld_drop_tbl(tbl));}
|
||||
@gplx.Virtual public void Env_db_attach(String alias, Io_url db_url) {}
|
||||
@gplx.Virtual public void Env_db_detach(String alias) {}
|
||||
@gplx.Virtual public boolean Meta_tbl_exists(String tbl) {return false;}
|
||||
|
||||
@@ -29,5 +29,5 @@ public class Db_conn_info__mem extends Db_conn_info__base {
|
||||
, "database", database
|
||||
));
|
||||
}
|
||||
public static final Db_conn_info__mem I = new Db_conn_info__mem(); Db_conn_info__mem() {}
|
||||
public static final Db_conn_info__mem Instance = new Db_conn_info__mem(); Db_conn_info__mem() {}
|
||||
}
|
||||
|
||||
@@ -52,5 +52,5 @@ public class Db_engine__mem implements Db_engine {
|
||||
return mem_tbl.Meta().Flds_has(fld);
|
||||
}
|
||||
// public boolean Meta_fld_exists(String name) {return tbl_hash.Has(name);}
|
||||
public static final Db_engine__mem _ = new Db_engine__mem(); Db_engine__mem() {}
|
||||
public static final Db_engine__mem Instance = new Db_engine__mem(); Db_engine__mem() {}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
package gplx.dbs.engines.mems; import gplx.*; import gplx.dbs.*; import gplx.dbs.engines.*;
|
||||
public class Db_stmt__mem implements Db_stmt {
|
||||
private static final String Key_na = ""; // key is not_available; only called by procs with signature of Val(<type> v);
|
||||
private final Ordered_hash val_list = Ordered_hash_.new_();
|
||||
private final Ordered_hash val_list = Ordered_hash_.New();
|
||||
public Db_stmt__mem(Db_engine__mem engine, Db_qry qry) {Ctor_stmt(engine, qry);} private Db_engine__mem engine;
|
||||
public void Ctor_stmt(Db_engine engine, Db_qry qry) {this.engine = (Db_engine__mem)engine; this.qry = qry;}
|
||||
public Hash_adp Crts() {return crt_hash;} private final Hash_adp crt_hash = Hash_adp_.new_();
|
||||
@@ -45,6 +45,7 @@ public class Db_stmt__mem implements Db_stmt {
|
||||
return this;
|
||||
}
|
||||
public Db_stmt Crt_int(String k, int v) {return Add_int(Bool_.Y, k, v);}
|
||||
public Db_stmt Val_int_by_bool(String k, boolean v) {return Add_int(Bool_.N, k, v ? 1 : 0);}
|
||||
public Db_stmt Val_int(String k, int v) {return Add_int(Bool_.N, k, v);}
|
||||
public Db_stmt Val_int(int v) {return Add_int(Bool_.N, Key_na, v);}
|
||||
private Db_stmt Add_int(boolean where, String k, int v) {
|
||||
@@ -101,7 +102,7 @@ public class Db_stmt__mem implements Db_stmt {
|
||||
try {
|
||||
Bry_bfr bfr = Bry_bfr.new_();
|
||||
gplx.ios.Io_stream_rdr_.Load_all_to_bfr(bfr, v);
|
||||
Add("", Bool_.N, bfr.Xto_str_and_clear());
|
||||
Add("", Bool_.N, bfr.To_str_and_clear());
|
||||
} catch (Exception e) {throw Err_.new_exc(e, "db", "failed to add value", "type", "rdr", "val", v);}
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.dbs.engines.mems; import gplx.*; import gplx.dbs.*; import gplx.dbs.engines.*;
|
||||
public class Mem_row implements GfoInvkAble {
|
||||
private final Ordered_hash hash = Ordered_hash_.new_();
|
||||
private final Ordered_hash hash = Ordered_hash_.New();
|
||||
public Object Get_by(String key) {return hash.Get_by(key);}
|
||||
public Object Get_at(int i) {return hash.Get_at(i);}
|
||||
public void Set_by(String key, Object val) {hash.Add_if_dupe_use_nth(key, val);}
|
||||
|
||||
@@ -37,5 +37,5 @@ public class Mysql_conn_info extends Db_conn_info__base {
|
||||
rv.pwd = m.ReadStr("pwd");
|
||||
return rv;
|
||||
}
|
||||
public static final Mysql_conn_info _ = new Mysql_conn_info(); Mysql_conn_info() {}
|
||||
public static final Mysql_conn_info Instance = new Mysql_conn_info(); Mysql_conn_info() {}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ public class Mysql_engine extends Db_engine_sql_base {
|
||||
Mysql_conn_info conn_info_as_mysql = (Mysql_conn_info)conn_info;
|
||||
return Conn_make_by_url("jdbc:mysql://localhost/" + conn_info_as_mysql.Database() + "?characterEncoding=UTF8", conn_info_as_mysql.Uid(), conn_info_as_mysql.Pwd());
|
||||
}
|
||||
public static final Mysql_engine _ = new Mysql_engine(); Mysql_engine() {}
|
||||
public static final Mysql_engine Instance = new Mysql_engine(); Mysql_engine() {}
|
||||
}
|
||||
class Mysql_rdr extends Db_data_rdr {
|
||||
//PATCH:MYSQL:byte actually returned as int by Jdbc ResultSet (or MYSQL impmentation); convert to byte
|
||||
|
||||
@@ -19,5 +19,5 @@ package gplx.dbs.engines.nulls; import gplx.*; import gplx.dbs.*; import gplx.db
|
||||
public class Noop_conn_info extends Db_conn_info__base {
|
||||
@Override public String Tid() {return Tid_const;} public static final String Tid_const = "null_db";
|
||||
@Override public Db_conn_info New_self(String raw, GfoMsg m) {return this;}
|
||||
public static final Noop_conn_info I = new Noop_conn_info(); Noop_conn_info() {this.Ctor("", "", "gplx_key=null_db", "");}
|
||||
public static final Noop_conn_info Instance = new Noop_conn_info(); Noop_conn_info() {this.Ctor("", "", "gplx_key=null_db", "");}
|
||||
}
|
||||
|
||||
@@ -40,5 +40,5 @@ public class Noop_engine implements Db_engine {
|
||||
public void Env_db_detach(String alias) {}
|
||||
public boolean Meta_tbl_exists(String tbl) {return false;}
|
||||
public boolean Meta_fld_exists(String tbl, String fld) {return false;}
|
||||
public static final Noop_engine _ = new Noop_engine(); Noop_engine() {}
|
||||
public static final Noop_engine Instance = new Noop_engine(); Noop_engine() {}
|
||||
}
|
||||
|
||||
@@ -38,5 +38,5 @@ public class Postgres_conn_info extends Db_conn_info__base {
|
||||
rv.pwd = m.ReadStr("password");
|
||||
return rv;
|
||||
}
|
||||
public static final Postgres_conn_info _ = new Postgres_conn_info(); Postgres_conn_info() {}
|
||||
public static final Postgres_conn_info Instance = new Postgres_conn_info(); Postgres_conn_info() {}
|
||||
}
|
||||
|
||||
@@ -31,5 +31,5 @@ public class Postgres_engine extends Db_engine_sql_base {
|
||||
Postgres_conn_info conn_info_as_postgres = (Postgres_conn_info)conn_info;
|
||||
return Conn_make_by_url("jdbc:" + conn_info_as_postgres.Tid() + "://localhost/" + conn_info_as_postgres.Database(), conn_info_as_postgres.Uid(), conn_info_as_postgres.Pwd());
|
||||
}
|
||||
public static final Postgres_engine _ = new Postgres_engine(); Postgres_engine() {}
|
||||
public static final Postgres_engine Instance = new Postgres_engine(); Postgres_engine() {}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ public class Sqlite_conn_info extends Db_conn_info__base {
|
||||
));
|
||||
}
|
||||
public static Db_conn_info make_(Io_url url) {
|
||||
Io_mgr.I.CreateDirIfAbsent(url.OwnerDir());
|
||||
Io_mgr.Instance.CreateDirIfAbsent(url.OwnerDir());
|
||||
return Db_conn_info_.parse(Bld_raw
|
||||
( "gplx_key" , Tid_const
|
||||
, "data source" , url.Xto_api()
|
||||
@@ -43,5 +43,5 @@ public class Sqlite_conn_info extends Db_conn_info__base {
|
||||
|
||||
));
|
||||
}
|
||||
public static final Sqlite_conn_info _ = new Sqlite_conn_info(); Sqlite_conn_info() {}
|
||||
public static final Sqlite_conn_info Instance = new Sqlite_conn_info(); Sqlite_conn_info() {}
|
||||
}
|
||||
@@ -54,7 +54,7 @@ public class Sqlite_engine extends Db_engine_sql_base {
|
||||
Connection rv = Conn_make_by_url("jdbc:sqlite://" + String_.Replace(conn_info_as_sqlite.Url().Raw(), "\\", "/"), "", "");
|
||||
return rv;
|
||||
}
|
||||
public static final Sqlite_engine _ = new Sqlite_engine();
|
||||
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);}}
|
||||
@Override public boolean Read_bool_by_byte(String k) {
|
||||
|
||||
@@ -51,7 +51,7 @@ public class Sqlite_engine_ {
|
||||
p.Exec_qry(qry);
|
||||
}
|
||||
public static void Pragma_page_size(Db_conn p, int val) {
|
||||
Db_qry qry = Db_qry_sql.ddl_("PRAGMA page_size = " + Int_.Xto_str(val) + ";");
|
||||
Db_qry qry = Db_qry_sql.ddl_("PRAGMA page_size = " + Int_.To_str(val) + ";");
|
||||
p.Exec_qry(qry);
|
||||
}
|
||||
public static void Idx_create(Gfo_usr_dlg usr_dlg, Db_conn conn, String tbl, Db_meta_idx[] idx_ary) {
|
||||
@@ -75,10 +75,10 @@ public class Sqlite_engine_ {
|
||||
}
|
||||
}
|
||||
public static Db_conn Conn_load_or_make_(Io_url url, Bool_obj_ref created) {
|
||||
boolean exists = Io_mgr.I.ExistsFil(url);
|
||||
boolean exists = Io_mgr.Instance.ExistsFil(url);
|
||||
created.Val_(!exists);
|
||||
Db_conn_info connect = exists ? Sqlite_conn_info.load_(url) : Sqlite_conn_info.make_(url);
|
||||
Db_conn p = Db_conn_pool.I.Get_or_new(connect);
|
||||
Db_conn p = Db_conn_pool.Instance.Get_or_new(connect);
|
||||
if (!exists)
|
||||
Pragma_page_size(p, 4096);
|
||||
return p;
|
||||
|
||||
@@ -34,7 +34,7 @@ public class Sqlite_schema_mgr {
|
||||
}
|
||||
private void Init(Db_engine engine) {
|
||||
init = false;
|
||||
Gfo_usr_dlg_.I.Log_many("", "", "db.schema.load.bgn: conn=~{0}", engine.Conn_info().Xto_api());
|
||||
Gfo_usr_dlg_.Instance.Log_many("", "", "db.schema.load.bgn: conn=~{0}", engine.Conn_info().Xto_api());
|
||||
Meta_parser__tbl tbl_parser = new Meta_parser__tbl();
|
||||
Db_qry__select_in_tbl qry = Db_qry__select_in_tbl.new_("sqlite_master", String_.Ary_empty, String_.Ary("type", "name", "sql"), Db_qry__select_in_tbl.Order_by_null);
|
||||
Db_rdr rdr = engine.New_stmt_prep(qry).Exec_select__rls_auto();
|
||||
@@ -56,11 +56,11 @@ public class Sqlite_schema_mgr {
|
||||
idx_mgr.Add(idx_itm);
|
||||
break;
|
||||
default:
|
||||
Gfo_usr_dlg_.I.Log_many("", "", "db.schema.unknown type: conn=~{0} type=~{1} name=~{2} sql=~{3}", engine.Conn_info().Xto_api(), type_str, name, sql);
|
||||
Gfo_usr_dlg_.Instance.Log_many("", "", "db.schema.unknown type: conn=~{0} type=~{1} name=~{2} sql=~{3}", engine.Conn_info().Xto_api(), type_str, name, sql);
|
||||
break;
|
||||
}
|
||||
}
|
||||
} finally {rdr.Rls();}
|
||||
Gfo_usr_dlg_.I.Log_many("", "", "db.schema.load.end");
|
||||
Gfo_usr_dlg_.Instance.Log_many("", "", "db.schema.load.end");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ public class Sqlite_txn_mgr {
|
||||
txn_list.Add(name);
|
||||
}
|
||||
public String Txn_end() {
|
||||
if (txn_list.Count() == 0) {Gfo_usr_dlg_.I.Warn_many("", "", "no txns in stack;"); return "";}
|
||||
if (txn_list.Count() == 0) {Gfo_usr_dlg_.Instance.Warn_many("", "", "no txns in stack;"); return "";}
|
||||
String txn_last = (String)List_adp_.Pop_last(txn_list);
|
||||
if (txn_list.Count() == 0) {// no txns left; commit it
|
||||
engine.Exec_as_obj(Db_qry_sql.xtn_("COMMIT TRANSACTION;"));
|
||||
@@ -54,7 +54,7 @@ public class Sqlite_txn_mgr {
|
||||
return txn_last;
|
||||
}
|
||||
public void Txn_cxl() {
|
||||
if (txn_list.Count() == 0) {Gfo_usr_dlg_.I.Warn_many("", "", "no txns in stack;"); return;}
|
||||
if (txn_list.Count() == 0) {Gfo_usr_dlg_.Instance.Warn_many("", "", "no txns in stack;"); return;}
|
||||
String txn_last = (String)List_adp_.Pop_last(txn_list);
|
||||
if (txn_list.Count() == 0) {// no txns left; rollback
|
||||
engine.Exec_as_obj(Db_qry_sql.xtn_("ROLLBACK TRANSACTION;"));
|
||||
@@ -64,7 +64,7 @@ public class Sqlite_txn_mgr {
|
||||
engine.Exec_as_obj(Db_qry_sql.xtn_(String_.Format("ROLBACK TRANSACTION TO SAVEPOINT {0};", txn_last)));
|
||||
}
|
||||
public void Txn_sav() {
|
||||
if (txn_list.Count() == 0) {Gfo_usr_dlg_.I.Warn_many("", "", "no txns in stack;"); return;}
|
||||
if (txn_list.Count() == 0) {Gfo_usr_dlg_.Instance.Warn_many("", "", "no txns in stack;"); return;}
|
||||
String name = (String)txn_list.Get_at(txn_list.Count() - 1);
|
||||
this.Txn_end(); this.Txn_bgn(name);
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ package gplx.dbs.engines.tdbs; import gplx.*; import gplx.dbs.*; import gplx.dbs
|
||||
class TdbDbLoadMgr {
|
||||
public TdbDatabase LoadTbls(Io_url dbInfo) {
|
||||
TdbDatabase db = TdbDatabase.new_(dbInfo);
|
||||
if (!Io_mgr.I.ExistsFil(dbInfo)) {
|
||||
if (!Io_mgr.Instance.ExistsFil(dbInfo)) {
|
||||
db.IsNew_set(true);
|
||||
return db;
|
||||
}
|
||||
@@ -42,7 +42,7 @@ class TdbDbLoadMgr {
|
||||
if (db.Files().Count() == 0) throw Err_.new_wo_type("fatal error: db has no files", "connectInfo", db.DbUrl());
|
||||
}
|
||||
DataRdr MakeDataRdr(Io_url fil) {
|
||||
String text = Io_mgr.I.LoadFilStr(fil);
|
||||
String text = Io_mgr.Instance.LoadFilStr(fil);
|
||||
return TdbStores.rdr_(text);
|
||||
}
|
||||
public static TdbDbLoadMgr new_() {return new TdbDbLoadMgr();} TdbDbLoadMgr() {}
|
||||
|
||||
@@ -48,7 +48,7 @@ class TdbDbSaveMgr {
|
||||
TdbTable tbl = (TdbTable)tblObj;
|
||||
tbl.DataObj_Wtr(wtr);
|
||||
}
|
||||
Io_mgr.I.SaveFilStr(fil.Path(), wtr.To_str());
|
||||
Io_mgr.Instance.SaveFilStr(fil.Path(), wtr.To_str());
|
||||
}
|
||||
List_adp FetchTablesWithSamePath(TdbDatabase db, Io_url filPath) {
|
||||
List_adp list = List_adp_.new_();
|
||||
|
||||
@@ -67,8 +67,8 @@ public class TdbDbSaveMgr_tst {
|
||||
, "================================, ,\" \",//"
|
||||
);
|
||||
TdbTable tbl = db.MakeTbl("tbl", TdbFile.MainFileId);
|
||||
tbl.Flds().Add("id", IntClassXtn._);
|
||||
tbl.Flds().Add("name", StringClassXtn._);
|
||||
tbl.Flds().Add("id", IntClassXtn.Instance);
|
||||
tbl.Flds().Add("name", StringClassXtn.Instance);
|
||||
|
||||
tbl.DataObj_Wtr(wtr);
|
||||
String actl = wtr.To_str();
|
||||
|
||||
@@ -41,7 +41,7 @@ public class TdbEngine implements Db_engine {
|
||||
Db_qryWkr wkr = (Db_qryWkr)wkrs.Get_by_or_fail(qry.Tid());
|
||||
return wkr.Exec(this, qry);
|
||||
}
|
||||
public Db_stmt New_stmt_prep(Db_qry qry) {return new Db_stmt_sql().Parse(qry, Sql_qry_wtr_.I.Xto_str(qry, true));}
|
||||
public Db_stmt New_stmt_prep(Db_qry qry) {return new Db_stmt_sql().Parse(qry, Sql_qry_wtr_.Instance.Xto_str(qry, true));}
|
||||
public Object New_stmt_prep_as_obj(String sql) {throw Err_.new_unimplemented();}
|
||||
public Db_rdr New_rdr__rls_manual(Object rdr_obj, String sql) {return Db_rdr_.Empty;}
|
||||
public Db_rdr New_rdr__rls_auto(Db_stmt stmt, Object rdr_obj, String sql) {return Db_rdr_.Empty;}
|
||||
@@ -67,10 +67,10 @@ public class TdbEngine implements Db_engine {
|
||||
public boolean Meta_fld_exists(String tbl, String fld) {return false;}
|
||||
|
||||
Hash_adp wkrs = Hash_adp_.new_(); TdbDbLoadMgr loadMgr = TdbDbLoadMgr.new_(); TdbDbSaveMgr saveMgr = TdbDbSaveMgr.new_();
|
||||
public static final TdbEngine _ = new TdbEngine();
|
||||
public static final TdbEngine Instance = new TdbEngine();
|
||||
void CtorTdbEngine(Db_conn_info conn_info) {
|
||||
this.conn_info = conn_info;
|
||||
wkrs.Add(Db_qry_.Tid_select, TdbSelectWkr._);
|
||||
wkrs.Add(Db_qry_.Tid_select, TdbSelectWkr.Instance);
|
||||
wkrs.Add(Db_qry_.Tid_insert, TdbInsertWkr.new_());
|
||||
wkrs.Add(Db_qry_.Tid_update, TdbUpdateWkr.new_());
|
||||
wkrs.Add(Db_qry_.Tid_delete, TdbDeleteWkr.new_());
|
||||
|
||||
@@ -59,5 +59,5 @@ public class TdbFileList extends Ordered_hash_base {
|
||||
DsvStoreLayout layout;
|
||||
public static final String StoreTblName = "_files";
|
||||
static final String Fld_id = "id"; static final String Fld_path = "url";
|
||||
static final GfoFldList FldList = GfoFldList_.new_().Add(Fld_id, IntClassXtn._).Add(Fld_path, StringClassXtn._).Add("format", StringClassXtn._);
|
||||
static final GfoFldList FldList = GfoFldList_.new_().Add(Fld_id, IntClassXtn.Instance).Add(Fld_path, StringClassXtn.Instance).Add("format", StringClassXtn.Instance);
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.junit.*;
|
||||
import gplx.ios.*; /*IoMgrFxt*/ import gplx.dbs.qrys.*;
|
||||
public class TdbFlush_tst {
|
||||
@Before public void setup() {
|
||||
Io_mgr.I.InitEngine_mem();
|
||||
Io_mgr.Instance.InitEngine_mem();
|
||||
engine = fx_engine.run_MakeEngine(dbPath);
|
||||
}
|
||||
TdbEngine engine; Io_url dbPath = Io_url_.mem_fil_("mem/dir/db0.dsv"); DateAdp time = DateAdp_.parse_gplx("2001-01-01");
|
||||
@@ -82,14 +82,14 @@ public class TdbFlush_tst {
|
||||
class TdbEngineFxt {
|
||||
public TdbEngine run_MakeEngine(Io_url url) {
|
||||
Db_conn_info connectInfo = Db_conn_info_.tdb_(url);
|
||||
TdbEngine engine = (TdbEngine)TdbEngine._.New_clone(connectInfo);
|
||||
TdbEngine engine = (TdbEngine)TdbEngine.Instance.New_clone(connectInfo);
|
||||
engine.Conn_open();
|
||||
return engine;
|
||||
}
|
||||
public TdbFile run_MakeFile(TdbEngine engine, Io_url url) {return engine.Db().MakeFile(url);}
|
||||
public TdbTable run_MakeTbl(TdbEngine engine, String tblName, int srcId) {
|
||||
TdbTable rv = engine.Db().MakeTbl(tblName, srcId);
|
||||
rv.Flds().Add("id", IntClassXtn._);
|
||||
rv.Flds().Add("id", IntClassXtn.Instance);
|
||||
return rv;
|
||||
}
|
||||
public void run_InsertRow(TdbEngine engine, String tblName, int idVal) {
|
||||
@@ -106,14 +106,14 @@ class TdbEngineFxt {
|
||||
public static TdbEngineFxt new_() {return new TdbEngineFxt();} TdbEngineFxt() {}
|
||||
}
|
||||
class IoMgrFxt {
|
||||
public void run_UpdateFilModifiedTime(Io_url url, DateAdp val) {Io_mgr.I.UpdateFilModifiedTime(url, val);}
|
||||
public void run_UpdateFilModifiedTime(Io_url url, DateAdp val) {Io_mgr.Instance.UpdateFilModifiedTime(url, val);}
|
||||
public void tst_QueryFilModified(boolean expdMatch, Io_url url, DateAdp expt) {
|
||||
IoItmFil filItem = Io_mgr.I.QueryFil(url);
|
||||
IoItmFil filItem = Io_mgr.Instance.QueryFil(url);
|
||||
DateAdp actl = filItem.ModifiedTime();
|
||||
boolean actlMatch = String_.Eq(expt.XtoStr_gplx(), actl.XtoStr_gplx());
|
||||
Tfds.Eq(expdMatch, actlMatch, expt.XtoStr_gplx() + (expdMatch ? "!=" : "==") + actl.XtoStr_gplx());
|
||||
}
|
||||
public void tst_Exists(boolean expd, Io_url url) {Tfds.Eq(expd, Io_mgr.I.ExistsFil(url));}
|
||||
public void tst_Exists(boolean expd, Io_url url) {Tfds.Eq(expd, Io_mgr.Instance.ExistsFil(url));}
|
||||
|
||||
public static IoMgrFxt new_() {return new IoMgrFxt();} IoMgrFxt() {}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ class TdbInsertWkr implements Db_qryWkr {
|
||||
}
|
||||
int InsertRowsBySelect(TdbEngine engine, TdbTable tbl, Db_qry_insert insert) {
|
||||
int count = 0;
|
||||
DataRdr rdr = (DataRdr)TdbSelectWkr._.Exec(engine, insert.Select());
|
||||
DataRdr rdr = (DataRdr)TdbSelectWkr.Instance.Exec(engine, insert.Select());
|
||||
Sql_select_fld_list insertFlds = insert.Cols(); int insertFldsCount = insertFlds.Count();
|
||||
GfoFldList selectFldsForNewRow = null;
|
||||
try {selectFldsForNewRow = insertFlds.XtoGfoFldLst(tbl);}
|
||||
|
||||
@@ -44,12 +44,12 @@ class TdbSelectWkr implements Db_qryWkr {
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
public static final TdbSelectWkr _ = new TdbSelectWkr(); TdbSelectWkr() {}
|
||||
public static final TdbSelectWkr Instance = new TdbSelectWkr(); TdbSelectWkr() {}
|
||||
}
|
||||
class TdbGroupByWkr {
|
||||
public static GfoNdeList GroupByExec(Db_qry__select_cmd select, GfoNdeList selectRows, TdbTable tbl) {
|
||||
GfoNdeList rv = GfoNdeList_.new_();
|
||||
Ordered_hash groupByHash = Ordered_hash_.new_();
|
||||
Ordered_hash groupByHash = Ordered_hash_.New();
|
||||
List_adp groupByFlds = select.GroupBy().Flds();
|
||||
GfoFldList selectFldsForNewRow = select.Cols().Flds().XtoGfoFldLst(tbl);
|
||||
Sql_select_fld_list selectFlds = select.Cols().Flds();
|
||||
@@ -85,7 +85,7 @@ class TdbGroupByWkr {
|
||||
}
|
||||
else {
|
||||
if (o == null) {
|
||||
Ordered_hash nextHash = Ordered_hash_.new_();
|
||||
Ordered_hash nextHash = Ordered_hash_.New();
|
||||
curHash.Add(val, nextHash);
|
||||
curHash = nextHash;
|
||||
}
|
||||
|
||||
@@ -59,5 +59,5 @@ public class TdbTableList extends Ordered_hash_base {
|
||||
DsvStoreLayout layout;
|
||||
public static final String StoreTableName = "_tables";
|
||||
static final String Fld_id = "id"; static final String Fld_name = "name"; static final String Fld_file_id = "file_id";
|
||||
static final GfoFldList FldList = GfoFldList_.new_().Add(Fld_id, IntClassXtn._).Add(Fld_name, StringClassXtn._).Add(Fld_file_id, IntClassXtn._);
|
||||
static final GfoFldList FldList = GfoFldList_.new_().Add(Fld_id, IntClassXtn.Instance).Add(Fld_name, StringClassXtn.Instance).Add(Fld_file_id, IntClassXtn.Instance);
|
||||
}
|
||||
|
||||
@@ -33,5 +33,5 @@ public class Tdb_conn_info extends Db_conn_info__base {
|
||||
rv.url = url;
|
||||
return rv;
|
||||
}
|
||||
public static final Tdb_conn_info _ = new Tdb_conn_info();
|
||||
public static final Tdb_conn_info Instance = new Tdb_conn_info();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user