mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
'v3.8.1.1'
This commit is contained in:
@@ -26,7 +26,7 @@ public abstract class Xoa_site_cfg_itm__base {
|
||||
public byte[] Key_bry() {return key_bry;} private byte[] key_bry;
|
||||
public byte[] Parse_json(Xow_wiki wiki, Json_itm js_itm) {
|
||||
Json_ary ary = Json_ary.cast(js_itm);
|
||||
Bry_bfr bfr = Xoa_app_.Utl__bfr_mkr().Get_b512();
|
||||
Bry_bfr bfr = wiki.Utl__bfr_mkr().Get_b512();
|
||||
int len = ary.Len();
|
||||
for (int i = 0; i < len; ++i)
|
||||
Parse_json_ary_itm(bfr, wiki, i, ary.Get_at(i));
|
||||
|
||||
@@ -38,7 +38,7 @@ class Xoa_site_cfg_loader__db implements Xoa_site_cfg_loader {
|
||||
cfg_tbl.Upsert_bry(Grp__xowa_wm_api, db_key, data);
|
||||
}
|
||||
public static String Bld_meta(int loader_tid) {
|
||||
return String_.Format("//#xowa|{0}|{1}|{2}", Xoa_app_.Version, Xoa_site_cfg_loader_.Get_key(loader_tid), DateAdp_.Now().XtoUtc().XtoStr_fmt_yyyyMMdd_HHmmss());
|
||||
return String_.Format("//#xowa|{0}|{1}|{2}", Xoa_app_.Version, Xoa_site_cfg_loader_.Get_key(loader_tid), Datetime_now.Get().XtoUtc().XtoStr_fmt_yyyyMMdd_HHmmss());
|
||||
}
|
||||
public static final String Grp__xowa_wm_api = "xowa.site_cfg";
|
||||
}
|
||||
|
||||
@@ -21,13 +21,14 @@ import gplx.langs.jsons.*;
|
||||
import gplx.xowa.wikis.domains.*;
|
||||
public class Xoa_site_cfg_loader__inet implements Xoa_site_cfg_loader {
|
||||
private final Gfo_inet_conn inet_conn; private final Json_parser json_parser;
|
||||
private String api_url; private boolean call_api = true; private Json_doc jdoc;
|
||||
private String api_url; private boolean call_api = true; private Json_doc jdoc;
|
||||
private final Bry_bfr tmp_bfr = Bry_bfr_.New();
|
||||
public Xoa_site_cfg_loader__inet(Gfo_inet_conn inet_conn, Json_parser json_parser) {this.inet_conn = inet_conn; this.json_parser = json_parser;}
|
||||
public int Tid() {return Xoa_site_cfg_loader_.Tid__inet;}
|
||||
public void Load_csv__bgn(Xoa_site_cfg_mgr mgr, Xow_wiki wiki) {
|
||||
this.call_api = true;
|
||||
this.jdoc = null;
|
||||
this.api_url = Bld_url(wiki.Domain_str(), mgr.Data_hash(), mgr.Itm_ary());
|
||||
this.api_url = Bld_url(tmp_bfr, wiki.Domain_str(), mgr.Data_hash(), mgr.Itm_ary());
|
||||
}
|
||||
public String Api_url() {return api_url;}
|
||||
public byte[] Load_csv(Xoa_site_cfg_mgr mgr, Xow_wiki wiki, Xoa_site_cfg_itm__base itm) {
|
||||
@@ -41,8 +42,7 @@ public class Xoa_site_cfg_loader__inet implements Xoa_site_cfg_loader {
|
||||
Json_itm js_itm = jdoc.Get_grp_many(Bry__query, itm.Key_bry()); if (js_itm == null) return null;
|
||||
return itm.Parse_json(wiki, js_itm);
|
||||
}
|
||||
public static String Bld_url(String domain_str, Hash_adp_bry db_hash, Xoa_site_cfg_itm__base[] itm_ary) {
|
||||
Bry_bfr bfr = Xoa_app_.Utl__bfr_mkr().Get_b512();
|
||||
public static String Bld_url(Bry_bfr tmp_bfr, String domain_str, Hash_adp_bry db_hash, Xoa_site_cfg_itm__base[] itm_ary) {
|
||||
boolean first = true;
|
||||
int len = itm_ary.length;
|
||||
for (int i = 0; i < len; ++i) {
|
||||
@@ -51,10 +51,10 @@ public class Xoa_site_cfg_loader__inet implements Xoa_site_cfg_loader {
|
||||
if (first)
|
||||
first = false;
|
||||
else
|
||||
bfr.Add_byte_pipe();
|
||||
bfr.Add(itm.Key_bry());
|
||||
tmp_bfr.Add_byte_pipe();
|
||||
tmp_bfr.Add(itm.Key_bry());
|
||||
}
|
||||
return first ? null : Xowm_api_mgr.Bld_api_url(domain_str, Qarg__bgn + bfr.To_str_and_rls());
|
||||
return first ? null : Xowm_api_mgr.Bld_api_url(domain_str, Qarg__bgn + tmp_bfr.To_str_and_clear());
|
||||
}
|
||||
private static final byte[] Bry__query = Bry_.new_a7("query");
|
||||
public static final String
|
||||
|
||||
@@ -66,8 +66,9 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
private final Xoa_site_cfg_mgr site_cfg_mgr;
|
||||
private final Db_cfg_tbl cfg_tbl;
|
||||
private final Json_printer printer = new Json_printer();
|
||||
private final Bry_bfr tmp_bfr = Bry_bfr_.New();
|
||||
public Xoa_site_cfg_mgr_fxt() {
|
||||
// Xoa_app_.Usr_dlg_(Xoa_app_.usr_dlg_console_());
|
||||
// Xoa_app_.Usr_dlg_(Xoa_app_.New__usr_dlg__console());
|
||||
Xoa_test_.Inet__init();
|
||||
this.app = Xoa_app_fxt.Make__app__edit();
|
||||
this.wiki = Xoa_app_fxt.Make__wiki__edit(app);
|
||||
@@ -76,14 +77,14 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
this.site_cfg_mgr = app.Site_cfg_mgr();
|
||||
}
|
||||
public void Init() {
|
||||
Tfds.Now_enabled_y_(); Tfds.Now_freeze_y_();
|
||||
Datetime_now.Manual_y_(); Datetime_now.Autoincrement_n_();
|
||||
Io_mgr.Instance.InitEngine_mem();
|
||||
cfg_tbl.Delete_grp(Xoa_site_cfg_loader__db.Grp__xowa_wm_api);
|
||||
site_cfg_mgr.Init_loader_bgn(wiki);
|
||||
app.Utl__inet_conn().Clear();
|
||||
}
|
||||
public void Term() {
|
||||
Tfds.Now_enabled_n_();
|
||||
Datetime_now.Manual_n_();
|
||||
}
|
||||
public void Init_db(String key, String data) {
|
||||
cfg_tbl.Assert_bry(Xoa_site_cfg_loader__db.Grp__xowa_wm_api, key, Bry_.new_u8(data));
|
||||
@@ -93,7 +94,7 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
Tfds.Eq_str_lines(expd, String_.new_u8(actl));
|
||||
}
|
||||
public void Init_inet(String data) {
|
||||
String url = Xoa_site_cfg_loader__inet.Bld_url(wiki.Domain_str(), site_cfg_mgr.Data_hash(), site_cfg_mgr.Itm_ary());
|
||||
String url = Xoa_site_cfg_loader__inet.Bld_url(tmp_bfr, wiki.Domain_str(), site_cfg_mgr.Data_hash(), site_cfg_mgr.Itm_ary());
|
||||
app.Utl__inet_conn().Upload_by_bytes(url, Bry_.new_u8(data));
|
||||
}
|
||||
public void Init_fsys(String key, String data) {
|
||||
@@ -123,7 +124,7 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
Tfds.Eq(expd, String_.Mid(api_url, String_.FindBwd(api_url, "=") + 1));
|
||||
}
|
||||
public String Make_api(byte[]... sections) {
|
||||
Bry_bfr bfr = Xoa_app_.Utl__bfr_mkr().Get_b512();
|
||||
Bry_bfr bfr = wiki.Utl__bfr_mkr().Get_b512();
|
||||
bfr.Add_str_a7("{'query':");
|
||||
int len = sections.length;
|
||||
bfr.Add_str_a7("{");
|
||||
@@ -136,7 +137,7 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
return printer.Print_by_bry(Bry_.new_u8(Json_doc.Make_str_by_apos(bfr.To_str_and_rls()))).To_str();
|
||||
}
|
||||
public byte[] Make_api_interwikimap(String... ary) {
|
||||
Bry_bfr bfr = Xoa_app_.Utl__bfr_mkr().Get_b512();
|
||||
Bry_bfr bfr = wiki.Utl__bfr_mkr().Get_b512();
|
||||
bfr.Add_str_a7("'interwikimap':");
|
||||
int len = ary.length;
|
||||
bfr.Add_str_a7("[");
|
||||
@@ -150,7 +151,7 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
return bfr.To_bry_and_clear();
|
||||
}
|
||||
public byte[] Make_api_extensiontags(String... ary) {
|
||||
Bry_bfr bfr = Xoa_app_.Utl__bfr_mkr().Get_b512();
|
||||
Bry_bfr bfr = wiki.Utl__bfr_mkr().Get_b512();
|
||||
bfr.Add_str_a7("'extensiontags':");
|
||||
int len = ary.length;
|
||||
bfr.Add_str_a7("[");
|
||||
@@ -162,7 +163,7 @@ class Xoa_site_cfg_mgr_fxt {
|
||||
return bfr.To_bry_and_clear();
|
||||
}
|
||||
public String Make_data(int loader_tid, int flds, String... ary) {
|
||||
Bry_bfr bfr = Xoa_app_.Utl__bfr_mkr().Get_b512();
|
||||
Bry_bfr bfr = wiki.Utl__bfr_mkr().Get_b512();
|
||||
if (loader_tid != Xoa_site_cfg_loader_.Tid__null) // null when constructing data for fsys
|
||||
bfr.Add_str_u8(Xoa_site_cfg_loader__db.Bld_meta(loader_tid)).Add_byte_nl();
|
||||
int len = ary.length;
|
||||
|
||||
Reference in New Issue
Block a user