buildz 0.6.47__tar.gz → 0.6.49__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.47/buildz.egg-info → buildz-0.6.49}/PKG-INFO +1 -1
- {buildz-0.6.47 → buildz-0.6.49}/buildz/dz/mapz.py +8 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/wrap.py +1 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/base.py +1 -1
- buildz-0.6.49/buildz/iocz/ioc/__init__.py +2 -0
- buildz-0.6.49/buildz/iocz/ioc/base.py +18 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/bind.py +1 -1
- buildz-0.6.49/buildz/iocz/ioc/builds.py +63 -0
- buildz-0.6.49/buildz/iocz/ioc/confs.py +15 -0
- buildz-0.6.49/buildz/iocz/ioc/datas.py +26 -0
- buildz-0.6.49/buildz/iocz/ioc/dataset.py +76 -0
- buildz-0.6.49/buildz/iocz/ioc/encapes.py +106 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/env.py +1 -1
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/ids.py +2 -3
- buildz-0.6.49/buildz/iocz/ioc/init.py +4 -0
- buildz-0.6.49/buildz/iocz/ioc/mg.py +78 -0
- buildz-0.6.49/buildz/iocz/ioc/single.py +56 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/tdata.py +13 -8
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/tdict.py +7 -5
- buildz-0.6.49/buildz/iocz/ioc/test.py +37 -0
- buildz-0.6.49/buildz/iocz/ioc/test1.py +36 -0
- buildz-0.6.49/buildz/iocz/ioc/unit.py +57 -0
- buildz-0.6.49/buildz/iocz/ioc_deal/base.py +51 -0
- buildz-0.6.49/buildz/iocz/ioc_deal/deal.py +69 -0
- buildz-0.6.49/buildz/iocz/ioc_deal/obj.py +70 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/mhttp/caps.py +77 -8
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/mhttp/mhttp.py +7 -5
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/mhttp/proxy.py +1 -1
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/sslz/gen.py +1 -1
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/test/test.py +24 -23
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/test/test_cli.py +9 -4
- {buildz-0.6.47 → buildz-0.6.49}/buildz/pathz.py +14 -2
- {buildz-0.6.47 → buildz-0.6.49}/buildz/pyz.py +15 -1
- {buildz-0.6.47 → buildz-0.6.49/buildz.egg-info}/PKG-INFO +1 -1
- {buildz-0.6.47 → buildz-0.6.49}/buildz.egg-info/SOURCES.txt +9 -1
- {buildz-0.6.47 → buildz-0.6.49}/setup.py +1 -1
- buildz-0.6.47/buildz/iocz/ioc/base.py +0 -14
- buildz-0.6.47/buildz/iocz/ioc/confs.py +0 -5
- buildz-0.6.47/buildz/iocz/ioc/datas.py +0 -23
- buildz-0.6.47/buildz/iocz/ioc/dataset.py +0 -35
- buildz-0.6.47/buildz/iocz/ioc/encapes.py +0 -26
- buildz-0.6.47/buildz/iocz/ioc/envm.py +0 -2
- buildz-0.6.47/buildz/iocz/ioc/unit.py +0 -26
- buildz-0.6.47/buildz/iocz/ioc_deal/obj.py +0 -79
- {buildz-0.6.47 → buildz-0.6.49}/LICENSE +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/MANIFEST.in +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/README.md +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/__main__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argx.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/argz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/build.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/callz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/evalx.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/test_obj.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/tests/conf.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/argz/testx.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/cache.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/config.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/dbs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/deal.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/deal_list.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/deal_type.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/defs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/factory.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/init.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/log.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/request.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/run.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/save.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/cache/cache.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/config/base.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/config/config.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/data/fp.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/data/item1.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/data/item2.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/res/data/test.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/test/xtest.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/auto/verify.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/cachez/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/cachez/cache.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/cmd.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/confz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/__main__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/basez.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/clickhousez.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/lib/readme +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/mysqlz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/oraclez.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/orm.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/postgresqlz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/sqlite3z.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/dv/structz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/install.txt +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/run.conf +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/runz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/db/tls.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/ioc/deal.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/ioc/help.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/myers/deal.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/myers/help.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/conf/ioc.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/conf/main.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/conf/myers.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/conf/search.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/conf/xf.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/help/default.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/help/ioc.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/help/myers.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/help/search.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/help/xf.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/res/test.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/search/deal.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/search/help.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/xf/deal.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/demo/xf/help.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/dz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/evalz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/evalz/evalz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/evalz/res/default.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/evalz/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/fz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/fz/dirz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/fz/fhs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/fz/fio.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/fz/lsf.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/html/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/html/test/demo.html +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/html/test/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/html/xml.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/init.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc/conf.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc/confs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc/decorator.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc/loads.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc/single.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/branch.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/call.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/calls.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/branch_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/call_defaults.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/call_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/calls_defaults.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/calls_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/deal_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/deals.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/env_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/ioc_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/iocf_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/join_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/list_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/map_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/mcall_defaults.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/mcall_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/obj_cst_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/obj_defaults.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/obj_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/obj_set_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/ovar_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/ref_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/refs_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/var_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/xfile_defaults.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/conf/xfile_lists.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/deal.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/demo.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/env.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/init.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/ioc.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/iocf.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/join.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/list.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/map.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/mcall.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/obj.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/ovar.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/ref.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/refs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/val.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/var.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/ioc/ioc_deal/xfile.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/deals.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/iocz/ioc/dm.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/logz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/mhttp/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/mhttp/record.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/sslz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/sslz/gen.pyi +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/netz/test/__main__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tools.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/myers_diff.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/test_xfind.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/time/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/time/timez.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/tio/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/tio/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/tio/getch.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/tio/lx.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/tio/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/tio/win.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/tz/xfind.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/__main__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/code.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/code_modify.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/copy_old.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/file.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/buffer.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/listz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/lr.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/lrval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/mapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/nextz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/reval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/setz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/spc.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/spt.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/deal/strz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/exp.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/item.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/mg.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loader/pos.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/buffer.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/listmapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/listz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/lr.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/lrval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/mapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/nextz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/reval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/setz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/spc.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/spt.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/strz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/strz_new.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/deal/strz_old.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/exp.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/item.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/mg.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/pos.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz/test1.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/buffer.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/listmapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/listz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/lr.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/lrval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/mapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/nextz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/reval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/setz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/spc.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/spt.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/strz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/strz_new.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/deal/strz_old.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/exp.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/item.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/mg.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/pos.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/loaderz_nexp/test1.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/mapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/read.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/readz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/readz_nexp.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/stack.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/write.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/conf.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/deal/jsonval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/deal/listmapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/deal/listz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/deal/mapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/deal/reval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/deal/strz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/itemz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writer/mg.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/base.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/conf.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/deal/jsonval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/deal/listmapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/deal/listz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/deal/mapz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/deal/reval.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/deal/strz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/itemz.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/mg.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writerz/testx.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/writez.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xf/xargs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xz/__init__.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xz/conf.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xz/data.js +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xz/test.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz/xz/trs.py +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz.egg-info/dependency_links.txt +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/buildz.egg-info/top_level.txt +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/notes/notes.txt +0 -0
- {buildz-0.6.47 → buildz-0.6.49}/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.49
|
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 dict2list(obj):
|
3
|
+
if type(obj)!=dict:
|
4
|
+
return obj
|
5
|
+
return list(obj.items())
|
6
|
+
def dict2iter(obj):
|
7
|
+
if type(obj)!=dict:
|
8
|
+
return obj
|
9
|
+
return obj.items()
|
2
10
|
def get(obj, key, default=None, set = False):
|
3
11
|
if type(obj)==list:
|
4
12
|
key = int(key)
|
@@ -0,0 +1,18 @@
|
|
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
|
@@ -0,0 +1,63 @@
|
|
1
|
+
#
|
2
|
+
from .base import *
|
3
|
+
from .datas import Datas
|
4
|
+
from .confs import Confs
|
5
|
+
from .encapes import Encapes
|
6
|
+
from ... import pyz
|
7
|
+
|
8
|
+
class Builds(Base):
|
9
|
+
def init(self, unit):
|
10
|
+
self.need_build = False
|
11
|
+
self.jobs = []
|
12
|
+
self.dones = []
|
13
|
+
self.unit = unit
|
14
|
+
self.builds = None
|
15
|
+
def bind(self, builds):
|
16
|
+
if self.builds == builds:
|
17
|
+
return
|
18
|
+
self.builds = builds
|
19
|
+
self.builds.add(self)
|
20
|
+
def add(self, conf):
|
21
|
+
self.jobs.append(conf)
|
22
|
+
self.need_build = True
|
23
|
+
if self.builds is not None:
|
24
|
+
self.builds.add(self)
|
25
|
+
def build(self):
|
26
|
+
if not self.need_build:
|
27
|
+
return
|
28
|
+
for conf in self.jobs:
|
29
|
+
if Confs.is_conf(conf):
|
30
|
+
encape = self.unit.get_encape(conf, self.unit.ns, self.unit.id)
|
31
|
+
elif isinstance(conf, Encape):
|
32
|
+
encape = conf
|
33
|
+
else:
|
34
|
+
encape = self.unit.get_encape(conf, self.unit.ns, self.unit.id)
|
35
|
+
encape()
|
36
|
+
self.dones.append(conf)
|
37
|
+
self.jobs = []
|
38
|
+
self.need_build = False
|
39
|
+
def call(self):
|
40
|
+
self.build()
|
41
|
+
class Buildset(Base):
|
42
|
+
def init(self, mg):
|
43
|
+
self.mg = mg
|
44
|
+
self.need_build = False
|
45
|
+
self.jobs = []
|
46
|
+
self.dones = []
|
47
|
+
def add(self, builds):
|
48
|
+
if builds.need_build:
|
49
|
+
self.jobs.append(builds)
|
50
|
+
self.need_build = True
|
51
|
+
builds.bind(self)
|
52
|
+
def build(self):
|
53
|
+
if not self.need_build:
|
54
|
+
return
|
55
|
+
for builds in self.jobs:
|
56
|
+
builds()
|
57
|
+
self.dones.append(builds)
|
58
|
+
self.jobs = []
|
59
|
+
self.need_build = False
|
60
|
+
def call(self):
|
61
|
+
self.build()
|
62
|
+
|
63
|
+
pass
|
@@ -0,0 +1,15 @@
|
|
1
|
+
#
|
2
|
+
from .tdata import TagData
|
3
|
+
from .datas import Datas
|
4
|
+
from .dataset import Dataset
|
5
|
+
class Confs(Datas):
|
6
|
+
@staticmethod
|
7
|
+
def is_conf(obj):
|
8
|
+
return type(obj) in (list, tuple, dict)
|
9
|
+
def init(self, ns=None, id=None, deal_ns = None, dts=None):
|
10
|
+
super().init(ns, id, dts)
|
11
|
+
self.deal_ns = deal_ns
|
12
|
+
def set(self, key, val, tag=None):
|
13
|
+
val = (val, self.deal_ns)
|
14
|
+
super().set(key, val, tag)
|
15
|
+
|
@@ -0,0 +1,26 @@
|
|
1
|
+
|
2
|
+
from ... import pyz, dz
|
3
|
+
from .tdata import TagData
|
4
|
+
class Datas(TagData):
|
5
|
+
'''
|
6
|
+
一个单元下的数据集
|
7
|
+
'''
|
8
|
+
def init(self, ns=None, id=None, dts=None):
|
9
|
+
super().init(ns, id)
|
10
|
+
self.dts = dts
|
11
|
+
def bind(self, dts):
|
12
|
+
if self.dts==dts:
|
13
|
+
return
|
14
|
+
self.dts = dts
|
15
|
+
dts.add(self)
|
16
|
+
def set(self, key, val, tag=None):
|
17
|
+
tag = pyz.nnull(tag, self.default)
|
18
|
+
super().set(key, val, tag)
|
19
|
+
if self.dts is not None and tag in (TagData.Key.Pub, TagData.Key.Ns):
|
20
|
+
self.dts.set(key, val, self.ns, tag, self)
|
21
|
+
def tget(self, key, src=None,id=None, gfind=True):
|
22
|
+
ns, id = self.nsid(src, id)
|
23
|
+
obj, tag, find=super().tget(key, ns, id)
|
24
|
+
if not find and gfind:
|
25
|
+
obj, tag, find = self.dts.tget(key, ns, id)
|
26
|
+
return obj, tag, find
|
@@ -0,0 +1,76 @@
|
|
1
|
+
#
|
2
|
+
|
3
|
+
from .tdata import TagData
|
4
|
+
from .base import *
|
5
|
+
from ... import dz
|
6
|
+
class Dataset(Base):
|
7
|
+
'''
|
8
|
+
所有数据集,只包含pub和ns部分
|
9
|
+
'''
|
10
|
+
def init(self, ids):
|
11
|
+
self.ids = ids
|
12
|
+
self.pub = {}
|
13
|
+
self.ns = {}
|
14
|
+
self.objs = {}
|
15
|
+
def set(self, key, val, ns=None, tag=None, id=None):
|
16
|
+
if tag == TagData.Key.Ns:
|
17
|
+
self.ns_set(key,val,ns,id)
|
18
|
+
else:
|
19
|
+
self.pub_set(key,val,ns,id)
|
20
|
+
def pub_set(self, key, val, ns=None, id=None):
|
21
|
+
if isinstance(id, TagData):
|
22
|
+
id = id.id
|
23
|
+
val = (val,id)
|
24
|
+
keys = self.ids(ns)+self.ids(key)
|
25
|
+
dz.dset(self.pub, keys, val)
|
26
|
+
def ns_set(self, key, val, ns=None, id=None):
|
27
|
+
if isinstance(id, TagData):
|
28
|
+
id = id.id
|
29
|
+
val = (val,id)
|
30
|
+
map = dz.get_set(self.ns, ns, dict())
|
31
|
+
map[key] = val
|
32
|
+
def add(self, data):
|
33
|
+
ns = data.ns
|
34
|
+
self.objs[data.id] = data
|
35
|
+
for key, val in data.tag(data.Key.Pub).items():
|
36
|
+
self.pub_set(key, val, ns, data)
|
37
|
+
for key, val in data.tag(data.Key.Ns).items():
|
38
|
+
self.ns_set(key, val, ns, data)
|
39
|
+
if data.dts!=self:
|
40
|
+
data.bind(self)
|
41
|
+
def tget(self, key, ns=None, id=None):
|
42
|
+
obj, id, keys,tag, find = self.get(key,ns,id)
|
43
|
+
return obj, tag, find
|
44
|
+
def get(self, key, ns=None, id = None):
|
45
|
+
obj, oid, find = self.ns_get(key,ns,id)
|
46
|
+
tag = TagData.Key.Ns
|
47
|
+
keys = key
|
48
|
+
if not find:
|
49
|
+
obj, oid, keys, find=self.pub_get(key,ns,id)
|
50
|
+
tag=TagData.Key.Pub
|
51
|
+
return obj,oid,keys,tag,find
|
52
|
+
def _pub_get(self, key, ns=None, id=None):
|
53
|
+
ids_key = self.ids(key)
|
54
|
+
ids = ids_key
|
55
|
+
obj,find = dz.dget(self.pub, ids)
|
56
|
+
if find:
|
57
|
+
return obj, ids, find
|
58
|
+
if ns is None:
|
59
|
+
return 0,0, 0
|
60
|
+
ids = self.ids(ns) + ids_key
|
61
|
+
obj,find = dz.dget(self.pub, ids)
|
62
|
+
if find:
|
63
|
+
return obj, ids, find
|
64
|
+
return 0,0,0
|
65
|
+
def pub_get(self, key, ns=None, id=None):
|
66
|
+
obj,keys,find = self._pub_get(key, ns, id)
|
67
|
+
if find:
|
68
|
+
v,id=obj
|
69
|
+
return v,id,keys,find
|
70
|
+
return 0,0,0,0
|
71
|
+
def ns_get(self, key, ns=None, id=None):
|
72
|
+
map = dz.get_set(self.ns, ns, dict())
|
73
|
+
if key not in map:
|
74
|
+
return 0, 0, 0
|
75
|
+
v,id=map[key]
|
76
|
+
return v,id, 1
|
@@ -0,0 +1,106 @@
|
|
1
|
+
#
|
2
|
+
from .datas import Datas
|
3
|
+
from .dataset import Dataset
|
4
|
+
from .confs import Confs
|
5
|
+
class Encapes(Datas):
|
6
|
+
def init(self, ns=None, id=None, dts=None, unit=None):
|
7
|
+
super().init(ns, id, dts)
|
8
|
+
self.confs = None
|
9
|
+
self.deals = None
|
10
|
+
self.deal_key = None
|
11
|
+
self.unit = unit
|
12
|
+
self.build()
|
13
|
+
def build(self):
|
14
|
+
if self.unit is None or self.confs is not None:
|
15
|
+
return
|
16
|
+
self.confs = self.unit.confs
|
17
|
+
self.deals = self.unit.deals
|
18
|
+
self.deal_key = self.unit.deal_key
|
19
|
+
def make(self, key, ns=None, id=None):
|
20
|
+
if self.confs is None or self.deals is None or self.deal_key is None:
|
21
|
+
return 0,0,0
|
22
|
+
conf, ctag, cfind = self.confs.tget(key, ns, id, False)
|
23
|
+
if not cfind:
|
24
|
+
return 0,0,0
|
25
|
+
conf, deal_ns = conf
|
26
|
+
encape, conf, upd = self.make_conf(conf, deal_ns, id)
|
27
|
+
if upd:
|
28
|
+
self.confs.set(key, conf, ctag)
|
29
|
+
self.set(key, encape, ctag)
|
30
|
+
return encape, ctag, 1
|
31
|
+
def make_conf(self, conf, deal_ns=None, id=None):
|
32
|
+
deal_key = self.deal_key(conf)
|
33
|
+
deal, dtag, dfind = self.deals.tget(deal_key, deal_ns, id, True)
|
34
|
+
assert dfind
|
35
|
+
encape, conf, upd = deal(conf, self.unit)
|
36
|
+
return encape, conf, upd
|
37
|
+
def tget(self, key, src=None,id=None, gfind=True):
|
38
|
+
if Confs.is_conf(key):
|
39
|
+
encape, conf, upd = self.make_conf(key, self.deals.ns, id)
|
40
|
+
return encape, Datas.Key.Pub, 1
|
41
|
+
ns, id = self.nsid(src, id)
|
42
|
+
obj, tag, find=super().tget(key, ns, id, False)
|
43
|
+
if find:
|
44
|
+
return obj, tag, find
|
45
|
+
obj, tag, find = self.make(key, ns, id)
|
46
|
+
if find:
|
47
|
+
return obj, tag, find
|
48
|
+
if not gfind:
|
49
|
+
return 0,0,0
|
50
|
+
return self.dts.tget(key, ns, id)
|
51
|
+
class Encapeset(Dataset):
|
52
|
+
'''
|
53
|
+
生成对象前的中间层
|
54
|
+
'''
|
55
|
+
def init(self, ids, mg=None):
|
56
|
+
super().init(ids)
|
57
|
+
self.confs = None
|
58
|
+
self.deals = None
|
59
|
+
self.deal_key = None
|
60
|
+
self.mg = None
|
61
|
+
self.bind(mg)
|
62
|
+
def bind(self, mg):
|
63
|
+
if self.mg==mg:
|
64
|
+
return self
|
65
|
+
self.mg = mg
|
66
|
+
self.confs = mg.confs
|
67
|
+
self.deals = mg.deals
|
68
|
+
self.deal_key = mg.deal_key
|
69
|
+
return self
|
70
|
+
def make(self, key, ns=None, id = None):
|
71
|
+
conf, cid, keys, ctag, cfind = self.confs.get(key, ns, id)
|
72
|
+
if not cfind:
|
73
|
+
return 0,0,0,0,0
|
74
|
+
conf, deal_ns = conf
|
75
|
+
encape, conf, upd = self.make_conf(conf, deal_ns, id, cid)
|
76
|
+
if cid in self.objs:
|
77
|
+
obj = self.objs[id]
|
78
|
+
if ns != obj.ns:
|
79
|
+
ids_ns = self.ids(obj.ns)
|
80
|
+
keys_ns = keys[:len(ids_ns)]
|
81
|
+
assert ids_ns == keys_ns, f"{ids_ns}!={keys_ns}"
|
82
|
+
keys = keys[len(ids_ns):]
|
83
|
+
key = self.ids.id(keys)
|
84
|
+
self.objs[cid].set(key, encape, ctag)
|
85
|
+
if upd:
|
86
|
+
self.confs.objs[cid].set(key, conf, ctag)
|
87
|
+
else:
|
88
|
+
self.set(key, encape, ns, ctag)
|
89
|
+
return encape, cid, keys, ctag, 1
|
90
|
+
def make_conf(self, conf, deal_ns=None, id=None,cid=None):
|
91
|
+
deal_key = self.deal_key(conf)
|
92
|
+
deal, dtag, dfind = self.deals.tget(deal_key, deal_ns, id)
|
93
|
+
assert dfind
|
94
|
+
unit = self.mg.get_unit(cid)
|
95
|
+
encape, conf, upd = deal(conf, unit)
|
96
|
+
return encape, conf, upd
|
97
|
+
def get(self, key, ns=None, id=None):
|
98
|
+
if Confs.is_conf(key):
|
99
|
+
encape, conf, upd = self.make_conf(key, None, id)
|
100
|
+
return encape, None, None, Datas.Key.Pub, 1
|
101
|
+
obj, eid, keys, tag, find = super().get(key, ns, id)
|
102
|
+
if find:
|
103
|
+
return obj, eid, keys, tag, find
|
104
|
+
return self.make(key, ns, id)
|
105
|
+
|
106
|
+
|
@@ -12,13 +12,12 @@ class Ids(Base):
|
|
12
12
|
ids = ids[0]
|
13
13
|
return self.spt.join(ids)
|
14
14
|
def ids(self, id):
|
15
|
+
if id is None:
|
16
|
+
return []
|
15
17
|
if type(id) in (list, tuple):
|
16
18
|
return id
|
17
19
|
return id.split(self.spt)
|
18
20
|
def call(self, id):
|
19
21
|
return self.ids(id)
|
20
|
-
a = self.ids(a)
|
21
|
-
b = self.ids(b)
|
22
|
-
return self.id(a,b)
|
23
22
|
pass
|
24
23
|
|
@@ -0,0 +1,78 @@
|
|
1
|
+
#
|
2
|
+
|
3
|
+
from .base import *
|
4
|
+
from .encapes import Encapeset
|
5
|
+
from .dataset import Dataset
|
6
|
+
from ... import pyz,dz
|
7
|
+
from .ids import Ids
|
8
|
+
from .unit import Unit
|
9
|
+
from .builds import Buildset
|
10
|
+
class StrDealKey(Base):
|
11
|
+
def init(self, key):
|
12
|
+
self.key = key
|
13
|
+
def call(self, conf):
|
14
|
+
if self.key not in conf:
|
15
|
+
return None
|
16
|
+
return conf[self.key]
|
17
|
+
|
18
|
+
pass
|
19
|
+
class Manager(Base):
|
20
|
+
@staticmethod
|
21
|
+
def make_deal_key(deal_key):
|
22
|
+
if type(deal_key) == str:
|
23
|
+
deal_key = StrDealKey(deal_key)
|
24
|
+
return deal_key
|
25
|
+
@staticmethod
|
26
|
+
def make_ids(ids):
|
27
|
+
if type(ids)==str:
|
28
|
+
ids = Ids(ids)
|
29
|
+
return ids
|
30
|
+
def init(self, ids, deal_key, deal_ids = None):
|
31
|
+
self._index = 0
|
32
|
+
self.units = {}
|
33
|
+
self.builds = Buildset(self)
|
34
|
+
ids = self.make_ids(ids)
|
35
|
+
self.ids = ids
|
36
|
+
self.deal_key = self.make_deal_key(deal_key)
|
37
|
+
self.deal_ids = pyz.nnull(deal_ids, ids)
|
38
|
+
self.confs = Dataset(self.ids)
|
39
|
+
self.deals = Dataset(self.deal_ids)
|
40
|
+
self.encapes = Encapeset(self.ids, self)
|
41
|
+
self.default_unit = self.create()
|
42
|
+
def add_build(self, conf):
|
43
|
+
self.builds.add(conf)
|
44
|
+
def build(self):
|
45
|
+
self.builds.build()
|
46
|
+
def add(self, unit):
|
47
|
+
unit.bind(self)
|
48
|
+
self.units[unit.id] = unit
|
49
|
+
def create(self, ns=None, deal_ns = None, deal_key=None):
|
50
|
+
id = self.id()
|
51
|
+
deal_key = pyz.nnull(deal_key, self.deal_key)
|
52
|
+
deal_key = self.make_deal_key(deal_key)
|
53
|
+
unit = Unit(ns, deal_ns, deal_key, id)
|
54
|
+
unit.bind(self)
|
55
|
+
return unit
|
56
|
+
def get_unit(self, id):
|
57
|
+
if id not in self.units:
|
58
|
+
return self.default_unit
|
59
|
+
return self.units[id]
|
60
|
+
def id(self):
|
61
|
+
index = self._index
|
62
|
+
self._index+=1
|
63
|
+
return index
|
64
|
+
def get_deal(self, key, ns=None, id=None):
|
65
|
+
return self.deals.tget(key, ns, id)
|
66
|
+
def set_deal(self, key, deal, ns=None, tag=None, id=None):
|
67
|
+
self.deals.set(key, deal, ns, tag, id)
|
68
|
+
def get_conf(self, key, ns=None, id=None):
|
69
|
+
return self.confs.tget(key, ns, id)
|
70
|
+
def set_conf(self, key, conf, ns=None, tag=None, id=None):
|
71
|
+
self.confs.set(key, conf, ns, tag, id)
|
72
|
+
def get_encape(self, key, ns=None, id=None):
|
73
|
+
self.build()
|
74
|
+
return self.encapes.tget(key, ns, id)
|
75
|
+
def set_encape(self, key, encape, ns=None, tag=None, id=None):
|
76
|
+
self.encapes.set(key, encape, ns, tag, id)
|
77
|
+
|
78
|
+
pass
|
@@ -0,0 +1,56 @@
|
|
1
|
+
#
|
2
|
+
from ... import pyz,dz,Base
|
3
|
+
|
4
|
+
class Key:
|
5
|
+
default_param_key = 'single_id'
|
6
|
+
i_multi = 0
|
7
|
+
i_single = 1
|
8
|
+
i_param = 2
|
9
|
+
multi='multi'
|
10
|
+
single='single'
|
11
|
+
param='param'
|
12
|
+
str2int = {
|
13
|
+
multi:i_multi,
|
14
|
+
single: i_single,
|
15
|
+
param: i_param
|
16
|
+
}
|
17
|
+
@staticmethod
|
18
|
+
def s2i(key=None):
|
19
|
+
if key is None:
|
20
|
+
key = Key.i_single
|
21
|
+
if key in Key.str2int:
|
22
|
+
key = Key.str2int[key]
|
23
|
+
return key
|
24
|
+
class Single(Base):
|
25
|
+
Key = Key
|
26
|
+
def init(self, single=None, param_key = None):
|
27
|
+
if param_key is None:
|
28
|
+
param_key = Key.default_param_key
|
29
|
+
self.single = Key.s2i(single)
|
30
|
+
self.objs = {}
|
31
|
+
self.param_key = param_key
|
32
|
+
def get_key(self, params):
|
33
|
+
if self.single == Key.i_multi:
|
34
|
+
return 0,0
|
35
|
+
elif self.single == Key.i_single:
|
36
|
+
key = None
|
37
|
+
elif self.single == Key.i_param:
|
38
|
+
if params is None:
|
39
|
+
key = None
|
40
|
+
else:
|
41
|
+
key = params.get(self.param_key)
|
42
|
+
else:
|
43
|
+
assert 0
|
44
|
+
return key,1
|
45
|
+
def set(self, params, obj):
|
46
|
+
key, find = self.get_key(params)
|
47
|
+
if not find:
|
48
|
+
return
|
49
|
+
self.objs[key] = obj
|
50
|
+
def get(self, params):
|
51
|
+
key, find = self.get_key(params)
|
52
|
+
if not find:
|
53
|
+
return 0,0
|
54
|
+
if key not in self.objs:
|
55
|
+
return 0,0
|
56
|
+
return self.objs[key],1
|
@@ -1,29 +1,34 @@
|
|
1
1
|
#
|
2
|
-
from .tdict import
|
3
|
-
from
|
2
|
+
from .tdict import TagDict
|
3
|
+
from ... import pyz, dz
|
4
4
|
class Key:
|
5
5
|
Pub = "pub"
|
6
6
|
Pri = "pri"
|
7
7
|
Ns = "ns"
|
8
|
-
tags_ns =
|
9
|
-
tags_pub = [
|
8
|
+
tags_ns = [Ns,Pub]
|
9
|
+
tags_pub = [Pub]
|
10
10
|
tags_pri = None
|
11
11
|
pass
|
12
|
-
class
|
12
|
+
class TagData(TagDict):
|
13
13
|
'''
|
14
14
|
分成三个域,公共pub,私有pri和同域名ns
|
15
|
+
设置访问规则
|
15
16
|
不同域名只能访问pub数据
|
16
17
|
同域名访问pub和ns
|
17
18
|
同一个配置文件内(同一个id)访问pub,ns和pri
|
18
19
|
'''
|
19
|
-
|
20
|
+
Key = Key
|
21
|
+
def init(self, ns=None, id=None):
|
20
22
|
self.ns = ns
|
21
23
|
self.id = id
|
22
24
|
super().init(Key.Pub)
|
25
|
+
def set_id(self, id):
|
26
|
+
self.id = id
|
23
27
|
def call(self, *a,**b):
|
24
28
|
return self.tget(*a,**b)
|
25
|
-
|
26
|
-
|
29
|
+
@staticmethod
|
30
|
+
def nsid(src, id):
|
31
|
+
if isinstance(src, TagData):
|
27
32
|
ns = src.ns
|
28
33
|
id = src.id
|
29
34
|
else:
|
@@ -1,6 +1,6 @@
|
|
1
1
|
#
|
2
|
-
from
|
3
|
-
class
|
2
|
+
from ... import pyz,dz,Base
|
3
|
+
class TagDict(Base):
|
4
4
|
def remove(self, key, tag=None):
|
5
5
|
tag = pyz.nnull(tag, self.default)
|
6
6
|
rst = dz.get_set(self.maps, tag, dict())
|
@@ -20,11 +20,13 @@ class TDict(Base):
|
|
20
20
|
rst = self.maps[tag]
|
21
21
|
val, has = dz.dget(rst, key)
|
22
22
|
if has:
|
23
|
-
return val, 1
|
24
|
-
return None,0
|
25
|
-
def
|
23
|
+
return val, tag, 1
|
24
|
+
return None, None, 0
|
25
|
+
def tag(self, tag):
|
26
26
|
rst = dz.get_set(self.maps, tag, dict())
|
27
27
|
return rst
|
28
|
+
def __getattr__(self, tag):
|
29
|
+
return self.tag(tag)
|
28
30
|
def init(self, default=""):
|
29
31
|
self.maps = {}
|
30
32
|
self.default=default
|
@@ -0,0 +1,37 @@
|
|
1
|
+
|
2
|
+
from buildz.iocz.ioc import *
|
3
|
+
from buildz.iocz.ioc_deal import obj
|
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
|
+
def test():
|
11
|
+
conf = xf.loads(r"""
|
12
|
+
type=obj
|
13
|
+
source=buildz.iocz.ioc.test.Test
|
14
|
+
single=0
|
15
|
+
args=[
|
16
|
+
{
|
17
|
+
type=obj
|
18
|
+
source = buildz.iocz.ioc.test.Test
|
19
|
+
maps={id=123}
|
20
|
+
}
|
21
|
+
]
|
22
|
+
""")
|
23
|
+
mg = Manager('.', 'type')
|
24
|
+
print(mg)
|
25
|
+
unit = mg.create()
|
26
|
+
print(unit)
|
27
|
+
deal_obj = obj.ObjectDeal()
|
28
|
+
mg.set_deal('obj', deal_obj)
|
29
|
+
unit.set_conf("test",conf)
|
30
|
+
encape, tag, find = mg.get_encape("test")
|
31
|
+
print(f"encape: {encape}")
|
32
|
+
it = encape()
|
33
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
34
|
+
it = encape()
|
35
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
36
|
+
|
37
|
+
pyz.lc(locals(), test)
|
@@ -0,0 +1,36 @@
|
|
1
|
+
|
2
|
+
from buildz import ioc
|
3
|
+
|
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
|
+
def test():
|
11
|
+
conf = xf.loads(r"""
|
12
|
+
[
|
13
|
+
{
|
14
|
+
id=test
|
15
|
+
type=obj
|
16
|
+
source=buildz.iocz.ioc.test.Test
|
17
|
+
single=0
|
18
|
+
args=[
|
19
|
+
{
|
20
|
+
type=obj
|
21
|
+
source = buildz.iocz.ioc.test.Test
|
22
|
+
maps={id=123}
|
23
|
+
}
|
24
|
+
]
|
25
|
+
}
|
26
|
+
]
|
27
|
+
""")
|
28
|
+
mg = ioc.build()
|
29
|
+
mg.add(conf)
|
30
|
+
print(mg)
|
31
|
+
it = mg.get("test")
|
32
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
33
|
+
it = mg.get("test")
|
34
|
+
print(f"obj: {id(it), id(it.id),it.id.id}")
|
35
|
+
|
36
|
+
pyz.lc(locals(), test)
|