1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00
This commit is contained in:
gnosygnu
2015-07-19 23:16:49 -04:00
parent 794b5a232f
commit 8e041d6e06
834 changed files with 4749 additions and 4461 deletions

View File

@@ -33,6 +33,6 @@ public class Db_idx_mode {
if (String_.Eq(key, Key_skip)) return Itm_skip;
else if (String_.Eq(key, Key_bgn)) return Itm_bgn;
else if (String_.Eq(key, Key_end)) return Itm_end;
else throw Exc_.new_unhandled(key);
else throw Err_.new_unhandled(key);
}
}

View File

@@ -80,7 +80,7 @@ public class Xob_cmd_mgr implements GfoInvkAble {
else if (String_.Eq(cmd_key, Xob_cmd_keys.Key_decompress_bz2)) return Add(new Xob_decompress_bz2_cmd(bldr, wiki));
else if (String_.Eq(cmd_key, Xob_cmd_keys.Key_deploy_zip)) return Add(new Xob_deploy_zip_cmd(bldr, wiki));
else if (String_.Eq(cmd_key, Xob_cmd_keys.Key_deploy_copy)) return Add(new Xob_deploy_copy_cmd(bldr, wiki));
else throw Exc_.new_unhandled(cmd_key);
else throw Err_.new_unhandled(cmd_key);
}
private Xobd_wkr Xml_rdr_direct_add(Xowe_wiki wiki, Xobd_wkr wkr) {
Xobd_rdr dump_rdr = Xml_rdr_get(wiki);
@@ -118,7 +118,7 @@ public class Xob_cmd_mgr implements GfoInvkAble {
Xob_cmd cmd = (Xob_cmd)list.Get_at(i);
if (String_.Eq(cmd.Cmd_key(), cmd_key)) return cmd;
}
throw Exc_.new_("cmd not found", "key", cmd_key);
throw Err_.new_wo_type("cmd not found", "key", cmd_key);
}
private Object Add_many(GfoMsg m) {
Xowe_wiki wiki = Wiki_get_or_make(m);
@@ -132,7 +132,7 @@ public class Xob_cmd_mgr implements GfoInvkAble {
return Add_many(wiki, cmds);
}
public Object Add_many(Xowe_wiki wiki, String... cmds) {
int len = cmds.length; if (len == 0) throw Exc_.new_("add_many cannot have 0 cmds");
int len = cmds.length; if (len == 0) throw Err_.new_wo_type("add_many cannot have 0 cmds");
Object rv = null;
for (int i = 0; i < len; i++)
rv = Add_cmd(wiki, cmds[i]);

View File

@@ -62,7 +62,7 @@ public class Xob_fxt {
public Xob_fxt Run_ctg() {
Xobd_parser parser = new Xobd_parser();
gplx.xowa.bldrs.cmds.ctgs.Xob_ctg_v1_base ctg_wkr = new gplx.xowa.bldrs.cmds.ctgs.Xob_ctg_v1_txt().Ctor(bldr, wiki);
byte[] bry = Bry_.new_u8("[[Category:");
byte[] bry = Bry_.new_a7("[[Category:");
ctg_wkr.Wkr_hooks().Add(bry, bry);
parser.Wkr_add(ctg_wkr);
return Run(parser);

View File

@@ -142,7 +142,7 @@ public class Xob_wiki_cfg_bldr_tst {
}
sb.Add("\");');\n");
}
catch(Exception e) {sb.Add("// fail: " + wiki + " " + Err_.Message_gplx_brief(e)).Add_char_nl();}
catch(Exception e) {sb.Add("// fail: " + wiki + " " + Err_.Message_gplx_full(e)).Add_char_nl();}
}
return sb.Xto_str_and_clear();
}

View File

@@ -54,7 +54,7 @@ public class Xob_ns_file_itm_parser extends Dsv_wkr_base {
}
else
ns_ids = Int_.Ary_parse(String_.new_u8(ns_ids_bry), ",");
if (ns_ids.length == 0) throw Exc_.new_("map.invalid.ns_missing", "src", this.Src());
if (ns_ids.length == 0) throw Err_.new_wo_type("map.invalid.ns_missing", "src", this.Src());
if (String_.Len_eq_0(name)) { // no name; auto-generate
int ns_id_1st = ns_ids[0]; // take 1st ns_id
name = "ns." + Int_.Xto_str_pad_bgn_zero(ns_id_1st, 3); // EX: ns.000

View File

@@ -71,7 +71,7 @@ class Xob_dump_src_id {
case Bool_.Y_byte: return Sql_select__redirect_y;
case Bool_.N_byte: return Sql_select__redirect_n;
case Bool_.__byte: return Sql_select__redirect__;
default: throw Exc_.new_unhandled(redirect);
default: throw Err_.new_unhandled(redirect);
}
}
private static final String Sql_select = String_.Concat_lines_nl

View File

@@ -47,7 +47,7 @@ public abstract class Xob_categorylinks_base extends Xob_sql_dump_base implement
case Byte_ascii.Ltr_f:
case Byte_ascii.Ltr_p: cur_tid = char_0; break;
case Byte_ascii.Ltr_s: cur_tid = Byte_ascii.Ltr_c; break;
default: throw Exc_.new_unhandled(char_0);
default: throw Err_.new_unhandled(char_0);
}
if (cur_collation_is_uca) {
if (trie == null) {
@@ -70,7 +70,7 @@ public abstract class Xob_categorylinks_base extends Xob_sql_dump_base implement
wiki.Html_mgr().Importing_ctgs_(Bool_.N);
}
private static final byte[] Fld_cl_from = Bry_.new_a7("cl_from"), Fld_cl_to = Bry_.new_a7("cl_to"), Fld_cl_timestamp = Bry_.new_a7("cl_timestamp"), Fld_cl_collation = Bry_.new_a7("cl_collation"), Fld_cl_sortkey = Bry_.new_a7("cl_sortkey"), Fld_cl_type = Bry_.new_a7("cl_type");
private static final byte[] Collation_uca = Bry_.new_u8("uca"), Sortkey_space = new byte[] {Byte_ascii.Space};
private static final byte[] Collation_uca = Bry_.new_a7("uca"), Sortkey_space = new byte[] {Byte_ascii.Space};
}
class Xoctg_link_sql_sorter implements gplx.lists.ComparerAble {
public int compare(Object lhsObj, Object rhsObj) {

View File

@@ -59,7 +59,7 @@ public class Xob_categorylinks_sql_make implements Io_make_cmd {
++cur_row_count;
if (cur_row_count % 100000 == 0) usr_dlg.Prog_one("", "", "inserting category row: ~{0}", cur_row_count);
if (cur_row_count % 1000000 == 0) {cat_core_tbl.Conn().Txn_sav(); cat_link_tbl.Conn().Txn_sav();}
} catch (Exception e) {usr_dlg.Warn_many("", "", "ctg_links.insert failed: name=~{0} err=~{1}", String_.new_u8(new_cat_ttl), Err_.Message_gplx_brief(e));}
} catch (Exception e) {usr_dlg.Warn_many("", "", "ctg_links.insert failed: name=~{0} err=~{1}", String_.new_u8(new_cat_ttl), Err_.Message_gplx_full(e));}
}
public void Sort_end() {
Save_ctg(Ttl_last);
@@ -110,7 +110,7 @@ public class Xob_categorylinks_sql_make implements Io_make_cmd {
case Byte_ascii.Ltr_f: return Xoa_ctg_mgr.Tid_file;
case Byte_ascii.Ltr_p: return Xoa_ctg_mgr.Tid_page;
case Byte_ascii.Ltr_c: return Xoa_ctg_mgr.Tid_subc;
default: throw Exc_.new_unhandled(ltr);
default: throw Err_.new_unhandled(ltr);
}
}
public Io_sort_cmd Make_dir_(Io_url v) {return this;}

