catalystwan 0.41.2__py3-none-any.whl → 0.41.2.dev1__py3-none-any.whl
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.
- catalystwan/__init__.py +3 -2
- catalystwan/api/administration.py +13 -2
- catalystwan/api/api_container.py +4 -1
- catalystwan/api/builders/__init__.py +14 -0
- catalystwan/api/builders/feature_profiles/__init__.py +0 -0
- catalystwan/api/builders/feature_profiles/application_priority.py +58 -0
- catalystwan/api/builders/feature_profiles/builder_factory.py +59 -0
- catalystwan/api/builders/feature_profiles/cli.py +76 -0
- catalystwan/api/builders/feature_profiles/mixins.py +44 -0
- catalystwan/api/builders/feature_profiles/other.py +79 -0
- catalystwan/api/builders/feature_profiles/report.py +155 -0
- catalystwan/api/builders/feature_profiles/service.py +248 -0
- catalystwan/api/builders/feature_profiles/system.py +80 -0
- catalystwan/api/builders/feature_profiles/transport.py +256 -0
- catalystwan/api/builders/feature_profiles/uc_voice.py +287 -0
- catalystwan/api/config_group_api.py +41 -16
- catalystwan/api/configuration_groups/parcel.py +100 -30
- catalystwan/api/feature_profile_api.py +2021 -242
- catalystwan/api/policy_api.py +470 -116
- catalystwan/api/template_api.py +113 -44
- catalystwan/api/templates/README.md +61 -47
- catalystwan/api/templates/cli_template.py +17 -7
- catalystwan/api/templates/device_template/device_template.py +127 -32
- catalystwan/api/templates/feature_template.py +3 -3
- catalystwan/api/templates/models/aaa_model.py +387 -0
- catalystwan/api/templates/models/cisco_aaa_model.py +289 -42
- catalystwan/api/templates/models/cisco_banner_model.py +11 -2
- catalystwan/api/templates/models/cisco_bfd_model.py +31 -36
- catalystwan/api/templates/models/cisco_bgp_model.py +382 -131
- catalystwan/api/templates/models/cisco_logging_model.py +80 -43
- catalystwan/api/templates/models/cisco_ntp_model.py +34 -15
- catalystwan/api/templates/models/cisco_omp_model.py +70 -60
- catalystwan/api/templates/models/cisco_ospf.py +143 -74
- catalystwan/api/templates/models/cisco_ospfv3.py +217 -95
- catalystwan/api/templates/models/cisco_secure_internet_gateway.py +304 -142
- catalystwan/api/templates/models/cisco_snmp_model.py +66 -52
- catalystwan/api/templates/models/cisco_system.py +238 -129
- catalystwan/api/templates/models/cisco_vpn_interface_model.py +632 -275
- catalystwan/api/templates/models/cisco_vpn_model.py +433 -270
- catalystwan/api/templates/models/cli_template.py +3 -2
- catalystwan/api/templates/models/omp_vsmart_model.py +46 -10
- catalystwan/api/templates/models/security_vsmart_model.py +11 -8
- catalystwan/api/templates/models/supported.py +10 -4
- catalystwan/api/templates/models/system_vsmart_model.py +164 -27
- catalystwan/api/templates/models/vpn_vsmart_interface_model.py +198 -0
- catalystwan/api/templates/models/vpn_vsmart_model.py +124 -0
- catalystwan/apigw_auth.py +6 -2
- catalystwan/dataclasses.py +2 -53
- catalystwan/endpoints/__init__.py +41 -41
- catalystwan/endpoints/certificate_management_device.py +4 -0
- catalystwan/endpoints/cluster_management.py +27 -7
- catalystwan/endpoints/configuration/feature_profile/sdwan/application_priority.py +107 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/cli.py +60 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/dns_security.py +83 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/embedded_security.py +88 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/other.py +62 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/policy_object.py +35 -12
- catalystwan/endpoints/configuration/feature_profile/sdwan/service.py +154 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/sig_security.py +88 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/system.py +164 -11
- catalystwan/endpoints/configuration/feature_profile/sdwan/topology.py +93 -0
- catalystwan/endpoints/configuration/feature_profile/sdwan/transport.py +144 -26
- catalystwan/endpoints/configuration/feature_profile/sdwan/uc_voice.py +77 -0
- catalystwan/endpoints/configuration/network_hierarchy.py +32 -0
- catalystwan/endpoints/configuration/policy/abstractions.py +49 -0
- catalystwan/endpoints/configuration/policy/definition/access_control_list.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/access_control_list_ipv6.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/aip.py +52 -0
- catalystwan/endpoints/configuration/policy/definition/amp.py +52 -0
- catalystwan/endpoints/configuration/policy/definition/app_route.py +50 -0
- catalystwan/endpoints/configuration/policy/definition/cflowd.py +46 -0
- catalystwan/endpoints/configuration/policy/definition/control.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/device_access.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/device_access_ipv6.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/dial_peer.py +57 -0
- catalystwan/endpoints/configuration/policy/definition/dns_security.py +50 -0
- catalystwan/endpoints/configuration/policy/definition/fxo_port.py +57 -0
- catalystwan/endpoints/configuration/policy/definition/fxs_did_port.py +57 -0
- catalystwan/endpoints/configuration/policy/definition/fxs_port.py +57 -0
- catalystwan/endpoints/configuration/policy/definition/hub_and_spoke.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/intrusion_prevention.py +52 -0
- catalystwan/endpoints/configuration/policy/definition/mesh.py +2 -11
- catalystwan/endpoints/configuration/policy/definition/pri_isdn_port.py +57 -0
- catalystwan/endpoints/configuration/policy/definition/qos_map.py +2 -11
- catalystwan/endpoints/configuration/policy/definition/rewrite.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/route_policy.py +50 -0
- catalystwan/endpoints/configuration/policy/definition/rule_set.py +2 -11
- catalystwan/endpoints/configuration/policy/definition/security_group.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/srst_phone_profile.py +59 -0
- catalystwan/endpoints/configuration/policy/definition/ssl_decryption.py +50 -0
- catalystwan/endpoints/configuration/policy/definition/ssl_decryption_utd_profile.py +52 -0
- catalystwan/endpoints/configuration/policy/definition/traffic_data.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/url_filtering.py +50 -0
- catalystwan/endpoints/configuration/policy/definition/vpn_membership.py +6 -11
- catalystwan/endpoints/configuration/policy/definition/vpn_qos_map.py +50 -0
- catalystwan/endpoints/configuration/policy/definition/zone_based_firewall.py +6 -11
- catalystwan/endpoints/configuration/policy/list/app.py +3 -16
- catalystwan/endpoints/configuration/policy/list/app_probe.py +6 -15
- catalystwan/endpoints/configuration/policy/list/as_path.py +3 -16
- catalystwan/endpoints/configuration/policy/list/class_map.py +3 -16
- catalystwan/endpoints/configuration/policy/list/color.py +3 -16
- catalystwan/endpoints/configuration/policy/list/community.py +3 -16
- catalystwan/endpoints/configuration/policy/list/data_ipv6_prefix.py +6 -15
- catalystwan/endpoints/configuration/policy/list/data_prefix.py +3 -16
- catalystwan/endpoints/configuration/policy/list/expanded_community.py +6 -15
- catalystwan/endpoints/configuration/policy/list/extended_community.py +52 -0
- catalystwan/endpoints/configuration/policy/list/fax_protocol.py +48 -0
- catalystwan/endpoints/configuration/policy/list/fqdn.py +3 -16
- catalystwan/endpoints/configuration/policy/list/geo_location.py +3 -16
- catalystwan/endpoints/configuration/policy/list/identity.py +48 -0
- catalystwan/endpoints/configuration/policy/list/ips_signature.py +6 -15
- catalystwan/endpoints/configuration/policy/list/ipv6_prefix.py +3 -16
- catalystwan/endpoints/configuration/policy/list/local_app.py +3 -16
- catalystwan/endpoints/configuration/policy/list/local_domain.py +3 -16
- catalystwan/endpoints/configuration/policy/list/media_profile.py +52 -0
- catalystwan/endpoints/configuration/policy/list/mirror.py +3 -16
- catalystwan/endpoints/configuration/policy/list/modem_pass_through.py +52 -0
- catalystwan/endpoints/configuration/policy/list/policer.py +3 -16
- catalystwan/endpoints/configuration/policy/list/port.py +3 -16
- catalystwan/endpoints/configuration/policy/list/preferred_color_group.py +6 -15
- catalystwan/endpoints/configuration/policy/list/prefix.py +4 -16
- catalystwan/endpoints/configuration/policy/list/protocol_name.py +6 -15
- catalystwan/endpoints/configuration/policy/list/region.py +2 -10
- catalystwan/endpoints/configuration/policy/list/scalable_group_tag.py +52 -0
- catalystwan/endpoints/configuration/policy/list/site.py +3 -16
- catalystwan/endpoints/configuration/policy/list/sla.py +3 -16
- catalystwan/endpoints/configuration/policy/list/supervisory_disconnect.py +52 -0
- catalystwan/endpoints/configuration/policy/list/threat_grid_api_key.py +52 -0
- catalystwan/endpoints/configuration/policy/list/tloc.py +3 -16
- catalystwan/endpoints/configuration/policy/list/translation_profile.py +52 -0
- catalystwan/endpoints/configuration/policy/list/translation_rules.py +52 -0
- catalystwan/endpoints/configuration/policy/list/trunkgroup.py +48 -0
- catalystwan/endpoints/configuration/policy/list/umbrella_data.py +52 -0
- catalystwan/endpoints/configuration/policy/list/url_allow_list.py +3 -16
- catalystwan/endpoints/configuration/policy/list/url_block_list.py +3 -16
- catalystwan/endpoints/configuration/policy/list/vpn.py +3 -16
- catalystwan/endpoints/configuration/policy/list/zone.py +3 -16
- catalystwan/endpoints/configuration/policy/security_template.py +2 -3
- catalystwan/endpoints/configuration/policy/voice_template.py +39 -0
- catalystwan/endpoints/configuration/policy_group.py +30 -0
- catalystwan/endpoints/configuration/software_actions.py +2 -4
- catalystwan/endpoints/configuration/topology_group.py +51 -0
- catalystwan/endpoints/configuration_dashboard_status.py +2 -2
- catalystwan/endpoints/configuration_device_template.py +15 -1
- catalystwan/endpoints/configuration_feature_profile.py +8 -11
- catalystwan/endpoints/configuration_general_template.py +31 -0
- catalystwan/endpoints/configuration_group.py +28 -5
- catalystwan/endpoints/configuration_settings.py +90 -1
- catalystwan/endpoints/configuration_template_master.py +48 -0
- catalystwan/endpoints/endpoints_container.py +79 -19
- catalystwan/endpoints/real_time_monitoring/reboot_history.py +1 -3
- catalystwan/endpoints/tenant_migration.py +2 -0
- catalystwan/exceptions.py +17 -0
- catalystwan/integration_tests/base.py +81 -0
- catalystwan/integration_tests/feature_profile/sdwan/__init__.py +0 -0
- catalystwan/integration_tests/feature_profile/sdwan/policy/__init__.py +0 -0
- catalystwan/integration_tests/feature_profile/sdwan/policy/base.py +33 -0
- catalystwan/integration_tests/feature_profile/sdwan/policy/test_extended_community.py +33 -0
- catalystwan/integration_tests/feature_profile/sdwan/policy/test_security_app_list.py +32 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_application_priority.py +433 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_cli.py +54 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_dns_security.py +106 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_other.py +49 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_service.py +1078 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_sig_security.py +322 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_ssl_decryption.py +85 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_system.py +368 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_tracker.py +127 -0
- catalystwan/integration_tests/feature_profile/sdwan/test_transport.py +1698 -0
- catalystwan/integration_tests/feature_profile/sdwan/topology/test_topology.py +93 -0
- catalystwan/integration_tests/profile_builder/__init__.py +0 -0
- catalystwan/integration_tests/profile_builder/test_pb_service.py +197 -0
- catalystwan/integration_tests/profile_builder/test_pb_transport.py +226 -0
- catalystwan/integration_tests/profile_builder/test_pb_uc_voice.py +277 -0
- catalystwan/integration_tests/test_data/__init__.py +117 -0
- catalystwan/integration_tests/test_find_template_values.py +7 -18
- catalystwan/integration_tests/test_network_hierarchy.py +82 -0
- catalystwan/integration_tests/test_settings.py +30 -0
- catalystwan/models/common.py +1898 -2
- catalystwan/models/configuration/common.py +1 -0
- catalystwan/models/configuration/feature_profile/common.py +634 -149
- catalystwan/models/configuration/feature_profile/parcel.py +238 -0
- catalystwan/models/configuration/feature_profile/sdwan/acl/__init__.py +13 -0
- catalystwan/models/configuration/feature_profile/sdwan/acl/ipv4acl.py +298 -0
- catalystwan/models/configuration/feature_profile/sdwan/acl/ipv6acl.py +344 -0
- catalystwan/models/configuration/feature_profile/sdwan/application_priority/__init__.py +218 -0
- catalystwan/models/configuration/feature_profile/sdwan/application_priority/cloud_probe.py +61 -0
- catalystwan/models/configuration/feature_profile/sdwan/application_priority/policy_settings.py +31 -0
- catalystwan/models/configuration/feature_profile/sdwan/application_priority/qos_policy.py +102 -0
- catalystwan/models/configuration/feature_profile/sdwan/application_priority/traffic_policy.py +1057 -0
- catalystwan/models/configuration/feature_profile/sdwan/cli/__init__.py +23 -0
- catalystwan/models/configuration/feature_profile/sdwan/cli/config.py +18 -0
- catalystwan/models/configuration/feature_profile/sdwan/cli/full_config.py +15 -0
- catalystwan/models/configuration/feature_profile/sdwan/dns_security/__init__.py +13 -0
- catalystwan/models/configuration/feature_profile/sdwan/dns_security/dns.py +110 -0
- catalystwan/models/configuration/feature_profile/sdwan/embedded_security/__init__.py +23 -0
- catalystwan/models/configuration/feature_profile/sdwan/embedded_security/ngfirewall.py +493 -0
- catalystwan/models/configuration/feature_profile/sdwan/embedded_security/policy.py +171 -0
- catalystwan/models/configuration/feature_profile/sdwan/other/__init__.py +25 -0
- catalystwan/models/configuration/feature_profile/sdwan/other/cybervision.py +44 -0
- catalystwan/models/configuration/feature_profile/sdwan/other/thousandeyes.py +147 -0
- catalystwan/models/configuration/feature_profile/sdwan/other/ucse.py +110 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/__init__.py +62 -48
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/app_probe.py +34 -20
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/application_list.py +8 -6
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/as_path.py +22 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/color_list.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/data_prefix.py +13 -4
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/expanded_community_list.py +9 -7
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/extended_community.py +34 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/fowarding_class.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv4_network_object.py +15 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv4_service_object.py +254 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_data_prefix.py +11 -9
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_prefix_list.py +25 -10
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/mirror.py +27 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/network_object_group.py +15 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/object_group.py +15 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/{policier.py → policer.py} +12 -10
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefered_group_color.py +29 -10
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefix_list.py +23 -8
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/service_object_group.py +21 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/sla_class.py +12 -31
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/standard_community.py +16 -10
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/tloc_list.py +8 -7
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/aip.py +64 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/amp.py +79 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/application_list.py +8 -6
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/data_prefix.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/fqdn.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/geolocation_list.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/identity.py +30 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/intrusion_prevention.py +58 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ips_signature.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/local_domain.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/object_group.py +72 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/protocol_list.py +7 -5
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/rule_set.py +137 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/scalable_group_tag.py +26 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/security_port.py +21 -11
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption.py +126 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption_profile.py +165 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url.py +15 -10
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url_filtering.py +148 -0
- catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/zone.py +14 -18
- catalystwan/models/configuration/feature_profile/sdwan/routing/__init__.py +26 -0
- catalystwan/models/configuration/feature_profile/sdwan/routing/bgp.py +609 -0
- catalystwan/models/configuration/feature_profile/sdwan/{service → routing}/ospf.py +55 -47
- catalystwan/models/configuration/feature_profile/sdwan/{service → routing}/ospfv3.py +74 -72
- catalystwan/models/configuration/feature_profile/sdwan/service/__init__.py +91 -0
- catalystwan/models/configuration/feature_profile/sdwan/service/appqoe.py +76 -41
- catalystwan/models/configuration/feature_profile/sdwan/service/dhcp_server.py +107 -64
- catalystwan/models/configuration/feature_profile/sdwan/service/dual_router_ha.py +26 -0
- catalystwan/models/configuration/feature_profile/sdwan/service/eigrp.py +39 -42
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/common.py +7 -88
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/ethernet.py +231 -155
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/gre.py +38 -108
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/ipsec.py +77 -84
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/multilink.py +101 -0
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/svi.py +62 -56
- catalystwan/models/configuration/feature_profile/sdwan/service/lan/vpn.py +111 -120
- catalystwan/models/configuration/feature_profile/sdwan/service/multicast.py +56 -57
- catalystwan/models/configuration/feature_profile/sdwan/service/object_tracker.py +15 -21
- catalystwan/models/configuration/feature_profile/sdwan/service/route_policy.py +358 -110
- catalystwan/models/configuration/feature_profile/sdwan/service/service_chain.py +38 -0
- catalystwan/models/configuration/feature_profile/sdwan/service/service_insertion_attachment.py +17 -25
- catalystwan/models/configuration/feature_profile/sdwan/service/switchport.py +50 -58
- catalystwan/models/configuration/feature_profile/sdwan/service/tracker.py +12 -21
- catalystwan/models/configuration/feature_profile/sdwan/service/wireless_lan.py +27 -31
- catalystwan/models/configuration/feature_profile/sdwan/sig_security/__init__.py +19 -0
- catalystwan/models/configuration/feature_profile/sdwan/sig_security/sig_security.py +379 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/__init__.py +59 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/aaa.py +58 -10
- catalystwan/models/configuration/feature_profile/sdwan/system/banner.py +30 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/basic.py +290 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/bfd.py +69 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/device_access.py +157 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/device_access_ipv6.py +157 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/global_parcel.py +163 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/logging_parcel.py +162 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/mrf.py +75 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/ntp.py +103 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/omp.py +120 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/security.py +179 -0
- catalystwan/models/configuration/feature_profile/sdwan/system/snmp.py +173 -0
- catalystwan/models/configuration/feature_profile/sdwan/topology/__init__.py +29 -0
- catalystwan/models/configuration/feature_profile/sdwan/topology/custom_control.py +425 -0
- catalystwan/models/configuration/feature_profile/sdwan/topology/hubspoke.py +60 -0
- catalystwan/models/configuration/feature_profile/sdwan/topology/mesh.py +23 -0
- catalystwan/models/configuration/feature_profile/sdwan/trackers/__init__.py +36 -0
- catalystwan/models/configuration/feature_profile/sdwan/trackers/tracker.py +96 -0
- catalystwan/models/configuration/feature_profile/sdwan/trackers/tracker_group.py +63 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/__init__.py +93 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_controller.py +26 -23
- catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_profile.py +71 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/gps.py +37 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/management/ethernet.py +121 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/t1e1controller.py +124 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/vpn.py +285 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/cellular.py +173 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ethernet.py +389 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/gre.py +46 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ipsec.py +137 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/multilink.py +219 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/protocol_over.py +405 -0
- catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/t1e1serial.py +195 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/__init__.py +62 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/analog_interface.py +436 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/call_routing.py +179 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/digital_interface.py +380 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/dsp_farm.py +193 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/media_profile.py +17 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/server_group.py +51 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/srst.py +86 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/supervisory_disconnect.py +69 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_profile.py +42 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_rule.py +31 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/trunk_group.py +26 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_global.py +57 -0
- catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_tenant.py +40 -0
- catalystwan/models/configuration/network_hierarchy/__init__.py +22 -0
- catalystwan/models/configuration/network_hierarchy/cflowd.py +120 -0
- catalystwan/models/configuration/network_hierarchy/node.py +88 -0
- catalystwan/models/configuration/policy_group.py +74 -0
- catalystwan/models/configuration/profile_type.py +1 -6
- catalystwan/models/configuration/topology_group.py +52 -0
- catalystwan/models/policy/__init__.py +275 -69
- catalystwan/models/policy/centralized.py +26 -29
- catalystwan/models/policy/{definitions → definition}/access_control_list.py +47 -17
- catalystwan/models/policy/{definitions → definition}/access_control_list_ipv6.py +42 -18
- catalystwan/models/policy/definition/aip.py +60 -0
- catalystwan/models/policy/definition/amp.py +65 -0
- catalystwan/models/policy/definition/app_route.py +246 -0
- catalystwan/models/policy/definition/cflowd.py +95 -0
- catalystwan/models/policy/{definitions → definition}/control.py +48 -25
- catalystwan/models/policy/{definitions → definition}/device_access.py +22 -11
- catalystwan/models/policy/{definitions → definition}/device_access_ipv6.py +20 -11
- catalystwan/models/policy/definition/dial_peer.py +60 -0
- catalystwan/models/policy/definition/dns_security.py +130 -0
- catalystwan/models/policy/definition/fxo_port.py +63 -0
- catalystwan/models/policy/definition/fxs_did_port.py +58 -0
- catalystwan/models/policy/definition/fxs_port.py +56 -0
- catalystwan/models/policy/{definitions → definition}/hub_and_spoke.py +18 -4
- catalystwan/models/policy/definition/intrusion_prevention.py +55 -0
- catalystwan/models/policy/{definitions → definition}/mesh.py +13 -1
- catalystwan/models/policy/definition/pri_isdn_port.py +48 -0
- catalystwan/models/policy/{definitions → definition}/qos_map.py +39 -32
- catalystwan/models/policy/{definitions → definition}/rewrite.py +12 -2
- catalystwan/models/policy/definition/route_policy.py +187 -0
- catalystwan/models/policy/{definitions → definition}/rule_set.py +66 -48
- catalystwan/models/policy/{definitions → definition}/security_group.py +38 -14
- catalystwan/models/policy/definition/srst_phone_profile.py +37 -0
- catalystwan/models/policy/definition/ssl_decryption.py +209 -0
- catalystwan/models/policy/definition/ssl_decryption_utd_profile.py +87 -0
- catalystwan/models/policy/{definitions → definition}/traffic_data.py +184 -61
- catalystwan/models/policy/definition/url_filtering.py +70 -0
- catalystwan/models/policy/{definitions → definition}/vpn_membership.py +13 -1
- catalystwan/models/policy/definition/vpn_qos_map.py +46 -0
- catalystwan/models/policy/{definitions → definition}/zone_based_firewall.py +93 -32
- catalystwan/models/policy/list/app.py +44 -0
- catalystwan/models/policy/list/app_probe.py +42 -0
- catalystwan/models/policy/list/as_path.py +30 -0
- catalystwan/models/policy/list/class_map.py +30 -0
- catalystwan/models/policy/list/color.py +28 -0
- catalystwan/models/policy/list/communities.py +83 -0
- catalystwan/models/policy/list/data_ipv6_prefix.py +30 -0
- catalystwan/models/policy/list/data_prefix.py +30 -0
- catalystwan/models/policy/list/fax_protocol.py +45 -0
- catalystwan/models/policy/list/fqdn.py +24 -0
- catalystwan/models/policy/list/geo_location.py +33 -0
- catalystwan/models/policy/list/identity.py +29 -0
- catalystwan/models/policy/list/ips_signature.py +27 -0
- catalystwan/models/policy/list/ipv6_prefix.py +33 -0
- catalystwan/models/policy/list/local_app.py +45 -0
- catalystwan/models/policy/list/local_domain.py +36 -0
- catalystwan/models/policy/list/media_profile.py +44 -0
- catalystwan/models/policy/list/mirror.py +27 -0
- catalystwan/models/policy/list/modem_pass_through.py +27 -0
- catalystwan/models/policy/list/policer.py +39 -0
- catalystwan/models/policy/list/port.py +33 -0
- catalystwan/models/policy/list/preferred_color_group.py +82 -0
- catalystwan/models/policy/list/prefix.py +33 -0
- catalystwan/models/policy/list/protocol_name.py +26 -0
- catalystwan/models/policy/list/region.py +45 -0
- catalystwan/models/policy/list/scalable_group_tag.py +30 -0
- catalystwan/models/policy/list/site.py +34 -0
- catalystwan/models/policy/list/sla.py +77 -0
- catalystwan/models/policy/list/supervisory_disconnect.py +62 -0
- catalystwan/models/policy/list/threat_grid_api_key.py +32 -0
- catalystwan/models/policy/list/tloc.py +32 -0
- catalystwan/models/policy/list/translation_profile.py +32 -0
- catalystwan/models/policy/list/translation_rules.py +29 -0
- catalystwan/models/policy/list/trunkgroup.py +56 -0
- catalystwan/models/policy/list/umbrella_data.py +30 -0
- catalystwan/models/policy/list/url.py +39 -0
- catalystwan/models/policy/list/vpn.py +40 -0
- catalystwan/models/policy/list/zone.py +46 -0
- catalystwan/models/policy/localized.py +34 -16
- catalystwan/models/policy/policy.py +13 -9
- catalystwan/models/policy/policy_definition.py +673 -173
- catalystwan/models/policy/policy_list.py +38 -27
- catalystwan/models/policy/security.py +145 -46
- catalystwan/models/policy/voice.py +77 -0
- catalystwan/models/settings.py +41 -0
- catalystwan/models/templates.py +79 -0
- catalystwan/response.py +6 -2
- catalystwan/session.py +1 -1
- catalystwan/tests/builders/test_report.py +60 -0
- catalystwan/tests/builders/uc_voice.py +85 -0
- catalystwan/tests/models/__init__.py +0 -0
- catalystwan/tests/models/test_digital_interface.py +56 -0
- catalystwan/tests/templates/definitions/aaa_basic.json +96 -0
- catalystwan/tests/templates/definitions/aaa_complex.json +464 -0
- catalystwan/tests/templates/definitions/{iuo.json → cisco_aaa.json} +44 -15
- catalystwan/tests/templates/definitions/cisco_aaa_complex.json +361 -0
- catalystwan/tests/templates/definitions/cisco_logging_complex.json +268 -0
- catalystwan/tests/templates/definitions/cisco_ntp_complex.json +143 -0
- catalystwan/tests/templates/definitions/cisco_omp_complex.json +175 -0
- catalystwan/tests/templates/definitions/cisco_ospf_complex.json +302 -0
- catalystwan/tests/templates/definitions/cisco_sig.json +405 -0
- catalystwan/tests/templates/definitions/cisco_snmp_complex.json +258 -0
- catalystwan/tests/templates/definitions/cisco_system_complex.json +502 -0
- catalystwan/tests/templates/definitions/{Basic_Cisco_VPN_Model.json → cisco_vpn_basic.json} +2 -2
- catalystwan/tests/templates/definitions/{complex_cisco_vpn.json → cisco_vpn_complex.json} +27 -12
- catalystwan/tests/templates/definitions/cisco_vpn_interface_complex.json +821 -0
- catalystwan/tests/templates/definitions/omp_vsmart_1.json +26 -0
- catalystwan/tests/templates/definitions/{omp_2.json → omp_vsmart_2.json} +16 -2
- catalystwan/tests/templates/definitions/{omp_3.json → omp_vsmart_3.json} +16 -2
- catalystwan/tests/templates/definitions/omp_vsmart_complex.json +73 -0
- catalystwan/tests/templates/definitions/security_vsmart_complex.json +24 -0
- catalystwan/tests/templates/definitions/system_vsmart_complex.json +193 -0
- catalystwan/tests/templates/definitions/vpn_vsmart_basic.json +17 -0
- catalystwan/tests/templates/definitions/vpn_vsmart_complex.json +179 -0
- catalystwan/tests/templates/definitions/vpn_vsmart_interface_basic.json +42 -0
- catalystwan/tests/templates/definitions/vpn_vsmart_interface_complex.json +208 -0
- catalystwan/tests/templates/models/__init__.py +46 -13
- catalystwan/tests/templates/models/aaa.py +106 -0
- catalystwan/tests/templates/models/cisco_aaa.py +81 -48
- catalystwan/tests/templates/models/cisco_banner.py +2 -2
- catalystwan/tests/templates/models/cisco_bfd.py +4 -6
- catalystwan/tests/templates/models/cisco_logging.py +65 -0
- catalystwan/tests/templates/models/cisco_ntp.py +17 -0
- catalystwan/tests/templates/models/cisco_omp.py +37 -0
- catalystwan/tests/templates/models/cisco_ospf.py +60 -0
- catalystwan/tests/templates/models/cisco_secure_internet_gateway.py +95 -0
- catalystwan/tests/templates/models/cisco_snmp.py +40 -0
- catalystwan/tests/templates/models/cisco_system.py +108 -3
- catalystwan/tests/templates/models/cisco_vpn.py +42 -72
- catalystwan/tests/templates/models/cisco_vpn_interface.py +200 -0
- catalystwan/tests/templates/models/omp_vsmart.py +28 -8
- catalystwan/tests/templates/models/security_vsmart.py +11 -0
- catalystwan/tests/templates/models/system_vsmart.py +37 -0
- catalystwan/tests/templates/models/vpn_vsmart.py +32 -0
- catalystwan/tests/templates/models/vpn_vsmart_interface.py +54 -0
- catalystwan/tests/templates/schemas/aaa.json +1096 -0
- catalystwan/tests/templates/schemas/cedge_aaa.json +1 -1
- catalystwan/tests/templates/schemas/cisco_logging.json +577 -0
- catalystwan/tests/templates/schemas/cisco_ntp.json +265 -0
- catalystwan/tests/templates/schemas/cisco_omp.json +479 -0
- catalystwan/tests/templates/schemas/cisco_ospf.json +908 -0
- catalystwan/tests/templates/schemas/cisco_secure_internet_gateway.json +1520 -0
- catalystwan/tests/templates/schemas/cisco_snmp.json +561 -0
- catalystwan/tests/templates/schemas/cisco_system.json +242 -0
- catalystwan/tests/templates/schemas/cisco_vpn.json +53 -1
- catalystwan/tests/templates/schemas/cisco_vpn_interface.json +3348 -0
- catalystwan/tests/templates/schemas/omp-vsmart.json +20 -0
- catalystwan/tests/templates/schemas/security-vsmart.json +58 -0
- catalystwan/tests/templates/schemas/system-vsmart.json +2585 -0
- catalystwan/tests/templates/schemas/vpn-vsmart-interface.json +859 -0
- catalystwan/tests/templates/schemas/vpn-vsmart.json +445 -0
- catalystwan/tests/templates/test_chose_model.py +6 -10
- catalystwan/tests/templates/test_deserialize_model.py +4 -4
- catalystwan/tests/templates/test_find_template_values.py +229 -0
- catalystwan/tests/templates/test_find_template_values_2.py +193 -0
- catalystwan/tests/templates/test_serialize_model.py +1 -2
- catalystwan/tests/test_cli_template.py +8 -9
- catalystwan/tests/test_endpoints.py +42 -11
- catalystwan/tests/test_feature_profile_api.py +282 -0
- catalystwan/tests/test_models_common.py +53 -0
- catalystwan/tests/test_templates.py +16 -19
- catalystwan/utils/feature_template/find_template_values.py +17 -4
- catalystwan/utils/model.py +45 -0
- catalystwan/utils/persona.py +5 -0
- catalystwan/utils/type_check.py +22 -0
- catalystwan/workflows/backup_restore_device_templates.py +467 -0
- catalystwan/workflows/tenant_migration.py +1 -1
- {catalystwan-0.41.2.dist-info → catalystwan-0.41.2.dev1.dist-info}/METADATA +20 -1
- catalystwan-0.41.2.dev1.dist-info/RECORD +636 -0
- catalystwan/ENDPOINTS.md +0 -611
- catalystwan/api/configuration_groups/parcels/cellular_controller.py +0 -33
- catalystwan/api/templates/device_template/device_template_payload.json.j2 +0 -19
- catalystwan/models/configuration/config_migration.py +0 -36
- catalystwan/models/configuration/feature_profile/sdwan/management/vpn.py +0 -26
- catalystwan/models/configuration/feature_profile/sdwan/service/acl.py +0 -409
- catalystwan/models/configuration/feature_profile/sdwan/service/bgp.py +0 -288
- catalystwan/models/policy/lists.py +0 -330
- catalystwan/models/policy/lists_entries.py +0 -444
- catalystwan/tests/templates/definitions/complex_aaa.json +0 -277
- catalystwan/tests/templates/definitions/omp_1.json +0 -11
- catalystwan/utils/timezone.py +0 -422
- catalystwan-0.41.2.dist-info/RECORD +0 -353
- /catalystwan/tests/templates/definitions/{banner_1.json → cisco_banner.json} +0 -0
- {catalystwan-0.41.2.dist-info → catalystwan-0.41.2.dev1.dist-info}/LICENSE +0 -0
- {catalystwan-0.41.2.dist-info → catalystwan-0.41.2.dev1.dist-info}/WHEEL +0 -0
catalystwan/api/policy_api.py
CHANGED
|
@@ -2,113 +2,85 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Type, overload
|
|
5
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Tuple, Type, overload
|
|
6
6
|
from uuid import UUID
|
|
7
7
|
|
|
8
|
+
from pydantic import ValidationError
|
|
9
|
+
|
|
8
10
|
from catalystwan.api.task_status_api import Task
|
|
9
|
-
from catalystwan.endpoints.configuration.policy.
|
|
10
|
-
|
|
11
|
-
ConfigurationPolicyAclDefinition,
|
|
12
|
-
)
|
|
11
|
+
from catalystwan.endpoints.configuration.policy.abstractions import PolicyDefinitionEndpoints, PolicyListEndpoints
|
|
12
|
+
from catalystwan.endpoints.configuration.policy.definition.access_control_list import ConfigurationPolicyAclDefinition
|
|
13
13
|
from catalystwan.endpoints.configuration.policy.definition.access_control_list_ipv6 import (
|
|
14
|
-
AclIPv6PolicyGetResponse,
|
|
15
14
|
ConfigurationPolicyAclIPv6Definition,
|
|
16
15
|
)
|
|
17
|
-
from catalystwan.endpoints.configuration.policy.definition.
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
16
|
+
from catalystwan.endpoints.configuration.policy.definition.aip import ConfigurationPolicyAIPDefinition
|
|
17
|
+
from catalystwan.endpoints.configuration.policy.definition.amp import ConfigurationPolicyAMPDefinition
|
|
18
|
+
from catalystwan.endpoints.configuration.policy.definition.app_route import ConfigurationPolicyAppRouteDefinition
|
|
19
|
+
from catalystwan.endpoints.configuration.policy.definition.cflowd import ConfigurationPolicyCflowdDefinition
|
|
20
|
+
from catalystwan.endpoints.configuration.policy.definition.control import ConfigurationPolicyControlDefinition
|
|
21
21
|
from catalystwan.endpoints.configuration.policy.definition.device_access import (
|
|
22
22
|
ConfigurationPolicyDeviceAccessDefinition,
|
|
23
|
-
DeviceAccessPolicyGetResponse,
|
|
24
23
|
)
|
|
25
24
|
from catalystwan.endpoints.configuration.policy.definition.device_access_ipv6 import (
|
|
26
25
|
ConfigurationPolicyDeviceAccessIPv6Definition,
|
|
27
|
-
DeviceAccessIPv6PolicyGetResponse,
|
|
28
|
-
)
|
|
29
|
-
from catalystwan.endpoints.configuration.policy.definition.hub_and_spoke import (
|
|
30
|
-
ConfigurationPolicyHubAndSpokeDefinition,
|
|
31
|
-
HubAndSpokePolicyGetResponse,
|
|
32
|
-
)
|
|
33
|
-
from catalystwan.endpoints.configuration.policy.definition.mesh import (
|
|
34
|
-
ConfigurationPolicyMeshDefinition,
|
|
35
|
-
MeshPolicyGetResponse,
|
|
36
|
-
)
|
|
37
|
-
from catalystwan.endpoints.configuration.policy.definition.qos_map import (
|
|
38
|
-
ConfigurationPolicyQoSMapDefinition,
|
|
39
|
-
QoSMapPolicyGetResponse,
|
|
40
|
-
)
|
|
41
|
-
from catalystwan.endpoints.configuration.policy.definition.rewrite import (
|
|
42
|
-
ConfigurationPolicyRewriteRuleDefinition,
|
|
43
|
-
RewritePolicyGetResponse,
|
|
44
26
|
)
|
|
45
|
-
from catalystwan.endpoints.configuration.policy.definition.
|
|
46
|
-
|
|
47
|
-
|
|
27
|
+
from catalystwan.endpoints.configuration.policy.definition.dial_peer import ConfigurationPolicyDialPeerDefinition
|
|
28
|
+
from catalystwan.endpoints.configuration.policy.definition.dns_security import ConfigurationPolicyDnsSecurityDefinition
|
|
29
|
+
from catalystwan.endpoints.configuration.policy.definition.fxo_port import ConfigurationPolicyFxoPortDefinition
|
|
30
|
+
from catalystwan.endpoints.configuration.policy.definition.fxs_did_port import ConfigurationPolicyFxsDidPortDefinition
|
|
31
|
+
from catalystwan.endpoints.configuration.policy.definition.fxs_port import ConfigurationPolicyFxsPortDefinition
|
|
32
|
+
from catalystwan.endpoints.configuration.policy.definition.hub_and_spoke import ConfigurationPolicyHubAndSpokeDefinition
|
|
33
|
+
from catalystwan.endpoints.configuration.policy.definition.intrusion_prevention import (
|
|
34
|
+
ConfigurationPolicyIntrusionPreventionDefinition,
|
|
48
35
|
)
|
|
36
|
+
from catalystwan.endpoints.configuration.policy.definition.mesh import ConfigurationPolicyMeshDefinition
|
|
37
|
+
from catalystwan.endpoints.configuration.policy.definition.pri_isdn_port import ConfigurationPolicyPriIsdnPortDefinition
|
|
38
|
+
from catalystwan.endpoints.configuration.policy.definition.qos_map import ConfigurationPolicyQoSMapDefinition
|
|
39
|
+
from catalystwan.endpoints.configuration.policy.definition.rewrite import ConfigurationPolicyRewriteRuleDefinition
|
|
40
|
+
from catalystwan.endpoints.configuration.policy.definition.route_policy import ConfigurationPolicyRouteDefinition
|
|
41
|
+
from catalystwan.endpoints.configuration.policy.definition.rule_set import ConfigurationPolicyRuleSetDefinition
|
|
49
42
|
from catalystwan.endpoints.configuration.policy.definition.security_group import (
|
|
50
43
|
ConfigurationPolicySecurityGroupDefinition,
|
|
51
|
-
SecurityGroupGetResponse,
|
|
52
44
|
)
|
|
53
|
-
from catalystwan.endpoints.configuration.policy.definition.
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
45
|
+
from catalystwan.endpoints.configuration.policy.definition.srst_phone_profile import (
|
|
46
|
+
ConfigurationPolicySrstPhoneProfileDefinition,
|
|
47
|
+
)
|
|
48
|
+
from catalystwan.endpoints.configuration.policy.definition.ssl_decryption import ConfigurationSslDecryptionDefinition
|
|
49
|
+
from catalystwan.endpoints.configuration.policy.definition.ssl_decryption_utd_profile import (
|
|
50
|
+
ConfigurationSslDecryptionUtdProfileDefinition,
|
|
51
|
+
)
|
|
52
|
+
from catalystwan.endpoints.configuration.policy.definition.traffic_data import ConfigurationPolicyDataDefinition
|
|
53
|
+
from catalystwan.endpoints.configuration.policy.definition.url_filtering import (
|
|
54
|
+
ConfigurationPolicyUrlFilteringDefinition,
|
|
57
55
|
)
|
|
58
56
|
from catalystwan.endpoints.configuration.policy.definition.vpn_membership import (
|
|
59
57
|
ConfigurationPolicyVPNMembershipGroupDefinition,
|
|
60
|
-
VPNMembershipPolicyGetResponse,
|
|
61
58
|
)
|
|
59
|
+
from catalystwan.endpoints.configuration.policy.definition.vpn_qos_map import ConfigurationPolicyVPNQoSMapDefinition
|
|
62
60
|
from catalystwan.endpoints.configuration.policy.definition.zone_based_firewall import (
|
|
63
61
|
ConfigurationPolicyZoneBasedFirewallDefinition,
|
|
64
|
-
ZoneBasedFWPolicyGetResponse,
|
|
65
62
|
)
|
|
66
63
|
from catalystwan.endpoints.configuration.policy.list.app import AppListInfo, ConfigurationPolicyApplicationList
|
|
67
|
-
from catalystwan.endpoints.configuration.policy.list.app_probe import
|
|
68
|
-
AppProbeClassListInfo,
|
|
69
|
-
ConfigurationPolicyAppProbeClassList,
|
|
70
|
-
)
|
|
64
|
+
from catalystwan.endpoints.configuration.policy.list.app_probe import ConfigurationPolicyAppProbeClassList
|
|
71
65
|
from catalystwan.endpoints.configuration.policy.list.as_path import ASPathListInfo, ConfigurationPolicyASPathList
|
|
72
|
-
from catalystwan.endpoints.configuration.policy.list.class_map import
|
|
73
|
-
ClassMapListInfo,
|
|
74
|
-
ConfigurationPolicyForwardingClassList,
|
|
75
|
-
)
|
|
66
|
+
from catalystwan.endpoints.configuration.policy.list.class_map import ConfigurationPolicyForwardingClassList
|
|
76
67
|
from catalystwan.endpoints.configuration.policy.list.color import ColorListInfo, ConfigurationPolicyColorList
|
|
77
|
-
from catalystwan.endpoints.configuration.policy.list.community import
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
from catalystwan.endpoints.configuration.policy.list.
|
|
82
|
-
|
|
83
|
-
DataIPv6PrefixListInfo,
|
|
84
|
-
)
|
|
85
|
-
from catalystwan.endpoints.configuration.policy.list.data_prefix import (
|
|
86
|
-
ConfigurationPolicyDataPrefixList,
|
|
87
|
-
DataPrefixListInfo,
|
|
88
|
-
)
|
|
89
|
-
from catalystwan.endpoints.configuration.policy.list.expanded_community import (
|
|
90
|
-
ConfigurationPolicyExpandedCommunityList,
|
|
91
|
-
ExpandedCommunityListInfo,
|
|
92
|
-
)
|
|
68
|
+
from catalystwan.endpoints.configuration.policy.list.community import ConfigurationPolicyCommunityList
|
|
69
|
+
from catalystwan.endpoints.configuration.policy.list.data_ipv6_prefix import ConfigurationPolicyDataIPv6PrefixList
|
|
70
|
+
from catalystwan.endpoints.configuration.policy.list.data_prefix import ConfigurationPolicyDataPrefixList
|
|
71
|
+
from catalystwan.endpoints.configuration.policy.list.expanded_community import ConfigurationPolicyExpandedCommunityList
|
|
72
|
+
from catalystwan.endpoints.configuration.policy.list.extended_community import ConfigurationPolicyExtendedCommunityList
|
|
73
|
+
from catalystwan.endpoints.configuration.policy.list.fax_protocol import ConfigurationPolicyFaxProtocolList
|
|
93
74
|
from catalystwan.endpoints.configuration.policy.list.fqdn import ConfigurationPolicyFQDNList, FQDNListInfo
|
|
94
|
-
from catalystwan.endpoints.configuration.policy.list.geo_location import
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
from catalystwan.endpoints.configuration.policy.list.ips_signature import (
|
|
99
|
-
ConfigurationPolicyIPSSignatureList,
|
|
100
|
-
IPSSignatureListInfo,
|
|
101
|
-
)
|
|
102
|
-
from catalystwan.endpoints.configuration.policy.list.ipv6_prefix import (
|
|
103
|
-
ConfigurationPolicyIPv6PrefixList,
|
|
104
|
-
IPv6PrefixListInfo,
|
|
105
|
-
)
|
|
75
|
+
from catalystwan.endpoints.configuration.policy.list.geo_location import ConfigurationPolicyGeoLocationList
|
|
76
|
+
from catalystwan.endpoints.configuration.policy.list.identity import ConfigurationPolicyIdentityList
|
|
77
|
+
from catalystwan.endpoints.configuration.policy.list.ips_signature import ConfigurationPolicyIPSSignatureList
|
|
78
|
+
from catalystwan.endpoints.configuration.policy.list.ipv6_prefix import ConfigurationPolicyIPv6PrefixList
|
|
106
79
|
from catalystwan.endpoints.configuration.policy.list.local_app import ConfigurationPolicyLocalAppList, LocalAppListInfo
|
|
107
|
-
from catalystwan.endpoints.configuration.policy.list.local_domain import
|
|
108
|
-
|
|
109
|
-
LocalDomainListInfo,
|
|
110
|
-
)
|
|
80
|
+
from catalystwan.endpoints.configuration.policy.list.local_domain import ConfigurationPolicyLocalDomainList
|
|
81
|
+
from catalystwan.endpoints.configuration.policy.list.media_profile import ConfigurationPolicyMediaProfileList
|
|
111
82
|
from catalystwan.endpoints.configuration.policy.list.mirror import ConfigurationPolicyMirrorList, MirrorListInfo
|
|
83
|
+
from catalystwan.endpoints.configuration.policy.list.modem_pass_through import ConfigurationPolicyModemPassThroughList
|
|
112
84
|
from catalystwan.endpoints.configuration.policy.list.policer import ConfigurationPolicyPolicerClassList, PolicerListInfo
|
|
113
85
|
from catalystwan.endpoints.configuration.policy.list.port import ConfigurationPolicyPortList, PortListInfo
|
|
114
86
|
from catalystwan.endpoints.configuration.policy.list.preferred_color_group import (
|
|
@@ -121,9 +93,20 @@ from catalystwan.endpoints.configuration.policy.list.protocol_name import (
|
|
|
121
93
|
ProtocolNameListInfo,
|
|
122
94
|
)
|
|
123
95
|
from catalystwan.endpoints.configuration.policy.list.region import ConfigurationPolicyRegionList, RegionListInfo
|
|
96
|
+
from catalystwan.endpoints.configuration.policy.list.scalable_group_tag import ConfigurationPolicyScalableGroupTagList
|
|
124
97
|
from catalystwan.endpoints.configuration.policy.list.site import ConfigurationPolicySiteList, SiteListInfo
|
|
125
98
|
from catalystwan.endpoints.configuration.policy.list.sla import ConfigurationPolicySLAClassList, SLAClassListInfo
|
|
99
|
+
from catalystwan.endpoints.configuration.policy.list.supervisory_disconnect import (
|
|
100
|
+
ConfigurationPolicySupervisoryDisconnectList,
|
|
101
|
+
)
|
|
102
|
+
from catalystwan.endpoints.configuration.policy.list.threat_grid_api_key import ConfigurationPolicyThreatGridApiKeyList
|
|
126
103
|
from catalystwan.endpoints.configuration.policy.list.tloc import ConfigurationPolicyTLOCList, TLOCListInfo
|
|
104
|
+
from catalystwan.endpoints.configuration.policy.list.translation_profile import (
|
|
105
|
+
ConfigurationPolicyTranslationProfileList,
|
|
106
|
+
)
|
|
107
|
+
from catalystwan.endpoints.configuration.policy.list.translation_rules import ConfigurationPolicyTranslationRulesList
|
|
108
|
+
from catalystwan.endpoints.configuration.policy.list.trunkgroup import ConfigurationPolicyTrunkGroupList
|
|
109
|
+
from catalystwan.endpoints.configuration.policy.list.umbrella_data import ConfigurationPolicyUmbrellaDataList
|
|
127
110
|
from catalystwan.endpoints.configuration.policy.list.url_allow_list import (
|
|
128
111
|
ConfigurationPolicyURLAllowList,
|
|
129
112
|
URLAllowListInfo,
|
|
@@ -136,27 +119,15 @@ from catalystwan.endpoints.configuration.policy.list.vpn import ConfigurationPol
|
|
|
136
119
|
from catalystwan.endpoints.configuration.policy.list.zone import ConfigurationPolicyZoneList, ZoneListInfo
|
|
137
120
|
from catalystwan.endpoints.configuration.policy.security_template import ConfigurationSecurityTemplatePolicy
|
|
138
121
|
from catalystwan.endpoints.configuration.policy.vedge_template import ConfigurationVEdgeTemplatePolicy
|
|
122
|
+
from catalystwan.endpoints.configuration.policy.voice_template import ConfigurationVoiceTemplatePolicy
|
|
139
123
|
from catalystwan.endpoints.configuration.policy.vsmart_template import (
|
|
140
124
|
ConfigurationVSmartTemplatePolicy,
|
|
141
125
|
VSmartConnectivityStatus,
|
|
142
126
|
)
|
|
143
127
|
from catalystwan.models.misc.application_protocols import ApplicationProtocol
|
|
144
|
-
from catalystwan.models.policy import
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
from catalystwan.models.policy.definitions.access_control_list_ipv6 import AclIPv6Policy
|
|
148
|
-
from catalystwan.models.policy.definitions.control import ControlPolicy
|
|
149
|
-
from catalystwan.models.policy.definitions.device_access import DeviceAccessPolicy
|
|
150
|
-
from catalystwan.models.policy.definitions.device_access_ipv6 import DeviceAccessIPv6Policy
|
|
151
|
-
from catalystwan.models.policy.definitions.hub_and_spoke import HubAndSpokePolicy
|
|
152
|
-
from catalystwan.models.policy.definitions.mesh import MeshPolicy
|
|
153
|
-
from catalystwan.models.policy.definitions.qos_map import QoSMapPolicy
|
|
154
|
-
from catalystwan.models.policy.definitions.rewrite import RewritePolicy
|
|
155
|
-
from catalystwan.models.policy.definitions.rule_set import RuleSet
|
|
156
|
-
from catalystwan.models.policy.definitions.security_group import SecurityGroup
|
|
157
|
-
from catalystwan.models.policy.definitions.vpn_membership import VPNMembershipPolicy
|
|
158
|
-
from catalystwan.models.policy.definitions.zone_based_firewall import ZoneBasedFWPolicy
|
|
159
|
-
from catalystwan.models.policy.lists import (
|
|
128
|
+
from catalystwan.models.policy import (
|
|
129
|
+
AnyPolicyDefinition,
|
|
130
|
+
AnyPolicyList,
|
|
160
131
|
AppList,
|
|
161
132
|
AppProbeClassList,
|
|
162
133
|
ASPathList,
|
|
@@ -166,6 +137,7 @@ from catalystwan.models.policy.lists import (
|
|
|
166
137
|
DataIPv6PrefixList,
|
|
167
138
|
DataPrefixList,
|
|
168
139
|
ExpandedCommunityList,
|
|
140
|
+
ExtendedCommunityList,
|
|
169
141
|
FQDNList,
|
|
170
142
|
GeoLocationList,
|
|
171
143
|
IPSSignatureList,
|
|
@@ -174,7 +146,6 @@ from catalystwan.models.policy.lists import (
|
|
|
174
146
|
LocalDomainList,
|
|
175
147
|
MirrorList,
|
|
176
148
|
PolicerList,
|
|
177
|
-
PolicyListBase,
|
|
178
149
|
PortList,
|
|
179
150
|
PreferredColorGroupList,
|
|
180
151
|
PrefixList,
|
|
@@ -188,6 +159,83 @@ from catalystwan.models.policy.lists import (
|
|
|
188
159
|
VPNList,
|
|
189
160
|
ZoneList,
|
|
190
161
|
)
|
|
162
|
+
from catalystwan.models.policy.centralized import CentralizedPolicy, CentralizedPolicyEditPayload, CentralizedPolicyInfo
|
|
163
|
+
from catalystwan.models.policy.definition.access_control_list import AclPolicy, AclPolicyGetResponse
|
|
164
|
+
from catalystwan.models.policy.definition.access_control_list_ipv6 import AclIPv6Policy, AclIPv6PolicyGetResponse
|
|
165
|
+
from catalystwan.models.policy.definition.aip import (
|
|
166
|
+
AdvancedInspectionProfilePolicy,
|
|
167
|
+
AdvancedInspectionProfilePolicyGetResponse,
|
|
168
|
+
)
|
|
169
|
+
from catalystwan.models.policy.definition.amp import (
|
|
170
|
+
AdvancedMalwareProtectionPolicy,
|
|
171
|
+
AdvancedMalwareProtectionPolicyGetResponse,
|
|
172
|
+
)
|
|
173
|
+
from catalystwan.models.policy.definition.app_route import AppRoutePolicy, AppRoutePolicyGetResponse
|
|
174
|
+
from catalystwan.models.policy.definition.cflowd import CflowdPolicy, CflowdPolicyGetResponse
|
|
175
|
+
from catalystwan.models.policy.definition.control import ControlPolicy, ControlPolicyGetResponse
|
|
176
|
+
from catalystwan.models.policy.definition.device_access import DeviceAccessPolicy, DeviceAccessPolicyGetResponse
|
|
177
|
+
from catalystwan.models.policy.definition.device_access_ipv6 import (
|
|
178
|
+
DeviceAccessIPv6Policy,
|
|
179
|
+
DeviceAccessIPv6PolicyGetResponse,
|
|
180
|
+
)
|
|
181
|
+
from catalystwan.models.policy.definition.dial_peer import DialPeerPolicy, DialPeerPolicyGetResponse
|
|
182
|
+
from catalystwan.models.policy.definition.dns_security import DnsSecurityPolicy, DnsSecurityPolicyGetResponse
|
|
183
|
+
from catalystwan.models.policy.definition.fxo_port import FxoPortPolicy, FxoPortPolicyGetResponse
|
|
184
|
+
from catalystwan.models.policy.definition.fxs_did_port import FxsDidPortPolicy, FxsDidPortPolicyGetResponse
|
|
185
|
+
from catalystwan.models.policy.definition.fxs_port import FxsPortPolicy, FxsPortPolicyGetResponse
|
|
186
|
+
from catalystwan.models.policy.definition.hub_and_spoke import HubAndSpokePolicy, HubAndSpokePolicyGetResponse
|
|
187
|
+
from catalystwan.models.policy.definition.intrusion_prevention import (
|
|
188
|
+
IntrusionPreventionPolicy,
|
|
189
|
+
IntrusionPreventionPolicyGetResponse,
|
|
190
|
+
)
|
|
191
|
+
from catalystwan.models.policy.definition.mesh import MeshPolicy, MeshPolicyGetResponse
|
|
192
|
+
from catalystwan.models.policy.definition.pri_isdn_port import PriIsdnPortPolicy, PriIsdnPortPolicyGetResponse
|
|
193
|
+
from catalystwan.models.policy.definition.qos_map import QoSMapPolicy, QoSMapPolicyGetResponse
|
|
194
|
+
from catalystwan.models.policy.definition.rewrite import RewritePolicy, RewritePolicyGetResponse
|
|
195
|
+
from catalystwan.models.policy.definition.route_policy import RoutePolicy, RoutePolicyGetResponse
|
|
196
|
+
from catalystwan.models.policy.definition.rule_set import RuleSet, RuleSetGetResponse
|
|
197
|
+
from catalystwan.models.policy.definition.security_group import SecurityGroup, SecurityGroupGetResponse
|
|
198
|
+
from catalystwan.models.policy.definition.srst_phone_profile import (
|
|
199
|
+
SrstPhoneProfilePolicy,
|
|
200
|
+
SrstPhoneProfilePolicyGetResponse,
|
|
201
|
+
)
|
|
202
|
+
from catalystwan.models.policy.definition.ssl_decryption import SslDecryptionPolicy, SslDecryptionPolicyGetResponse
|
|
203
|
+
from catalystwan.models.policy.definition.ssl_decryption_utd_profile import (
|
|
204
|
+
SslDecryptionUtdProfilePolicy,
|
|
205
|
+
SslDecryptionUtdProfilePolicyGetResponse,
|
|
206
|
+
)
|
|
207
|
+
from catalystwan.models.policy.definition.traffic_data import TrafficDataPolicy, TrafficDataPolicyGetResponse
|
|
208
|
+
from catalystwan.models.policy.definition.url_filtering import UrlFilteringPolicy, UrlFilteringPolicyGetResponse
|
|
209
|
+
from catalystwan.models.policy.definition.vpn_membership import VPNMembershipPolicy, VPNMembershipPolicyGetResponse
|
|
210
|
+
from catalystwan.models.policy.definition.vpn_qos_map import VPNQoSMapPolicy
|
|
211
|
+
from catalystwan.models.policy.definition.zone_based_firewall import ZoneBasedFWPolicy, ZoneBasedFWPolicyGetResponse
|
|
212
|
+
from catalystwan.models.policy.list.app_probe import AppProbeClassListInfo
|
|
213
|
+
from catalystwan.models.policy.list.class_map import ClassMapListInfo
|
|
214
|
+
from catalystwan.models.policy.list.communities import (
|
|
215
|
+
CommunityListInfo,
|
|
216
|
+
ExpandedCommunityListInfo,
|
|
217
|
+
ExtendedCommunityListInfo,
|
|
218
|
+
)
|
|
219
|
+
from catalystwan.models.policy.list.data_ipv6_prefix import DataIPv6PrefixListInfo
|
|
220
|
+
from catalystwan.models.policy.list.data_prefix import DataPrefixListInfo
|
|
221
|
+
from catalystwan.models.policy.list.fax_protocol import FaxProtocolList, FaxProtocolListInfo
|
|
222
|
+
from catalystwan.models.policy.list.geo_location import GeoLocationListInfo
|
|
223
|
+
from catalystwan.models.policy.list.identity import IdentityList, IdentityListInfo
|
|
224
|
+
from catalystwan.models.policy.list.ips_signature import IPSSignatureListInfo
|
|
225
|
+
from catalystwan.models.policy.list.ipv6_prefix import IPv6PrefixListInfo
|
|
226
|
+
from catalystwan.models.policy.list.local_domain import LocalDomainListInfo
|
|
227
|
+
from catalystwan.models.policy.list.media_profile import MediaProfileList, MediaProfileListInfo
|
|
228
|
+
from catalystwan.models.policy.list.modem_pass_through import ModemPassThroughList, ModemPassThroughListInfo
|
|
229
|
+
from catalystwan.models.policy.list.scalable_group_tag import ScalableGroupTagList, ScalableGroupTagListInfo
|
|
230
|
+
from catalystwan.models.policy.list.supervisory_disconnect import (
|
|
231
|
+
SupervisoryDisconnectList,
|
|
232
|
+
SupervisoryDisconnectListInfo,
|
|
233
|
+
)
|
|
234
|
+
from catalystwan.models.policy.list.threat_grid_api_key import ThreatGridApiKeyList, ThreatGridApiKeyListInfo
|
|
235
|
+
from catalystwan.models.policy.list.translation_profile import TranslationProfileList, TranslationProfileListInfo
|
|
236
|
+
from catalystwan.models.policy.list.translation_rules import TranslationRulesList, TranslationRulesListInfo
|
|
237
|
+
from catalystwan.models.policy.list.trunkgroup import TrunkGroupList, TrunkGroupListInfo
|
|
238
|
+
from catalystwan.models.policy.list.umbrella_data import UmbrellaDataList, UmbrellaDataListInfo
|
|
191
239
|
from catalystwan.models.policy.localized import (
|
|
192
240
|
LocalizedPolicy,
|
|
193
241
|
LocalizedPolicyDeviceInfo,
|
|
@@ -197,17 +245,17 @@ from catalystwan.models.policy.localized import (
|
|
|
197
245
|
from catalystwan.models.policy.policy_definition import (
|
|
198
246
|
PolicyDefinitionBase,
|
|
199
247
|
PolicyDefinitionEditResponse,
|
|
200
|
-
PolicyDefinitionEndpoints,
|
|
201
248
|
PolicyDefinitionInfo,
|
|
202
249
|
)
|
|
203
|
-
from catalystwan.models.policy.policy_list import
|
|
250
|
+
from catalystwan.models.policy.policy_list import PolicyListBase
|
|
204
251
|
from catalystwan.models.policy.security import (
|
|
205
252
|
AnySecurityPolicy,
|
|
206
|
-
|
|
253
|
+
AnySecurityPolicyInfoList,
|
|
207
254
|
SecurityPolicy,
|
|
208
255
|
SecurityPolicyEditResponse,
|
|
209
256
|
UnifiedSecurityPolicy,
|
|
210
257
|
)
|
|
258
|
+
from catalystwan.models.policy.voice import VoicePolicy, VoicePolicyEditResponse, VoicePolicyInfo
|
|
211
259
|
from catalystwan.typed_list import DataSequence
|
|
212
260
|
|
|
213
261
|
if TYPE_CHECKING:
|
|
@@ -224,43 +272,72 @@ POLICY_LIST_ENDPOINTS_MAP: Mapping[type, type] = {
|
|
|
224
272
|
DataIPv6PrefixList: ConfigurationPolicyDataIPv6PrefixList,
|
|
225
273
|
DataPrefixList: ConfigurationPolicyDataPrefixList,
|
|
226
274
|
ExpandedCommunityList: ConfigurationPolicyExpandedCommunityList,
|
|
275
|
+
ExtendedCommunityList: ConfigurationPolicyExtendedCommunityList,
|
|
276
|
+
FaxProtocolList: ConfigurationPolicyFaxProtocolList,
|
|
227
277
|
FQDNList: ConfigurationPolicyFQDNList,
|
|
228
278
|
GeoLocationList: ConfigurationPolicyGeoLocationList,
|
|
279
|
+
IdentityList: ConfigurationPolicyIdentityList,
|
|
229
280
|
IPSSignatureList: ConfigurationPolicyIPSSignatureList,
|
|
230
281
|
IPv6PrefixList: ConfigurationPolicyIPv6PrefixList,
|
|
231
282
|
LocalAppList: ConfigurationPolicyLocalAppList,
|
|
232
283
|
LocalDomainList: ConfigurationPolicyLocalDomainList,
|
|
284
|
+
MediaProfileList: ConfigurationPolicyMediaProfileList,
|
|
233
285
|
MirrorList: ConfigurationPolicyMirrorList,
|
|
286
|
+
ModemPassThroughList: ConfigurationPolicyModemPassThroughList,
|
|
234
287
|
PolicerList: ConfigurationPolicyPolicerClassList,
|
|
235
288
|
PortList: ConfigurationPolicyPortList,
|
|
236
289
|
PreferredColorGroupList: ConfigurationPreferredColorGroupList,
|
|
237
290
|
PrefixList: ConfigurationPolicyPrefixList,
|
|
238
291
|
ProtocolNameList: ConfigurationPolicyProtocolNameList,
|
|
239
292
|
RegionList: ConfigurationPolicyRegionList,
|
|
293
|
+
ScalableGroupTagList: ConfigurationPolicyScalableGroupTagList,
|
|
240
294
|
SiteList: ConfigurationPolicySiteList,
|
|
241
295
|
SLAClassList: ConfigurationPolicySLAClassList,
|
|
296
|
+
SupervisoryDisconnectList: ConfigurationPolicySupervisoryDisconnectList,
|
|
297
|
+
ThreatGridApiKeyList: ConfigurationPolicyThreatGridApiKeyList,
|
|
242
298
|
TLOCList: ConfigurationPolicyTLOCList,
|
|
243
|
-
|
|
299
|
+
TranslationProfileList: ConfigurationPolicyTranslationProfileList,
|
|
300
|
+
TranslationRulesList: ConfigurationPolicyTranslationRulesList,
|
|
301
|
+
TrunkGroupList: ConfigurationPolicyTrunkGroupList,
|
|
302
|
+
UmbrellaDataList: ConfigurationPolicyUmbrellaDataList,
|
|
244
303
|
URLAllowList: ConfigurationPolicyURLAllowList,
|
|
304
|
+
URLBlockList: ConfigurationPolicyURLBlockList,
|
|
245
305
|
VPNList: ConfigurationPolicyVPNList,
|
|
246
306
|
ZoneList: ConfigurationPolicyZoneList,
|
|
247
307
|
}
|
|
248
308
|
|
|
249
309
|
POLICY_DEFINITION_ENDPOINTS_MAP: Mapping[type, type] = {
|
|
310
|
+
AclIPv6Policy: ConfigurationPolicyAclIPv6Definition,
|
|
311
|
+
AclPolicy: ConfigurationPolicyAclDefinition,
|
|
312
|
+
AdvancedInspectionProfilePolicy: ConfigurationPolicyAIPDefinition,
|
|
313
|
+
AdvancedMalwareProtectionPolicy: ConfigurationPolicyAMPDefinition,
|
|
314
|
+
AppRoutePolicy: ConfigurationPolicyAppRouteDefinition,
|
|
315
|
+
CflowdPolicy: ConfigurationPolicyCflowdDefinition,
|
|
316
|
+
ControlPolicy: ConfigurationPolicyControlDefinition,
|
|
317
|
+
DeviceAccessIPv6Policy: ConfigurationPolicyDeviceAccessIPv6Definition,
|
|
318
|
+
DeviceAccessPolicy: ConfigurationPolicyDeviceAccessDefinition,
|
|
319
|
+
DialPeerPolicy: ConfigurationPolicyDialPeerDefinition,
|
|
320
|
+
DnsSecurityPolicy: ConfigurationPolicyDnsSecurityDefinition,
|
|
321
|
+
FxoPortPolicy: ConfigurationPolicyFxoPortDefinition,
|
|
322
|
+
FxsPortPolicy: ConfigurationPolicyFxsPortDefinition,
|
|
323
|
+
FxsDidPortPolicy: ConfigurationPolicyFxsDidPortDefinition,
|
|
324
|
+
HubAndSpokePolicy: ConfigurationPolicyHubAndSpokeDefinition,
|
|
325
|
+
IntrusionPreventionPolicy: ConfigurationPolicyIntrusionPreventionDefinition,
|
|
326
|
+
MeshPolicy: ConfigurationPolicyMeshDefinition,
|
|
327
|
+
PriIsdnPortPolicy: ConfigurationPolicyPriIsdnPortDefinition,
|
|
328
|
+
QoSMapPolicy: ConfigurationPolicyQoSMapDefinition,
|
|
329
|
+
RewritePolicy: ConfigurationPolicyRewriteRuleDefinition,
|
|
330
|
+
RoutePolicy: ConfigurationPolicyRouteDefinition,
|
|
250
331
|
RuleSet: ConfigurationPolicyRuleSetDefinition,
|
|
251
332
|
SecurityGroup: ConfigurationPolicySecurityGroupDefinition,
|
|
252
|
-
|
|
333
|
+
SslDecryptionPolicy: ConfigurationSslDecryptionDefinition,
|
|
334
|
+
SslDecryptionUtdProfilePolicy: ConfigurationSslDecryptionUtdProfileDefinition,
|
|
335
|
+
SrstPhoneProfilePolicy: ConfigurationPolicySrstPhoneProfileDefinition,
|
|
253
336
|
TrafficDataPolicy: ConfigurationPolicyDataDefinition,
|
|
254
|
-
|
|
255
|
-
RewritePolicy: ConfigurationPolicyRewriteRuleDefinition,
|
|
256
|
-
ControlPolicy: ConfigurationPolicyControlDefinition,
|
|
337
|
+
UrlFilteringPolicy: ConfigurationPolicyUrlFilteringDefinition,
|
|
257
338
|
VPNMembershipPolicy: ConfigurationPolicyVPNMembershipGroupDefinition,
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
AclPolicy: ConfigurationPolicyAclDefinition,
|
|
261
|
-
AclIPv6Policy: ConfigurationPolicyAclIPv6Definition,
|
|
262
|
-
DeviceAccessPolicy: ConfigurationPolicyDeviceAccessDefinition,
|
|
263
|
-
DeviceAccessIPv6Policy: ConfigurationPolicyDeviceAccessIPv6Definition,
|
|
339
|
+
VPNQoSMapPolicy: ConfigurationPolicyVPNQoSMapDefinition,
|
|
340
|
+
ZoneBasedFWPolicy: ConfigurationPolicyZoneBasedFirewallDefinition,
|
|
264
341
|
}
|
|
265
342
|
|
|
266
343
|
|
|
@@ -350,9 +427,9 @@ class SecurityPolicyAPI:
|
|
|
350
427
|
# POST does not return anything! we need to list all after creation and find by name to get id
|
|
351
428
|
self._endpoints.create_security_template(policy)
|
|
352
429
|
policy_infos = [
|
|
353
|
-
info
|
|
354
|
-
for info in self._endpoints.generate_security_template_list()
|
|
355
|
-
if info.
|
|
430
|
+
info
|
|
431
|
+
for info in self._endpoints.generate_security_template_list().root
|
|
432
|
+
if info.policy_name == policy.policy_name
|
|
356
433
|
]
|
|
357
434
|
assert len(policy_infos) == 1
|
|
358
435
|
return policy_infos[0].policy_id
|
|
@@ -364,7 +441,7 @@ class SecurityPolicyAPI:
|
|
|
364
441
|
self._endpoints.delete_security_template(id)
|
|
365
442
|
|
|
366
443
|
@overload
|
|
367
|
-
def get(self) ->
|
|
444
|
+
def get(self) -> AnySecurityPolicyInfoList:
|
|
368
445
|
...
|
|
369
446
|
|
|
370
447
|
@overload
|
|
@@ -374,7 +451,35 @@ class SecurityPolicyAPI:
|
|
|
374
451
|
def get(self, id: Optional[UUID] = None) -> Any:
|
|
375
452
|
if id is not None:
|
|
376
453
|
return self._endpoints.get_security_template(id).root
|
|
377
|
-
return
|
|
454
|
+
return self._endpoints.generate_security_template_list()
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
class VoicePolicyAPI:
|
|
458
|
+
def __init__(self, session: ManagerSession):
|
|
459
|
+
self._session = session
|
|
460
|
+
self._endpoints = ConfigurationVoiceTemplatePolicy(session)
|
|
461
|
+
|
|
462
|
+
def create(self, policy: VoicePolicy) -> None:
|
|
463
|
+
self._endpoints.create_voice_template(policy)
|
|
464
|
+
|
|
465
|
+
def edit(self, id: UUID, policy: VoicePolicy) -> VoicePolicyEditResponse:
|
|
466
|
+
return self._endpoints.edit_voice_template(id, policy)
|
|
467
|
+
|
|
468
|
+
def delete(self, id: UUID) -> None:
|
|
469
|
+
self._endpoints.delete_voice_template(id)
|
|
470
|
+
|
|
471
|
+
@overload
|
|
472
|
+
def get(self) -> DataSequence[VoicePolicyInfo]:
|
|
473
|
+
...
|
|
474
|
+
|
|
475
|
+
@overload
|
|
476
|
+
def get(self, id: UUID) -> VoicePolicy:
|
|
477
|
+
...
|
|
478
|
+
|
|
479
|
+
def get(self, id: Optional[UUID] = None) -> Any:
|
|
480
|
+
if id is not None:
|
|
481
|
+
return self._endpoints.get_voice_template(id)
|
|
482
|
+
return self._endpoints.generate_voice_template_list()
|
|
378
483
|
|
|
379
484
|
|
|
380
485
|
class PolicyListsAPI:
|
|
@@ -435,6 +540,14 @@ class PolicyListsAPI:
|
|
|
435
540
|
def get(self, type: Type[ExpandedCommunityList]) -> DataSequence[ExpandedCommunityListInfo]:
|
|
436
541
|
...
|
|
437
542
|
|
|
543
|
+
@overload
|
|
544
|
+
def get(self, type: Type[ExtendedCommunityList]) -> DataSequence[ExtendedCommunityListInfo]:
|
|
545
|
+
...
|
|
546
|
+
|
|
547
|
+
@overload
|
|
548
|
+
def get(self, type: Type[FaxProtocolList]) -> DataSequence[FaxProtocolListInfo]:
|
|
549
|
+
...
|
|
550
|
+
|
|
438
551
|
@overload
|
|
439
552
|
def get(self, type: Type[FQDNList]) -> DataSequence[FQDNListInfo]:
|
|
440
553
|
...
|
|
@@ -459,6 +572,14 @@ class PolicyListsAPI:
|
|
|
459
572
|
def get(self, type: Type[LocalDomainList]) -> DataSequence[LocalDomainListInfo]:
|
|
460
573
|
...
|
|
461
574
|
|
|
575
|
+
@overload
|
|
576
|
+
def get(self, type: Type[MediaProfileList]) -> DataSequence[MediaProfileListInfo]:
|
|
577
|
+
...
|
|
578
|
+
|
|
579
|
+
@overload
|
|
580
|
+
def get(self, type: Type[ModemPassThroughList]) -> DataSequence[ModemPassThroughListInfo]:
|
|
581
|
+
...
|
|
582
|
+
|
|
462
583
|
@overload
|
|
463
584
|
def get(self, type: Type[MirrorList]) -> DataSequence[MirrorListInfo]:
|
|
464
585
|
...
|
|
@@ -495,10 +616,34 @@ class PolicyListsAPI:
|
|
|
495
616
|
def get(self, type: Type[SLAClassList]) -> DataSequence[SLAClassListInfo]:
|
|
496
617
|
...
|
|
497
618
|
|
|
619
|
+
@overload
|
|
620
|
+
def get(self, type: Type[SupervisoryDisconnectList]) -> DataSequence[SupervisoryDisconnectListInfo]:
|
|
621
|
+
...
|
|
622
|
+
|
|
623
|
+
@overload
|
|
624
|
+
def get(self, type: Type[ThreatGridApiKeyList]) -> DataSequence[ThreatGridApiKeyListInfo]:
|
|
625
|
+
...
|
|
626
|
+
|
|
498
627
|
@overload
|
|
499
628
|
def get(self, type: Type[TLOCList]) -> DataSequence[TLOCListInfo]:
|
|
500
629
|
...
|
|
501
630
|
|
|
631
|
+
@overload
|
|
632
|
+
def get(self, type: Type[TranslationProfileList]) -> DataSequence[TranslationProfileListInfo]:
|
|
633
|
+
...
|
|
634
|
+
|
|
635
|
+
@overload
|
|
636
|
+
def get(self, type: Type[TranslationRulesList]) -> DataSequence[TranslationRulesListInfo]:
|
|
637
|
+
...
|
|
638
|
+
|
|
639
|
+
@overload
|
|
640
|
+
def get(self, type: Type[TrunkGroupList]) -> DataSequence[TrunkGroupListInfo]:
|
|
641
|
+
...
|
|
642
|
+
|
|
643
|
+
@overload
|
|
644
|
+
def get(self, type: Type[UmbrellaDataList]) -> DataSequence[UmbrellaDataListInfo]:
|
|
645
|
+
...
|
|
646
|
+
|
|
502
647
|
@overload
|
|
503
648
|
def get(self, type: Type[URLBlockList]) -> DataSequence[URLBlockListInfo]:
|
|
504
649
|
...
|
|
@@ -515,6 +660,14 @@ class PolicyListsAPI:
|
|
|
515
660
|
def get(self, type: Type[ZoneList]) -> DataSequence[ZoneListInfo]:
|
|
516
661
|
...
|
|
517
662
|
|
|
663
|
+
@overload
|
|
664
|
+
def get(self, type: Type[ScalableGroupTagList]) -> DataSequence[ScalableGroupTagListInfo]:
|
|
665
|
+
...
|
|
666
|
+
|
|
667
|
+
@overload
|
|
668
|
+
def get(self, type: Type[IdentityList]) -> DataSequence[IdentityListInfo]:
|
|
669
|
+
...
|
|
670
|
+
|
|
518
671
|
# get by id
|
|
519
672
|
|
|
520
673
|
@overload
|
|
@@ -553,6 +706,14 @@ class PolicyListsAPI:
|
|
|
553
706
|
def get(self, type: Type[ExpandedCommunityList], id: UUID) -> ExpandedCommunityListInfo:
|
|
554
707
|
...
|
|
555
708
|
|
|
709
|
+
@overload
|
|
710
|
+
def get(self, type: Type[ExtendedCommunityList], id: UUID) -> ExtendedCommunityListInfo:
|
|
711
|
+
...
|
|
712
|
+
|
|
713
|
+
@overload
|
|
714
|
+
def get(self, type: Type[FaxProtocolList], id: UUID) -> FaxProtocolListInfo:
|
|
715
|
+
...
|
|
716
|
+
|
|
556
717
|
@overload
|
|
557
718
|
def get(self, type: Type[FQDNList], id: UUID) -> FQDNListInfo:
|
|
558
719
|
...
|
|
@@ -577,10 +738,18 @@ class PolicyListsAPI:
|
|
|
577
738
|
def get(self, type: Type[LocalDomainList], id: UUID) -> LocalDomainListInfo:
|
|
578
739
|
...
|
|
579
740
|
|
|
741
|
+
@overload
|
|
742
|
+
def get(self, type: Type[MediaProfileList], id: UUID) -> MediaProfileListInfo:
|
|
743
|
+
...
|
|
744
|
+
|
|
580
745
|
@overload
|
|
581
746
|
def get(self, type: Type[MirrorList], id: UUID) -> MirrorListInfo:
|
|
582
747
|
...
|
|
583
748
|
|
|
749
|
+
@overload
|
|
750
|
+
def get(self, type: Type[ModemPassThroughList], id: UUID) -> ModemPassThroughListInfo:
|
|
751
|
+
...
|
|
752
|
+
|
|
584
753
|
@overload
|
|
585
754
|
def get(self, type: Type[PolicerList], id: UUID) -> PolicerListInfo:
|
|
586
755
|
...
|
|
@@ -613,10 +782,34 @@ class PolicyListsAPI:
|
|
|
613
782
|
def get(self, type: Type[SLAClassList], id: UUID) -> SLAClassListInfo:
|
|
614
783
|
...
|
|
615
784
|
|
|
785
|
+
@overload
|
|
786
|
+
def get(self, type: Type[SupervisoryDisconnectList], id: UUID) -> SupervisoryDisconnectListInfo:
|
|
787
|
+
...
|
|
788
|
+
|
|
789
|
+
@overload
|
|
790
|
+
def get(self, type: Type[ThreatGridApiKeyList], id: UUID) -> ThreatGridApiKeyListInfo:
|
|
791
|
+
...
|
|
792
|
+
|
|
616
793
|
@overload
|
|
617
794
|
def get(self, type: Type[TLOCList], id: UUID) -> TLOCListInfo:
|
|
618
795
|
...
|
|
619
796
|
|
|
797
|
+
@overload
|
|
798
|
+
def get(self, type: Type[TranslationProfileList], id: UUID) -> TranslationProfileListInfo:
|
|
799
|
+
...
|
|
800
|
+
|
|
801
|
+
@overload
|
|
802
|
+
def get(self, type: Type[TranslationRulesList], id: UUID) -> TranslationRulesListInfo:
|
|
803
|
+
...
|
|
804
|
+
|
|
805
|
+
@overload
|
|
806
|
+
def get(self, type: Type[TrunkGroupList], id: UUID) -> TrunkGroupListInfo:
|
|
807
|
+
...
|
|
808
|
+
|
|
809
|
+
@overload
|
|
810
|
+
def get(self, type: Type[UmbrellaDataList], id: UUID) -> UmbrellaDataListInfo:
|
|
811
|
+
...
|
|
812
|
+
|
|
620
813
|
@overload
|
|
621
814
|
def get(self, type: Type[URLBlockList], id: UUID) -> URLBlockListInfo:
|
|
622
815
|
...
|
|
@@ -633,12 +826,26 @@ class PolicyListsAPI:
|
|
|
633
826
|
def get(self, type: Type[ZoneList], id: UUID) -> ZoneListInfo:
|
|
634
827
|
...
|
|
635
828
|
|
|
829
|
+
@overload
|
|
830
|
+
def get(self, type: Type[ScalableGroupTagList], id: UUID) -> ScalableGroupTagListInfo:
|
|
831
|
+
...
|
|
832
|
+
|
|
833
|
+
@overload
|
|
834
|
+
def get(self, type: Type[IdentityList], id: UUID) -> IdentityListInfo:
|
|
835
|
+
...
|
|
836
|
+
|
|
636
837
|
def get(self, type: Type[AnyPolicyList], id: Optional[UUID] = None) -> Any:
|
|
637
838
|
endpoints = self.__get_list_endpoints_instance(type)
|
|
638
839
|
if id is not None:
|
|
639
840
|
return endpoints.get_lists_by_id(id=id)
|
|
640
841
|
return endpoints.get_policy_lists()
|
|
641
842
|
|
|
843
|
+
def get_all(self) -> List[AnyPolicyList]:
|
|
844
|
+
infos: List[AnyPolicyList] = []
|
|
845
|
+
for list_type, _ in POLICY_LIST_ENDPOINTS_MAP.items():
|
|
846
|
+
infos.extend(self.get(list_type))
|
|
847
|
+
return infos
|
|
848
|
+
|
|
642
849
|
|
|
643
850
|
class PolicyDefinitionsAPI:
|
|
644
851
|
def __init__(self, session: ManagerSession):
|
|
@@ -662,10 +869,38 @@ class PolicyDefinitionsAPI:
|
|
|
662
869
|
endpoints = self.__get_definition_endpoints_instance(type)
|
|
663
870
|
endpoints.delete_policy_definition(id=id)
|
|
664
871
|
|
|
872
|
+
@overload
|
|
873
|
+
def get(self, type: Type[IntrusionPreventionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
874
|
+
...
|
|
875
|
+
|
|
665
876
|
@overload
|
|
666
877
|
def get(self, type: Type[TrafficDataPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
667
878
|
...
|
|
668
879
|
|
|
880
|
+
@overload
|
|
881
|
+
def get(self, type: Type[UrlFilteringPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
882
|
+
...
|
|
883
|
+
|
|
884
|
+
@overload
|
|
885
|
+
def get(self, type: Type[AdvancedInspectionProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
886
|
+
...
|
|
887
|
+
|
|
888
|
+
@overload
|
|
889
|
+
def get(self, type: Type[AdvancedMalwareProtectionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
890
|
+
...
|
|
891
|
+
|
|
892
|
+
@overload
|
|
893
|
+
def get(self, type: Type[CflowdPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
894
|
+
...
|
|
895
|
+
|
|
896
|
+
@overload
|
|
897
|
+
def get(self, type: Type[DnsSecurityPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
898
|
+
...
|
|
899
|
+
|
|
900
|
+
@overload
|
|
901
|
+
def get(self, type: Type[RoutePolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
902
|
+
...
|
|
903
|
+
|
|
669
904
|
@overload
|
|
670
905
|
def get(self, type: Type[RuleSet]) -> DataSequence[PolicyDefinitionInfo]:
|
|
671
906
|
...
|
|
@@ -674,6 +909,14 @@ class PolicyDefinitionsAPI:
|
|
|
674
909
|
def get(self, type: Type[SecurityGroup]) -> DataSequence[PolicyDefinitionInfo]:
|
|
675
910
|
...
|
|
676
911
|
|
|
912
|
+
@overload
|
|
913
|
+
def get(self, type: Type[SslDecryptionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
914
|
+
...
|
|
915
|
+
|
|
916
|
+
@overload
|
|
917
|
+
def get(self, type: Type[SslDecryptionUtdProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
918
|
+
...
|
|
919
|
+
|
|
677
920
|
@overload
|
|
678
921
|
def get(self, type: Type[ZoneBasedFWPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
679
922
|
...
|
|
@@ -694,6 +937,10 @@ class PolicyDefinitionsAPI:
|
|
|
694
937
|
def get(self, type: Type[VPNMembershipPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
695
938
|
...
|
|
696
939
|
|
|
940
|
+
@overload
|
|
941
|
+
def get(self, type: Type[VPNQoSMapPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
942
|
+
...
|
|
943
|
+
|
|
697
944
|
@overload
|
|
698
945
|
def get(self, type: Type[HubAndSpokePolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
699
946
|
...
|
|
@@ -718,12 +965,67 @@ class PolicyDefinitionsAPI:
|
|
|
718
965
|
def get(self, type: Type[DeviceAccessIPv6Policy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
719
966
|
...
|
|
720
967
|
|
|
968
|
+
@overload
|
|
969
|
+
def get(self, type: Type[AppRoutePolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
970
|
+
...
|
|
971
|
+
|
|
972
|
+
@overload
|
|
973
|
+
def get(self, type: Type[FxoPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
974
|
+
...
|
|
975
|
+
|
|
976
|
+
@overload
|
|
977
|
+
def get(self, type: Type[FxsPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
978
|
+
...
|
|
979
|
+
|
|
980
|
+
@overload
|
|
981
|
+
def get(self, type: Type[FxsDidPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
982
|
+
...
|
|
983
|
+
|
|
984
|
+
@overload
|
|
985
|
+
def get(self, type: Type[DialPeerPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
986
|
+
...
|
|
987
|
+
|
|
988
|
+
@overload
|
|
989
|
+
def get(self, type: Type[PriIsdnPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
990
|
+
...
|
|
991
|
+
|
|
992
|
+
@overload
|
|
993
|
+
def get(self, type: Type[SrstPhoneProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
|
|
994
|
+
...
|
|
995
|
+
|
|
721
996
|
# get by id
|
|
997
|
+
@overload
|
|
998
|
+
def get(self, type: Type[IntrusionPreventionPolicy], id: UUID) -> IntrusionPreventionPolicyGetResponse:
|
|
999
|
+
...
|
|
722
1000
|
|
|
723
1001
|
@overload
|
|
724
1002
|
def get(self, type: Type[TrafficDataPolicy], id: UUID) -> TrafficDataPolicyGetResponse:
|
|
725
1003
|
...
|
|
726
1004
|
|
|
1005
|
+
@overload
|
|
1006
|
+
def get(self, type: Type[UrlFilteringPolicy], id: UUID) -> UrlFilteringPolicyGetResponse:
|
|
1007
|
+
...
|
|
1008
|
+
|
|
1009
|
+
@overload
|
|
1010
|
+
def get(self, type: Type[AdvancedInspectionProfilePolicy], id: UUID) -> AdvancedInspectionProfilePolicyGetResponse:
|
|
1011
|
+
...
|
|
1012
|
+
|
|
1013
|
+
@overload
|
|
1014
|
+
def get(self, type: Type[AdvancedMalwareProtectionPolicy], id: UUID) -> AdvancedMalwareProtectionPolicyGetResponse:
|
|
1015
|
+
...
|
|
1016
|
+
|
|
1017
|
+
@overload
|
|
1018
|
+
def get(self, type: Type[CflowdPolicy], id: UUID) -> CflowdPolicyGetResponse:
|
|
1019
|
+
...
|
|
1020
|
+
|
|
1021
|
+
@overload
|
|
1022
|
+
def get(self, type: Type[DnsSecurityPolicy], id: UUID) -> DnsSecurityPolicyGetResponse:
|
|
1023
|
+
...
|
|
1024
|
+
|
|
1025
|
+
@overload
|
|
1026
|
+
def get(self, type: Type[RoutePolicy], id: UUID) -> RoutePolicyGetResponse:
|
|
1027
|
+
...
|
|
1028
|
+
|
|
727
1029
|
@overload
|
|
728
1030
|
def get(self, type: Type[RuleSet], id: UUID) -> RuleSetGetResponse:
|
|
729
1031
|
...
|
|
@@ -732,6 +1034,14 @@ class PolicyDefinitionsAPI:
|
|
|
732
1034
|
def get(self, type: Type[SecurityGroup], id: UUID) -> SecurityGroupGetResponse:
|
|
733
1035
|
...
|
|
734
1036
|
|
|
1037
|
+
@overload
|
|
1038
|
+
def get(self, type: Type[SslDecryptionPolicy], id: UUID) -> SslDecryptionPolicyGetResponse:
|
|
1039
|
+
...
|
|
1040
|
+
|
|
1041
|
+
@overload
|
|
1042
|
+
def get(self, type: Type[SslDecryptionUtdProfilePolicy], id: UUID) -> SslDecryptionUtdProfilePolicyGetResponse:
|
|
1043
|
+
...
|
|
1044
|
+
|
|
735
1045
|
@overload
|
|
736
1046
|
def get(self, type: Type[ZoneBasedFWPolicy], id: UUID) -> ZoneBasedFWPolicyGetResponse:
|
|
737
1047
|
...
|
|
@@ -752,6 +1062,10 @@ class PolicyDefinitionsAPI:
|
|
|
752
1062
|
def get(self, type: Type[VPNMembershipPolicy], id: UUID) -> VPNMembershipPolicyGetResponse:
|
|
753
1063
|
...
|
|
754
1064
|
|
|
1065
|
+
@overload
|
|
1066
|
+
def get(self, type: Type[VPNQoSMapPolicy], id: UUID) -> VPNMembershipPolicyGetResponse:
|
|
1067
|
+
...
|
|
1068
|
+
|
|
755
1069
|
@overload
|
|
756
1070
|
def get(self, type: Type[HubAndSpokePolicy], id: UUID) -> HubAndSpokePolicyGetResponse:
|
|
757
1071
|
...
|
|
@@ -776,12 +1090,51 @@ class PolicyDefinitionsAPI:
|
|
|
776
1090
|
def get(self, type: Type[DeviceAccessIPv6Policy], id: UUID) -> DeviceAccessIPv6PolicyGetResponse:
|
|
777
1091
|
...
|
|
778
1092
|
|
|
1093
|
+
@overload
|
|
1094
|
+
def get(self, type: Type[AppRoutePolicy], id: UUID) -> AppRoutePolicyGetResponse:
|
|
1095
|
+
...
|
|
1096
|
+
|
|
1097
|
+
@overload
|
|
1098
|
+
def get(self, type: Type[FxoPortPolicy], id: UUID) -> FxoPortPolicyGetResponse:
|
|
1099
|
+
...
|
|
1100
|
+
|
|
1101
|
+
@overload
|
|
1102
|
+
def get(self, type: Type[FxsPortPolicy], id: UUID) -> FxsPortPolicyGetResponse:
|
|
1103
|
+
...
|
|
1104
|
+
|
|
1105
|
+
@overload
|
|
1106
|
+
def get(self, type: Type[FxsDidPortPolicy], id: UUID) -> FxsDidPortPolicyGetResponse:
|
|
1107
|
+
...
|
|
1108
|
+
|
|
1109
|
+
@overload
|
|
1110
|
+
def get(self, type: Type[DialPeerPolicy], id: UUID) -> DialPeerPolicyGetResponse:
|
|
1111
|
+
...
|
|
1112
|
+
|
|
1113
|
+
@overload
|
|
1114
|
+
def get(self, type: Type[PriIsdnPortPolicy], id: UUID) -> PriIsdnPortPolicyGetResponse:
|
|
1115
|
+
...
|
|
1116
|
+
|
|
1117
|
+
@overload
|
|
1118
|
+
def get(self, type: Type[SrstPhoneProfilePolicy], id: UUID) -> SrstPhoneProfilePolicyGetResponse:
|
|
1119
|
+
...
|
|
1120
|
+
|
|
779
1121
|
def get(self, type: Type[AnyPolicyDefinition], id: Optional[UUID] = None) -> Any:
|
|
780
1122
|
endpoints = self.__get_definition_endpoints_instance(type)
|
|
781
1123
|
if id is not None:
|
|
782
1124
|
return endpoints.get_policy_definition(id=id)
|
|
783
1125
|
return endpoints.get_definitions()
|
|
784
1126
|
|
|
1127
|
+
def get_all(self) -> List[Tuple[type, PolicyDefinitionInfo]]:
|
|
1128
|
+
all_items: List[Tuple[type, PolicyDefinitionInfo]] = []
|
|
1129
|
+
for definition_type, _ in POLICY_DEFINITION_ENDPOINTS_MAP.items():
|
|
1130
|
+
try:
|
|
1131
|
+
all_items.extend([(definition_type, info) for info in self.get(definition_type)])
|
|
1132
|
+
except ValidationError as e:
|
|
1133
|
+
self._session.logger.error(
|
|
1134
|
+
f"Multiple {definition_type} items discarded because of validation error {e}"
|
|
1135
|
+
)
|
|
1136
|
+
return all_items
|
|
1137
|
+
|
|
785
1138
|
|
|
786
1139
|
class PolicyAPI:
|
|
787
1140
|
"""This is exposing so called 'UX 1.0' API"""
|
|
@@ -789,10 +1142,11 @@ class PolicyAPI:
|
|
|
789
1142
|
def __init__(self, session: ManagerSession):
|
|
790
1143
|
self._session = session
|
|
791
1144
|
self.centralized = CentralizedPolicyAPI(session)
|
|
792
|
-
self.localized = LocalizedPolicyAPI(session)
|
|
793
|
-
self.security = SecurityPolicyAPI(session)
|
|
794
1145
|
self.definitions = PolicyDefinitionsAPI(session)
|
|
795
1146
|
self.lists = PolicyListsAPI(session)
|
|
1147
|
+
self.localized = LocalizedPolicyAPI(session)
|
|
1148
|
+
self.security = SecurityPolicyAPI(session)
|
|
1149
|
+
self.voice = VoicePolicyAPI(session)
|
|
796
1150
|
|
|
797
1151
|
def delete_any(self, _type: Any, id: UUID) -> None:
|
|
798
1152
|
if issubclass(_type, PolicyListBase):
|