mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v1.7.4.1
This commit is contained in:
52
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_frag_row.java
Normal file
52
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_frag_row.java
Normal file
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
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.dbs.hdumps; import gplx.*; import gplx.xowa.*; import gplx.xowa.dbs.*;
|
||||
import gplx.ios.*;
|
||||
public class Hdump_frag_row {
|
||||
public int Frag_id() {return frag_id;} private int frag_id;
|
||||
public int Page_id() {return page_id;} private int page_id;
|
||||
public int Frag_tid() {return frag_tid;} private int frag_tid;
|
||||
public byte[] Frag_key() {return frag_key;} private byte[] frag_key;
|
||||
public byte[] Frag_text() {return frag_text;} private byte[] frag_text;
|
||||
public Hdump_frag_row Ctor(int frag_id, int page_id, int frag_tid, byte[] frag_key, byte[] frag_text) {
|
||||
this.frag_id = frag_id;
|
||||
this.page_id = page_id;
|
||||
this.frag_tid = frag_tid;
|
||||
this.frag_key = frag_key;
|
||||
this.frag_text = frag_text;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
class Hdump_frag_tid {
|
||||
public static final int Tid_file = 1, Tid_title = 2, Tid_sidebar = 3;
|
||||
public static final String Key_file = "file", Key_title = "title", Key_sidebar = "sidebar";
|
||||
public static String Xto_key(int v) {
|
||||
switch (v) {
|
||||
case Tid_file : return Key_file;
|
||||
case Tid_title : return Key_title;
|
||||
case Tid_sidebar : return Key_sidebar;
|
||||
default : throw Err_.unhandled(v);
|
||||
}
|
||||
}
|
||||
public static byte Xto_tid(String v) {
|
||||
if (String_.Eq(v, Key_file)) return Tid_file;
|
||||
else if (String_.Eq(v, Key_title)) return Tid_title;
|
||||
else if (String_.Eq(v, Key_sidebar)) return Tid_sidebar;
|
||||
else throw Err_.unhandled("v");
|
||||
}
|
||||
}
|
||||
93
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_frag_tbl.java
Normal file
93
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_frag_tbl.java
Normal file
@@ -0,0 +1,93 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
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.dbs.hdumps; import gplx.*; import gplx.xowa.*; import gplx.xowa.dbs.*;
|
||||
import gplx.dbs.*; import gplx.ios.*;
|
||||
public class Hdump_frag_tbl {
|
||||
private Db_stmt stmt_select, stmt_insert, stmt_update, stmt_delete;
|
||||
@gplx.Virtual public void Insert(Db_provider provider, int frag_id, int page_id, int frag_tid, byte[] frag_key, byte[] frag_text) {
|
||||
if (stmt_insert == null) stmt_insert = Db_stmt_.new_insert_(provider, Tbl_name, Flds_all);
|
||||
try {
|
||||
stmt_insert.Val_int_(frag_id).Val_int_(page_id).Val_int_(frag_tid).Val_str_by_bry_(frag_key).Val_str_by_bry_(frag_text).Exec_insert();
|
||||
} finally {stmt_insert.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Update(Db_provider provider, int frag_id, int page_id, int frag_tid, byte[] frag_key, byte[] frag_text) {
|
||||
if (stmt_update == null) stmt_update = Db_stmt_.new_update_(provider, Tbl_name, Flds_all);
|
||||
try {
|
||||
stmt_update.Val_int_(frag_id).Val_int_(page_id).Val_int_(frag_tid).Val_str_by_bry_(frag_key).Val_str_by_bry_(frag_text).Exec_update();
|
||||
} finally {stmt_update.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Select(Db_provider provider, Hdump_frag_row rv, int frag_id) {
|
||||
if (stmt_select == null) stmt_select = Db_stmt_.new_select_(provider, Tbl_name, String_.Ary(Fld_frag_id), Flds_all);
|
||||
try {
|
||||
DataRdr rdr = stmt_select.Val_int_(frag_id).Exec_select();
|
||||
rv.Ctor
|
||||
( rdr.ReadInt(Fld_frag_id)
|
||||
, rdr.ReadInt(Fld_page_id)
|
||||
, rdr.ReadInt(Fld_frag_tid)
|
||||
, rdr.ReadBryByStr(Fld_frag_key)
|
||||
, rdr.ReadBryByStr(Fld_frag_text)
|
||||
);
|
||||
rdr.Rls();
|
||||
} finally {stmt_select.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Delete(Db_provider provider, int frag_id) {
|
||||
if (stmt_delete == null) stmt_delete = Db_stmt_.new_delete_(provider, Tbl_name, Fld_frag_id);
|
||||
try {
|
||||
stmt_delete.Val_int_(frag_id).Exec_delete();
|
||||
} finally {stmt_delete.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Delete_all(Db_provider provider) {
|
||||
Db_qry_.delete_tbl_(Tbl_name).Exec_qry(provider);
|
||||
}
|
||||
public void Rls() {
|
||||
stmt_select = stmt_insert = stmt_update = stmt_delete = null;
|
||||
}
|
||||
public static final String Tbl_name = "html_frag"
|
||||
, Fld_frag_id = "frag_id", Fld_page_id = "page_id", Fld_frag_tid = "frag_tid"
|
||||
, Fld_frag_key = "frag_key", Fld_frag_text = "frag_text";
|
||||
private static final String[] Flds_all = new String[] {Fld_frag_id, Fld_page_id, Fld_frag_tid, Fld_frag_key, Fld_frag_text};
|
||||
public static final String Tbl_sql = String_.Concat_lines_nl
|
||||
( "CREATE TABLE IF NOT EXISTS html_frag"
|
||||
, "( frag_id integer NOT NULL PRIMARY KEY"
|
||||
, ", page_id integer NOT NULL"
|
||||
, ", frag_tid integer NOT NULL"
|
||||
, ", frag_key varchar(255) NOT NULL"
|
||||
, ", frag_text mediumblob NOT NULL"
|
||||
, ");"
|
||||
);
|
||||
}
|
||||
class Hdump_frag_tbl_mem extends Hdump_frag_tbl { private OrderedHash hash = OrderedHash_.new_();
|
||||
@Override public void Insert(Db_provider provider, int frag_id, int page_id, int frag_tid, byte[] frag_key, byte[] frag_text) {
|
||||
Hdump_frag_row row = new Hdump_frag_row().Ctor(frag_id, page_id, frag_tid, frag_key, frag_text);
|
||||
hash.Add(frag_id, row);
|
||||
}
|
||||
@Override public void Update(Db_provider provider, int frag_id, int page_id, int frag_tid, byte[] frag_key, byte[] frag_text) {
|
||||
Hdump_frag_row row = (Hdump_frag_row)hash.Fetch(frag_id);
|
||||
row.Ctor(frag_id, page_id, frag_tid, frag_key, frag_text);
|
||||
}
|
||||
@Override public void Select(Db_provider provider, Hdump_frag_row rv, int frag_id) {
|
||||
Hdump_frag_row row = (Hdump_frag_row)hash.Fetch(frag_id);
|
||||
rv.Ctor(row.Frag_id(), row.Page_id(), row.Frag_tid(), row.Frag_key(), row.Frag_text());
|
||||
}
|
||||
@Override public void Delete(Db_provider provider, int frag_id) {
|
||||
hash.Del(frag_id);
|
||||
}
|
||||
@Override public void Delete_all(Db_provider provider) {
|
||||
hash.Clear();
|
||||
}
|
||||
}
|
||||
@@ -18,13 +18,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
package gplx.xowa.dbs.hdumps; import gplx.*; import gplx.xowa.*; import gplx.xowa.dbs.*;
|
||||
import gplx.ios.*;
|
||||
public class Hdump_page_row {
|
||||
public int Id() {return id;} private int id;
|
||||
public byte[] Html() {return html;} private byte[] html;
|
||||
public int Page_id() {return page_id;} private int page_id;
|
||||
public byte[] Page_html() {return page_html;} private byte[] page_html;
|
||||
public int Frags_len() {return frags_len;} private int frags_len;
|
||||
public int Make_id() {return make_id;} private int make_id;
|
||||
public Hdump_page_row Ctor(int id, byte[] html, int frags_len, int make_id) {
|
||||
this.id = id;
|
||||
this.html = html;
|
||||
public Hdump_page_row Ctor(int page_id, byte[] page_html, int frags_len, int make_id) {
|
||||
this.page_id = page_id;
|
||||
this.page_html = page_html;
|
||||
this.frags_len = frags_len;
|
||||
this.make_id = make_id;
|
||||
return this;
|
||||
|
||||
@@ -18,67 +18,76 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
package gplx.xowa.dbs.hdumps; import gplx.*; import gplx.xowa.*; import gplx.xowa.dbs.*;
|
||||
import gplx.dbs.*; import gplx.ios.*;
|
||||
public class Hdump_page_tbl {
|
||||
private Db_stmt stmt_select, stmt_insert, stmt_update;
|
||||
private Db_stmt stmt_select, stmt_insert, stmt_update, stmt_delete;
|
||||
private Io_stream_zip_mgr zip_mgr; private byte zip_tid;
|
||||
public void Ctor(Io_stream_zip_mgr zip_mgr, byte zip_tid) {this.zip_mgr = zip_mgr; this.zip_tid = zip_tid;}
|
||||
@gplx.Virtual public void Insert(Db_provider provider, int page_id, byte[] html, int frags_len, int make_id) {
|
||||
@gplx.Virtual public void Insert(Db_provider provider, int page_id, byte[] page_html, int frags_len, int make_id) {
|
||||
if (stmt_insert == null) stmt_insert = Db_stmt_.new_insert_(provider, Tbl_name, Flds_all);
|
||||
try {
|
||||
html = zip_mgr.Zip(zip_tid, html);
|
||||
stmt_insert.Val_int_(page_id).Val_bry_(html).Val_int_(frags_len).Val_int_(make_id).Exec_insert();
|
||||
page_html = zip_mgr.Zip(zip_tid, page_html);
|
||||
stmt_insert.Val_int_(page_id).Val_str_by_bry_(page_html).Val_int_(frags_len).Val_int_(make_id).Exec_insert();
|
||||
} finally {stmt_insert.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Update(Db_provider provider, int page_id, byte[] html, int frags_len, int make_id) {
|
||||
@gplx.Virtual public void Update(Db_provider provider, int page_id, byte[] page_html, int frags_len, int make_id) {
|
||||
if (stmt_update == null) stmt_update = Db_stmt_.new_update_(provider, Tbl_name, Flds_all);
|
||||
try {
|
||||
html = zip_mgr.Zip(zip_tid, html);
|
||||
stmt_update.Val_int_(page_id).Val_bry_(html).Val_int_(frags_len).Val_int_(make_id).Exec_update();
|
||||
page_html = zip_mgr.Zip(zip_tid, page_html);
|
||||
stmt_update.Val_int_(page_id).Val_str_by_bry_(page_html).Val_int_(frags_len).Val_int_(make_id).Exec_update();
|
||||
} finally {stmt_update.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Select(Db_provider provider, Hdump_page_row rv, int page_id) {
|
||||
if (stmt_select == null) stmt_select = Db_stmt_.new_select_(provider, Tbl_name, String_.Ary(Fld_page_id), Flds_all);
|
||||
try {
|
||||
DataRdr rdr = stmt_select.Exec_select();
|
||||
DataRdr rdr = stmt_select.Val_int_(page_id).Exec_select();
|
||||
rv.Ctor
|
||||
( rdr.ReadInt(Fld_page_id)
|
||||
, zip_mgr.Unzip(zip_tid, rdr.ReadBry(Fld_page_text))
|
||||
, zip_mgr.Unzip(zip_tid, rdr.ReadBry(Fld_page_html))
|
||||
, rdr.ReadInt(Fld_frags_len)
|
||||
, rdr.ReadInt(Fld_make_id)
|
||||
);
|
||||
rdr.Rls();
|
||||
} finally {stmt_select.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Delete(Db_provider provider, int page_id) {
|
||||
if (stmt_delete == null) stmt_delete = Db_stmt_.new_delete_(provider, Tbl_name, Fld_page_id);
|
||||
try {
|
||||
stmt_delete.Val_int_(page_id).Exec_delete();
|
||||
} finally {stmt_delete.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Delete_all(Db_provider provider) {
|
||||
Db_qry_.delete_tbl_(Tbl_name).Exec_qry(provider);
|
||||
}
|
||||
public void Rls() {
|
||||
stmt_select = stmt_insert = stmt_update = null;
|
||||
stmt_select = stmt_insert = stmt_update = stmt_delete = null;
|
||||
zip_mgr = null;
|
||||
}
|
||||
public static final String Tbl_name = "html_page"
|
||||
, Fld_page_id = "page_id", Fld_page_text = "page_text", Fld_frags_len = "frags_len", Fld_make_id= "make_id";
|
||||
private static final String[] Flds_all = new String[] {Fld_page_id, Fld_page_text, Fld_frags_len, Fld_make_id};
|
||||
, Fld_page_id = "page_id", Fld_page_html = "page_html", Fld_frags_len = "frags_len", Fld_make_id= "make_id";
|
||||
private static final String[] Flds_all = new String[] {Fld_page_id, Fld_page_html, Fld_frags_len, Fld_make_id};
|
||||
public static final String Tbl_sql = String_.Concat_lines_nl
|
||||
( "CREATE TABLE IF NOT EXISTS html_page"
|
||||
, "( page_id integer NOT NULL PRIMARY KEY"
|
||||
, ", page_text mediumblob NOT NULL"
|
||||
, ", page_html mediumblob NOT NULL"
|
||||
, ", frags_len integer NOT NULL"
|
||||
, ", make_id integer NOT NULL"
|
||||
, ");"
|
||||
);
|
||||
}
|
||||
class Hdump_page_tbl_mem extends Hdump_page_tbl { private OrderedHash hash = OrderedHash_.new_();
|
||||
@Override public void Insert(Db_provider provider, int page_id, byte[] html, int frags_len, int make_id) {
|
||||
Hdump_page_row row = new Hdump_page_row().Ctor(page_id, html, frags_len, make_id);
|
||||
@Override public void Insert(Db_provider provider, int page_id, byte[] page_html, int frags_len, int make_id) {
|
||||
Hdump_page_row row = new Hdump_page_row().Ctor(page_id, page_html, frags_len, make_id);
|
||||
hash.Add(page_id, row);
|
||||
}
|
||||
@Override public void Update(Db_provider provider, int page_id, byte[] html, int frags_len, int make_id) {
|
||||
@Override public void Update(Db_provider provider, int page_id, byte[] page_html, int frags_len, int make_id) {
|
||||
Hdump_page_row row = (Hdump_page_row)hash.Fetch(page_id);
|
||||
row.Ctor(page_id, html, frags_len, make_id);
|
||||
row.Ctor(page_id, page_html, frags_len, make_id);
|
||||
}
|
||||
@Override public void Select(Db_provider provider, Hdump_page_row rv, int page_id) {
|
||||
Hdump_page_row row = (Hdump_page_row)hash.Fetch(page_id);
|
||||
rv.Ctor(row.Id(), row.Html(), row.Frags_len(), row.Make_id());
|
||||
rv.Ctor(row.Page_id(), row.Page_html(), row.Frags_len(), row.Make_id());
|
||||
}
|
||||
@Override public void Delete(Db_provider provider, int page_id) {
|
||||
hash.Del(page_id);
|
||||
}
|
||||
@Override public void Delete_all(Db_provider provider) {
|
||||
hash.Clear();
|
||||
|
||||
28
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_skin_row.java
Normal file
28
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_skin_row.java
Normal file
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
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.dbs.hdumps; import gplx.*; import gplx.xowa.*; import gplx.xowa.dbs.*;
|
||||
import gplx.ios.*;
|
||||
public class Hdump_skin_row {
|
||||
public int Skin_id() {return skin_id;} private int skin_id;
|
||||
public byte[] Skin_html() {return skin_html;} private byte[] skin_html;
|
||||
public Hdump_skin_row Ctor(int skin_id, byte[] skin_html) {
|
||||
this.skin_id = skin_id;
|
||||
this.skin_html = skin_html;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
86
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_skin_tbl.java
Normal file
86
400_xowa/src/gplx/xowa/dbs/hdumps/Hdump_skin_tbl.java
Normal file
@@ -0,0 +1,86 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
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.dbs.hdumps; import gplx.*; import gplx.xowa.*; import gplx.xowa.dbs.*;
|
||||
import gplx.dbs.*; import gplx.ios.*;
|
||||
public class Hdump_skin_tbl {
|
||||
private Db_stmt stmt_select, stmt_insert, stmt_update, stmt_delete;
|
||||
@gplx.Virtual public void Insert(Db_provider provider, int skin_id, byte[] skin_text) {
|
||||
if (stmt_insert == null) stmt_insert = Db_stmt_.new_insert_(provider, Tbl_name, Flds_all);
|
||||
try {
|
||||
stmt_insert.Val_int_(skin_id).Val_str_by_bry_(skin_text).Exec_insert();
|
||||
} finally {stmt_insert.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Update(Db_provider provider, int skin_id, byte[] skin_text) {
|
||||
if (stmt_update == null) stmt_update = Db_stmt_.new_update_(provider, Tbl_name, Flds_all);
|
||||
try {
|
||||
stmt_update.Val_int_(skin_id).Val_str_by_bry_(skin_text).Exec_update();
|
||||
} finally {stmt_update.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Select(Db_provider provider, Hdump_skin_row rv, int skin_id) {
|
||||
if (stmt_select == null) stmt_select = Db_stmt_.new_select_(provider, Tbl_name, String_.Ary(Fld_skin_id), Flds_all);
|
||||
try {
|
||||
DataRdr rdr = stmt_select.Val_int_(skin_id).Exec_select();
|
||||
rv.Ctor
|
||||
( rdr.ReadInt(Fld_skin_id)
|
||||
, rdr.ReadBryByStr(Fld_skin_text)
|
||||
);
|
||||
rdr.Rls();
|
||||
} finally {stmt_select.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Delete(Db_provider provider, int skin_id) {
|
||||
if (stmt_delete == null) stmt_delete = Db_stmt_.new_delete_(provider, Tbl_name, Fld_skin_id);
|
||||
try {
|
||||
stmt_delete.Val_int_(skin_id).Exec_delete();
|
||||
} finally {stmt_delete.Rls();}
|
||||
}
|
||||
@gplx.Virtual public void Delete_all(Db_provider provider) {
|
||||
Db_qry_.delete_tbl_(Tbl_name).Exec_qry(provider);
|
||||
}
|
||||
public void Rls() {
|
||||
stmt_select = stmt_insert = stmt_update = stmt_delete = null;
|
||||
}
|
||||
public static final String Tbl_name = "html_skin"
|
||||
, Fld_skin_id = "skin_id", Fld_skin_text = "skin_text";
|
||||
private static final String[] Flds_all = new String[] {Fld_skin_id, Fld_skin_text};
|
||||
public static final String Tbl_sql = String_.Concat_lines_nl
|
||||
( "CREATE TABLE IF NOT EXISTS html_skin"
|
||||
, "( skin_id integer NOT NULL PRIMARY KEY"
|
||||
, ", skin_text mediumblob NOT NULL"
|
||||
, ");"
|
||||
);
|
||||
}
|
||||
class Hdump_skin_tbl_mem extends Hdump_skin_tbl { private OrderedHash hash = OrderedHash_.new_();
|
||||
@Override public void Insert(Db_provider provider, int skin_id, byte[] skin_text) {
|
||||
Hdump_skin_row row = new Hdump_skin_row().Ctor(skin_id, skin_text);
|
||||
hash.Add(skin_id, row);
|
||||
}
|
||||
@Override public void Update(Db_provider provider, int skin_id, byte[] skin_text) {
|
||||
Hdump_skin_row row = (Hdump_skin_row)hash.Fetch(skin_id);
|
||||
row.Ctor(skin_id, skin_text);
|
||||
}
|
||||
@Override public void Select(Db_provider provider, Hdump_skin_row rv, int skin_id) {
|
||||
Hdump_skin_row row = (Hdump_skin_row)hash.Fetch(skin_id);
|
||||
rv.Ctor(row.Skin_id(), row.Skin_html());
|
||||
}
|
||||
@Override public void Delete(Db_provider provider, int skin_id) {
|
||||
hash.Del(skin_id);
|
||||
}
|
||||
@Override public void Delete_all(Db_provider provider) {
|
||||
hash.Clear();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user