View File

@@ -71,7 +71,7 @@ class Db_tst_row {
public static Db_tst_row kvs_(String[] cols, Object[] vals) {
int cols_len = cols.length;
int vals_len = vals.length;
if (cols_len != vals_len) throw Exc_.new_("mismatch in cols / vals");
if (cols_len != vals_len) throw Err_.new_wo_type("mismatch in cols / vals");
Db_tst_row rv = new Db_tst_row();
Db_tst_val[] vals_ary = new Db_tst_val[cols_len];
for (int i = 0; i < cols_len; i++) {
@@ -128,7 +128,7 @@ class Db_tst_qry {
if (!pass) {
bfr.Add(Lbl_row_hdr).Add_int_variable(expd_row_idx).Add_byte_nl();
bfr.Add_str(qry.Xto_sql()).Add_byte(Byte_ascii.Semic);
throw Exc_.new_(bfr.Xto_str_and_clear());
throw Err_.new_wo_type(bfr.Xto_str_and_clear());
}
} static final byte[] Lbl_row_hdr = Bry_.new_a7("row: "), Lbl_eq_y = Bry_.new_a7(" == "), Lbl_eq_n = Bry_.new_a7(" != ");
public static Db_tst_qry tbl_(String tbl_name, String order_by) {return new_(Db_qry_.select_tbl_(tbl_name).OrderBy_asc_(order_by));}

View File

@@ -37,10 +37,10 @@ class Xowd_page_wkr_ctg_fxt {
Xowe_wiki wiki = Xoa_app_fxt.wiki_tst_(app);
Xob_bldr bldr = Xoa_app_fxt.bldr_(app);
Xobd_parser_wkr_ctg_tstr wkr = (Xobd_parser_wkr_ctg_tstr)new Xobd_parser_wkr_ctg_tstr().Ctor(bldr, wiki);
byte[] bry = Bry_.new_u8("[[Category:");
byte[] bry = Bry_.new_a7("[[Category:");
wkr.Wkr_hooks().Add(bry, bry);
mgr.Wkr_add(wkr);
Xowd_page_itm page = new Xowd_page_itm().Text_(src);//.Ttl_(Bry_.new_u8("Test"), new Xow_ns_mgr());
Xowd_page_itm page = new Xowd_page_itm().Text_(src);//.Ttl_(Bry_.new_a7("Test"), new Xow_ns_mgr());
mgr.Wkr_bgn(bldr);
mgr.Wkr_run(page);
byte[][] ttl = (byte[][])wkr.Found().To_ary(byte[].class);

View File

@@ -58,7 +58,7 @@ class Xob_sql_join_wkr_ctg_hidden implements Xob_sql_join_wkr {
byte[] src = join.Bfr();
int itm_end = join.Itm_pos_end();
int pipe_pos = Bry_finder.Find_bwd(src, Byte_ascii.Pipe, itm_end);
if (pipe_pos == Bry_.NotFound) throw Exc_.new_("failed to find pipe for name", "excerpt", String_.new_u8(src, join.Itm_pos_bgn(), join.Itm_pos_end()));
if (pipe_pos == Bry_.NotFound) throw Err_.new_wo_type("failed to find pipe for name", "excerpt", String_.new_u8(src, join.Itm_pos_bgn(), join.Itm_pos_end()));
file_bfr.Add_mid(src, pipe_pos + 1, itm_end - 1).Add_byte_pipe();
file_bfr.Add(key_bry).Add_byte_nl();
} private Bry_bfr file_bfr = Bry_bfr.new_();

View File

@@ -91,7 +91,7 @@ class Xoctg_make_link_mgr {
case Byte_ascii.Ltr_c: return subc_grp;
case Byte_ascii.Ltr_f: return file_grp;
case Byte_ascii.Ltr_p: return page_grp;
default: throw Exc_.new_unhandled(tid);
default: throw Err_.new_unhandled(tid);
}
}
public int Grps_bfr_len() {return subc_grp.Bfr_len() + file_grp.Bfr_len() + page_grp.Bfr_len();}

View File

@@ -38,20 +38,20 @@ class Xob_bin_db_itm {
public static Xob_bin_db_itm new_v1(Fsm_bin_fil fil) {
byte[] name = Bry_.new_u8(fil.Url_rel()); // EX: "fsdb.bin.0000.sqlite3"
int ns_id = 0; // assume v1 dbs are all in main ns
int pt_id = Bry_.Xto_int_or(name, 9 , 13, Int_.MinValue); if (pt_id == Int_.MinValue) throw Exc_.new_("bin_db_itm.parse: invalid pt_id", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int pt_id = Bry_.Xto_int_or(name, 9 , 13, Int_.MinValue); if (pt_id == Int_.MinValue) throw Err_.new_wo_type("bin_db_itm.parse: invalid pt_id", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
return new Xob_bin_db_itm(fil.Id(), fil.Url(), ns_id, pt_id);
}
public static Xob_bin_db_itm new_v2(Fsm_bin_fil fil) {
byte[] ns_bgn_tkn = Bry_.new_a7("file-ns."), ns_end_tkn = Bry_.new_a7("-db."), pt_end_tkn = Bry_.new_a7(".xowa");
int ns_bgn_tkn_len = ns_bgn_tkn.length, ns_end_tkn_len = ns_end_tkn.length;
byte[] name = Bry_.new_u8(fil.Url_rel()); // EX: en.wikipedia.org-file-ns.000-db.001.xowa
int ns_bgn = Bry_finder.Find_fwd(name, ns_bgn_tkn, 0); if (ns_bgn == Bry_finder.Not_found) throw Exc_.new_("bin_db_itm.parse: invalid ns_bgn", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int ns_bgn = Bry_finder.Find_fwd(name, ns_bgn_tkn, 0); if (ns_bgn == Bry_finder.Not_found) throw Err_.new_wo_type("bin_db_itm.parse: invalid ns_bgn", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
ns_bgn += ns_bgn_tkn_len;
int ns_end = Bry_finder.Find_fwd(name, ns_end_tkn, ns_bgn); if (ns_end == Bry_finder.Not_found) throw Exc_.new_("bin_db_itm.parse: invalid ns_end", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int ns_end = Bry_finder.Find_fwd(name, ns_end_tkn, ns_bgn); if (ns_end == Bry_finder.Not_found) throw Err_.new_wo_type("bin_db_itm.parse: invalid ns_end", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int pt_bgn = ns_end + ns_end_tkn_len;
int pt_end = Bry_finder.Find_fwd(name, pt_end_tkn, pt_bgn); if (pt_end == Bry_finder.Not_found) throw Exc_.new_("bin_db_itm.parse: invalid pt_end", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int ns_id = Bry_.Xto_int_or(name, ns_bgn, ns_end, Int_.MinValue); if (ns_id == Int_.MinValue) throw Exc_.new_("bin_db_itm.parse: invalid ns_id", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int pt_id = Bry_.Xto_int_or(name, pt_bgn, pt_end, Int_.MinValue); if (pt_id == Int_.MinValue) throw Exc_.new_("bin_db_itm.parse: invalid pt_id", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int pt_end = Bry_finder.Find_fwd(name, pt_end_tkn, pt_bgn); if (pt_end == Bry_finder.Not_found) throw Err_.new_wo_type("bin_db_itm.parse: invalid pt_end", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int ns_id = Bry_.Xto_int_or(name, ns_bgn, ns_end, Int_.MinValue); if (ns_id == Int_.MinValue) throw Err_.new_wo_type("bin_db_itm.parse: invalid ns_id", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
int pt_id = Bry_.Xto_int_or(name, pt_bgn, pt_end, Int_.MinValue); if (pt_id == Int_.MinValue) throw Err_.new_wo_type("bin_db_itm.parse: invalid pt_id", "name", fil.Url_rel(), "conn", fil.Conn().Conn_info().Xto_raw());
return new Xob_bin_db_itm(fil.Id(), fil.Url(), ns_id, pt_id);
}
}

View File

@@ -64,7 +64,7 @@ class Xob_bin_db_mgr {
}
public Xob_bin_db_itm Get_nth_by_tier(int tier_id) {
if (schema_is_1) return (Xob_bin_db_itm)nth_hash.Get_by(tier_key.Val_(0)); // v1 is always in ns_0
if (tier_id >= ns_ids_len) throw Exc_.new_("tier out of range", "tier_id", tier_id, "len", ns_ids_len);
if (tier_id >= ns_ids_len) throw Err_.new_wo_type("tier out of range", "tier_id", tier_id, "len", ns_ids_len);
int ns_id = ns_ids[tier_id];
return (Xob_bin_db_itm)nth_hash.Get_by(tier_key.Val_(ns_id));
}

View File

@@ -75,7 +75,7 @@ class Xob_diff_regy_sql_runner {
else if (fsdb_db_tid == Fsdb_db_tid_.Tid_atr)
return abc_mgr.Atr_mgr().Db__core().Conn();
else
throw Exc_.new_unhandled(fsdb_db_tid);
throw Err_.new_unhandled(fsdb_db_tid);
}
public static String Build_url(String wiki_domain, int fsdb_db_id, String fsdb_db_type) {
return String_.Format("{0}-{1}-{2}.sql", wiki_domain, Int_.Xto_str_pad_bgn_zero(fsdb_db_id, 3), fsdb_db_type);
@@ -88,14 +88,14 @@ class Fsdb_db_tid_ {
if (String_.Eq(s, Key_cfg)) return Tid_cfg;
else if (String_.Eq(s, Key_atr)) return Tid_atr;
else if (String_.Eq(s, Key_bin)) return Tid_bin;
else throw Exc_.new_unhandled(s);
else throw Err_.new_unhandled(s);
}
public static String Xto_key(byte v) {
switch (v) {
case Tid_cfg: return Key_cfg;
case Tid_atr: return Key_atr;
case Tid_bin: return Key_bin;
default: throw Exc_.new_unhandled(v);
default: throw Err_.new_unhandled(v);
}
}
}

View File

@@ -37,7 +37,7 @@ public class Xob_diff_regy_make_cmd extends Xob_itm_basic_base implements Xob_cm
Sqlite_engine_.Idx_create(make_db_provider, Xob_diff_regy_tbl.Idx_xfer_regy__join);
}
catch (Exception exc) {
app.Usr_dlg().Warn_many("", "", "error while making indexes: err=~{0}", Err_.Message_gplx(exc));
app.Usr_dlg().Warn_many("", "", "error while making indexes: err=~{0}", Err_.Message_gplx_full(exc));
}
}
private void Make_diff_regy(Db_conn make_db_provider) {

View File

@@ -191,7 +191,7 @@ public class Xob_fsdb_make_cmd extends Xob_itm_basic_base implements Xob_cmd {
}
catch (Exception exc) {
++exec_fail;
usr_dlg.Warn_many("", "", "download error; ttl=~{0} w=~{1} err=~{2}", fsdb.Orig_ttl(), fsdb.Lnki_w(), Err_.Message_gplx(exc));
usr_dlg.Warn_many("", "", "download error; ttl=~{0} w=~{1} err=~{2}", fsdb.Orig_ttl(), fsdb.Lnki_w(), Err_.Message_gplx_full(exc));
}
}
private void Download_exec(Xodb_tbl_oimg_xfer_itm fsdb) {
@@ -345,8 +345,8 @@ public class Xob_fsdb_make_cmd extends Xob_itm_basic_base implements Xob_cmd {
url = wiki.Fsys_mgr().Root_dir().GenSubDir("prv"); // v2: EX: /xowa/wiki/en.wikipedia.org/prv/
rv = Fsdb_db_mgr_.new_detect(wiki, url, url); // note that v2 is prioritized over v1
}
else throw Exc_.new_("fsdb.make:unknown fsdb_type", "version", version);
if (rv == null) throw Exc_.new_("fsdb.make:source fsdb not found", "version", version, "url", url.Raw());
else throw Err_.new_wo_type("fsdb.make:unknown fsdb_type", "version", version);
if (rv == null) throw Err_.new_wo_type("fsdb.make:source fsdb not found", "version", version, "url", url.Raw());
return rv;
}
private static final byte Select_rv_stop = 0, Select_rv_process = 1, Select_rv_next_page = 2;

View File

@@ -192,7 +192,7 @@ class Xob_lnki_temp_wkr_ {
int id = i < ids_len ? rv[i] : -1;
wiki.Appe().Usr_dlg().Note_many("", "", "ns: ~{0} <- ~{1}", Int_.Xto_str_fmt(id, "0000"), alias);
}
if (aliases_len != ids_len) throw Exc_.new_("mismatch in aliases and ids", "aliases", aliases_len, "ids", ids_len);
if (aliases_len != ids_len) throw Err_.new_wo_type("mismatch in aliases and ids", "aliases", aliases_len, "ids", ids_len);
return rv;
}
private static int[] Ids_by_aliases(Xow_ns_mgr ns_mgr, String[] aliases) {

View File

@@ -51,7 +51,7 @@ public abstract class Xob_search_base extends Xob_itm_dump_base implements Xobd_
.Add_base85_len_5(page.Id()) .Add_byte(Byte_ascii.Semic)
.Add_base85_len_5(page.Text().length) .Add_byte(Byte_ascii.Nl);
}
} catch (Exception e) {bldr.Usr_dlg().Warn_many("", "", "search_index:fatal error: err=~{0}", Err_.Message_gplx_brief(e));} // never let single page crash entire import
} catch (Exception e) {bldr.Usr_dlg().Warn_many("", "", "search_index:fatal error: err=~{0}", Err_.Message_gplx_full(e));} // never let single page crash entire import
}
public void Wkr_end() {
tmp_wtr_mgr.Flush_all(bldr.Usr_dlg());

View File

@@ -61,7 +61,7 @@ public class Xob_page_cmd extends Xob_itm_basic_base implements Xobd_wkr, GfoInv
Xowd_db_file text_db = ns_to_db_mgr.Get_by_ns(ns.Bldr_data(), text_zip.length);
try {page_mgr.Create(page_core_tbl, text_db.Tbl__text(), id, page.Ns_id(), page.Ttl_page_db(), redirect, modified, text_zip, text_raw_len, random_int, text_db.Id(), -1);}
catch (Exception e) {
throw Exc_.new_exc(e, "bldr", "create page in db failed", "id", id, "ns", page.Ns_id(), "name", page.Ttl_page_db(), "redirect", redirect, "modified", modified, "text_len", text_raw_len, "text_db_id", text_db.Id());
throw Err_.new_exc(e, "bldr", "create page in db failed; skipping page", "id", id, "ns", page.Ns_id(), "name", page.Ttl_page_db(), "redirect", redirect, "modified", modified, "text_len", text_raw_len, "text_db_id", text_db.Id());
}
if (redirect && redirect_id_enabled)
redirect_tbl.Insert(id, page.Ttl_page_db(), redirect_ttl);

View File

@@ -78,7 +78,7 @@ class Xob_search_wkr extends Xob_itm_basic_base implements Xobd_wkr {
byte[] word = words[i];
search_temp_tbl.Insert_cmd_by_batch(page_id, word);
}
} catch (Exception e) {bldr.Usr_dlg().Warn_many("", "", "search_index:fatal error: err=~{0}", Err_.Message_gplx_brief(e));} // never let single page crash entire import
} catch (Exception e) {bldr.Usr_dlg().Warn_many("", "", "search_index:fatal error: err=~{0}", Err_.Message_gplx_full(e));} // never let single page crash entire import
}
public void Wkr_end() {
search_temp_tbl.Make_data(usr_dlg, search_db.Tbl__search_link(), search_db.Tbl__search_word());

View File

@@ -23,7 +23,7 @@ public class Xob_term_cmd extends Xob_term_base {
@Override public void Cmd_end_hook() {
Io_mgr.I.DeleteDirDeep(wiki.Fsys_mgr().Tmp_dir());
Db_cfg_tbl cfg_tbl = wiki.Data__core_mgr().Tbl__cfg();
cfg_tbl.Insert_bry(Xow_cfg_consts.Grp__wiki_init, "props.bldr_version", wiki.Props().Bldr_version());
cfg_tbl.Insert_bry(Xow_cfg_consts.Grp__wiki_init, Xow_cfg_consts.Key__init__bldr_version, wiki.Props().Bldr_version());
cfg_tbl.Insert_bry(Xow_cfg_consts.Grp__wiki_init, Xow_cfg_consts.Key__init__main_page, wiki.Props().Main_page());
cfg_tbl.Insert_bry(Xow_cfg_consts.Grp__wiki_init, "props.siteinfo_misc", wiki.Props().Siteinfo_misc());
cfg_tbl.Insert_bry(Xow_cfg_consts.Grp__wiki_init, "props.siteinfo_mainpage", wiki.Props().Siteinfo_mainpage());

View File

@@ -174,7 +174,7 @@ public class Xob_tst {
Io_mgr.I.SaveFilStr(url, raw);
Xotdb_page_raw_parser parser = new Xotdb_page_raw_parser();
Xowe_wiki wiki = Xoa_app_fxt.wiki_tst_(app);
parser.Load(Gfo_usr_dlg_.Test(), wiki, new Xow_ns(Xow_ns_.Id_template, Xow_ns_case_.Id_1st, Bry_.new_u8("Template"), false), new Io_url[] {url}, 1 * Io_mgr.Len_kb);
parser.Load(Gfo_usr_dlg_.Test(), wiki, new Xow_ns(Xow_ns_.Id_template, Xow_ns_case_.Id_1st, Bry_.new_a7("Template"), false), new Io_url[] {url}, 1 * Io_mgr.Len_kb);
List_adp actl = List_adp_.new_();
Xowd_page_itm page = new Xowd_page_itm();
while (parser.Read(page)) {

View File

@@ -44,7 +44,7 @@ public class Xob_cleanup_cmd extends Xob_itm_basic_base implements Xob_cmd {
Delete_wiki_sql(wiki);
if (delete_all) {
Io_mgr.I.DeleteDir_cmd(wiki_root_dir).Exec(); // do not delete subdirs; needed to support "/prv" for fsdb; DATE:2015-04-01
Io_mgr.I.DeleteDirDeep(app.Usere().Fsys_mgr().Wiki_root_dir()); // delete css dir; DATE:2015-07-06
Io_mgr.I.DeleteDirDeep(app.Usere().Fsys_mgr().Wiki_root_dir().GenSubDir(wiki.Domain_str())); // delete css dir; DATE:2015-07-06
}
if (delete_by_match_ary != null)
Delete_by_match(wiki_root_dir, delete_by_match_ary);

View File

@@ -28,7 +28,7 @@ public class Xob_deploy_zip_cmd extends Xob_itm_basic_base implements Xob_cmd {
private void Exec(Xob_bldr bldr, String type_name) {
Log("initing wiki");
try {wiki.Init_assert();}
catch (Exception exc) {Log("failed to init wiki: ~{0}", Err_.Message_gplx_brief(exc));}
catch (Exception exc) {Log("failed to init wiki: ~{0}", Err_.Message_gplx_full(exc));}
Log("probing ns_dirs: ~{0}", wiki.Tdb_fsys_mgr().Ns_dir().Raw());
Io_url[] ns_dirs = Io_mgr.I.QueryDir_args(wiki.Tdb_fsys_mgr().Ns_dir()).DirOnly_().ExecAsUrlAry();
for (Io_url ns_dir : ns_dirs) {

View File

@@ -27,7 +27,7 @@ public class Xob_download_wkr extends Xob_itm_basic_base implements Xob_cmd {
public String Cmd_key() {return Xob_cmd_keys.Key_util_download;}
public void Cmd_init(Xob_bldr bldr) {}
public void Cmd_bgn(Xob_bldr bldr) {
if (dump_type == null) throw Exc_.new_("dump_type must be specified");
if (dump_type == null) throw Err_.new_wo_type("dump_type must be specified");
Xob_dump_file dump_file = Xob_dump_file.new_(wiki.Domain_str(), dump_date, dump_type);
if (dump_src == null) {
dump_file.Server_url_(app.Setup_mgr().Dump_mgr().Server_urls()[0]);
@@ -43,7 +43,7 @@ public class Xob_download_wkr extends Xob_itm_basic_base implements Xob_cmd {
IoEngine_xrg_downloadFil download_wkr = app.Wmf_mgr().Download_wkr().Download_xrg();
download_wkr.Src_last_modified_query_(false).Init(dump_src, dump_trg_zip);
if (!download_wkr.Exec())
usr_dlg.Warn_many("", "", "download failed: src=~{0} trg=~{1} err=~{2}", dump_src, dump_trg_zip.Raw(), Err_.Message_gplx_brief(download_wkr.Rslt_err()));
usr_dlg.Warn_many("", "", "download failed: src=~{0} trg=~{1} err=~{2}", dump_src, dump_trg_zip.Raw(), Err_.Message_gplx_full(download_wkr.Rslt_err()));
if (unzip) {
usr_dlg.Note_many("", "", "unzipping file: now=~{0} trg=~{1}", DateAdp_.Now().XtoStr_fmt_yyyyMMdd_HHmmss(), dump_trg_bin.Raw());
Xob_unzip_wkr unzip_wkr = new Xob_unzip_wkr().Init(app).Process_run_mode_(ProcessAdp.Run_mode_sync_block);

View File

@@ -32,7 +32,7 @@ public class Xob_unzip_wkr {
if (String_.Eq(src_ext, gplx.ios.Io_stream_.Ext_bz2)) process = decompress_bz2;
else if (String_.Eq(src_ext, gplx.ios.Io_stream_.Ext_zip)) process = decompress_zip;
else if (String_.Eq(src_ext, gplx.ios.Io_stream_.Ext_gz)) process = decompress_gz;
else throw Exc_.new_unhandled(src_ext);
else throw Err_.new_unhandled(src_ext);
Io_url trg_owner_dir = trg.OwnerDir();
Io_mgr.I.CreateDirIfAbsent(trg_owner_dir);
process.Run_mode_(process_run_mode);

View File

@@ -45,7 +45,7 @@ public class Xob_xml_dumper_cmd implements Xob_cmd {
if ((++page_count % commit_interval) == 0) Commit();
}
}
catch (Exception e) {throw Exc_.new_exc(e, "xo", "xml_dumper failed");}
catch (Exception e) {throw Err_.new_exc(e, "xo", "xml_dumper failed");}
finally {page_rdr.Rls();}
xml_dumper.Write_root_end();
this.Commit();

View File

@@ -32,7 +32,7 @@ public class Xob_image_cmd extends Xob_itm_dump_base implements Xob_cmd, GfoInvk
Init_dump(Xob_cmd_keys.Key_wiki_image);
if (src_fil == null) {
src_fil = Xobd_rdr.Find_fil_by(wiki.Fsys_mgr().Root_dir(), "*-image.sql");
if (src_fil == null) throw Exc_.new_(".sql file not found in dir", "dir", wiki.Fsys_mgr().Root_dir());
if (src_fil == null) throw Err_.new_wo_type(".sql file not found in dir", "dir", wiki.Fsys_mgr().Root_dir());
}
parser.Src_fil_(src_fil).Trg_fil_gen_(dump_url_gen).Fld_cmd_(this).Flds_req_idx_(20, Fld_img_name, Fld_img_size, Fld_img_width, Fld_img_height, Fld_img_bits, Fld_img_media_type, Fld_img_minor_mime, Fld_img_timestamp);

View File

@@ -60,7 +60,7 @@ public class Xoa_css_extractor {
wiki.Html__css_installing_(false);
}
catch (Exception e) { // if error, failover; paranoia catch for outliers like bad network connectivity fail, or MediaWiki: message not existing; DATE:2013-11-21
wiki.App().Usr_dlg().Warn_many("", "", "failed to get css; failing over; wiki='~{0}' err=~{1}", wiki.Domain_str(), Err_.Message_gplx(e));
wiki.App().Usr_dlg().Warn_many("", "", "failed to get css; failing over; wiki='~{0}' err=~{1}", wiki.Domain_str(), Err_.Message_gplx_full(e));
Css_common_failover(); // only failover xowa_common.css; xowa_wiki.css comes from MediaWiki:Common.css / Vector.css
wiki.Html__css_installing_(false);
}

View File

@@ -45,7 +45,7 @@ public class Xoa_css_img_downloader {
if (url_pos == Bry_.NotFound) {bfr.Add_mid(src, prv_pos, src_len); break;} // no more "url("; exit;
int bgn_pos = url_pos + Bry_url_len; // set bgn_pos after "url("
byte bgn_byte = src[bgn_pos];
byte end_byte = Byte_ascii.Nil;
byte end_byte = Byte_ascii.Null;
boolean quoted = true;
switch (bgn_byte) { // find end_byte
case Byte_ascii.Quote: case Byte_ascii.Apos: // quoted; end_byte is ' or "
@@ -99,7 +99,7 @@ public class Xoa_css_img_downloader {
return bfr.Xto_bry_and_clear();
}
catch (Exception e) {
usr_dlg.Warn_many("", "", "failed to convert local_urls: ~{0} ~{1}", String_.new_u8(rel_url_prefix), Err_.Message_gplx(e));
usr_dlg.Warn_many("", "", "failed to convert local_urls: ~{0} ~{1}", String_.new_u8(rel_url_prefix), Err_.Message_gplx_full(e));
return src;
}
}

View File

@@ -115,7 +115,7 @@ public class Xoa_css_img_downloader_tst {
);
}
@Test public void Import_url_relative_skip() { // PURPOSE: if rel path, skip; "//site/a/b.css"; DATE:2014-02-03
fxt.Downloader().Stylesheet_prefix_(Bry_.new_u8("mem")); // stylesheet prefix prefix defaults to ""; set to "mem", else test will try to retrieve "//url" which will fail
fxt.Downloader().Stylesheet_prefix_(Bry_.new_a7("mem")); // stylesheet prefix prefix defaults to ""; set to "mem", else test will try to retrieve "//url" which will fail
Io_mgr.I.InitEngine_mem();
Io_mgr.I.SaveFilStr("mem//en.wikipedia.org/a/b.css", "imported_css");
fxt.Test_css_convert
@@ -144,7 +144,7 @@ public class Xoa_css_img_downloader_tst {
);
}
@Test public void Wikisource_freedimg() { // PURPOSE: check that "wikimedia" is replaced for FreedImg hack; PAGE:en.s:Page:Notes_on_Osteology_of_Baptanodon._With_a_Description_of_a_New_Species.pdf/3 DATE:2014-09-06
fxt.Downloader().Stylesheet_prefix_(Bry_.new_u8("mem")); // stylesheet prefix prefix defaults to ""; set to "mem", else test will try to retrieve "//url" which will fail
fxt.Downloader().Stylesheet_prefix_(Bry_.new_a7("mem")); // stylesheet prefix prefix defaults to ""; set to "mem", else test will try to retrieve "//url" which will fail
Io_mgr.I.InitEngine_mem();
Io_mgr.I.SaveFilStr("mem//en.wikisource.org/w/index.php?title=MediaWiki:Dynimg.css", ".freedImg img[src*=\"wikipedia\"], .freedImg img[src*=\"wikisource\"], .freedImg img[src*=\"score\"], .freedImg img[src*=\"math\"] {");
fxt.Test_css_convert

View File

@@ -30,7 +30,7 @@ class Xob_css_parser__url {
break;
default: // not quoted; end byte is ")"; EX: ' url(a.png)'
end_byte = Byte_ascii.Paren_end;
quote_byte = Byte_ascii.Nil;
quote_byte = Byte_ascii.Null;
break;
}
int end_pos = Bry_finder.Find_fwd(src, end_byte, bgn_pos, src_len);

View File

@@ -62,7 +62,7 @@ class Xob_css_tkn__url extends Xob_css_tkn__base {
mgr.File_hash().Add_if_dupe_use_1st(src_url, new Xobc_download_itm(Xobc_download_itm.Tid_file, String_.new_u8(src_url), trg_url));
}
@Override public int Write(Bry_bfr bfr, byte[] src) {
byte quote = quote_byte; if (quote == Byte_ascii.Nil) quote = Byte_ascii.Apos;
byte quote = quote_byte; if (quote == Byte_ascii.Null) quote = Byte_ascii.Apos;
bfr.Add_str_a7(" url("); // EX: ' url('
bfr.Add_byte(quote).Add(trg_url).Add_byte(quote); // EX: '"a.png"'
bfr.Add_byte(Byte_ascii.Paren_end); // EX: ')'
@@ -102,7 +102,7 @@ class Xob_css_tkn__import extends Xob_css_tkn__base {
mgr.Code_add(src_url);
}
@Override public int Write(Bry_bfr bfr, byte[] src) {
byte quote = quote_byte; if (quote == Byte_ascii.Nil) quote = Byte_ascii.Apos;
byte quote = quote_byte; if (quote == Byte_ascii.Null) quote = Byte_ascii.Apos;
bfr.Add_str_a7(" @import url("); // EX: ' @import url('
bfr.Add_byte(quote).Add(trg_url).Add_byte(quote); // EX: '"a.png"'
bfr.Add_byte(Byte_ascii.Paren_end); // EX: ')'

View File

@@ -41,7 +41,7 @@ class Crt__match_exact implements Criteria {
ary_len = v.length;
}
public void Val_as_obj_(Object v) {Val_as_bry_ary_((byte[][])v);}
public void Val_from_args(Hash_adp args) {throw Exc_.new_unimplemented();}
public void Val_from_args(Hash_adp args) {throw Err_.new_unimplemented();}
public String XtoStr() {return String_.Concat_any(this.To_str_name(), " ", String_.Ary(ary));}
public byte Tid_match_exact = 12;
}

View File

@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.bldrs.langs; import gplx.*; import gplx.xowa.*; import gplx.xowa.bldrs.*;
import gplx.core.primitives.*; import gplx.json.*; import gplx.php.*; import gplx.gfs.*;
import gplx.core.primitives.*; import gplx.core.json.*; import gplx.php.*; import gplx.gfs.*;
interface Json_itm_wkr {
void Read_kv_sub(byte[] key, byte[] val);
}
@@ -27,10 +27,10 @@ abstract class Json_itm_wkr__base implements Json_itm_wkr {
List_adp tmp_list = List_adp_.new_(); Byte_obj_ref tmp_result = Byte_obj_ref.zero_(); Bry_bfr tmp_bfr = Bry_bfr.reset_(16);
Json_doc jdoc = json_parser.Parse(src);
this.Exec_bgn();
Json_itm_nde root = jdoc.Root();
int subs_len = root.Subs_len();
Json_nde root = jdoc.Root();
int subs_len = root.Len();
for (int i = 0; i < subs_len; ++i) {
Json_itm itm = root.Subs_get_at(i);
Json_itm itm = root.Get_at(i);
switch (itm.Tid()) {
case Json_itm_.Tid_kv:
Json_itm_kv kv = (Json_itm_kv)itm;

View File

@@ -53,7 +53,7 @@ public class Xobc_utl_make_lang_kwds implements GfoInvkAble, Xol_lang_transform
for (int j = 0; j < cfg_grp_len; j++) {
Xobcl_kwd_row cfg_grp = cfg_lang.Grps()[j];
int kwd_id = Xol_kwd_grp_.Id_by_bry(cfg_grp.Key());
if (kwd_id == -1) throw Exc_.new_("could not find kwd for key", "key", String_.new_u8(cfg_grp.Key()));
if (kwd_id == -1) throw Err_.new_wo_type("could not find kwd for key", "key", String_.new_u8(cfg_grp.Key()));
Xol_kwd_grp kwd_grp = lang.Kwd_mgr().Get_at(kwd_id);
tmp.Clear();
if (kwd_grp == null) {

View File

@@ -34,7 +34,7 @@ public class Xobc_utl_make_lang_tst {
);
}
@Test public void Trailing_colon() {
fxt.Kwd_mgr().Parse_keep_trailing_colon(Bry_.new_u8("fr"), Bry_.new_u8(String_.Concat_lines_nl
fxt.Kwd_mgr().Parse_keep_trailing_colon(Bry_.new_a7("fr"), Bry_.new_u8(String_.Concat_lines_nl
( "if|if:~si:~"
, "ifeq|"
)));
@@ -61,7 +61,7 @@ public class Xobc_utl_make_lang_tst {
));
}
@Test public void Prepend_hash() {
fxt.Kwd_mgr().Parse_prepend_hash(Bry_.new_u8("fr"), Bry_.new_u8(String_.Concat_lines_nl
fxt.Kwd_mgr().Parse_prepend_hash(Bry_.new_a7("fr"), Bry_.new_u8(String_.Concat_lines_nl
( "if|if:~si:~"
, "ifeq|"
, "tag|tag~"
@@ -91,7 +91,7 @@ public class Xobc_utl_make_lang_tst {
));
}
@Test public void Add_words_hash() {
fxt.Kwd_mgr().Parse_add_words(Bry_.new_u8("fr"), Bry_.new_u8(String_.Concat_lines_nl
fxt.Kwd_mgr().Parse_add_words(Bry_.new_a7("fr"), Bry_.new_u8(String_.Concat_lines_nl
( "if|if_new:~if~"
, "ifeq|"
)));
@@ -116,7 +116,7 @@ public class Xobc_utl_make_lang_tst {
));
}
@Test public void Manual_text() {
fxt.Mgr().Parse_manual_text(Bry_.new_u8("fr"), Bry_.new_u8(String_.Concat_lines_nl
fxt.Mgr().Parse_manual_text(Bry_.new_a7("fr"), Bry_.new_u8(String_.Concat_lines_nl
( "app;"
))
, fxt.Mgr().Manual_text_end_hash());

View File

@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.bldrs.langs; import gplx.*; import gplx.xowa.*; import gplx.xowa.bldrs.*;
import gplx.core.primitives.*; import gplx.core.btries.*; import gplx.intl.*; import gplx.php.*;
import gplx.core.primitives.*; import gplx.core.btries.*; import gplx.core.consoles.*; import gplx.intl.*; import gplx.php.*;
import gplx.xowa.apps.fsys.*; import gplx.xowa.langs.*; import gplx.xowa.langs.numbers.*;
public class Xol_mw_lang_parser {
private Php_parser parser = new Php_parser(); private Php_evaluator evaluator;
@@ -76,7 +76,7 @@ public class Xol_mw_lang_parser {
String text = Io_mgr.I.LoadFilStr(url);
Xol_lang lang = lang_mgr.Get_by_key_or_new(Bry_.new_u8(lang_key));
this.Parse_core(text, lang, bfr, lang_transform);
} catch (Exception exc) {Exc_.Noop(exc); Tfds.WriteText("failed to parse " + url.NameOnly() + Err_.Message_gplx_brief(exc) + "\n");}
} catch (Exception exc) {Err_.Noop(exc); Console_adp__sys.I.Write_str_w_nl("failed to parse " + url.NameOnly() + Err_.Message_gplx_full(exc));}
}
}
private void Parse_file_xtns_php(Xoa_lang_mgr lang_mgr, Io_url mediawiki_root, Bry_bfr bfr, Xol_lang_transform lang_transform) {
@@ -89,7 +89,7 @@ public class Xol_mw_lang_parser {
String text = Io_mgr.I.LoadFilStr(url);
boolean prepend_hash = String_.Eq("ParserFunctions.i18n.magic", url.NameOnly());
this.Parse_xtn(text, url, lang_mgr, bfr, prepend_hash, lang_transform);
} catch (Exception exc) {Exc_.Noop(exc); Tfds.WriteText("failed to parse " + url.NameOnly() + Err_.Message_gplx_brief(exc));}
} catch (Exception exc) {Err_.Noop(exc); Console_adp__sys.I.Write_str_w_nl("failed to parse " + url.NameOnly() + Err_.Message_gplx_full(exc));}
}
}
private void Parse_file_json(Xoa_lang_mgr lang_mgr, Bry_bfr bfr, Xol_lang_transform lang_transform, Io_url root_dir) {
@@ -104,7 +104,7 @@ public class Xol_mw_lang_parser {
try {
Xol_lang lang = lang_mgr.Get_by_key_or_new(Bry_.new_u8(fil.NameOnly()));
Xob_i18n_parser.Load_msgs(true, lang, fil);
} catch (Exception exc) {Exc_.Noop(exc); Tfds.WriteText(String_.Format("failed to parse json file; url={0} err={1}\n", fil.Raw(), Err_.Message_gplx_brief(exc)));}
} catch (Exception exc) {Err_.Noop(exc); Console_adp__sys.I.Write_str_w_nl(String_.Format("failed to parse json file; url={0} err={1}\n", fil.Raw(), Err_.Message_gplx_full(exc)));}
}
}
}
@@ -191,14 +191,14 @@ public class Xol_mw_lang_parser {
break;
case Tid_magicwords:
if (line.Key_subs().length == 0) continue; // ignore lines like $magicWords = array();
if (line.Key_subs().length > 1) throw Exc_.new_("magicWords in xtn must have only 1 accessor", "len", line.Key_subs().length);
if (line.Key_subs().length > 1) throw Err_.new_wo_type("magicWords in xtn must have only 1 accessor", "len", line.Key_subs().length);
Php_key accessor = line.Key_subs()[0];
byte[] accessor_bry = accessor.Val_obj_bry();
if (Bry_.Eq(accessor_bry, lang_key)) // accessor must match lang_key
Parse_magicwords(line, lang.Key_bry(), lang.Kwd_mgr(), prepend_hash, lang_transform);
break;
}
} catch (Exception exc) {Exc_.Noop(exc); Tfds.WriteText("failed to parse " + url.NameOnly() + Err_.Message_gplx_brief(exc) + "\n");}
} catch (Exception exc) {Err_.Noop(exc); Console_adp__sys.I.Write_str_w_nl("failed to parse " + url.NameOnly() + Err_.Message_gplx_full(exc));}
}
}
}
@@ -292,7 +292,7 @@ public class Xol_mw_lang_parser {
}
private boolean Parse_int_as_bool(Php_itm itm) {
int rv = Php_itm_.Parse_int_or(itm, Int_.MinValue);
if (rv == Int_.MinValue) throw Exc_.new_("value must be 0 or 1", "val", String_.new_u8(itm.Val_obj_bry()));
if (rv == Int_.MinValue) throw Err_.new_wo_type("value must be 0 or 1", "val", String_.new_u8(itm.Val_obj_bry()));
return rv == 1;
}
private void Parse_separatorTransformTable(Php_line_assign line, Xol_num_mgr num_mgr) {
@@ -310,7 +310,7 @@ public class Xol_mw_lang_parser {
|| Bry_.Eq(key_bry, Bry_separatorTransformTable_comma)
)
num_mgr.Separators_mgr().Set(key_bry, val_bry);
else throw Exc_.new_unhandled(String_.new_u8(key_bry)); // NOTE: as of v1.22.2, all Messages only have a key of "." or "," DATE:2014-04-15
else throw Err_.new_unhandled(String_.new_u8(key_bry)); // NOTE: as of v1.22.2, all Messages only have a key of "." or "," DATE:2014-04-15
}
} private static final byte[] Bry_separatorTransformTable_comma = new byte[] {Byte_ascii.Comma}, Bry_separatorTransformTable_dot = new byte[] {Byte_ascii.Dot};
private void Parse_digitTransformTable(Php_line_assign line, Xol_num_mgr num_mgr) {

View File

@@ -262,7 +262,7 @@ class Xol_mw_lang_parser_fxt {
public Xol_mw_lang_parser_fxt Parse_core(String raw) {parser.Parse_core(raw, lang, tmp_bfr, Xol_lang_transform_null._); return this;}
public Xol_mw_lang_parser_fxt Parse_xtn (String raw) {parser.Parse_xtn(raw, Io_url_.Empty, app.Lang_mgr(), tmp_bfr, false, Xol_lang_transform_null._); lang.Evt_lang_changed(); return this;}
public Xol_mw_lang_parser_fxt Tst_keyword(int id, boolean case_sensitive, String... words) {
Xol_kwd_grp lst = lang.Kwd_mgr().Get_at(id); if (lst == null) throw Exc_.new_("list should not be null");
Xol_kwd_grp lst = lang.Kwd_mgr().Get_at(id); if (lst == null) throw Err_.new_wo_type("list should not be null");
Tfds.Eq(case_sensitive, lst.Case_match());
int actl_len = lst.Itms().length;
String[] actl = new String[actl_len];

View File

@@ -39,7 +39,7 @@ class Xob_subpage_parser {
}
}
catch (Exception e) {
throw Exc_.new_exc(e, "xo", "parse failed", "src", String_.new_u8(src));
throw Err_.new_exc(e, "xo", "parse failed", "src", String_.new_u8(src));
}
return (Xob_subpage_wiki[])wikis_list.To_ary(Xob_subpage_wiki.class);
}
@@ -62,7 +62,7 @@ class Xob_subpage_parser {
case Php_itm_.Tid_var:
return Xol_mw_lang_parser.Id_by_mw_name(((Php_itm)itm).Val_obj_bry());
default:
throw Exc_.new_unhandled(itm.Itm_tid());
throw Err_.new_unhandled(itm.Itm_tid());
}
}
private boolean Parse_ns_enabled(Php_itm itm) {
@@ -74,7 +74,7 @@ class Xob_subpage_parser {
case Php_itm_.Tid_bool_true:
return true;
default:
throw Exc_.new_unhandled(itm.Itm_tid());
throw Err_.new_unhandled(itm.Itm_tid());
}
}
}

View File

@@ -30,7 +30,7 @@ public class Xob_import_cfg {
if (src_fil_xml == null && src_fil_bz2 == null) return wiki.Fsys_mgr().Root_dir();
else if (src_fil_xml != null) return src_fil_xml.OwnerDir();
else if (src_fil_bz2 != null) return src_fil_bz2.OwnerDir();
else throw Exc_.new_("unknown src dir");
else throw Err_.new_wo_type("unknown src dir");
}
public Io_stream_rdr Src_rdr() {
if (src_fil_xml == null && src_fil_bz2 == null) { // will usually be null; non-null when user specifies src through command-line

View File

@@ -40,7 +40,7 @@ public class Xob_import_marker {
case Gfui_dlg_msg_.Btn_yes: Xob_cleanup_cmd.Delete_wiki_sql(wiki); End(wiki); return false; // delete wiki
case Gfui_dlg_msg_.Btn_no: End(wiki); return true; // delete marker
case Gfui_dlg_msg_.Btn_cancel: return true; // noop
default: throw Exc_.new_unhandled(rslt);
default: throw Err_.new_unhandled(rslt);
}
}
private static Io_url url_(Xowe_wiki wiki) {

View File

@@ -27,7 +27,7 @@ public class Xob_siteinfo_parser {
int end = Bry_finder.Find_fwd(src, Bry_siteinfo_end, bgn); if (end == Bry_.NotFound) return null;
return Bry_.Mid(src, bgn, end + Bry_siteinfo_end.length);
}
catch (Exception e) {Exc_.Noop(e); return null;}
catch (Exception e) {Err_.Noop(e); return null;}
finally {rdr.Rls();}
}
public static void Siteinfo_parse(Xowe_wiki wiki, Gfo_usr_dlg usr_dlg, String siteinfo_str) {
@@ -42,7 +42,7 @@ public class Xob_siteinfo_parser {
|| String_.Eq(sub_nde.Name(), "case")) siteinfo_misc_bfr.Add_str(sub_nde.Text_inner()).Add_byte_pipe();
else if ( String_.Eq(sub_nde.Name(), "base")) {
String mainpage_url = sub_nde.Text_inner();
byte[] mainpage_name = Siteinfo_parse_mainpage(Bry_.new_u8(mainpage_url)); if (mainpage_name == null) throw Exc_.new_("could not extract mainpage", "mainpage", mainpage_url);
byte[] mainpage_name = Siteinfo_parse_mainpage(Bry_.new_u8(mainpage_url)); if (mainpage_name == null) throw Err_.new_wo_type("could not extract mainpage", "mainpage", mainpage_url);
wiki.Props().Main_page_(mainpage_name);
}
else if ( String_.Eq(sub_nde.Name(), "namespaces")) {
@@ -59,7 +59,7 @@ public class Xob_siteinfo_parser {
int bgn_pos = Bry_finder.Find_fwd(url, wiki_bry, 0);
if (bgn_pos == Bry_.NotFound) { // "/wiki/" not found; EX: http://mywiki/My_main_page
bgn_pos = Bry_finder.Find_bwd(url, Byte_ascii.Slash); // ASSUME last segment is page
if (bgn_pos == Bry_.NotFound) throw Exc_.new_("could not parse main page url", "url", String_.new_u8(url));
if (bgn_pos == Bry_.NotFound) throw Err_.new_wo_type("could not parse main page url", "url", String_.new_u8(url));
++bgn_pos; // add 1 to position after slash
}
else // "/wiki/" found
@@ -79,7 +79,7 @@ public class Xob_siteinfo_parser {
String name = sub_nde.Text_inner();
ns_mgr.Add_new(ns_id, Bry_.new_u8(name), case_match, false);
}
catch (Exception e) {throw Exc_.new_exc(e, "xo", "parse failed", "inner", sub_nde.Text_inner());}
catch (Exception e) {throw Err_.new_exc(e, "xo", "parse failed", "inner", sub_nde.Text_inner());}
}
ns_mgr.Init_w_defaults();
}

View File

@@ -106,7 +106,7 @@ public class Xob_xml_parser {
case Xob_xml_parser_.Id_id_bgn_frag: case Xob_xml_parser_.Id_timestamp_bgn_frag:
data_bgn = pos; /*warn*/
break;
default: throw Exc_.new_unhandled(itm.Tid()); // shouldn't happen
default: throw Err_.new_unhandled(itm.Tid()); // shouldn't happen
}
}
}

View File

@@ -43,28 +43,28 @@ public class Xob_xml_parser_tst {
@Test public void Xml() {
Xowd_page_itm doc = doc_(1, "a", "&quot;a &amp; b &lt;&gt; a | b&quot;", Date_1);
fil = page_bldr.Add(doc).XtoByteStreamRdr();
tst_parse(fil, doc.Text_(Bry_.new_u8("\"a & b <> a | b\"")), 0);
tst_parse(fil, doc.Text_(Bry_.new_a7("\"a & b <> a | b\"")), 0);
}
@Test public void Tab() {
Xowd_page_itm doc = doc_(1, "a", "a \t b", Date_1);
fil = page_bldr.Add(doc).XtoByteStreamRdr();
tst_parse(fil, doc.Text_(Bry_.new_u8("a &#09; b")), 0);
tst_parse(fil, doc.Text_(Bry_.new_a7("a &#09; b")), 0);
}
@Test public void Tab_disable() {
Xowd_page_itm doc = doc_(1, "a", "a \t b", Date_1);
page_parser.Trie_tab_del_();
fil = page_bldr.Add(doc).XtoByteStreamRdr();
tst_parse(fil, doc.Text_(Bry_.new_u8("a \t b")), 0);
tst_parse(fil, doc.Text_(Bry_.new_a7("a \t b")), 0);
}
@Test public void Cr_nl() {
Xowd_page_itm doc = doc_(1, "a", "a \r\n b", Date_1);
fil = page_bldr.Add(doc).XtoByteStreamRdr();
tst_parse(fil, doc.Text_(Bry_.new_u8("a \n b")), 0);
tst_parse(fil, doc.Text_(Bry_.new_a7("a \n b")), 0);
}
@Test public void Cr() {
Xowd_page_itm doc = doc_(1, "a", "a \r b", Date_1);
fil = page_bldr.Add(doc).XtoByteStreamRdr();
tst_parse(fil, doc.Text_(Bry_.new_u8("a \n b")), 0);
tst_parse(fil, doc.Text_(Bry_.new_a7("a \n b")), 0);
}
@Test public void Text_long() {
String s = String_.Repeat("a", 1024);