buildz 0.6.49__tar.gz → 0.6.51__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {buildz-0.6.49/buildz.egg-info → buildz-0.6.51}/PKG-INFO +1 -1
- {buildz-0.6.49 → buildz-0.6.51}/buildz/dz/mapz.py +17 -14
- buildz-0.6.51/buildz/iocz/conf/base.py +3 -0
- buildz-0.6.51/buildz/iocz/conf/mg.py +102 -0
- buildz-0.6.51/buildz/iocz/conf/test.py +51 -0
- buildz-0.6.51/buildz/iocz/conf/unit.py +66 -0
- buildz-0.6.51/buildz/iocz/ioc/base.py +37 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/builds.py +4 -3
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/dataset.py +9 -6
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/encapes.py +9 -9
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/mg.py +33 -12
- buildz-0.6.51/buildz/iocz/ioc/test.py +45 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/unit.py +12 -1
- buildz-0.6.51/buildz/iocz/ioc/vars.py +65 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc_deal/base.py +17 -19
- buildz-0.6.51/buildz/iocz/ioc_deal/deal.py +33 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc_deal/obj.py +3 -7
- buildz-0.6.51/buildz/tls.py +2 -0
- {buildz-0.6.49 → buildz-0.6.51/buildz.egg-info}/PKG-INFO +1 -1
- {buildz-0.6.49 → buildz-0.6.51}/buildz.egg-info/SOURCES.txt +6 -0
- {buildz-0.6.49 → buildz-0.6.51}/setup.py +1 -1
- buildz-0.6.49/buildz/iocz/ioc/base.py +0 -18
- buildz-0.6.49/buildz/iocz/ioc/test.py +0 -37
- buildz-0.6.49/buildz/iocz/ioc_deal/deal.py +0 -69
- {buildz-0.6.49 → buildz-0.6.51}/LICENSE +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/MANIFEST.in +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/README.md +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/__main__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argx.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/argz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/build.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/callz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/evalx.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/test_obj.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/tests/conf.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/argz/testx.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/cache.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/config.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/dbs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/deal.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/deal_list.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/deal_type.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/defs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/factory.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/init.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/log.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/request.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/run.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/save.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/cache/cache.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/config/base.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/config/config.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/data/fp.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/data/item1.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/data/item2.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/res/data/test.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/test/xtest.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/auto/verify.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/cachez/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/cachez/cache.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/cmd.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/confz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/__main__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/basez.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/clickhousez.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/lib/readme +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/mysqlz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/oraclez.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/orm.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/postgresqlz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/sqlite3z.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/dv/structz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/install.txt +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/run.conf +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/runz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/db/tls.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/ioc/deal.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/ioc/help.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/myers/deal.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/myers/help.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/conf/ioc.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/conf/main.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/conf/myers.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/conf/search.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/conf/xf.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/help/default.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/help/ioc.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/help/myers.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/help/search.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/help/xf.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/res/test.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/search/deal.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/search/help.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/xf/deal.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/demo/xf/help.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/dz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/evalz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/evalz/evalz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/evalz/res/default.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/evalz/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/fz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/fz/dirz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/fz/fhs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/fz/fio.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/fz/lsf.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/html/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/html/test/demo.html +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/html/test/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/html/xml.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/init.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc/conf.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc/confs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc/decorator.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc/loads.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc/single.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/branch.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/call.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/calls.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/deal.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/demo.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/env.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/init.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/ioc.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/iocf.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/join.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/list.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/map.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/mcall.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/obj.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/ovar.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/ref.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/refs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/val.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/var.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/ioc_deal/xfile.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/ioc/wrap.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/bind.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/confs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/datas.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/deals.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/dm.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/env.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/ids.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/init.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/single.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/tdata.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/tdict.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/iocz/ioc/test1.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/logz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/mhttp/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/mhttp/caps.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/mhttp/mhttp.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/mhttp/proxy.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/mhttp/record.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/sslz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/sslz/gen.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/sslz/gen.pyi +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/test/__main__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/test/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/netz/test/test_cli.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/pathz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/pyz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tools.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/myers_diff.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/test_xfind.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/time/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/time/timez.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/tio/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/tio/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/tio/getch.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/tio/lx.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/tio/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/tio/win.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/tz/xfind.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/__main__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/code.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/code_modify.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/copy_old.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/file.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/buffer.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/listz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/lr.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/lrval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/mapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/nextz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/reval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/setz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/spc.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/spt.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/deal/strz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/exp.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/item.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/mg.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loader/pos.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/buffer.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/listmapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/listz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/lr.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/lrval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/mapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/nextz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/reval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/setz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/spc.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/spt.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/strz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/strz_new.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/deal/strz_old.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/exp.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/item.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/mg.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/pos.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz/test1.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/buffer.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/spc.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/strz_new.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/deal/strz_old.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/exp.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/item.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/mg.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/pos.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/loaderz_nexp/test1.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/mapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/read.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/readz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/readz_nexp.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/stack.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/write.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/conf.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/deal/jsonval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/deal/listmapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/deal/listz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/deal/mapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/deal/reval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/deal/strz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/itemz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writer/mg.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/base.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/conf.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/deal/jsonval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/deal/listmapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/deal/listz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/deal/mapz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/deal/reval.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/deal/strz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/itemz.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/mg.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writerz/testx.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/writez.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xf/xargs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xz/__init__.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xz/conf.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xz/data.js +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xz/test.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz/xz/trs.py +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz.egg-info/dependency_links.txt +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/buildz.egg-info/top_level.txt +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/notes/notes.txt +0 -0
- {buildz-0.6.49 → buildz-0.6.51}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: buildz
|
3
|
-
Version: 0.6.
|
3
|
+
Version: 0.6.51
|
4
4
|
Summary: 配置读写(基于json格式进行简化)、ioc、以及其他工具代码。a json-base file format's read and write code by python, and codes to read and product object from configure file in such format(ioc), and other tool codes
|
5
5
|
Home-page: https://github.com/buildCodeZ/buildz
|
6
6
|
Author: Zzz
|
@@ -1,4 +1,12 @@
|
|
1
1
|
from buildz import pyz
|
2
|
+
def isdict(obj):
|
3
|
+
return type(obj)==dict
|
4
|
+
def islist(obj):
|
5
|
+
return type(obj) in (list, tuple)
|
6
|
+
def tolist(obj):
|
7
|
+
if not islist(obj):
|
8
|
+
obj = [obj]
|
9
|
+
return obj
|
2
10
|
def dict2list(obj):
|
3
11
|
if type(obj)!=dict:
|
4
12
|
return obj
|
@@ -53,20 +61,15 @@ def gf(obj, **maps):
|
|
53
61
|
return rst
|
54
62
|
|
55
63
|
pass
|
56
|
-
def get_first(obj,
|
64
|
+
def get_first(obj, keys, default = None):
|
57
65
|
for k in keys:
|
58
66
|
if k in obj:
|
59
|
-
return obj[k]
|
60
|
-
|
61
|
-
|
62
|
-
pass
|
63
|
-
def get_one(obj, keys, default = None):
|
64
|
-
for k in keys:
|
65
|
-
if k in obj:
|
66
|
-
return obj[k]
|
67
|
-
return default
|
67
|
+
return obj[k],1
|
68
|
+
return default,0
|
68
69
|
|
69
70
|
pass
|
71
|
+
def get_one(obj, keys, default=None):
|
72
|
+
return get_first(obj, keys, default)[0]
|
70
73
|
def g1(obj, **maps):
|
71
74
|
v = None
|
72
75
|
for k in maps:
|
@@ -180,7 +183,7 @@ def dhas(maps, keys):
|
|
180
183
|
|
181
184
|
pass
|
182
185
|
|
183
|
-
def dget(maps, keys):
|
186
|
+
def dget(maps, keys, default = None):
|
184
187
|
if type(keys) not in (list,tuple):
|
185
188
|
keys = [keys]
|
186
189
|
for key in keys:
|
@@ -196,7 +199,7 @@ def dget(maps, keys):
|
|
196
199
|
else:
|
197
200
|
find = False
|
198
201
|
if not find:
|
199
|
-
return
|
202
|
+
return default,0
|
200
203
|
maps = maps[key]
|
201
204
|
return maps,1
|
202
205
|
|
@@ -216,7 +219,7 @@ def dremove(maps, keys):
|
|
216
219
|
if first or len(maps[key])==0:
|
217
220
|
del maps[key]
|
218
221
|
first=0
|
219
|
-
return
|
222
|
+
return
|
220
223
|
|
221
224
|
pass
|
222
225
|
|
@@ -311,7 +314,7 @@ def flush_maps(maps, fc_key = lambda x:x.split(".") if type(x)==str else [x], vi
|
|
311
314
|
for k,v in maps.items():
|
312
315
|
ks = fc_key(k)
|
313
316
|
v = flush_maps(v, fc_key, visit_list)
|
314
|
-
|
317
|
+
dset(rst, ks, v)
|
315
318
|
return rst
|
316
319
|
|
317
320
|
pass
|
@@ -0,0 +1,102 @@
|
|
1
|
+
|
2
|
+
#
|
3
|
+
from ..ioc.mg import Manager, GetKey, Ids
|
4
|
+
from ... import dz,xf
|
5
|
+
from .unit import ConfUnit
|
6
|
+
spt = Ids(".")
|
7
|
+
class DLKey(GetKey):
|
8
|
+
@staticmethod
|
9
|
+
def Load(conf):
|
10
|
+
keys, kfind = dz.dget(conf, spt("dict.key"))
|
11
|
+
lids, lfind = dz.dget(conf, spt("list.index"))
|
12
|
+
default = dz.dget(conf, 'default', None)
|
13
|
+
return DLKey(keys, lids, default)
|
14
|
+
def init(self, keys, indexes, default=None):
|
15
|
+
super().init()
|
16
|
+
self.keys = dz.tolist(keys)
|
17
|
+
self.indexes = dz.tolist(indexes)
|
18
|
+
self.default = default
|
19
|
+
def list_get(self, conf):
|
20
|
+
for indexes in self.indexes:
|
21
|
+
obj, find = dz.dget(conf, indexes)
|
22
|
+
if find:
|
23
|
+
return obj, find
|
24
|
+
return self.default, 0
|
25
|
+
def dict_get(self, conf):
|
26
|
+
for keys in self.keys:
|
27
|
+
obj, find = dz.dget(conf, keys)
|
28
|
+
if find:
|
29
|
+
return obj, find
|
30
|
+
return self.default, 0
|
31
|
+
def call(self, conf):
|
32
|
+
if dz.islist(conf):
|
33
|
+
return self.list_get(conf)
|
34
|
+
return self.dict_get(conf)
|
35
|
+
def list_fill(self, conf, key):
|
36
|
+
for indexes in self.indexes:
|
37
|
+
obj, find = dz.dget(conf, indexes)
|
38
|
+
if find:
|
39
|
+
dz.dset(conf, indexes, key)
|
40
|
+
return
|
41
|
+
assert 0
|
42
|
+
def dict_fill(self, conf, key):
|
43
|
+
for keys in self.keys:
|
44
|
+
obj, find = dz.dget(conf, keys)
|
45
|
+
if find:
|
46
|
+
dz.dset(conf, keys, key)
|
47
|
+
return
|
48
|
+
dz.dset(conf, self.keys[0], key)
|
49
|
+
def fill(self, conf, key):
|
50
|
+
if dz.islist(conf):
|
51
|
+
self.list_fill(conf, key)
|
52
|
+
else:
|
53
|
+
self.dict_fill(conf, key)
|
54
|
+
default_conf = None
|
55
|
+
s_default_conf = r"""
|
56
|
+
{
|
57
|
+
id.spt: '.'
|
58
|
+
conf:{
|
59
|
+
dict.key = 'id'
|
60
|
+
list.index = [(0,1)]
|
61
|
+
default: null
|
62
|
+
}
|
63
|
+
deal: {
|
64
|
+
spt: '.'
|
65
|
+
dict.key = type
|
66
|
+
list.index = ((0,0),0)
|
67
|
+
default: null
|
68
|
+
}
|
69
|
+
}
|
70
|
+
"""
|
71
|
+
def init():
|
72
|
+
global default_conf
|
73
|
+
if default_conf is not None:
|
74
|
+
return
|
75
|
+
default_conf = xf.loads(s_default_conf)
|
76
|
+
default_conf = dz.flush_maps(default_conf)
|
77
|
+
class ConfManager(Manager):
|
78
|
+
def init(self, conf=None):
|
79
|
+
ids, deal_key, conf_key, deal_ids = self.Conf(conf)
|
80
|
+
super().init(ids, deal_key, conf_key, deal_ids)
|
81
|
+
@staticmethod
|
82
|
+
def Conf(conf=None):
|
83
|
+
init()
|
84
|
+
spt = Ids(".")
|
85
|
+
if conf is None:
|
86
|
+
conf = {}
|
87
|
+
if type(conf)==str:
|
88
|
+
conf = xf.loads(conf)
|
89
|
+
conf = dz.flush_maps(conf)
|
90
|
+
dz.fill(default_conf, conf, 0)
|
91
|
+
id_spt, find = dz.dget(conf, spt("id.spt"),".")
|
92
|
+
ids = Ids(id_spt)
|
93
|
+
deal_spt, find = dz.dget(conf, spt("id.spt"), id_spt)
|
94
|
+
deal_ids = Ids(deal_spt)
|
95
|
+
deal_key = DLKey.Load(conf['deal'])
|
96
|
+
conf_key = DLKey.Load(conf['conf'])
|
97
|
+
return ids, deal_key, conf_key, deal_ids
|
98
|
+
def add_conf(self, conf):
|
99
|
+
unit = ConfUnit(conf, self)
|
100
|
+
return unit
|
101
|
+
|
102
|
+
pass
|
@@ -0,0 +1,51 @@
|
|
1
|
+
#
|
2
|
+
|
3
|
+
from buildz.iocz.conf.mg import ConfManager
|
4
|
+
|
5
|
+
from buildz.iocz.ioc import *
|
6
|
+
from buildz.iocz.ioc_deal import obj, deal
|
7
|
+
from buildz import xf, pyz, Base
|
8
|
+
|
9
|
+
class Test(Base):
|
10
|
+
def init(self, id=0):
|
11
|
+
self.id = id
|
12
|
+
|
13
|
+
pass
|
14
|
+
confs = r"""
|
15
|
+
confs.pri: {
|
16
|
+
deal_obj:{
|
17
|
+
type=deal
|
18
|
+
source=buildz.iocz.ioc_deal.obj.ObjectDeal
|
19
|
+
deals: obj
|
20
|
+
call=1
|
21
|
+
}
|
22
|
+
}
|
23
|
+
confs: [
|
24
|
+
{
|
25
|
+
id=test
|
26
|
+
type=obj
|
27
|
+
source=buildz.iocz.ioc.test.Test
|
28
|
+
args=[
|
29
|
+
{
|
30
|
+
type=obj
|
31
|
+
source = buildz.iocz.ioc.test.Test
|
32
|
+
maps={id=123}
|
33
|
+
}
|
34
|
+
]
|
35
|
+
}
|
36
|
+
]
|
37
|
+
builds: [deal_obj]
|
38
|
+
"""
|
39
|
+
def test():
|
40
|
+
mg = ConfManager()
|
41
|
+
mg.set_deal("deal", deal.DealDeal())
|
42
|
+
print(mg)
|
43
|
+
unit = mg.add_conf(confs)
|
44
|
+
encape, tag, find = mg.get_encape("test")
|
45
|
+
print(f"encape: {encape}")
|
46
|
+
it = encape()
|
47
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
48
|
+
it = encape()
|
49
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
50
|
+
|
51
|
+
pyz.lc(locals(), test)
|
@@ -0,0 +1,66 @@
|
|
1
|
+
|
2
|
+
#
|
3
|
+
from ..ioc.unit import Unit
|
4
|
+
from ... import dz,xf
|
5
|
+
from ..ioc.datas import Datas
|
6
|
+
'''
|
7
|
+
id|namespace|ns:
|
8
|
+
deal_id|deal_ns:
|
9
|
+
envs.pub|envs.pri|envs.ns|envs: {
|
10
|
+
|
11
|
+
}
|
12
|
+
confs.pub|confs.pri|confs.ns|confs: [
|
13
|
+
|
14
|
+
]
|
15
|
+
confs.pub|confs.pri|confs.ns|confs: {
|
16
|
+
|
17
|
+
}
|
18
|
+
builds: [
|
19
|
+
|
20
|
+
]
|
21
|
+
|
22
|
+
or
|
23
|
+
|
24
|
+
[
|
25
|
+
...
|
26
|
+
]
|
27
|
+
'''
|
28
|
+
class ConfUnit(Unit):
|
29
|
+
key_ns = ('id', 'namespace', 'ns')
|
30
|
+
key_deal_ns = "deal_id,deal_ns,deal_namespace".split(",")
|
31
|
+
key_pub = "confs.pub,confs".split(",")
|
32
|
+
key_pri = "confs.pri,confs.prv".split(",")
|
33
|
+
key_ns = "confs.ns,confs.namespace".split(",")
|
34
|
+
key_builds = "builds,build".split(",")
|
35
|
+
def init(self, conf, mg):
|
36
|
+
if type(conf)==str:
|
37
|
+
conf = xf.loads(conf)
|
38
|
+
if dz.islist(conf):
|
39
|
+
conf = {'confs': conf}
|
40
|
+
ns = dz.get_one(conf, self.key_ns)
|
41
|
+
deal_ns = dz.get_one(conf, self.key_deal_ns)
|
42
|
+
super().init(ns, deal_ns)
|
43
|
+
self.bind(mg)
|
44
|
+
self.load(conf)
|
45
|
+
def load_confs(self, confs, tag=None):
|
46
|
+
rst = []
|
47
|
+
if dz.isdict(confs):
|
48
|
+
for k,v in confs.items():
|
49
|
+
self.conf_key.fill(v, k)
|
50
|
+
rst.append(v)
|
51
|
+
confs = rst
|
52
|
+
for item in confs:
|
53
|
+
key,find = self.conf_key(item)
|
54
|
+
if find:
|
55
|
+
self.set_conf(key, item, tag)
|
56
|
+
def load(self, conf):
|
57
|
+
keys = [self.key_pub, self.key_ns, self.key_pri]
|
58
|
+
tags = [Datas.Key.Pub, Datas.Key.Ns, Datas.Key.Pri]
|
59
|
+
for key, tag in zip(keys, tags):
|
60
|
+
tag_confs = dz.get_one(conf, key, [])
|
61
|
+
self.load_confs(tag_confs, tag)
|
62
|
+
builds = dz.get_one(conf, self.key_builds, [])
|
63
|
+
for item in builds:
|
64
|
+
self.add_build(item)
|
65
|
+
|
66
|
+
pass
|
@@ -0,0 +1,37 @@
|
|
1
|
+
from ..base import *
|
2
|
+
basepath = path
|
3
|
+
path = pathz.Path()
|
4
|
+
path.set("conf", basepath.local("ioc/conf"), curr=0)
|
5
|
+
class Encape(Base):
|
6
|
+
def call(self, params=None, **maps):
|
7
|
+
return None
|
8
|
+
|
9
|
+
pass
|
10
|
+
class Deal(Base):
|
11
|
+
def deal(self, conf, unit):
|
12
|
+
return None
|
13
|
+
def call(self, conf, unit):
|
14
|
+
'encape, conf, conf_need_udpate'
|
15
|
+
encape = self.deal(conf,unit)
|
16
|
+
return encape,conf,False
|
17
|
+
|
18
|
+
pass
|
19
|
+
|
20
|
+
class Params(Base):
|
21
|
+
def clone(self, **upds):
|
22
|
+
args, maps = list(self.args), dict(self.maps)
|
23
|
+
maps.update(upds)
|
24
|
+
return Params(args, maps)
|
25
|
+
def init(self, *args, **maps):
|
26
|
+
self.args = args
|
27
|
+
self.maps = maps
|
28
|
+
def get(self, key, default=None):
|
29
|
+
if key not in self.maps:
|
30
|
+
return default
|
31
|
+
return self.maps[key]
|
32
|
+
def __getattr__(self, key):
|
33
|
+
if key not in self.maps:
|
34
|
+
return None
|
35
|
+
return self.maps[key]
|
36
|
+
|
37
|
+
pass
|
@@ -25,17 +25,17 @@ class Builds(Base):
|
|
25
25
|
def build(self):
|
26
26
|
if not self.need_build:
|
27
27
|
return
|
28
|
+
self.need_build = False
|
28
29
|
for conf in self.jobs:
|
29
30
|
if Confs.is_conf(conf):
|
30
|
-
encape = self.unit.get_encape(conf, self.unit.ns, self.unit.id)
|
31
|
+
encape,c,u = self.unit.get_encape(conf, self.unit.ns, self.unit.id)
|
31
32
|
elif isinstance(conf, Encape):
|
32
33
|
encape = conf
|
33
34
|
else:
|
34
|
-
encape = self.unit.get_encape(conf, self.unit.ns, self.unit.id)
|
35
|
+
encape,c,u = self.unit.get_encape(conf, self.unit.ns, self.unit.id)
|
35
36
|
encape()
|
36
37
|
self.dones.append(conf)
|
37
38
|
self.jobs = []
|
38
|
-
self.need_build = False
|
39
39
|
def call(self):
|
40
40
|
self.build()
|
41
41
|
class Buildset(Base):
|
@@ -52,6 +52,7 @@ class Buildset(Base):
|
|
52
52
|
def build(self):
|
53
53
|
if not self.need_build:
|
54
54
|
return
|
55
|
+
self.need_build = False
|
55
56
|
for builds in self.jobs:
|
56
57
|
builds()
|
57
58
|
self.dones.append(builds)
|
@@ -38,13 +38,16 @@ class Dataset(Base):
|
|
38
38
|
self.ns_set(key, val, ns, data)
|
39
39
|
if data.dts!=self:
|
40
40
|
data.bind(self)
|
41
|
-
def tget(self, key, ns=None, id=None):
|
42
|
-
obj, id, keys,tag, find = self.get(key,ns,id)
|
41
|
+
def tget(self, key, ns=None, tag=None, id=None):
|
42
|
+
obj, id, keys,tag, find = self.get(key,ns,tag, id)
|
43
43
|
return obj, tag, find
|
44
|
-
def get(self, key, ns=None, id = None):
|
45
|
-
|
46
|
-
|
47
|
-
|
44
|
+
def get(self, key, ns=None, tag=None, id = None):
|
45
|
+
if tag == TagData.Key.Pub:
|
46
|
+
find =False
|
47
|
+
else:
|
48
|
+
obj, oid, find = self.ns_get(key,ns,id)
|
49
|
+
tag = TagData.Key.Ns
|
50
|
+
keys = key
|
48
51
|
if not find:
|
49
52
|
obj, oid, keys, find=self.pub_get(key,ns,id)
|
50
53
|
tag=TagData.Key.Pub
|
@@ -29,7 +29,7 @@ class Encapes(Datas):
|
|
29
29
|
self.set(key, encape, ctag)
|
30
30
|
return encape, ctag, 1
|
31
31
|
def make_conf(self, conf, deal_ns=None, id=None):
|
32
|
-
deal_key = self.deal_key(conf)
|
32
|
+
deal_key, dk_find = self.deal_key(conf)
|
33
33
|
deal, dtag, dfind = self.deals.tget(deal_key, deal_ns, id, True)
|
34
34
|
assert dfind
|
35
35
|
encape, conf, upd = deal(conf, self.unit)
|
@@ -67,14 +67,14 @@ class Encapeset(Dataset):
|
|
67
67
|
self.deals = mg.deals
|
68
68
|
self.deal_key = mg.deal_key
|
69
69
|
return self
|
70
|
-
def make(self, key, ns=None, id = None):
|
71
|
-
conf, cid, keys, ctag, cfind = self.confs.get(key, ns, id)
|
70
|
+
def make(self, key, ns=None, tag=None, id = None):
|
71
|
+
conf, cid, keys, ctag, cfind = self.confs.get(key, ns, tag, id)
|
72
72
|
if not cfind:
|
73
|
-
return
|
73
|
+
return None,None,None,None,0
|
74
74
|
conf, deal_ns = conf
|
75
75
|
encape, conf, upd = self.make_conf(conf, deal_ns, id, cid)
|
76
76
|
if cid in self.objs:
|
77
|
-
obj = self.objs[
|
77
|
+
obj = self.objs[cid]
|
78
78
|
if ns != obj.ns:
|
79
79
|
ids_ns = self.ids(obj.ns)
|
80
80
|
keys_ns = keys[:len(ids_ns)]
|
@@ -88,19 +88,19 @@ class Encapeset(Dataset):
|
|
88
88
|
self.set(key, encape, ns, ctag)
|
89
89
|
return encape, cid, keys, ctag, 1
|
90
90
|
def make_conf(self, conf, deal_ns=None, id=None,cid=None):
|
91
|
-
deal_key = self.deal_key(conf)
|
91
|
+
deal_key, dk_find = self.deal_key(conf)
|
92
92
|
deal, dtag, dfind = self.deals.tget(deal_key, deal_ns, id)
|
93
93
|
assert dfind
|
94
94
|
unit = self.mg.get_unit(cid)
|
95
95
|
encape, conf, upd = deal(conf, unit)
|
96
96
|
return encape, conf, upd
|
97
|
-
def get(self, key, ns=None, id=None):
|
97
|
+
def get(self, key, ns=None, tag=None, id=None):
|
98
98
|
if Confs.is_conf(key):
|
99
99
|
encape, conf, upd = self.make_conf(key, None, id)
|
100
100
|
return encape, None, None, Datas.Key.Pub, 1
|
101
|
-
obj, eid, keys, tag, find = super().get(key, ns, id)
|
101
|
+
obj, eid, keys, tag, find = super().get(key, ns, tag, id)
|
102
102
|
if find:
|
103
103
|
return obj, eid, keys, tag, find
|
104
|
-
return self.make(key, ns, id)
|
104
|
+
return self.make(key, ns, tag, id)
|
105
105
|
|
106
106
|
|
@@ -3,41 +3,60 @@
|
|
3
3
|
from .base import *
|
4
4
|
from .encapes import Encapeset
|
5
5
|
from .dataset import Dataset
|
6
|
+
from .vars import Varset
|
6
7
|
from ... import pyz,dz
|
7
8
|
from .ids import Ids
|
8
9
|
from .unit import Unit
|
9
10
|
from .builds import Buildset
|
10
|
-
class
|
11
|
+
class GetKey(Base):
|
12
|
+
def call(self, conf):
|
13
|
+
return None, 0
|
14
|
+
def fill(self, conf, key):
|
15
|
+
assert 0,'not callable'
|
16
|
+
class SimpleConfKey(Base):
|
11
17
|
def init(self, key):
|
12
18
|
self.key = key
|
13
19
|
def call(self, conf):
|
14
20
|
if self.key not in conf:
|
15
|
-
return None
|
16
|
-
return conf[self.key]
|
21
|
+
return None,0
|
22
|
+
return conf[self.key],1
|
23
|
+
def fill(self, conf, key):
|
24
|
+
conf[self.key] = key
|
17
25
|
|
18
26
|
pass
|
19
27
|
class Manager(Base):
|
20
28
|
@staticmethod
|
21
|
-
def
|
22
|
-
if type(
|
23
|
-
|
24
|
-
return
|
29
|
+
def make_key(key):
|
30
|
+
if type(key) == str:
|
31
|
+
key = SimpleConfKey(key)
|
32
|
+
return key
|
25
33
|
@staticmethod
|
26
34
|
def make_ids(ids):
|
27
35
|
if type(ids)==str:
|
28
36
|
ids = Ids(ids)
|
29
37
|
return ids
|
30
|
-
def init(self, ids, deal_key, deal_ids = None):
|
38
|
+
def init(self, ids, deal_key='type', conf_key='id', deal_ids = None):
|
31
39
|
self._index = 0
|
32
40
|
self.units = {}
|
33
41
|
self.builds = Buildset(self)
|
34
42
|
ids = self.make_ids(ids)
|
35
43
|
self.ids = ids
|
36
|
-
self.deal_key = self.
|
44
|
+
self.deal_key = self.make_key(deal_key)
|
45
|
+
self.conf_key = self.make_key(conf_key)
|
37
46
|
self.deal_ids = pyz.nnull(deal_ids, ids)
|
38
47
|
self.confs = Dataset(self.ids)
|
39
48
|
self.deals = Dataset(self.deal_ids)
|
40
49
|
self.encapes = Encapeset(self.ids, self)
|
50
|
+
self.vars = Varset(self.ids)
|
51
|
+
self.push_var = self.vars.vpush
|
52
|
+
self.push_vars = self.vars.vpushs
|
53
|
+
self.pop_var = self.vars.vpop
|
54
|
+
self.pop_vars = self.vars.vpops
|
55
|
+
self.set_var = self.vars.vset
|
56
|
+
self.set_vars = self.vars.vsets
|
57
|
+
self.get_var = self.vars.vget
|
58
|
+
self.unset_var = self.vars.vremove
|
59
|
+
self.unset_vars = self.vars.vremoves
|
41
60
|
self.default_unit = self.create()
|
42
61
|
def add_build(self, conf):
|
43
62
|
self.builds.add(conf)
|
@@ -46,11 +65,13 @@ class Manager(Base):
|
|
46
65
|
def add(self, unit):
|
47
66
|
unit.bind(self)
|
48
67
|
self.units[unit.id] = unit
|
49
|
-
def create(self, ns=None, deal_ns = None, deal_key=None):
|
68
|
+
def create(self, ns=None, deal_ns = None, deal_key=None, conf_key= None):
|
50
69
|
id = self.id()
|
51
70
|
deal_key = pyz.nnull(deal_key, self.deal_key)
|
52
|
-
|
53
|
-
|
71
|
+
conf_key = pyz.nnull(conf_key, self.conf_key)
|
72
|
+
deal_key = self.make_key(deal_key)
|
73
|
+
conf_key = self.make_key(conf_key)
|
74
|
+
unit = Unit(ns, deal_ns, deal_key, conf_key, id)
|
54
75
|
unit.bind(self)
|
55
76
|
return unit
|
56
77
|
def get_unit(self, id):
|
@@ -0,0 +1,45 @@
|
|
1
|
+
|
2
|
+
from buildz.iocz.ioc import *
|
3
|
+
from buildz.iocz.ioc_deal import obj, deal
|
4
|
+
from buildz import xf, pyz, Base
|
5
|
+
class Test(Base):
|
6
|
+
def init(self, id=0):
|
7
|
+
self.id = id
|
8
|
+
|
9
|
+
pass
|
10
|
+
conf_obj = xf.loads(r"""
|
11
|
+
type=obj
|
12
|
+
source=buildz.iocz.ioc.test.Test
|
13
|
+
args=[
|
14
|
+
{
|
15
|
+
type=obj
|
16
|
+
source = buildz.iocz.ioc.test.Test
|
17
|
+
maps={id=123}
|
18
|
+
}
|
19
|
+
]
|
20
|
+
""")
|
21
|
+
conf_init = xf.loads(r"""
|
22
|
+
type=deal
|
23
|
+
source=buildz.iocz.ioc_deal.obj.ObjectDeal
|
24
|
+
deals: obj
|
25
|
+
call=1
|
26
|
+
""")
|
27
|
+
def test():
|
28
|
+
mg = Manager('.', 'type')
|
29
|
+
mg.set_deal("deal", deal.DealDeal())
|
30
|
+
print(mg)
|
31
|
+
unit = mg.create()
|
32
|
+
print(unit)
|
33
|
+
#deal_obj = obj.ObjectDeal()
|
34
|
+
#mg.set_deal('obj', deal_obj)
|
35
|
+
unit.set_conf("test",conf_obj)
|
36
|
+
unit.set_conf("deal_obj",conf_init)
|
37
|
+
unit.add_build("deal_obj")
|
38
|
+
encape, tag, find = mg.get_encape("test")
|
39
|
+
print(f"encape: {encape}")
|
40
|
+
it = encape()
|
41
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
42
|
+
it = encape()
|
43
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
44
|
+
|
45
|
+
pyz.lc(locals(), test)
|
@@ -6,16 +6,25 @@ from .encapes import Encapes
|
|
6
6
|
from ... import pyz
|
7
7
|
from .builds import Builds
|
8
8
|
class Unit(Base):
|
9
|
-
def init(self, ns=None, deal_ns=None, deal_key = None, id=None):
|
9
|
+
def init(self, ns=None, deal_ns=None, deal_key = None, conf_key = None, id=None):
|
10
10
|
self.ns = ns
|
11
11
|
self.deal_ns = deal_ns
|
12
12
|
self.deal_key = deal_key
|
13
|
+
self.conf_key = conf_key
|
13
14
|
self.id = id
|
14
15
|
self.confs = Confs(ns, deal_ns, id)
|
15
16
|
self.deals = Datas(deal_ns, id)
|
16
17
|
self.builds = Builds(self)
|
17
18
|
self.mg = None
|
18
19
|
self.build_encapes()
|
20
|
+
def update_ns(self, ns):
|
21
|
+
self.ns = ns
|
22
|
+
self.confs.ns = ns
|
23
|
+
if self.encapes is not None:
|
24
|
+
self.encapes.ns = ns
|
25
|
+
def update_deal_ns(self, deal_ns):
|
26
|
+
self.deal_ns = deal_ns
|
27
|
+
self.deals.ns = deal_ns
|
19
28
|
def add_build(self, conf):
|
20
29
|
self.builds.add(conf)
|
21
30
|
def build(self):
|
@@ -32,6 +41,7 @@ class Unit(Base):
|
|
32
41
|
return
|
33
42
|
self.mg = mg
|
34
43
|
self.deal_key = pyz.nnull(self.deal_key, mg.deal_key)
|
44
|
+
self.conf_key = pyz.nnull(self.conf_key, mg.conf_key)
|
35
45
|
if self.id is None:
|
36
46
|
self.id = mg.id()
|
37
47
|
self.confs.set_id(self.id)
|
@@ -49,6 +59,7 @@ class Unit(Base):
|
|
49
59
|
def get_conf(self, key, src=None, id=None, gfind=True):
|
50
60
|
return self.confs.tget(key, src, id, gfind)
|
51
61
|
def set_conf(self, key, conf, tag=None):
|
62
|
+
self.conf_key.fill(conf, key)
|
52
63
|
self.confs.set(key, conf, tag)
|
53
64
|
def get_encape(self, key, src=None, id=None, gfind=True):
|
54
65
|
self.build()
|
@@ -0,0 +1,65 @@
|
|
1
|
+
#
|
2
|
+
from .tdata import TagData
|
3
|
+
from .datas import Datas
|
4
|
+
from .dataset import Dataset
|
5
|
+
from ... import dz,pyz
|
6
|
+
class Varset(Dataset):
|
7
|
+
@staticmethod
|
8
|
+
def fcs(fc, need_val = True):
|
9
|
+
def _fc(kvs, ns=None, tag=None):
|
10
|
+
if need_val:
|
11
|
+
[fc(key, val, ns, tag) for key,val in kvs.items()]
|
12
|
+
else:
|
13
|
+
[fc(key, ns, tag) for key in kvs]
|
14
|
+
return _fc
|
15
|
+
def tag(self, _tag):
|
16
|
+
if _tag is None:
|
17
|
+
_tag = TagData.Key.Pub
|
18
|
+
return _tag
|
19
|
+
def init(self, ids):
|
20
|
+
super().init(ids)
|
21
|
+
self.vpops = self.fcs(self.vpop, 0)
|
22
|
+
self.vremoves = self.fcs(self.vremove, 0)
|
23
|
+
self.vsets = self.fcs(self.vset)
|
24
|
+
def vpushs(self, kvs, ns=None,tag=None):
|
25
|
+
[self.vpush(key, val, ns, tag) for key, val in kvs.items()]
|
26
|
+
return pyz.with_out(lambda :self.vpops(kvs))
|
27
|
+
def vset(self, key, val, ns=None, tag=None):
|
28
|
+
tag = self.tag(tag)
|
29
|
+
self.set(key, [val], ns, tag)
|
30
|
+
def vget(self, key, ns=None, tag=None):
|
31
|
+
tag = self.tag(tag)
|
32
|
+
obj, find_tag, find = self.tget(key, ns, tag)
|
33
|
+
if not find or len(obj)==0:
|
34
|
+
return None, 0
|
35
|
+
return obj[-1], 1
|
36
|
+
def vhas(self, key, ns=None, tag=None):
|
37
|
+
return self.vget(key, ns, tag)[1]
|
38
|
+
def vpush(self, key, val, ns = None, tag = None):
|
39
|
+
tag = self.tag(tag)
|
40
|
+
obj, find_tag, find = self.tget(key, ns, tag)
|
41
|
+
if not find or find_tag != tag:
|
42
|
+
obj = []
|
43
|
+
obj.append(val)
|
44
|
+
self.set(key, obj, ns, tag)
|
45
|
+
def vpop(self, key, ns=None, tag=None):
|
46
|
+
tag = self.tag(tag)
|
47
|
+
obj, find_tag, find = self.tget(key, ns, tag)
|
48
|
+
if not find or find_tag != tag:
|
49
|
+
return 0
|
50
|
+
if len(obj)>0:
|
51
|
+
obj.pop(-1)
|
52
|
+
return 1
|
53
|
+
def vremove(self, key, ns=None, tag=None):
|
54
|
+
tag = self.tag(tag)
|
55
|
+
obj, find_tag, find = self.tget(key, ns, tag)
|
56
|
+
if not find or find_tag != tag:
|
57
|
+
return 0
|
58
|
+
if tag == TagData.Key.Pub:
|
59
|
+
keys = self.ids(ns)+self.ids(key)
|
60
|
+
dz.dremove(self.pub, keys)
|
61
|
+
else:
|
62
|
+
map = self.ns[ns]
|
63
|
+
del map[key]
|
64
|
+
return 1
|
65
|
+
|