public Xobc_import_step_itm[] Select_by_task_id(int task_id) { List_adp list = List_adp_.New(); Db_rdr rdr = conn.Stmt_sql( Db_sql_.Make_by_fmt( String_.Ary( "SELECT s.*", "FROM import_step s", " JOIN step_map sm ON s.step_id = sm.step_id", "WHERE sm.task_id = {0}"), task_id)) .Exec_select__rls_auto(); try { while (rdr.Move_next()) { list.Add(New_itm(rdr)); } } finally { rdr.Rls(); } return (Xobc_import_step_itm[]) list.To_ary_and_clear(Xobc_import_step_itm.class); }
public class Pfunc_scrib_lib implements Scrib_lib { private Scrib_core core; public Scrib_lua_mod Mod() { return mod; } private Scrib_lua_mod mod; public Scrib_lib Init() { procs.Init_by_lib(this, Proc_names); return this; } public void Core_(Scrib_core v) { this.core = v; } // TEST: public Scrib_lib Clone_lib(Scrib_core core) { return new Pfunc_scrib_lib(); } public Scrib_lua_mod Register(Scrib_core core, Io_url script_dir) { this.core = core; Init(); mod = core.RegisterInterface( this, core.App() .Fsys_mgr() .Bin_xtns_dir() .GenSubFil_nest("ParserFunctions", "mw.ext.ParserFunctions.lua")); return mod; } public Scrib_proc_mgr Procs() { return procs; } private Scrib_proc_mgr procs = new Scrib_proc_mgr(); public boolean Procs_exec(int key, Scrib_proc_args args, Scrib_proc_rslt rslt) { switch (key) { case Proc_expr: return Expr(args, rslt); default: throw Err_.new_unhandled(key); } } private static final int Proc_expr = 0; public static final String Invk_expr = "expr"; private static final String[] Proc_names = String_.Ary(Invk_expr); public boolean Expr(Scrib_proc_args args, Scrib_proc_rslt rslt) { byte[] expr_bry = args.Xstr_bry_or_null( 0); // NOTE: some modules will pass in an int; PAGE:en.w:531_BC DATE:2016-04-29 Bry_bfr tmp_bfr = core.Wiki().Utl__bfr_mkr().Get_b128(); Pfunc_expr.Evaluate(tmp_bfr, core.Ctx(), expr_bry); String expr_rslt = tmp_bfr.To_str_and_rls(); return rslt.Init_obj( expr_rslt); // NOTE: always return rslt; don't throw error even if expr is invalid; // EX:mw.ParserFuntion.expr('fail'); PAGE:es.w:Freer_(Texas) DATE:2015-07-28 } }