TA-vorlage: fqdn - teilbaum loeschen (inklusive: mit startpunkt, oder exclusive: ohne startpunkt, z.b. weil es ein zone apex ist oder dgl.)
soll als benutzbares werkzeug im netvs-hub integriert und angeboten werden. constraint-namen gelten ab v4.1.
die basisdaten (fqdn, der geloescht werden soll) werden ausschliesslich im stmt. "defineData" eingesetzt.
"filter_params_dict" hat im prinzip nur informellen charakter. koennte man auch auf {"show": true, "attrs_list": null}
setzen (keine ausgabe generieren).
- inklusive loeschung:
[
{
"idx": "defineData",
"name": "tmp.generic_object.list",
"old": { "_dict_list": [ { "root_fqdn": "sponsoring.kit.edu" } ] }
},
{
"idx": "list_root_fqdn",
"name": "dns.fqdn.list",
"old": {
"filter_params_dict": {"show": true, "attrs_list": ["value","tree_level","type","zone"]}
},
"old_ref_params": [
{"idx": "defineData", "params": { "value_list": "root_fqdn" } }
]
},
{
"idx": "list_fqdn_tree",
"name": "dns.fqdn.list",
"old": {
"filter_params_dict": {"show": true, "attrs_list": ["value","tree_level","type","zone"]},
"sorting_params_list":["tree_level desc", "value"]
},
"inner_join_ref": {"list_root_fqdn": "api_func_dns_fqdn_hierarchy_gfk_list_is_superset" }
},
{
"description": "delete all fqdns in fqdn tree including the root fqdn",
"idx": "del_fqdn",
"name": "dns.fqdn.delete",
"old": {
"force_del_ref_records": true, "try_del_parent": false
},
"old_ref_idx": "list_fqdn_tree"
}
]
- exklusive loeschung:
[
{
"idx": "defineData",
"name": "tmp.generic_object.list",
"old": { "_dict_list": [ { "root_fqdn": "sponsoring.kit.edu" } ] }
},
{
"idx": "list_root_fqdn",
"name": "dns.fqdn.list",
"old": {
"filter_params_dict": {"show": true, "attrs_list": ["value","tree_level","type","zone"]}
},
"old_ref_params": [
{"idx": "defineData", "params": { "value_list": "root_fqdn" } }
]
},
{
"idx": "list_fqdn_tree",
"name": "dns.fqdn.list",
"old": {
"filter_params_dict": {"show": true, "attrs_list": ["value","tree_level","type","zone"]},
"sorting_params_list":["tree_level desc", "value"]
},
"inner_join_ref": {"list_root_fqdn": "api_func_dns_fqdn_hierarchy_gfk_list_is_superset" }
},
{
"description": "delete fqdns in subtree except root fqdn",
"idx": "del_fqdn",
"name": "dns.fqdn.delete",
"old": {
"force_del_ref_records": true, "try_del_parent": false
},
"old_ref_params": [
{"idx": "list_fqdn_tree" },
{"idx": "list_root_fqdn", "join_type": "left_anti", "join_on": "val"}
]
}
]
der unterschied zw. beiden TAs liegt nur im zusaetzlichen refparam-join im statement-index "del_fqdn", dessen typ "left_anti" ist (dh. alles, ausser root fqdn)