1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00

'v3.3.4.1'

This commit is contained in:
gnosygnu
2016-03-27 23:44:59 -04:00
parent de67253a9c
commit baaef32df2
903 changed files with 13339 additions and 8695 deletions

View File

@@ -39,8 +39,8 @@ public class Xoapi_orig_base_tst {
class Xoapi_orig_base_fxt {
private Xoae_app app; private Xowe_wiki wiki; private Xoapi_orig_rslts rv = new Xoapi_orig_rslts();
public void Clear() {
this.app = Xoa_app_fxt.app_();
this.wiki = Xoa_app_fxt.wiki_tst_(app);
this.app = Xoa_app_fxt.Make__app__edit();
this.wiki = Xoa_app_fxt.Make__wiki__edit(app);
}
public void Bld_api_url_tst(String ttl_str, int w, int h, String expd) {
String actl = Xoapi_orig_wmf.Bld_api_url(wiki.Domain_bry(), Bry_.new_u8(ttl_str), w, h);

View File

@@ -91,7 +91,7 @@ public class Xowm_dump_file {
int dump_type_int = Xowm_dump_type_.parse_by_file(dump_type_bry);
byte[] dump_file_ext = Xowm_dump_file_.Ext_xml_bz2;
switch (dump_type_int) {
case Xowm_dump_type_.Int__page_props: case Xowm_dump_type_.Int__categorylinks: case Xowm_dump_type_.Int__image:
case Xowm_dump_type_.Int__page_props: case Xowm_dump_type_.Int__categorylinks: case Xowm_dump_type_.Int__image: case Xowm_dump_type_.Int__pagelinks:
dump_file_ext = Xowm_dump_file_.Ext_sql_gz;
break;
}

View File

@@ -23,9 +23,9 @@ public class Xowm_dump_type_ {
Object o = regy.Match_bgn(src, bgn, end); if (o == null) throw Err_.new_("wm.dump", "unknown dump file type", "src", src);
return ((Int_obj_val)o).Val();
}
public static final int Int__pages_articles = 1, Int__pages_meta_current = 2, Int__categorylinks = 3, Int__page_props = 4, Int__image = 5;
public static final int Int__pages_articles = 1, Int__pages_meta_current = 2, Int__categorylinks = 3, Int__page_props = 4, Int__image = 5, Int__pagelinks = 6;
public static final String Str__pages_articles = "pages-articles", Str__pages_meta_current = "pages-meta-current"
, Str__categorylinks = "categorylinks", Str__page_props = "page_props", Str__image = "image"
, Str__categorylinks = "categorylinks", Str__page_props = "page_props", Str__image = "image", Str__pagelinks = "pagelinks"
;
private static final Btrie_slim_mgr regy = Btrie_slim_mgr.ci_a7()
.Add_str_int(Str__pages_articles , Int__pages_articles)
@@ -33,6 +33,7 @@ public class Xowm_dump_type_ {
.Add_str_int(Str__categorylinks , Int__categorylinks)
.Add_str_int(Str__page_props , Int__page_props)
.Add_str_int(Str__image , Int__image)
.Add_str_int(Str__pagelinks , Int__pagelinks)
;
public static String To_str(byte v) {
switch (v) {
@@ -41,6 +42,7 @@ public class Xowm_dump_type_ {
case Int__categorylinks : return Str__categorylinks;
case Int__page_props : return Str__page_props;
case Int__image : return Str__image;
case Int__pagelinks : return Str__pagelinks;
default : throw Err_.new_unhandled(v);
}
}

View File

@@ -21,24 +21,24 @@ import gplx.xowa.wikis.nss.*;
import gplx.xowa.wikis.domains.*; import gplx.xowa.wikis.xwikis.*; import gplx.xowa.wikis.xwikis.bldrs.*;
public class Site_core_db {
private Db_conn conn;
private final Site_core_tbl tbl__core;
private final Site_kv_tbl tbl__general;
private final Site_namespace_tbl tbl__namespace;
private final Site_statistic_tbl tbl__statistic;
private final Site_interwikimap_tbl tbl__interwikimap;
private final Site_namespacealias_tbl tbl__namespacealias;
private final Site_specialpagealias_tbl tbl__specialpagealias;
private final Site_library_tbl tbl__library;
private final Site_extension_tbl tbl__extension;
private final Site_skin_tbl tbl__skin;
private final Site_magicword_tbl tbl__magicword;
private final Site_val_tbl tbl__functionhook;
private final Site_showhook_tbl tbl__showhook;
private final Site_val_tbl tbl__extensiontag;
private final Site_val_tbl tbl__protocol;
private final Site_kv_tbl tbl__defaultoption;
private final Site_language_tbl tbl__language;
private final Db_tbl[] tbl_ary;
private final Site_core_tbl tbl__core;
private final Site_kv_tbl tbl__general;
private final Site_namespace_tbl tbl__namespace;
private final Site_statistic_tbl tbl__statistic;
private final Site_interwikimap_tbl tbl__interwikimap;
private final Site_namespacealias_tbl tbl__namespacealias;
private final Site_specialpagealias_tbl tbl__specialpagealias;
private final Site_library_tbl tbl__library;
private final Site_extension_tbl tbl__extension;
private final Site_skin_tbl tbl__skin;
private final Site_magicword_tbl tbl__magicword;
private final Site_val_tbl tbl__functionhook;
private final Site_showhook_tbl tbl__showhook;
private final Site_val_tbl tbl__extensiontag;
private final Site_val_tbl tbl__protocol;
private final Site_kv_tbl tbl__defaultoption;
private final Site_language_tbl tbl__language;
private final Db_tbl[] tbl_ary;
public Site_core_db(Io_url db_url) {
Db_conn_bldr_data conn_data = Db_conn_bldr.Instance.Get_or_new(db_url);
this.conn = conn_data.Conn(); boolean created = conn_data.Created();
@@ -120,7 +120,7 @@ public class Site_core_db {
int len = hash.Count();
for (int i = 0; i < len; ++i) {
Site_interwikimap_itm itm = (Site_interwikimap_itm)hash.Get_at(i);
Xow_xwiki_itm xwiki_itm = Xow_xwiki_itm_bldr.Instance.Bld_mw(domain_itm, itm.Prefix(), itm.Url(), null);
Xow_xwiki_itm xwiki_itm = Xow_xwiki_itm_bldr.Instance.Bld_mw(domain_itm, itm.Prefix, itm.Url, null);
xwiki_mgr.Add_itm(xwiki_itm);
}
}

View File

@@ -32,7 +32,7 @@ public class Site_core_tbl implements Db_tbl {
conn.Rls_reg(this);
}
public Db_conn Conn() {return conn;}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv)));}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);
stmt_insert = Db_stmt_.Rls(stmt_insert);

View File

@@ -43,7 +43,7 @@ class Site_extension_tbl implements Db_tbl {
this.fld_credits = flds.Add_str("credits", 255);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_type, fld_name)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_type, fld_name)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -17,19 +17,27 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.bldrs.wms.sites; import gplx.*; import gplx.xowa.*; import gplx.xowa.bldrs.*; import gplx.xowa.bldrs.wms.*;
class Site_interwikimap_itm implements To_str_able {
public Site_interwikimap_itm(byte[] prefix, boolean local, byte[] language, boolean localinterwiki, byte[] url, boolean protorel) {
this.prefix = prefix;
this.local = local;
this.language = language;
this.localinterwiki = localinterwiki;
this.url = url;
this.protorel = protorel;
public Site_interwikimap_itm(byte[] prefix, boolean local
, boolean extralanglink, byte[] linktext, byte[] sitename
, byte[] language, boolean localinterwiki, byte[] url, boolean protorel) {
this.Prefix = prefix;
this.Local = local;
this.Extralanglink = extralanglink;
this.Linktext = linktext;
this.Sitename = sitename;
this.Language = language;
this.Localinterwiki = localinterwiki;
this.Url = url;
this.Protorel = protorel;
}
public byte[] Prefix() {return prefix;} private final byte[] prefix;
public boolean Local() {return local;} private final boolean local;
public byte[] Language() {return language;} private final byte[] language;
public boolean Localinterwiki() {return localinterwiki;} private final boolean localinterwiki;
public byte[] Url() {return url;} private final byte[] url;
public boolean Protorel() {return protorel;} private final boolean protorel;
public String To_str() {return String_.Concat_with_obj("|", prefix, local, language, url, protorel);}
public final byte[] Prefix;
public final boolean Local;
public final boolean Extralanglink;
public final byte[] Linktext;
public final byte[] Sitename;
public final byte[] Language;
public final boolean Localinterwiki;
public final byte[] Url;
public final boolean Protorel;
public String To_str() {return String_.Concat_with_obj("|", Prefix, Local, Extralanglink, Linktext, Sitename, Language, Localinterwiki, Url, Protorel);}
}

View File

@@ -18,22 +18,25 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.bldrs.wms.sites; import gplx.*; import gplx.xowa.*; import gplx.xowa.bldrs.*; import gplx.xowa.bldrs.wms.*;
import gplx.dbs.*;
class Site_interwikimap_tbl implements Db_tbl {
private static final String tbl_name = "site_interwikimap"; private final Dbmeta_fld_list flds = new Dbmeta_fld_list();
private final String fld_site_abrv, fld_prefix, fld_local, fld_language, fld_localinterwiki, fld_url, fld_protorel;
private final Db_conn conn;
private static final String tbl_name = "site_interwikimap"; private final Dbmeta_fld_list flds = new Dbmeta_fld_list();
private final String fld_site_abrv, fld_prefix, fld_local, fld_extralanglink, fld_linktext, fld_sitename, fld_language, fld_localinterwiki, fld_url, fld_protorel;
private final Db_conn conn;
private Db_stmt stmt_select, stmt_insert, stmt_delete;
public Site_interwikimap_tbl(Db_conn conn) {
this.conn = conn;
this.fld_site_abrv = flds.Add_str("site_abrv", 255);
this.fld_prefix = flds.Add_str("prefix", 255);
this.fld_local = flds.Add_bool("local");
this.fld_extralanglink = flds.Add_bool("extralanglink");
this.fld_linktext = flds.Add_str("linktext", 255);
this.fld_sitename = flds.Add_str("sitename", 255);
this.fld_language = flds.Add_str("language", 255);
this.fld_localinterwiki = flds.Add_bool("localinterwiki");
this.fld_url = flds.Add_str("url", 255);
this.fld_protorel = flds.Add_bool("protorel");
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_prefix)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_prefix)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);
@@ -49,12 +52,15 @@ class Site_interwikimap_tbl implements Db_tbl {
Site_interwikimap_itm itm = new Site_interwikimap_itm
( rdr.Read_bry_by_str(fld_prefix)
, rdr.Read_bool_by_byte(fld_local)
, rdr.Read_bool_by_byte(fld_extralanglink)
, rdr.Read_bry_by_str(fld_linktext)
, rdr.Read_bry_by_str(fld_sitename)
, rdr.Read_bry_by_str(fld_language)
, rdr.Read_bool_by_byte(fld_localinterwiki)
, rdr.Read_bry_by_str(fld_url)
, rdr.Read_bool_by_byte(fld_protorel)
);
list.Add(itm.Prefix(), itm);
list.Add(itm.Prefix, itm);
}
}
finally {rdr.Rls();}
@@ -66,14 +72,17 @@ class Site_interwikimap_tbl implements Db_tbl {
int len = list.Count();
for (int i = 0; i < len; ++i) {
Site_interwikimap_itm itm = (Site_interwikimap_itm)list.Get_at(i);
Insert(site_abrv, itm.Prefix(), itm.Local(), itm.Language(), itm.Localinterwiki(), itm.Url(), itm.Protorel());
Insert(site_abrv, itm.Prefix, itm.Local, itm.Extralanglink, itm.Linktext, itm.Sitename, itm.Language, itm.Localinterwiki, itm.Url, itm.Protorel);
}
}
private void Insert(byte[] site_abrv, byte[] prefix, boolean local, byte[] language, boolean localinterwiki, byte[] url, boolean protorel) {
private void Insert(byte[] site_abrv, byte[] prefix, boolean local, boolean extralanglink, byte[] linktext, byte[] sitename, byte[] language, boolean localinterwiki, byte[] url, boolean protorel) {
stmt_insert.Clear()
.Val_bry_as_str(fld_site_abrv , site_abrv)
.Val_bry_as_str(fld_prefix , prefix)
.Val_bool_as_byte(fld_local , local)
.Val_bool_as_byte(fld_extralanglink , extralanglink)
.Val_bry_as_str(fld_linktext , linktext)
.Val_bry_as_str(fld_sitename , sitename)
.Val_bry_as_str(fld_language , language)
.Val_bool_as_byte(fld_localinterwiki , localinterwiki)
.Val_bry_as_str(fld_url , url)

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.bldrs.wms.sites; import gplx.*; import gplx.xowa.*; import gplx.xowa.bldrs.*; import gplx.xowa.bldrs.wms.*;
import org.junit.*; import gplx.langs.jsons.*; import gplx.xowa.wikis.nss.*;
public class Site_json_parser_tst {
private final Site_json_parser_fxt fxt = new Site_json_parser_fxt();
private final Site_json_parser_fxt fxt = new Site_json_parser_fxt();
@Before public void init() {Gfo_usr_dlg_.Instance = Gfo_usr_dlg_.Test_console();}
@After public void term() {Gfo_usr_dlg_.Instance = Gfo_usr_dlg_.Noop;}
@Test public void General() {
@@ -44,7 +44,7 @@ public class Site_json_parser_tst {
, " }"
, "}"
));
fxt.Test_general(KeyVal_.new_("mainpage", "Main Page"), KeyVal_.new_("imagewhitelistenabled", ""), KeyVal_.new_("timeoffset", "0"), KeyVal_.new_("thumblimits", "120|150"), KeyVal_.new_("imagelimits", "320=240|640=480"));
fxt.Test_general(Keyval_.new_("mainpage", "Main Page"), Keyval_.new_("imagewhitelistenabled", ""), Keyval_.new_("timeoffset", "0"), Keyval_.new_("thumblimits", "120|150"), Keyval_.new_("imagelimits", "320=240|640=480"));
}
@Test public void Namespace() {
fxt.Exec_parse(String_.Concat_lines_nl_skip_last
@@ -114,6 +114,9 @@ public class Site_json_parser_tst {
, " }"
, " , { 'prefix': 'ar'"
, " , 'local': ''"
, " , 'extralanglink': ''"
, " , 'linktext': 'More languages'"
, " , 'sitename': 'Multilingual Wikisource'"
, " , 'language': '\u0627\u0644\u0639\u0631\u0628\u064a\u0629'"
, " , 'url': 'https://ar.wikipedia.org/wiki/$1'"
, " , 'protorel': ''"
@@ -122,8 +125,8 @@ public class Site_json_parser_tst {
, "}"
));
fxt.Test_interwikimap
( fxt.Make_interwikimap("aquariumwiki" , Bool_.N, null , Bool_.N, "http://www.theaquariumwiki.com/$1" , Bool_.N)
, fxt.Make_interwikimap("ar" , Bool_.Y, "العربية" , Bool_.N, "https://ar.wikipedia.org/wiki/$1" , Bool_.Y)
( fxt.Make_interwikimap("aquariumwiki" , Bool_.N, Bool_.N, null , null , null , Bool_.N, "http://www.theaquariumwiki.com/$1" , Bool_.N)
, fxt.Make_interwikimap("ar" , Bool_.Y, Bool_.Y, "More languages", "Multilingual Wikisource" , "العربية" , Bool_.N, "https://ar.wikipedia.org/wiki/$1" , Bool_.Y)
);
}
@Test public void Namespacealias() {
@@ -343,7 +346,7 @@ public class Site_json_parser_tst {
, " }"
, "}"
));
fxt.Test_defaultoption(KeyVal_.new_("globaluserpage", "true"), KeyVal_.new_("cols", "80"), KeyVal_.new_("echo-email-format", "html"));
fxt.Test_defaultoption(Keyval_.new_("globaluserpage", "true"), Keyval_.new_("cols", "80"), Keyval_.new_("echo-email-format", "html"));
}
@Test public void Language() {
fxt.Exec_parse(String_.Concat_lines_nl_skip_last
@@ -376,8 +379,8 @@ public class Site_json_parser_tst {
// }
}
class Site_json_parser_fxt {
private final Json_parser json_parser = new Json_parser();
private final Site_json_parser site_meta_parser;
private final Json_parser json_parser = new Json_parser();
private final Site_json_parser site_meta_parser;
private Site_meta_itm site_meta;
public Site_json_parser_fxt() {
this.site_meta_parser = new Site_json_parser(json_parser);
@@ -391,7 +394,9 @@ class Site_json_parser_fxt {
return new Site_namespace_itm(id, case_tid_is_cs ? Xow_ns_case_.Bry__all : Xow_ns_case_.Bry__1st, Bry_.new_u8_safe(canonical), Bry_.new_u8_safe(localized), subpages, content, Bry_.new_u8_safe(defaultcontentmodel));
}
public Site_statistic_itm Make_statistic(long pages, long articles, long edits, long images, long users, long activeusers, long admins, long jobs, long queued_massmessages) {return new Site_statistic_itm().Ctor(pages, articles, edits, images, users, activeusers, admins, jobs, queued_massmessages);}
public Site_interwikimap_itm Make_interwikimap(String prefix, boolean local, String language, boolean localinterwiki, String url, boolean protorel) {return new Site_interwikimap_itm(Bry_.new_u8_safe(prefix), local, Bry_.new_u8_safe(language), localinterwiki, Bry_.new_u8_safe(url), protorel);}
public Site_interwikimap_itm Make_interwikimap(String prefix, boolean local, boolean extralanglink, String linktext, String sitename, String language, boolean localinterwiki, String url, boolean protorel) {
return new Site_interwikimap_itm(Bry_.new_u8_safe(prefix), local, extralanglink, Bry_.new_u8_safe(linktext), Bry_.new_u8_safe(sitename), Bry_.new_u8_safe(language), localinterwiki, Bry_.new_u8_safe(url), protorel);
}
public Site_namespacealias_itm Make_namespacealias(int id, String alias) {return new Site_namespacealias_itm(id, Bry_.new_u8_safe(alias));}
public Site_specialpagealias_itm Make_specialpagealias(String realname, String... aliases) {return new Site_specialpagealias_itm(Bry_.new_u8_safe(realname), Bry_.Ary(aliases));}
public Site_library_itm Make_library(String name, String version) {return new Site_library_itm(Bry_.new_u8_safe(name), Bry_.new_u8_safe(version));}
@@ -407,7 +412,7 @@ class Site_json_parser_fxt {
public Site_magicword_itm Make_magicword(String name, boolean case_match, String... aliases) {return new Site_magicword_itm(Bry_.new_u8_safe(name), case_match, Bry_.Ary(aliases));}
public Site_showhook_itm Make_showhook(String name, String scribunto, String... subscribers) {return new Site_showhook_itm(Bry_.new_u8_safe(name), Bry_.new_u8_safe(scribunto), Bry_.Ary(subscribers));}
public Site_language_itm Make_language(String code, String name) {return new Site_language_itm(Bry_.new_u8_safe(code), Bry_.new_u8_safe(name));}
public void Test_general(KeyVal... expd) {Tfds.Eq_ary_str(expd, (KeyVal[])site_meta.General_list().To_ary(KeyVal.class));}
public void Test_general(Keyval... expd) {Tfds.Eq_ary_str(expd, (Keyval[])site_meta.General_list().To_ary(Keyval.class));}
public void Test_namespace(Site_namespace_itm... expd) {Tfds.Eq_ary_str(expd, (Site_namespace_itm[])site_meta.Namespace_list().To_ary(Site_namespace_itm.class));}
public void Test_statistic(Site_statistic_itm expd) {Tfds.Eq_str_intf(expd, site_meta.Statistic_itm());}
public void Test_interwikimap(Site_interwikimap_itm... expd) {Tfds.Eq_ary_str(expd, (Site_interwikimap_itm[])site_meta.Interwikimap_list().To_ary(Site_interwikimap_itm.class));}
@@ -421,6 +426,6 @@ class Site_json_parser_fxt {
public void Test_showhook(Site_showhook_itm... expd) {Tfds.Eq_ary_str(expd, (Site_showhook_itm[])site_meta.Showhook_list().To_ary(Site_showhook_itm.class));}
public void Test_extensiontag(String... expd) {Tfds.Eq_ary_str(expd, String_.Ary((byte[][])site_meta.Extensiontag_list().To_ary(byte[].class)));}
public void Test_protocol(String... expd) {Tfds.Eq_ary_str(expd, String_.Ary((byte[][])site_meta.Protocol_list().To_ary(byte[].class)));}
public void Test_defaultoption(KeyVal... expd) {Tfds.Eq_ary_str(expd, (KeyVal[])site_meta.Defaultoption_list().To_ary(KeyVal.class));}
public void Test_defaultoption(Keyval... expd) {Tfds.Eq_ary_str(expd, (Keyval[])site_meta.Defaultoption_list().To_ary(Keyval.class));}
public void Test_language(Site_language_itm... expd) {Tfds.Eq_ary_str(expd, (Site_language_itm[])site_meta.Language_list().To_ary(Site_language_itm.class));}
}

View File

@@ -29,7 +29,7 @@ class Site_kv_tbl implements Db_tbl {
this.fld_val = flds.Add_str("val", 255);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_key)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_key)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);
@@ -44,7 +44,7 @@ class Site_kv_tbl implements Db_tbl {
while (rdr.Move_next()) {
String key = rdr.Read_str(fld_key);
String val = rdr.Read_str(fld_val);
list.Add(key, KeyVal_.new_(key, val));
list.Add(key, Keyval_.new_(key, val));
}
}
finally {rdr.Rls();}
@@ -55,7 +55,7 @@ class Site_kv_tbl implements Db_tbl {
stmt_delete.Clear().Crt_bry_as_str(fld_site_abrv, site_abrv).Exec_delete();
int len = list.Count();
for (int i = 0; i < len; ++i) {
KeyVal itm = (KeyVal)list.Get_at(i);
Keyval itm = (Keyval)list.Get_at(i);
Insert(site_abrv, itm.Key(), itm.Val_to_str_or_empty());
}
}

View File

@@ -29,7 +29,7 @@ class Site_language_tbl implements Db_tbl {
this.fld_name = flds.Add_str("name", 255);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_code)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_code)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -29,7 +29,7 @@ class Site_library_tbl implements Db_tbl {
this.fld_version = flds.Add_str("version", 255);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_name)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_name)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -30,7 +30,7 @@ class Site_magicword_tbl implements Db_tbl {
this.fld_aliases = flds.Add_str("aliases", 2048);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_name)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_name)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -18,9 +18,9 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.bldrs.wms.sites; import gplx.*; import gplx.xowa.*; import gplx.xowa.bldrs.*; import gplx.xowa.bldrs.wms.*;
import gplx.core.primitives.*; import gplx.langs.jsons.*;
class Site_meta_parser__general extends Json_parser__list_nde__base {
private final Site_meta_parser__general__kv parser__image = new Site_meta_parser__general__kv("imagelimits", "width", "height");
private final Site_meta_parser__general__lone parser__fallback = new Site_meta_parser__general__lone("fallback", "code");
private final Site_meta_parser__general__kv parser__variants = new Site_meta_parser__general__kv("variants", "code", "name");
private final Site_meta_parser__general__kv parser__image = new Site_meta_parser__general__kv("imagelimits", "width", "height");
private final Site_meta_parser__general__lone parser__fallback = new Site_meta_parser__general__lone("fallback", "code");
private final Site_meta_parser__general__kv parser__variants = new Site_meta_parser__general__kv("variants", "code", "name");
private String cur_context;
public void Parse(String context, Ordered_hash list, Json_nde nde) {
this.cur_context = context + ".general";
@@ -38,7 +38,7 @@ class Site_meta_parser__general extends Json_parser__list_nde__base {
}
}
private static final int Tid__fallback = 1, Tid__variants = 2, Tid__thumblimits = 3, Tid__imagelimits = 4, Tid__imagelimits__width = 5, Tid__imagelimits__height = 6;
private static final Hash_adp_bry complex_props = Hash_adp_bry.cs()
private static final Hash_adp_bry complex_props = Hash_adp_bry.cs()
.Add_str_int("fallback" , Tid__fallback)
.Add_str_int("variants" , Tid__variants)
.Add_str_int("thumblimits" , Tid__thumblimits)
@@ -120,7 +120,7 @@ class Site_meta_parser__statistic extends Json_parser__list_nde__base {
class Site_meta_parser__interwikimap extends Json_parser__list_nde__base {
private Ordered_hash list;
public Site_meta_parser__interwikimap() {
this.Ctor("prefix", "local", "language", "localinterwiki", "url", "protorel");
this.Ctor("prefix", "local", "extralanglink", "linktext", "sitename", "language", "localinterwiki", "url", "protorel");
}
public void Parse(String context, Ordered_hash list, Json_ary nde) {
this.list = list;
@@ -128,7 +128,10 @@ class Site_meta_parser__interwikimap extends Json_parser__list_nde__base {
}
@Override protected void Parse_hook_nde(Json_nde sub, Json_kv[] atrs) {
byte[] key = Kv__bry(atrs, 0);
list.Add(key, new Site_interwikimap_itm(key, Kv__mw_bool(atrs, 1), Kv__bry_or_empty(atrs, 2), Kv__mw_bool(atrs, 3), Kv__bry(atrs, 4), Kv__mw_bool(atrs, 5)));
list.Add(key
, new Site_interwikimap_itm(key
, Kv__mw_bool(atrs, 1), Kv__mw_bool(atrs, 2), Kv__bry_or_empty(atrs, 3), Kv__bry_or_empty(atrs, 4)
, Kv__bry_or_empty(atrs, 5), Kv__mw_bool(atrs, 6), Kv__bry(atrs, 7), Kv__mw_bool(atrs, 8)));
}
}
class Site_meta_parser__namespacealias extends Json_parser__list_nde__base {
@@ -246,7 +249,7 @@ class Site_meta_parser__showhook extends Json_parser__list_nde__base {
}
list.Add(key, new Site_showhook_itm(key, scribunto, subscribers_bry_ary));
}
private final static byte[] Key__scribunto = Bry_.new_a7("scribunto");
private final static byte[] Key__scribunto = Bry_.new_a7("scribunto");
}
class Site_meta_parser__language extends Json_parser__list_nde__base {
private Ordered_hash list;

View File

@@ -34,7 +34,7 @@ public class Site_namespace_tbl implements Db_tbl {
this.fld_defaultcontentmodel = flds.Add_str("defaultcontentmodel", 255);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_id)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_id)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -29,7 +29,7 @@ class Site_namespacealias_tbl implements Db_tbl {
this.fld_alias = flds.Add_str("alias", 2048);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_normal_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_id, fld_alias)));} // NOTE: kk.w has duplicate entries in json
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_normal_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_id, fld_alias)));} // NOTE: kk.w has duplicate entries in json
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -30,7 +30,7 @@ class Site_showhook_tbl implements Db_tbl {
this.fld_subscribers = flds.Add_str("subscribers", 2048);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_name)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_name)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -31,7 +31,7 @@ class Site_skin_tbl implements Db_tbl {
this.fld_unusable = flds.Add_bool("unusable");
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_code)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_code)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -29,7 +29,7 @@ class Site_specialpagealias_tbl implements Db_tbl {
this.fld_aliases = flds.Add_str("aliases", 2048);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main")), fld_site_abrv, fld_realname)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main")), fld_site_abrv, fld_realname)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -36,7 +36,7 @@ class Site_statistic_tbl implements Db_tbl {
this.fld_queued_massmessages = flds.Add_long("queued_massmessages");
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);

View File

@@ -29,7 +29,7 @@ class Site_val_tbl implements Db_tbl {
this.fld_val = flds.Add_str("val", 255);
conn.Rls_reg(this);
}
public void Create_tbl() {conn.Ddl_create_tbl(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_val)));}
public void Create_tbl() {conn.Meta_tbl_create(Dbmeta_tbl_itm.New(tbl_name, flds, Dbmeta_idx_itm.new_unique_by_name(tbl_name, Dbmeta_idx_itm.Bld_idx_name(tbl_name, "main"), fld_site_abrv, fld_val)));}
public void Delete_all() {conn.Stmt_delete(tbl_name, Dbmeta_fld_itm.Str_ary_empty).Exec_delete();}
public void Rls() {
stmt_select = Db_stmt_.Rls(stmt_select);