catalystwan 0.40.2.dev1__py3-none-any.whl → 2.0.0a1__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.
Files changed (640) hide show
  1. catalystwan/core/__init__.py +2 -0
  2. catalystwan/core/abstractions.py +26 -0
  3. catalystwan/{apigw_auth.py → core/apigw_auth.py} +27 -14
  4. catalystwan/core/client.py +71 -0
  5. catalystwan/core/encoder.py +12 -0
  6. catalystwan/{exceptions.py → core/exceptions.py} +29 -9
  7. catalystwan/core/loader.py +37 -0
  8. catalystwan/{__init__.py → core/metadata.py} +9 -22
  9. catalystwan/core/models/deserialize.py +204 -0
  10. catalystwan/core/models/serialize.py +137 -0
  11. catalystwan/core/request_adapter.py +246 -0
  12. catalystwan/{request_limiter.py → core/request_limiter.py} +1 -2
  13. catalystwan/{response.py → core/response.py} +41 -88
  14. catalystwan/{session.py → core/session.py} +84 -101
  15. catalystwan/core/types.py +33 -0
  16. catalystwan/{version.py → core/version.py} +3 -5
  17. catalystwan/{vmanage_auth.py → core/vmanage_auth.py} +46 -21
  18. catalystwan-2.0.0a1.dist-info/METADATA +239 -0
  19. catalystwan-2.0.0a1.dist-info/RECORD +24 -0
  20. {catalystwan-0.40.2.dev1.dist-info → catalystwan-2.0.0a1.dist-info}/WHEEL +2 -1
  21. catalystwan-2.0.0a1.dist-info/top_level.txt +1 -0
  22. catalystwan/abstractions.py +0 -77
  23. catalystwan/api/admin_tech_api.py +0 -176
  24. catalystwan/api/administration.py +0 -434
  25. catalystwan/api/alarms_api.py +0 -186
  26. catalystwan/api/api_container.py +0 -73
  27. catalystwan/api/basic_api.py +0 -338
  28. catalystwan/api/builders/__init__.py +0 -14
  29. catalystwan/api/builders/feature_profiles/application_priority.py +0 -58
  30. catalystwan/api/builders/feature_profiles/builder_factory.py +0 -59
  31. catalystwan/api/builders/feature_profiles/cli.py +0 -76
  32. catalystwan/api/builders/feature_profiles/other.py +0 -79
  33. catalystwan/api/builders/feature_profiles/report.py +0 -137
  34. catalystwan/api/builders/feature_profiles/service.py +0 -213
  35. catalystwan/api/builders/feature_profiles/system.py +0 -80
  36. catalystwan/api/builders/feature_profiles/transport.py +0 -214
  37. catalystwan/api/builders/feature_profiles/uc_voice.py +0 -287
  38. catalystwan/api/config_device_inventory_api.py +0 -58
  39. catalystwan/api/config_group_api.py +0 -150
  40. catalystwan/api/configuration_groups/parcel.py +0 -206
  41. catalystwan/api/dashboard_api.py +0 -215
  42. catalystwan/api/device_action_api.py +0 -216
  43. catalystwan/api/feature_profile_api.py +0 -2401
  44. catalystwan/api/logs_api.py +0 -63
  45. catalystwan/api/monitoring_status_api.py +0 -76
  46. catalystwan/api/mtt_aaa_api.py +0 -197
  47. catalystwan/api/omp_api.py +0 -124
  48. catalystwan/api/packet_capture_api.py +0 -152
  49. catalystwan/api/parcel_api.py +0 -42
  50. catalystwan/api/partition_manager_api.py +0 -143
  51. catalystwan/api/policy_api.py +0 -1163
  52. catalystwan/api/resource_pool_api.py +0 -74
  53. catalystwan/api/software_action_api.py +0 -269
  54. catalystwan/api/speedtest_api.py +0 -153
  55. catalystwan/api/task_status_api.py +0 -171
  56. catalystwan/api/template_api.py +0 -761
  57. catalystwan/api/templates/README.md +0 -101
  58. catalystwan/api/templates/bool_str.py +0 -6
  59. catalystwan/api/templates/cli_template.py +0 -236
  60. catalystwan/api/templates/device_template/device_template.py +0 -189
  61. catalystwan/api/templates/device_variable.py +0 -7
  62. catalystwan/api/templates/feature_template.py +0 -133
  63. catalystwan/api/templates/feature_template_field.py +0 -175
  64. catalystwan/api/templates/feature_template_payload.py +0 -17
  65. catalystwan/api/templates/models/aaa_model.py +0 -387
  66. catalystwan/api/templates/models/cisco_aaa_model.py +0 -331
  67. catalystwan/api/templates/models/cisco_banner_model.py +0 -27
  68. catalystwan/api/templates/models/cisco_bfd_model.py +0 -61
  69. catalystwan/api/templates/models/cisco_bgp_model.py +0 -510
  70. catalystwan/api/templates/models/cisco_logging_model.py +0 -122
  71. catalystwan/api/templates/models/cisco_ntp_model.py +0 -60
  72. catalystwan/api/templates/models/cisco_omp_model.py +0 -121
  73. catalystwan/api/templates/models/cisco_ospf.py +0 -241
  74. catalystwan/api/templates/models/cisco_ospfv3.py +0 -498
  75. catalystwan/api/templates/models/cisco_secure_internet_gateway.py +0 -385
  76. catalystwan/api/templates/models/cisco_snmp_model.py +0 -102
  77. catalystwan/api/templates/models/cisco_system.py +0 -318
  78. catalystwan/api/templates/models/cisco_vpn_interface_model.py +0 -822
  79. catalystwan/api/templates/models/cisco_vpn_model.py +0 -603
  80. catalystwan/api/templates/models/cli_template.py +0 -18
  81. catalystwan/api/templates/models/omp_vsmart_model.py +0 -73
  82. catalystwan/api/templates/models/security_vsmart_model.py +0 -28
  83. catalystwan/api/templates/models/supported.py +0 -42
  84. catalystwan/api/templates/models/system_vsmart_model.py +0 -182
  85. catalystwan/api/templates/models/vpn_vsmart_interface_model.py +0 -198
  86. catalystwan/api/templates/models/vpn_vsmart_model.py +0 -124
  87. catalystwan/api/templates/payloads/aaa/aaa_model.py +0 -91
  88. catalystwan/api/templates/payloads/aaa/feature/aaa.json.j2 +0 -373
  89. catalystwan/api/templates/payloads/aaa/feature/accounting.json.j2 +0 -40
  90. catalystwan/api/templates/payloads/aaa/feature/radius.json.j2 +0 -107
  91. catalystwan/api/templates/payloads/aaa/feature/tacacs.json.j2 +0 -95
  92. catalystwan/api/templates/payloads/aaa/feature/user.json.j2 +0 -60
  93. catalystwan/api/templates/payloads/cisco_vpn/cisco_vpn_model.py +0 -92
  94. catalystwan/api/templates/payloads/cisco_vpn/feature/cisco_vpn.json.j2 +0 -224
  95. catalystwan/api/templates/payloads/cisco_vpn/feature/dns.json.j2 +0 -86
  96. catalystwan/api/templates/payloads/cisco_vpn/feature/ipv4route.json.j2 +0 -59
  97. catalystwan/api/templates/payloads/cisco_vpn/feature/ipv6route.json.j2 +0 -58
  98. catalystwan/api/templates/payloads/cisco_vpn/feature/mapping.json.j2 +0 -24
  99. catalystwan/api/templates/payloads/tenant/tenant.json.j2 +0 -127
  100. catalystwan/api/templates/payloads/tenant/tenant_model.py +0 -43
  101. catalystwan/api/tenant_backup_restore_api.py +0 -154
  102. catalystwan/api/tenant_management_api.py +0 -127
  103. catalystwan/api/tenant_migration_api.py +0 -121
  104. catalystwan/api/versions_utils.py +0 -414
  105. catalystwan/api/virtual_image_action_api.py +0 -200
  106. catalystwan/dataclasses.py +0 -493
  107. catalystwan/endpoints/__init__.py +0 -606
  108. catalystwan/endpoints/administration_user_and_group.py +0 -341
  109. catalystwan/endpoints/api_gateway.py +0 -24
  110. catalystwan/endpoints/certificate_management_device.py +0 -141
  111. catalystwan/endpoints/certificate_management_vmanage.py +0 -48
  112. catalystwan/endpoints/client.py +0 -96
  113. catalystwan/endpoints/cluster_management.py +0 -130
  114. catalystwan/endpoints/configuration/device/software_update.py +0 -31
  115. catalystwan/endpoints/configuration/disaster_recovery.py +0 -305
  116. catalystwan/endpoints/configuration/feature_profile/sdwan/application_priority.py +0 -107
  117. catalystwan/endpoints/configuration/feature_profile/sdwan/cli.py +0 -60
  118. catalystwan/endpoints/configuration/feature_profile/sdwan/dns_security.py +0 -83
  119. catalystwan/endpoints/configuration/feature_profile/sdwan/embedded_security.py +0 -88
  120. catalystwan/endpoints/configuration/feature_profile/sdwan/other.py +0 -62
  121. catalystwan/endpoints/configuration/feature_profile/sdwan/policy_object.py +0 -105
  122. catalystwan/endpoints/configuration/feature_profile/sdwan/service.py +0 -137
  123. catalystwan/endpoints/configuration/feature_profile/sdwan/sig_security.py +0 -88
  124. catalystwan/endpoints/configuration/feature_profile/sdwan/system.py +0 -205
  125. catalystwan/endpoints/configuration/feature_profile/sdwan/topology.py +0 -93
  126. catalystwan/endpoints/configuration/feature_profile/sdwan/transport.py +0 -214
  127. catalystwan/endpoints/configuration/feature_profile/sdwan/uc_voice.py +0 -77
  128. catalystwan/endpoints/configuration/network_hierarchy.py +0 -32
  129. catalystwan/endpoints/configuration/policy/abstractions.py +0 -49
  130. catalystwan/endpoints/configuration/policy/definition/access_control_list.py +0 -57
  131. catalystwan/endpoints/configuration/policy/definition/access_control_list_ipv6.py +0 -57
  132. catalystwan/endpoints/configuration/policy/definition/aip.py +0 -52
  133. catalystwan/endpoints/configuration/policy/definition/amp.py +0 -52
  134. catalystwan/endpoints/configuration/policy/definition/app_route.py +0 -50
  135. catalystwan/endpoints/configuration/policy/definition/cflowd.py +0 -46
  136. catalystwan/endpoints/configuration/policy/definition/control.py +0 -57
  137. catalystwan/endpoints/configuration/policy/definition/device_access.py +0 -57
  138. catalystwan/endpoints/configuration/policy/definition/device_access_ipv6.py +0 -59
  139. catalystwan/endpoints/configuration/policy/definition/dial_peer.py +0 -57
  140. catalystwan/endpoints/configuration/policy/definition/dns_security.py +0 -50
  141. catalystwan/endpoints/configuration/policy/definition/fxo_port.py +0 -57
  142. catalystwan/endpoints/configuration/policy/definition/fxs_did_port.py +0 -57
  143. catalystwan/endpoints/configuration/policy/definition/fxs_port.py +0 -57
  144. catalystwan/endpoints/configuration/policy/definition/hub_and_spoke.py +0 -57
  145. catalystwan/endpoints/configuration/policy/definition/intrusion_prevention.py +0 -52
  146. catalystwan/endpoints/configuration/policy/definition/mesh.py +0 -53
  147. catalystwan/endpoints/configuration/policy/definition/pri_isdn_port.py +0 -57
  148. catalystwan/endpoints/configuration/policy/definition/qos_map.py +0 -53
  149. catalystwan/endpoints/configuration/policy/definition/rewrite.py +0 -57
  150. catalystwan/endpoints/configuration/policy/definition/route_policy.py +0 -50
  151. catalystwan/endpoints/configuration/policy/definition/rule_set.py +0 -53
  152. catalystwan/endpoints/configuration/policy/definition/security_group.py +0 -57
  153. catalystwan/endpoints/configuration/policy/definition/srst_phone_profile.py +0 -59
  154. catalystwan/endpoints/configuration/policy/definition/ssl_decryption.py +0 -50
  155. catalystwan/endpoints/configuration/policy/definition/ssl_decryption_utd_profile.py +0 -52
  156. catalystwan/endpoints/configuration/policy/definition/traffic_data.py +0 -58
  157. catalystwan/endpoints/configuration/policy/definition/url_filtering.py +0 -50
  158. catalystwan/endpoints/configuration/policy/definition/vpn_membership.py +0 -57
  159. catalystwan/endpoints/configuration/policy/definition/vpn_qos_map.py +0 -50
  160. catalystwan/endpoints/configuration/policy/definition/zone_based_firewall.py +0 -57
  161. catalystwan/endpoints/configuration/policy/list/app.py +0 -48
  162. catalystwan/endpoints/configuration/policy/list/app_probe.py +0 -52
  163. catalystwan/endpoints/configuration/policy/list/as_path.py +0 -48
  164. catalystwan/endpoints/configuration/policy/list/class_map.py +0 -48
  165. catalystwan/endpoints/configuration/policy/list/color.py +0 -48
  166. catalystwan/endpoints/configuration/policy/list/community.py +0 -48
  167. catalystwan/endpoints/configuration/policy/list/data_ipv6_prefix.py +0 -52
  168. catalystwan/endpoints/configuration/policy/list/data_prefix.py +0 -48
  169. catalystwan/endpoints/configuration/policy/list/expanded_community.py +0 -52
  170. catalystwan/endpoints/configuration/policy/list/extended_community.py +0 -52
  171. catalystwan/endpoints/configuration/policy/list/fax_protocol.py +0 -48
  172. catalystwan/endpoints/configuration/policy/list/fqdn.py +0 -48
  173. catalystwan/endpoints/configuration/policy/list/geo_location.py +0 -48
  174. catalystwan/endpoints/configuration/policy/list/identity.py +0 -48
  175. catalystwan/endpoints/configuration/policy/list/ips_signature.py +0 -52
  176. catalystwan/endpoints/configuration/policy/list/ipv6_prefix.py +0 -48
  177. catalystwan/endpoints/configuration/policy/list/local_app.py +0 -48
  178. catalystwan/endpoints/configuration/policy/list/local_domain.py +0 -48
  179. catalystwan/endpoints/configuration/policy/list/media_profile.py +0 -52
  180. catalystwan/endpoints/configuration/policy/list/mirror.py +0 -48
  181. catalystwan/endpoints/configuration/policy/list/modem_pass_through.py +0 -52
  182. catalystwan/endpoints/configuration/policy/list/policer.py +0 -48
  183. catalystwan/endpoints/configuration/policy/list/port.py +0 -48
  184. catalystwan/endpoints/configuration/policy/list/preferred_color_group.py +0 -52
  185. catalystwan/endpoints/configuration/policy/list/prefix.py +0 -49
  186. catalystwan/endpoints/configuration/policy/list/protocol_name.py +0 -52
  187. catalystwan/endpoints/configuration/policy/list/region.py +0 -47
  188. catalystwan/endpoints/configuration/policy/list/scalable_group_tag.py +0 -52
  189. catalystwan/endpoints/configuration/policy/list/site.py +0 -52
  190. catalystwan/endpoints/configuration/policy/list/sla.py +0 -48
  191. catalystwan/endpoints/configuration/policy/list/supervisory_disconnect.py +0 -52
  192. catalystwan/endpoints/configuration/policy/list/threat_grid_api_key.py +0 -52
  193. catalystwan/endpoints/configuration/policy/list/tloc.py +0 -48
  194. catalystwan/endpoints/configuration/policy/list/translation_profile.py +0 -52
  195. catalystwan/endpoints/configuration/policy/list/translation_rules.py +0 -52
  196. catalystwan/endpoints/configuration/policy/list/trunkgroup.py +0 -48
  197. catalystwan/endpoints/configuration/policy/list/umbrella_data.py +0 -52
  198. catalystwan/endpoints/configuration/policy/list/url_allow_list.py +0 -48
  199. catalystwan/endpoints/configuration/policy/list/url_block_list.py +0 -48
  200. catalystwan/endpoints/configuration/policy/list/vpn.py +0 -50
  201. catalystwan/endpoints/configuration/policy/list/zone.py +0 -48
  202. catalystwan/endpoints/configuration/policy/security_template.py +0 -55
  203. catalystwan/endpoints/configuration/policy/vedge_template.py +0 -52
  204. catalystwan/endpoints/configuration/policy/voice_template.py +0 -39
  205. catalystwan/endpoints/configuration/policy/vsmart_template.py +0 -79
  206. catalystwan/endpoints/configuration/policy_group.py +0 -30
  207. catalystwan/endpoints/configuration/software_actions.py +0 -201
  208. catalystwan/endpoints/configuration/topology_group.py +0 -51
  209. catalystwan/endpoints/configuration_dashboard_status.py +0 -127
  210. catalystwan/endpoints/configuration_device_actions.py +0 -385
  211. catalystwan/endpoints/configuration_device_inventory.py +0 -309
  212. catalystwan/endpoints/configuration_device_template.py +0 -39
  213. catalystwan/endpoints/configuration_feature_profile.py +0 -135
  214. catalystwan/endpoints/configuration_general_template.py +0 -31
  215. catalystwan/endpoints/configuration_group.py +0 -197
  216. catalystwan/endpoints/configuration_settings.py +0 -753
  217. catalystwan/endpoints/configuration_template_master.py +0 -48
  218. catalystwan/endpoints/endpoints_container.py +0 -279
  219. catalystwan/endpoints/misc.py +0 -21
  220. catalystwan/endpoints/monitoring/device_details.py +0 -246
  221. catalystwan/endpoints/monitoring/security_policy.py +0 -12
  222. catalystwan/endpoints/monitoring/server_info.py +0 -12
  223. catalystwan/endpoints/monitoring/status.py +0 -76
  224. catalystwan/endpoints/real_time_monitoring/reboot_history.py +0 -35
  225. catalystwan/endpoints/sdavc_cloud_connector.py +0 -43
  226. catalystwan/endpoints/tenant_backup_restore.py +0 -40
  227. catalystwan/endpoints/tenant_management.py +0 -215
  228. catalystwan/endpoints/tenant_migration.py +0 -102
  229. catalystwan/endpoints/troubleshooting_tools/device_connectivity.py +0 -128
  230. catalystwan/endpoints/url_monitoring.py +0 -26
  231. catalystwan/integration_tests/__init__.py +0 -0
  232. catalystwan/integration_tests/base.py +0 -81
  233. catalystwan/integration_tests/feature_profile/sdwan/__init__.py +0 -0
  234. catalystwan/integration_tests/feature_profile/sdwan/policy/__init__.py +0 -0
  235. catalystwan/integration_tests/feature_profile/sdwan/policy/base.py +0 -33
  236. catalystwan/integration_tests/feature_profile/sdwan/policy/test_extended_community.py +0 -33
  237. catalystwan/integration_tests/feature_profile/sdwan/policy/test_security_app_list.py +0 -32
  238. catalystwan/integration_tests/feature_profile/sdwan/test_application_priority.py +0 -433
  239. catalystwan/integration_tests/feature_profile/sdwan/test_cli.py +0 -54
  240. catalystwan/integration_tests/feature_profile/sdwan/test_dns_security.py +0 -106
  241. catalystwan/integration_tests/feature_profile/sdwan/test_other.py +0 -49
  242. catalystwan/integration_tests/feature_profile/sdwan/test_service.py +0 -1078
  243. catalystwan/integration_tests/feature_profile/sdwan/test_sig_security.py +0 -322
  244. catalystwan/integration_tests/feature_profile/sdwan/test_ssl_decryption.py +0 -85
  245. catalystwan/integration_tests/feature_profile/sdwan/test_system.py +0 -368
  246. catalystwan/integration_tests/feature_profile/sdwan/test_transport.py +0 -1700
  247. catalystwan/integration_tests/feature_profile/sdwan/topology/test_topology.py +0 -93
  248. catalystwan/integration_tests/profile_builder/__init__.py +0 -0
  249. catalystwan/integration_tests/profile_builder/test_pb_service.py +0 -78
  250. catalystwan/integration_tests/profile_builder/test_pb_transport.py +0 -56
  251. catalystwan/integration_tests/profile_builder/test_pb_uc_voice.py +0 -277
  252. catalystwan/integration_tests/test_data/__init__.py +0 -117
  253. catalystwan/integration_tests/test_find_template_values.py +0 -38
  254. catalystwan/integration_tests/test_network_hierarchy.py +0 -82
  255. catalystwan/integration_tests/test_settings.py +0 -30
  256. catalystwan/logging.conf +0 -37
  257. catalystwan/models/common.py +0 -1508
  258. catalystwan/models/configuration/common.py +0 -11
  259. catalystwan/models/configuration/feature_profile/README.md +0 -344
  260. catalystwan/models/configuration/feature_profile/builder.py +0 -22
  261. catalystwan/models/configuration/feature_profile/common.py +0 -790
  262. catalystwan/models/configuration/feature_profile/parcel.py +0 -232
  263. catalystwan/models/configuration/feature_profile/sdwan/acl/__init__.py +0 -13
  264. catalystwan/models/configuration/feature_profile/sdwan/acl/ipv4acl.py +0 -298
  265. catalystwan/models/configuration/feature_profile/sdwan/acl/ipv6acl.py +0 -344
  266. catalystwan/models/configuration/feature_profile/sdwan/application_priority/__init__.py +0 -218
  267. catalystwan/models/configuration/feature_profile/sdwan/application_priority/cloud_probe.py +0 -61
  268. catalystwan/models/configuration/feature_profile/sdwan/application_priority/policy_settings.py +0 -31
  269. catalystwan/models/configuration/feature_profile/sdwan/application_priority/qos_policy.py +0 -102
  270. catalystwan/models/configuration/feature_profile/sdwan/application_priority/traffic_policy.py +0 -1054
  271. catalystwan/models/configuration/feature_profile/sdwan/cli/__init__.py +0 -23
  272. catalystwan/models/configuration/feature_profile/sdwan/cli/config.py +0 -18
  273. catalystwan/models/configuration/feature_profile/sdwan/cli/full_config.py +0 -15
  274. catalystwan/models/configuration/feature_profile/sdwan/dns_security/__init__.py +0 -13
  275. catalystwan/models/configuration/feature_profile/sdwan/dns_security/dns.py +0 -110
  276. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/__init__.py +0 -23
  277. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/ngfirewall.py +0 -915
  278. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/policy.py +0 -171
  279. catalystwan/models/configuration/feature_profile/sdwan/other/__init__.py +0 -25
  280. catalystwan/models/configuration/feature_profile/sdwan/other/cybervision.py +0 -44
  281. catalystwan/models/configuration/feature_profile/sdwan/other/thousandeyes.py +0 -147
  282. catalystwan/models/configuration/feature_profile/sdwan/other/ucse.py +0 -110
  283. catalystwan/models/configuration/feature_profile/sdwan/policy_object/__init__.py +0 -178
  284. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/app_probe.py +0 -56
  285. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/application_list.py +0 -31
  286. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/as_path.py +0 -22
  287. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/color_list.py +0 -21
  288. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/data_prefix.py +0 -35
  289. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/expanded_community_list.py +0 -25
  290. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/extended_community.py +0 -34
  291. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/fowarding_class.py +0 -26
  292. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv4_network_object.py +0 -15
  293. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv4_service_object.py +0 -254
  294. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_data_prefix.py +0 -28
  295. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_prefix_list.py +0 -38
  296. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/mirror.py +0 -27
  297. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/network_object_group.py +0 -15
  298. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/object_group.py +0 -15
  299. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/policer.py +0 -42
  300. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefered_group_color.py +0 -83
  301. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefix_list.py +0 -28
  302. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/service_object_group.py +0 -21
  303. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/sla_class.py +0 -130
  304. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/standard_community.py +0 -30
  305. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/tloc_list.py +0 -44
  306. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/aip.py +0 -64
  307. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/amp.py +0 -79
  308. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/application_list.py +0 -31
  309. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/data_prefix.py +0 -22
  310. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/fqdn.py +0 -24
  311. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/geolocation_list.py +0 -32
  312. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/identity.py +0 -30
  313. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/intrusion_prevention.py +0 -58
  314. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ips_signature.py +0 -44
  315. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/local_domain.py +0 -24
  316. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/protocol_list.py +0 -21
  317. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/scalable_group_tag.py +0 -26
  318. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/security_port.py +0 -45
  319. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption.py +0 -126
  320. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption_profile.py +0 -165
  321. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url.py +0 -32
  322. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url_filtering.py +0 -148
  323. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/zone.py +0 -44
  324. catalystwan/models/configuration/feature_profile/sdwan/routing/__init__.py +0 -26
  325. catalystwan/models/configuration/feature_profile/sdwan/routing/bgp.py +0 -609
  326. catalystwan/models/configuration/feature_profile/sdwan/routing/ospf.py +0 -173
  327. catalystwan/models/configuration/feature_profile/sdwan/routing/ospfv3.py +0 -301
  328. catalystwan/models/configuration/feature_profile/sdwan/service/__init__.py +0 -91
  329. catalystwan/models/configuration/feature_profile/sdwan/service/appqoe.py +0 -270
  330. catalystwan/models/configuration/feature_profile/sdwan/service/dhcp_server.py +0 -127
  331. catalystwan/models/configuration/feature_profile/sdwan/service/dual_router_ha.py +0 -26
  332. catalystwan/models/configuration/feature_profile/sdwan/service/eigrp.py +0 -103
  333. catalystwan/models/configuration/feature_profile/sdwan/service/lan/common.py +0 -33
  334. catalystwan/models/configuration/feature_profile/sdwan/service/lan/ethernet.py +0 -404
  335. catalystwan/models/configuration/feature_profile/sdwan/service/lan/gre.py +0 -136
  336. catalystwan/models/configuration/feature_profile/sdwan/service/lan/ipsec.py +0 -119
  337. catalystwan/models/configuration/feature_profile/sdwan/service/lan/multilink.py +0 -101
  338. catalystwan/models/configuration/feature_profile/sdwan/service/lan/svi.py +0 -182
  339. catalystwan/models/configuration/feature_profile/sdwan/service/lan/vpn.py +0 -627
  340. catalystwan/models/configuration/feature_profile/sdwan/service/multicast.py +0 -242
  341. catalystwan/models/configuration/feature_profile/sdwan/service/object_tracker.py +0 -84
  342. catalystwan/models/configuration/feature_profile/sdwan/service/route_policy.py +0 -419
  343. catalystwan/models/configuration/feature_profile/sdwan/service/service_chain.py +0 -38
  344. catalystwan/models/configuration/feature_profile/sdwan/service/service_insertion_attachment.py +0 -184
  345. catalystwan/models/configuration/feature_profile/sdwan/service/switchport.py +0 -110
  346. catalystwan/models/configuration/feature_profile/sdwan/service/tracker.py +0 -92
  347. catalystwan/models/configuration/feature_profile/sdwan/service/wireless_lan.py +0 -216
  348. catalystwan/models/configuration/feature_profile/sdwan/sig_security/__init__.py +0 -19
  349. catalystwan/models/configuration/feature_profile/sdwan/sig_security/sig_security.py +0 -379
  350. catalystwan/models/configuration/feature_profile/sdwan/system/__init__.py +0 -59
  351. catalystwan/models/configuration/feature_profile/sdwan/system/aaa.py +0 -406
  352. catalystwan/models/configuration/feature_profile/sdwan/system/banner.py +0 -30
  353. catalystwan/models/configuration/feature_profile/sdwan/system/basic.py +0 -290
  354. catalystwan/models/configuration/feature_profile/sdwan/system/bfd.py +0 -69
  355. catalystwan/models/configuration/feature_profile/sdwan/system/device_access.py +0 -157
  356. catalystwan/models/configuration/feature_profile/sdwan/system/device_access_ipv6.py +0 -157
  357. catalystwan/models/configuration/feature_profile/sdwan/system/global_parcel.py +0 -163
  358. catalystwan/models/configuration/feature_profile/sdwan/system/logging_parcel.py +0 -162
  359. catalystwan/models/configuration/feature_profile/sdwan/system/mrf.py +0 -75
  360. catalystwan/models/configuration/feature_profile/sdwan/system/ntp.py +0 -103
  361. catalystwan/models/configuration/feature_profile/sdwan/system/omp.py +0 -120
  362. catalystwan/models/configuration/feature_profile/sdwan/system/security.py +0 -179
  363. catalystwan/models/configuration/feature_profile/sdwan/system/snmp.py +0 -173
  364. catalystwan/models/configuration/feature_profile/sdwan/topology/__init__.py +0 -29
  365. catalystwan/models/configuration/feature_profile/sdwan/topology/custom_control.py +0 -425
  366. catalystwan/models/configuration/feature_profile/sdwan/topology/hubspoke.py +0 -60
  367. catalystwan/models/configuration/feature_profile/sdwan/topology/mesh.py +0 -23
  368. catalystwan/models/configuration/feature_profile/sdwan/transport/__init__.py +0 -93
  369. catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_controller.py +0 -58
  370. catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_profile.py +0 -71
  371. catalystwan/models/configuration/feature_profile/sdwan/transport/gps.py +0 -37
  372. catalystwan/models/configuration/feature_profile/sdwan/transport/management/ethernet.py +0 -121
  373. catalystwan/models/configuration/feature_profile/sdwan/transport/t1e1controller.py +0 -124
  374. catalystwan/models/configuration/feature_profile/sdwan/transport/vpn.py +0 -285
  375. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/cellular.py +0 -173
  376. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ethernet.py +0 -389
  377. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/gre.py +0 -46
  378. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ipsec.py +0 -98
  379. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/multilink.py +0 -219
  380. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/protocol_over.py +0 -405
  381. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/t1e1serial.py +0 -195
  382. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/__init__.py +0 -62
  383. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/analog_interface.py +0 -436
  384. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/call_routing.py +0 -179
  385. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/digital_interface.py +0 -375
  386. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/dsp_farm.py +0 -193
  387. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/media_profile.py +0 -25
  388. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/server_group.py +0 -51
  389. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/srst.py +0 -86
  390. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/supervisory_disconnect.py +0 -68
  391. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_profile.py +0 -42
  392. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_rule.py +0 -31
  393. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/trunk_group.py +0 -26
  394. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_global.py +0 -55
  395. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_tenant.py +0 -40
  396. catalystwan/models/configuration/network_hierarchy/__init__.py +0 -22
  397. catalystwan/models/configuration/network_hierarchy/cflowd.py +0 -120
  398. catalystwan/models/configuration/network_hierarchy/node.py +0 -88
  399. catalystwan/models/configuration/policy_group.py +0 -74
  400. catalystwan/models/configuration/profile_type.py +0 -5
  401. catalystwan/models/configuration/topology_group.py +0 -52
  402. catalystwan/models/device_inventory.py +0 -30
  403. catalystwan/models/feature_profile_parcel.py +0 -15
  404. catalystwan/models/misc/application_protocols.py +0 -29
  405. catalystwan/models/monitoring/security_policy.py +0 -16
  406. catalystwan/models/monitoring/server_info.py +0 -12
  407. catalystwan/models/policy/__init__.py +0 -392
  408. catalystwan/models/policy/centralized.py +0 -265
  409. catalystwan/models/policy/definition/access_control_list.py +0 -193
  410. catalystwan/models/policy/definition/access_control_list_ipv6.py +0 -187
  411. catalystwan/models/policy/definition/aip.py +0 -60
  412. catalystwan/models/policy/definition/amp.py +0 -65
  413. catalystwan/models/policy/definition/app_route.py +0 -246
  414. catalystwan/models/policy/definition/cflowd.py +0 -95
  415. catalystwan/models/policy/definition/control.py +0 -366
  416. catalystwan/models/policy/definition/device_access.py +0 -117
  417. catalystwan/models/policy/definition/device_access_ipv6.py +0 -115
  418. catalystwan/models/policy/definition/dial_peer.py +0 -60
  419. catalystwan/models/policy/definition/dns_security.py +0 -130
  420. catalystwan/models/policy/definition/fxo_port.py +0 -63
  421. catalystwan/models/policy/definition/fxs_did_port.py +0 -58
  422. catalystwan/models/policy/definition/fxs_port.py +0 -56
  423. catalystwan/models/policy/definition/hub_and_spoke.py +0 -87
  424. catalystwan/models/policy/definition/intrusion_prevention.py +0 -55
  425. catalystwan/models/policy/definition/mesh.py +0 -47
  426. catalystwan/models/policy/definition/pri_isdn_port.py +0 -48
  427. catalystwan/models/policy/definition/qos_map.py +0 -111
  428. catalystwan/models/policy/definition/rewrite.py +0 -47
  429. catalystwan/models/policy/definition/route_policy.py +0 -187
  430. catalystwan/models/policy/definition/rule_set.py +0 -270
  431. catalystwan/models/policy/definition/security_group.py +0 -93
  432. catalystwan/models/policy/definition/srst_phone_profile.py +0 -37
  433. catalystwan/models/policy/definition/ssl_decryption.py +0 -209
  434. catalystwan/models/policy/definition/ssl_decryption_utd_profile.py +0 -87
  435. catalystwan/models/policy/definition/traffic_data.py +0 -496
  436. catalystwan/models/policy/definition/url_filtering.py +0 -70
  437. catalystwan/models/policy/definition/vpn_membership.py +0 -42
  438. catalystwan/models/policy/definition/vpn_qos_map.py +0 -46
  439. catalystwan/models/policy/definition/zone_based_firewall.py +0 -301
  440. catalystwan/models/policy/list/app.py +0 -44
  441. catalystwan/models/policy/list/app_probe.py +0 -42
  442. catalystwan/models/policy/list/as_path.py +0 -30
  443. catalystwan/models/policy/list/class_map.py +0 -30
  444. catalystwan/models/policy/list/color.py +0 -28
  445. catalystwan/models/policy/list/communities.py +0 -83
  446. catalystwan/models/policy/list/data_ipv6_prefix.py +0 -30
  447. catalystwan/models/policy/list/data_prefix.py +0 -30
  448. catalystwan/models/policy/list/fax_protocol.py +0 -45
  449. catalystwan/models/policy/list/fqdn.py +0 -24
  450. catalystwan/models/policy/list/geo_location.py +0 -33
  451. catalystwan/models/policy/list/identity.py +0 -29
  452. catalystwan/models/policy/list/ips_signature.py +0 -27
  453. catalystwan/models/policy/list/ipv6_prefix.py +0 -33
  454. catalystwan/models/policy/list/local_app.py +0 -45
  455. catalystwan/models/policy/list/local_domain.py +0 -36
  456. catalystwan/models/policy/list/media_profile.py +0 -44
  457. catalystwan/models/policy/list/mirror.py +0 -27
  458. catalystwan/models/policy/list/modem_pass_through.py +0 -27
  459. catalystwan/models/policy/list/policer.py +0 -39
  460. catalystwan/models/policy/list/port.py +0 -33
  461. catalystwan/models/policy/list/preferred_color_group.py +0 -82
  462. catalystwan/models/policy/list/prefix.py +0 -33
  463. catalystwan/models/policy/list/protocol_name.py +0 -26
  464. catalystwan/models/policy/list/region.py +0 -45
  465. catalystwan/models/policy/list/scalable_group_tag.py +0 -30
  466. catalystwan/models/policy/list/site.py +0 -34
  467. catalystwan/models/policy/list/sla.py +0 -77
  468. catalystwan/models/policy/list/supervisory_disconnect.py +0 -62
  469. catalystwan/models/policy/list/threat_grid_api_key.py +0 -32
  470. catalystwan/models/policy/list/tloc.py +0 -32
  471. catalystwan/models/policy/list/translation_profile.py +0 -32
  472. catalystwan/models/policy/list/translation_rules.py +0 -29
  473. catalystwan/models/policy/list/trunkgroup.py +0 -56
  474. catalystwan/models/policy/list/umbrella_data.py +0 -30
  475. catalystwan/models/policy/list/url.py +0 -39
  476. catalystwan/models/policy/list/vpn.py +0 -40
  477. catalystwan/models/policy/list/zone.py +0 -45
  478. catalystwan/models/policy/localized.py +0 -154
  479. catalystwan/models/policy/policy.py +0 -100
  480. catalystwan/models/policy/policy_definition.py +0 -1624
  481. catalystwan/models/policy/policy_list.py +0 -47
  482. catalystwan/models/policy/security.py +0 -279
  483. catalystwan/models/policy/voice.py +0 -77
  484. catalystwan/models/settings.py +0 -41
  485. catalystwan/models/templates.py +0 -79
  486. catalystwan/models/tenant.py +0 -105
  487. catalystwan/models/url_monitoring.py +0 -28
  488. catalystwan/tests/__init__.py +0 -0
  489. catalystwan/tests/builders/uc_voice.py +0 -85
  490. catalystwan/tests/models/__init__.py +0 -0
  491. catalystwan/tests/models/test_digital_interface.py +0 -56
  492. catalystwan/tests/templates/__init__.py +0 -0
  493. catalystwan/tests/templates/definitions/__init__.py +0 -0
  494. catalystwan/tests/templates/definitions/aaa_basic.json +0 -96
  495. catalystwan/tests/templates/definitions/aaa_complex.json +0 -464
  496. catalystwan/tests/templates/definitions/basic/__init__.py +0 -0
  497. catalystwan/tests/templates/definitions/basic/alias.json +0 -7
  498. catalystwan/tests/templates/definitions/basic/basic.json +0 -7
  499. catalystwan/tests/templates/definitions/basic/basic_no_value.json +0 -7
  500. catalystwan/tests/templates/definitions/basic/children.json +0 -39
  501. catalystwan/tests/templates/definitions/basic/children_nested.json +0 -72
  502. catalystwan/tests/templates/definitions/basic/children_nested_datapath.json +0 -72
  503. catalystwan/tests/templates/definitions/basic/data_path.json +0 -13
  504. catalystwan/tests/templates/definitions/cisco_aaa.json +0 -178
  505. catalystwan/tests/templates/definitions/cisco_aaa_complex.json +0 -361
  506. catalystwan/tests/templates/definitions/cisco_banner.json +0 -20
  507. catalystwan/tests/templates/definitions/cisco_bfd.json +0 -90
  508. catalystwan/tests/templates/definitions/cisco_logging_complex.json +0 -268
  509. catalystwan/tests/templates/definitions/cisco_ntp_complex.json +0 -143
  510. catalystwan/tests/templates/definitions/cisco_omp_complex.json +0 -175
  511. catalystwan/tests/templates/definitions/cisco_ospf_complex.json +0 -302
  512. catalystwan/tests/templates/definitions/cisco_sig.json +0 -405
  513. catalystwan/tests/templates/definitions/cisco_snmp_complex.json +0 -258
  514. catalystwan/tests/templates/definitions/cisco_system_complex.json +0 -502
  515. catalystwan/tests/templates/definitions/cisco_vpn_basic.json +0 -17
  516. catalystwan/tests/templates/definitions/cisco_vpn_complex.json +0 -1081
  517. catalystwan/tests/templates/definitions/cisco_vpn_interface_complex.json +0 -821
  518. catalystwan/tests/templates/definitions/default_cisco_system.json +0 -184
  519. catalystwan/tests/templates/definitions/omp_vsmart_1.json +0 -26
  520. catalystwan/tests/templates/definitions/omp_vsmart_2.json +0 -48
  521. catalystwan/tests/templates/definitions/omp_vsmart_3.json +0 -71
  522. catalystwan/tests/templates/definitions/omp_vsmart_complex.json +0 -73
  523. catalystwan/tests/templates/definitions/security_vsmart_complex.json +0 -24
  524. catalystwan/tests/templates/definitions/system_vsmart_complex.json +0 -193
  525. catalystwan/tests/templates/definitions/vpn_vsmart_basic.json +0 -17
  526. catalystwan/tests/templates/definitions/vpn_vsmart_complex.json +0 -179
  527. catalystwan/tests/templates/definitions/vpn_vsmart_interface_basic.json +0 -42
  528. catalystwan/tests/templates/definitions/vpn_vsmart_interface_complex.json +0 -208
  529. catalystwan/tests/templates/models/__init__.py +0 -53
  530. catalystwan/tests/templates/models/aaa.py +0 -106
  531. catalystwan/tests/templates/models/cisco_aaa.py +0 -124
  532. catalystwan/tests/templates/models/cisco_banner.py +0 -7
  533. catalystwan/tests/templates/models/cisco_bfd.py +0 -15
  534. catalystwan/tests/templates/models/cisco_logging.py +0 -65
  535. catalystwan/tests/templates/models/cisco_ntp.py +0 -17
  536. catalystwan/tests/templates/models/cisco_omp.py +0 -37
  537. catalystwan/tests/templates/models/cisco_ospf.py +0 -60
  538. catalystwan/tests/templates/models/cisco_secure_internet_gateway.py +0 -95
  539. catalystwan/tests/templates/models/cisco_snmp.py +0 -40
  540. catalystwan/tests/templates/models/cisco_system.py +0 -113
  541. catalystwan/tests/templates/models/cisco_vpn.py +0 -240
  542. catalystwan/tests/templates/models/cisco_vpn_interface.py +0 -200
  543. catalystwan/tests/templates/models/omp_vsmart.py +0 -53
  544. catalystwan/tests/templates/models/security_vsmart.py +0 -11
  545. catalystwan/tests/templates/models/system_vsmart.py +0 -37
  546. catalystwan/tests/templates/models/vpn_vsmart.py +0 -32
  547. catalystwan/tests/templates/models/vpn_vsmart_interface.py +0 -54
  548. catalystwan/tests/templates/schemas/aaa.json +0 -1096
  549. catalystwan/tests/templates/schemas/basic/alias.json +0 -24
  550. catalystwan/tests/templates/schemas/basic/basic.json +0 -23
  551. catalystwan/tests/templates/schemas/basic/children.json +0 -59
  552. catalystwan/tests/templates/schemas/basic/children_nested.json +0 -112
  553. catalystwan/tests/templates/schemas/basic/children_nested_datapath.json +0 -112
  554. catalystwan/tests/templates/schemas/basic/data_path.json +0 -29
  555. catalystwan/tests/templates/schemas/cedge_aaa.json +0 -1185
  556. catalystwan/tests/templates/schemas/cisco_banner.json +0 -44
  557. catalystwan/tests/templates/schemas/cisco_bfd.json +0 -266
  558. catalystwan/tests/templates/schemas/cisco_logging.json +0 -577
  559. catalystwan/tests/templates/schemas/cisco_ntp.json +0 -265
  560. catalystwan/tests/templates/schemas/cisco_omp.json +0 -479
  561. catalystwan/tests/templates/schemas/cisco_ospf.json +0 -908
  562. catalystwan/tests/templates/schemas/cisco_secure_internet_gateway.json +0 -1520
  563. catalystwan/tests/templates/schemas/cisco_snmp.json +0 -561
  564. catalystwan/tests/templates/schemas/cisco_system.json +0 -3099
  565. catalystwan/tests/templates/schemas/cisco_vpn.json +0 -2504
  566. catalystwan/tests/templates/schemas/cisco_vpn_interface.json +0 -3348
  567. catalystwan/tests/templates/schemas/omp-vsmart.json +0 -222
  568. catalystwan/tests/templates/schemas/security-vsmart.json +0 -58
  569. catalystwan/tests/templates/schemas/system-vsmart.json +0 -2585
  570. catalystwan/tests/templates/schemas/vpn-vsmart-interface.json +0 -859
  571. catalystwan/tests/templates/schemas/vpn-vsmart.json +0 -445
  572. catalystwan/tests/templates/test_chose_model.py +0 -32
  573. catalystwan/tests/templates/test_deserialize_model.py +0 -69
  574. catalystwan/tests/templates/test_find_template_values.py +0 -193
  575. catalystwan/tests/templates/test_find_template_values_2.py +0 -193
  576. catalystwan/tests/templates/test_generate_payload.py +0 -137
  577. catalystwan/tests/templates/test_serialize_model.py +0 -52
  578. catalystwan/tests/test_admin_tech_api.py +0 -198
  579. catalystwan/tests/test_administration.py +0 -470
  580. catalystwan/tests/test_alarms_api.py +0 -251
  581. catalystwan/tests/test_cli_template.py +0 -218
  582. catalystwan/tests/test_creation_tools.py +0 -155
  583. catalystwan/tests/test_device_action_api.py +0 -117
  584. catalystwan/tests/test_devices_api.py +0 -674
  585. catalystwan/tests/test_endpoints.py +0 -907
  586. catalystwan/tests/test_feature_profile_api.py +0 -282
  587. catalystwan/tests/test_feature_template_field.py +0 -33
  588. catalystwan/tests/test_logs_api.py +0 -40
  589. catalystwan/tests/test_models_common.py +0 -53
  590. catalystwan/tests/test_monitoring_security_policy.py +0 -65
  591. catalystwan/tests/test_monitoring_server_info.py +0 -49
  592. catalystwan/tests/test_monitoring_status_api.py +0 -118
  593. catalystwan/tests/test_mtt_aaa_api.py +0 -293
  594. catalystwan/tests/test_omp_api.py +0 -438
  595. catalystwan/tests/test_packet_capture.py +0 -125
  596. catalystwan/tests/test_partition_manager_api.py +0 -121
  597. catalystwan/tests/test_response.py +0 -183
  598. catalystwan/tests/test_session.py +0 -102
  599. catalystwan/tests/test_software_action_api.py +0 -154
  600. catalystwan/tests/test_speed_test_api.py +0 -143
  601. catalystwan/tests/test_task_status_api.py +0 -381
  602. catalystwan/tests/test_templates.py +0 -405
  603. catalystwan/tests/test_tenant_backup_restore_api.py +0 -88
  604. catalystwan/tests/test_tenant_management_api.py +0 -153
  605. catalystwan/tests/test_tenant_migration_api.py +0 -102
  606. catalystwan/tests/test_typed_list.py +0 -426
  607. catalystwan/tests/test_url_monitoring.py +0 -80
  608. catalystwan/tests/test_version.py +0 -99
  609. catalystwan/tests/test_version_utils.py +0 -240
  610. catalystwan/tests/test_vmanage_auth.py +0 -149
  611. catalystwan/typed_list.py +0 -288
  612. catalystwan/utils/__init__.py +0 -0
  613. catalystwan/utils/alarm_status.py +0 -16
  614. catalystwan/utils/certificate_status.py +0 -13
  615. catalystwan/utils/colors.py +0 -12
  616. catalystwan/utils/config_status.py +0 -8
  617. catalystwan/utils/creation_tools.py +0 -136
  618. catalystwan/utils/dashboard.py +0 -255
  619. catalystwan/utils/device_model.py +0 -322
  620. catalystwan/utils/dict.py +0 -61
  621. catalystwan/utils/feature_template/choose_model.py +0 -30
  622. catalystwan/utils/feature_template/find_template_values.py +0 -111
  623. catalystwan/utils/model.py +0 -45
  624. catalystwan/utils/operation_status.py +0 -22
  625. catalystwan/utils/persona.py +0 -5
  626. catalystwan/utils/personality.py +0 -10
  627. catalystwan/utils/pydantic_field.py +0 -12
  628. catalystwan/utils/reachability.py +0 -14
  629. catalystwan/utils/session_type.py +0 -17
  630. catalystwan/utils/template_type.py +0 -8
  631. catalystwan/utils/type_check.py +0 -22
  632. catalystwan/utils/upgrades_helper.py +0 -95
  633. catalystwan/utils/validate_status.py +0 -8
  634. catalystwan/workflows/backup_restore_device_templates.py +0 -467
  635. catalystwan/workflows/tenant_migration.py +0 -203
  636. catalystwan-0.40.2.dev1.dist-info/METADATA +0 -539
  637. catalystwan-0.40.2.dev1.dist-info/RECORD +0 -628
  638. /catalystwan/{api → core/models}/__init__.py +0 -0
  639. /catalystwan/{api/builders/feature_profiles/__init__.py → core/py.typed} +0 -0
  640. {catalystwan-0.40.2.dev1.dist-info → catalystwan-2.0.0a1.dist-info}/LICENSE +0 -0
@@ -1,1163 +0,0 @@
1
- # Copyright 2023 Cisco Systems, Inc. and its affiliates
2
-
3
- from __future__ import annotations
4
-
5
- from typing import TYPE_CHECKING, Any, Dict, List, Mapping, Optional, Tuple, Type, overload
6
- from uuid import UUID
7
-
8
- from catalystwan.api.task_status_api import Task
9
- from catalystwan.endpoints.configuration.policy.abstractions import PolicyDefinitionEndpoints, PolicyListEndpoints
10
- from catalystwan.endpoints.configuration.policy.definition.access_control_list import ConfigurationPolicyAclDefinition
11
- from catalystwan.endpoints.configuration.policy.definition.access_control_list_ipv6 import (
12
- ConfigurationPolicyAclIPv6Definition,
13
- )
14
- from catalystwan.endpoints.configuration.policy.definition.aip import ConfigurationPolicyAIPDefinition
15
- from catalystwan.endpoints.configuration.policy.definition.amp import ConfigurationPolicyAMPDefinition
16
- from catalystwan.endpoints.configuration.policy.definition.app_route import ConfigurationPolicyAppRouteDefinition
17
- from catalystwan.endpoints.configuration.policy.definition.cflowd import ConfigurationPolicyCflowdDefinition
18
- from catalystwan.endpoints.configuration.policy.definition.control import ConfigurationPolicyControlDefinition
19
- from catalystwan.endpoints.configuration.policy.definition.device_access import (
20
- ConfigurationPolicyDeviceAccessDefinition,
21
- )
22
- from catalystwan.endpoints.configuration.policy.definition.device_access_ipv6 import (
23
- ConfigurationPolicyDeviceAccessIPv6Definition,
24
- )
25
- from catalystwan.endpoints.configuration.policy.definition.dial_peer import ConfigurationPolicyDialPeerDefinition
26
- from catalystwan.endpoints.configuration.policy.definition.dns_security import ConfigurationPolicyDnsSecurityDefinition
27
- from catalystwan.endpoints.configuration.policy.definition.fxo_port import ConfigurationPolicyFxoPortDefinition
28
- from catalystwan.endpoints.configuration.policy.definition.fxs_did_port import ConfigurationPolicyFxsDidPortDefinition
29
- from catalystwan.endpoints.configuration.policy.definition.fxs_port import ConfigurationPolicyFxsPortDefinition
30
- from catalystwan.endpoints.configuration.policy.definition.hub_and_spoke import ConfigurationPolicyHubAndSpokeDefinition
31
- from catalystwan.endpoints.configuration.policy.definition.intrusion_prevention import (
32
- ConfigurationPolicyIntrusionPreventionDefinition,
33
- )
34
- from catalystwan.endpoints.configuration.policy.definition.mesh import ConfigurationPolicyMeshDefinition
35
- from catalystwan.endpoints.configuration.policy.definition.pri_isdn_port import ConfigurationPolicyPriIsdnPortDefinition
36
- from catalystwan.endpoints.configuration.policy.definition.qos_map import ConfigurationPolicyQoSMapDefinition
37
- from catalystwan.endpoints.configuration.policy.definition.rewrite import ConfigurationPolicyRewriteRuleDefinition
38
- from catalystwan.endpoints.configuration.policy.definition.route_policy import ConfigurationPolicyRouteDefinition
39
- from catalystwan.endpoints.configuration.policy.definition.rule_set import ConfigurationPolicyRuleSetDefinition
40
- from catalystwan.endpoints.configuration.policy.definition.security_group import (
41
- ConfigurationPolicySecurityGroupDefinition,
42
- )
43
- from catalystwan.endpoints.configuration.policy.definition.srst_phone_profile import (
44
- ConfigurationPolicySrstPhoneProfileDefinition,
45
- )
46
- from catalystwan.endpoints.configuration.policy.definition.ssl_decryption import ConfigurationSslDecryptionDefinition
47
- from catalystwan.endpoints.configuration.policy.definition.ssl_decryption_utd_profile import (
48
- ConfigurationSslDecryptionUtdProfileDefinition,
49
- )
50
- from catalystwan.endpoints.configuration.policy.definition.traffic_data import ConfigurationPolicyDataDefinition
51
- from catalystwan.endpoints.configuration.policy.definition.url_filtering import (
52
- ConfigurationPolicyUrlFilteringDefinition,
53
- )
54
- from catalystwan.endpoints.configuration.policy.definition.vpn_membership import (
55
- ConfigurationPolicyVPNMembershipGroupDefinition,
56
- )
57
- from catalystwan.endpoints.configuration.policy.definition.vpn_qos_map import ConfigurationPolicyVPNQoSMapDefinition
58
- from catalystwan.endpoints.configuration.policy.definition.zone_based_firewall import (
59
- ConfigurationPolicyZoneBasedFirewallDefinition,
60
- )
61
- from catalystwan.endpoints.configuration.policy.list.app import AppListInfo, ConfigurationPolicyApplicationList
62
- from catalystwan.endpoints.configuration.policy.list.app_probe import ConfigurationPolicyAppProbeClassList
63
- from catalystwan.endpoints.configuration.policy.list.as_path import ASPathListInfo, ConfigurationPolicyASPathList
64
- from catalystwan.endpoints.configuration.policy.list.class_map import ConfigurationPolicyForwardingClassList
65
- from catalystwan.endpoints.configuration.policy.list.color import ColorListInfo, ConfigurationPolicyColorList
66
- from catalystwan.endpoints.configuration.policy.list.community import ConfigurationPolicyCommunityList
67
- from catalystwan.endpoints.configuration.policy.list.data_ipv6_prefix import ConfigurationPolicyDataIPv6PrefixList
68
- from catalystwan.endpoints.configuration.policy.list.data_prefix import ConfigurationPolicyDataPrefixList
69
- from catalystwan.endpoints.configuration.policy.list.expanded_community import ConfigurationPolicyExpandedCommunityList
70
- from catalystwan.endpoints.configuration.policy.list.extended_community import ConfigurationPolicyExtendedCommunityList
71
- from catalystwan.endpoints.configuration.policy.list.fax_protocol import ConfigurationPolicyFaxProtocolList
72
- from catalystwan.endpoints.configuration.policy.list.fqdn import ConfigurationPolicyFQDNList, FQDNListInfo
73
- from catalystwan.endpoints.configuration.policy.list.geo_location import ConfigurationPolicyGeoLocationList
74
- from catalystwan.endpoints.configuration.policy.list.identity import ConfigurationPolicyIdentityList
75
- from catalystwan.endpoints.configuration.policy.list.ips_signature import ConfigurationPolicyIPSSignatureList
76
- from catalystwan.endpoints.configuration.policy.list.ipv6_prefix import ConfigurationPolicyIPv6PrefixList
77
- from catalystwan.endpoints.configuration.policy.list.local_app import ConfigurationPolicyLocalAppList, LocalAppListInfo
78
- from catalystwan.endpoints.configuration.policy.list.local_domain import ConfigurationPolicyLocalDomainList
79
- from catalystwan.endpoints.configuration.policy.list.media_profile import ConfigurationPolicyMediaProfileList
80
- from catalystwan.endpoints.configuration.policy.list.mirror import ConfigurationPolicyMirrorList, MirrorListInfo
81
- from catalystwan.endpoints.configuration.policy.list.modem_pass_through import ConfigurationPolicyModemPassThroughList
82
- from catalystwan.endpoints.configuration.policy.list.policer import ConfigurationPolicyPolicerClassList, PolicerListInfo
83
- from catalystwan.endpoints.configuration.policy.list.port import ConfigurationPolicyPortList, PortListInfo
84
- from catalystwan.endpoints.configuration.policy.list.preferred_color_group import (
85
- ConfigurationPreferredColorGroupList,
86
- PreferredColorGroupListInfo,
87
- )
88
- from catalystwan.endpoints.configuration.policy.list.prefix import ConfigurationPolicyPrefixList, PrefixListInfo
89
- from catalystwan.endpoints.configuration.policy.list.protocol_name import (
90
- ConfigurationPolicyProtocolNameList,
91
- ProtocolNameListInfo,
92
- )
93
- from catalystwan.endpoints.configuration.policy.list.region import ConfigurationPolicyRegionList, RegionListInfo
94
- from catalystwan.endpoints.configuration.policy.list.scalable_group_tag import ConfigurationPolicyScalableGroupTagList
95
- from catalystwan.endpoints.configuration.policy.list.site import ConfigurationPolicySiteList, SiteListInfo
96
- from catalystwan.endpoints.configuration.policy.list.sla import ConfigurationPolicySLAClassList, SLAClassListInfo
97
- from catalystwan.endpoints.configuration.policy.list.supervisory_disconnect import (
98
- ConfigurationPolicySupervisoryDisconnectList,
99
- )
100
- from catalystwan.endpoints.configuration.policy.list.threat_grid_api_key import ConfigurationPolicyThreatGridApiKeyList
101
- from catalystwan.endpoints.configuration.policy.list.tloc import ConfigurationPolicyTLOCList, TLOCListInfo
102
- from catalystwan.endpoints.configuration.policy.list.translation_profile import (
103
- ConfigurationPolicyTranslationProfileList,
104
- )
105
- from catalystwan.endpoints.configuration.policy.list.translation_rules import ConfigurationPolicyTranslationRulesList
106
- from catalystwan.endpoints.configuration.policy.list.trunkgroup import ConfigurationPolicyTrunkGroupList
107
- from catalystwan.endpoints.configuration.policy.list.umbrella_data import ConfigurationPolicyUmbrellaDataList
108
- from catalystwan.endpoints.configuration.policy.list.url_allow_list import (
109
- ConfigurationPolicyURLAllowList,
110
- URLAllowListInfo,
111
- )
112
- from catalystwan.endpoints.configuration.policy.list.url_block_list import (
113
- ConfigurationPolicyURLBlockList,
114
- URLBlockListInfo,
115
- )
116
- from catalystwan.endpoints.configuration.policy.list.vpn import ConfigurationPolicyVPNList, VPNListInfo
117
- from catalystwan.endpoints.configuration.policy.list.zone import ConfigurationPolicyZoneList, ZoneListInfo
118
- from catalystwan.endpoints.configuration.policy.security_template import ConfigurationSecurityTemplatePolicy
119
- from catalystwan.endpoints.configuration.policy.vedge_template import ConfigurationVEdgeTemplatePolicy
120
- from catalystwan.endpoints.configuration.policy.voice_template import ConfigurationVoiceTemplatePolicy
121
- from catalystwan.endpoints.configuration.policy.vsmart_template import (
122
- ConfigurationVSmartTemplatePolicy,
123
- VSmartConnectivityStatus,
124
- )
125
- from catalystwan.models.misc.application_protocols import ApplicationProtocol
126
- from catalystwan.models.policy import (
127
- AnyPolicyDefinition,
128
- AnyPolicyList,
129
- AppList,
130
- AppProbeClassList,
131
- ASPathList,
132
- ClassMapList,
133
- ColorList,
134
- CommunityList,
135
- DataIPv6PrefixList,
136
- DataPrefixList,
137
- ExpandedCommunityList,
138
- ExtendedCommunityList,
139
- FQDNList,
140
- GeoLocationList,
141
- IPSSignatureList,
142
- IPv6PrefixList,
143
- LocalAppList,
144
- LocalDomainList,
145
- MirrorList,
146
- PolicerList,
147
- PortList,
148
- PreferredColorGroupList,
149
- PrefixList,
150
- ProtocolNameList,
151
- RegionList,
152
- SiteList,
153
- SLAClassList,
154
- TLOCList,
155
- URLAllowList,
156
- URLBlockList,
157
- VPNList,
158
- ZoneList,
159
- )
160
- from catalystwan.models.policy.centralized import CentralizedPolicy, CentralizedPolicyEditPayload, CentralizedPolicyInfo
161
- from catalystwan.models.policy.definition.access_control_list import AclPolicy, AclPolicyGetResponse
162
- from catalystwan.models.policy.definition.access_control_list_ipv6 import AclIPv6Policy, AclIPv6PolicyGetResponse
163
- from catalystwan.models.policy.definition.aip import (
164
- AdvancedInspectionProfilePolicy,
165
- AdvancedInspectionProfilePolicyGetResponse,
166
- )
167
- from catalystwan.models.policy.definition.amp import (
168
- AdvancedMalwareProtectionPolicy,
169
- AdvancedMalwareProtectionPolicyGetResponse,
170
- )
171
- from catalystwan.models.policy.definition.app_route import AppRoutePolicy, AppRoutePolicyGetResponse
172
- from catalystwan.models.policy.definition.cflowd import CflowdPolicy, CflowdPolicyGetResponse
173
- from catalystwan.models.policy.definition.control import ControlPolicy, ControlPolicyGetResponse
174
- from catalystwan.models.policy.definition.device_access import DeviceAccessPolicy, DeviceAccessPolicyGetResponse
175
- from catalystwan.models.policy.definition.device_access_ipv6 import (
176
- DeviceAccessIPv6Policy,
177
- DeviceAccessIPv6PolicyGetResponse,
178
- )
179
- from catalystwan.models.policy.definition.dial_peer import DialPeerPolicy, DialPeerPolicyGetResponse
180
- from catalystwan.models.policy.definition.dns_security import DnsSecurityPolicy, DnsSecurityPolicyGetResponse
181
- from catalystwan.models.policy.definition.fxo_port import FxoPortPolicy, FxoPortPolicyGetResponse
182
- from catalystwan.models.policy.definition.fxs_did_port import FxsDidPortPolicy, FxsDidPortPolicyGetResponse
183
- from catalystwan.models.policy.definition.fxs_port import FxsPortPolicy, FxsPortPolicyGetResponse
184
- from catalystwan.models.policy.definition.hub_and_spoke import HubAndSpokePolicy, HubAndSpokePolicyGetResponse
185
- from catalystwan.models.policy.definition.intrusion_prevention import (
186
- IntrusionPreventionPolicy,
187
- IntrusionPreventionPolicyGetResponse,
188
- )
189
- from catalystwan.models.policy.definition.mesh import MeshPolicy, MeshPolicyGetResponse
190
- from catalystwan.models.policy.definition.pri_isdn_port import PriIsdnPortPolicy, PriIsdnPortPolicyGetResponse
191
- from catalystwan.models.policy.definition.qos_map import QoSMapPolicy, QoSMapPolicyGetResponse
192
- from catalystwan.models.policy.definition.rewrite import RewritePolicy, RewritePolicyGetResponse
193
- from catalystwan.models.policy.definition.route_policy import RoutePolicy, RoutePolicyGetResponse
194
- from catalystwan.models.policy.definition.rule_set import RuleSet, RuleSetGetResponse
195
- from catalystwan.models.policy.definition.security_group import SecurityGroup, SecurityGroupGetResponse
196
- from catalystwan.models.policy.definition.srst_phone_profile import (
197
- SrstPhoneProfilePolicy,
198
- SrstPhoneProfilePolicyGetResponse,
199
- )
200
- from catalystwan.models.policy.definition.ssl_decryption import SslDecryptionPolicy, SslDecryptionPolicyGetResponse
201
- from catalystwan.models.policy.definition.ssl_decryption_utd_profile import (
202
- SslDecryptionUtdProfilePolicy,
203
- SslDecryptionUtdProfilePolicyGetResponse,
204
- )
205
- from catalystwan.models.policy.definition.traffic_data import TrafficDataPolicy, TrafficDataPolicyGetResponse
206
- from catalystwan.models.policy.definition.url_filtering import UrlFilteringPolicy, UrlFilteringPolicyGetResponse
207
- from catalystwan.models.policy.definition.vpn_membership import VPNMembershipPolicy, VPNMembershipPolicyGetResponse
208
- from catalystwan.models.policy.definition.vpn_qos_map import VPNQoSMapPolicy
209
- from catalystwan.models.policy.definition.zone_based_firewall import ZoneBasedFWPolicy, ZoneBasedFWPolicyGetResponse
210
- from catalystwan.models.policy.list.app_probe import AppProbeClassListInfo
211
- from catalystwan.models.policy.list.class_map import ClassMapListInfo
212
- from catalystwan.models.policy.list.communities import (
213
- CommunityListInfo,
214
- ExpandedCommunityListInfo,
215
- ExtendedCommunityListInfo,
216
- )
217
- from catalystwan.models.policy.list.data_ipv6_prefix import DataIPv6PrefixListInfo
218
- from catalystwan.models.policy.list.data_prefix import DataPrefixListInfo
219
- from catalystwan.models.policy.list.fax_protocol import FaxProtocolList, FaxProtocolListInfo
220
- from catalystwan.models.policy.list.geo_location import GeoLocationListInfo
221
- from catalystwan.models.policy.list.identity import IdentityList, IdentityListInfo
222
- from catalystwan.models.policy.list.ips_signature import IPSSignatureListInfo
223
- from catalystwan.models.policy.list.ipv6_prefix import IPv6PrefixListInfo
224
- from catalystwan.models.policy.list.local_domain import LocalDomainListInfo
225
- from catalystwan.models.policy.list.media_profile import MediaProfileList, MediaProfileListInfo
226
- from catalystwan.models.policy.list.modem_pass_through import ModemPassThroughList, ModemPassThroughListInfo
227
- from catalystwan.models.policy.list.scalable_group_tag import ScalableGroupTagList, ScalableGroupTagListInfo
228
- from catalystwan.models.policy.list.supervisory_disconnect import (
229
- SupervisoryDisconnectList,
230
- SupervisoryDisconnectListInfo,
231
- )
232
- from catalystwan.models.policy.list.threat_grid_api_key import ThreatGridApiKeyList, ThreatGridApiKeyListInfo
233
- from catalystwan.models.policy.list.translation_profile import TranslationProfileList, TranslationProfileListInfo
234
- from catalystwan.models.policy.list.translation_rules import TranslationRulesList, TranslationRulesListInfo
235
- from catalystwan.models.policy.list.trunkgroup import TrunkGroupList, TrunkGroupListInfo
236
- from catalystwan.models.policy.list.umbrella_data import UmbrellaDataList, UmbrellaDataListInfo
237
- from catalystwan.models.policy.localized import (
238
- LocalizedPolicy,
239
- LocalizedPolicyDeviceInfo,
240
- LocalizedPolicyEditResponse,
241
- LocalizedPolicyInfo,
242
- )
243
- from catalystwan.models.policy.policy_definition import (
244
- PolicyDefinitionBase,
245
- PolicyDefinitionEditResponse,
246
- PolicyDefinitionInfo,
247
- )
248
- from catalystwan.models.policy.policy_list import PolicyListBase
249
- from catalystwan.models.policy.security import (
250
- AnySecurityPolicy,
251
- AnySecurityPolicyInfoList,
252
- SecurityPolicy,
253
- SecurityPolicyEditResponse,
254
- UnifiedSecurityPolicy,
255
- )
256
- from catalystwan.models.policy.voice import VoicePolicy, VoicePolicyEditResponse, VoicePolicyInfo
257
- from catalystwan.typed_list import DataSequence
258
-
259
- if TYPE_CHECKING:
260
- from catalystwan.session import ManagerSession
261
-
262
-
263
- POLICY_LIST_ENDPOINTS_MAP: Mapping[type, type] = {
264
- AppList: ConfigurationPolicyApplicationList,
265
- AppProbeClassList: ConfigurationPolicyAppProbeClassList,
266
- ASPathList: ConfigurationPolicyASPathList,
267
- ClassMapList: ConfigurationPolicyForwardingClassList,
268
- ColorList: ConfigurationPolicyColorList,
269
- CommunityList: ConfigurationPolicyCommunityList,
270
- DataIPv6PrefixList: ConfigurationPolicyDataIPv6PrefixList,
271
- DataPrefixList: ConfigurationPolicyDataPrefixList,
272
- ExpandedCommunityList: ConfigurationPolicyExpandedCommunityList,
273
- ExtendedCommunityList: ConfigurationPolicyExtendedCommunityList,
274
- FaxProtocolList: ConfigurationPolicyFaxProtocolList,
275
- FQDNList: ConfigurationPolicyFQDNList,
276
- GeoLocationList: ConfigurationPolicyGeoLocationList,
277
- IdentityList: ConfigurationPolicyIdentityList,
278
- IPSSignatureList: ConfigurationPolicyIPSSignatureList,
279
- IPv6PrefixList: ConfigurationPolicyIPv6PrefixList,
280
- LocalAppList: ConfigurationPolicyLocalAppList,
281
- LocalDomainList: ConfigurationPolicyLocalDomainList,
282
- MediaProfileList: ConfigurationPolicyMediaProfileList,
283
- MirrorList: ConfigurationPolicyMirrorList,
284
- ModemPassThroughList: ConfigurationPolicyModemPassThroughList,
285
- PolicerList: ConfigurationPolicyPolicerClassList,
286
- PortList: ConfigurationPolicyPortList,
287
- PreferredColorGroupList: ConfigurationPreferredColorGroupList,
288
- PrefixList: ConfigurationPolicyPrefixList,
289
- ProtocolNameList: ConfigurationPolicyProtocolNameList,
290
- RegionList: ConfigurationPolicyRegionList,
291
- ScalableGroupTagList: ConfigurationPolicyScalableGroupTagList,
292
- SiteList: ConfigurationPolicySiteList,
293
- SLAClassList: ConfigurationPolicySLAClassList,
294
- SupervisoryDisconnectList: ConfigurationPolicySupervisoryDisconnectList,
295
- ThreatGridApiKeyList: ConfigurationPolicyThreatGridApiKeyList,
296
- TLOCList: ConfigurationPolicyTLOCList,
297
- TranslationProfileList: ConfigurationPolicyTranslationProfileList,
298
- TranslationRulesList: ConfigurationPolicyTranslationRulesList,
299
- TrunkGroupList: ConfigurationPolicyTrunkGroupList,
300
- UmbrellaDataList: ConfigurationPolicyUmbrellaDataList,
301
- URLAllowList: ConfigurationPolicyURLAllowList,
302
- URLBlockList: ConfigurationPolicyURLBlockList,
303
- VPNList: ConfigurationPolicyVPNList,
304
- ZoneList: ConfigurationPolicyZoneList,
305
- }
306
-
307
- POLICY_DEFINITION_ENDPOINTS_MAP: Mapping[type, type] = {
308
- AclIPv6Policy: ConfigurationPolicyAclIPv6Definition,
309
- AclPolicy: ConfigurationPolicyAclDefinition,
310
- AdvancedInspectionProfilePolicy: ConfigurationPolicyAIPDefinition,
311
- AdvancedMalwareProtectionPolicy: ConfigurationPolicyAMPDefinition,
312
- AppRoutePolicy: ConfigurationPolicyAppRouteDefinition,
313
- CflowdPolicy: ConfigurationPolicyCflowdDefinition,
314
- ControlPolicy: ConfigurationPolicyControlDefinition,
315
- DeviceAccessIPv6Policy: ConfigurationPolicyDeviceAccessIPv6Definition,
316
- DeviceAccessPolicy: ConfigurationPolicyDeviceAccessDefinition,
317
- DialPeerPolicy: ConfigurationPolicyDialPeerDefinition,
318
- DnsSecurityPolicy: ConfigurationPolicyDnsSecurityDefinition,
319
- FxoPortPolicy: ConfigurationPolicyFxoPortDefinition,
320
- FxsPortPolicy: ConfigurationPolicyFxsPortDefinition,
321
- FxsDidPortPolicy: ConfigurationPolicyFxsDidPortDefinition,
322
- HubAndSpokePolicy: ConfigurationPolicyHubAndSpokeDefinition,
323
- IntrusionPreventionPolicy: ConfigurationPolicyIntrusionPreventionDefinition,
324
- MeshPolicy: ConfigurationPolicyMeshDefinition,
325
- PriIsdnPortPolicy: ConfigurationPolicyPriIsdnPortDefinition,
326
- QoSMapPolicy: ConfigurationPolicyQoSMapDefinition,
327
- RewritePolicy: ConfigurationPolicyRewriteRuleDefinition,
328
- RoutePolicy: ConfigurationPolicyRouteDefinition,
329
- RuleSet: ConfigurationPolicyRuleSetDefinition,
330
- SecurityGroup: ConfigurationPolicySecurityGroupDefinition,
331
- SslDecryptionPolicy: ConfigurationSslDecryptionDefinition,
332
- SslDecryptionUtdProfilePolicy: ConfigurationSslDecryptionUtdProfileDefinition,
333
- SrstPhoneProfilePolicy: ConfigurationPolicySrstPhoneProfileDefinition,
334
- TrafficDataPolicy: ConfigurationPolicyDataDefinition,
335
- UrlFilteringPolicy: ConfigurationPolicyUrlFilteringDefinition,
336
- VPNMembershipPolicy: ConfigurationPolicyVPNMembershipGroupDefinition,
337
- VPNQoSMapPolicy: ConfigurationPolicyVPNQoSMapDefinition,
338
- ZoneBasedFWPolicy: ConfigurationPolicyZoneBasedFirewallDefinition,
339
- }
340
-
341
-
342
- class CentralizedPolicyAPI:
343
- def __init__(self, session: ManagerSession):
344
- self._session = session
345
- self._endpoints = ConfigurationVSmartTemplatePolicy(session)
346
-
347
- def activate(self, id: UUID) -> Task:
348
- task_id = self._endpoints.activate_policy(id).id
349
- return Task(self._session, task_id)
350
-
351
- def deactivate(self, id: UUID) -> Task:
352
- task_id = self._endpoints.deactivate_policy(id).id
353
- return Task(self._session, task_id)
354
-
355
- def create(self, policy: CentralizedPolicy) -> UUID:
356
- return self._endpoints.create_vsmart_template(policy).policy_id
357
-
358
- def edit(self, policy: CentralizedPolicyEditPayload, lock_checks: bool = True) -> None:
359
- if lock_checks:
360
- self._endpoints.edit_vsmart_template(policy.policy_id, policy)
361
- self._endpoints.edit_template_without_lock_checks(policy.policy_id, policy)
362
-
363
- def delete(self, id: UUID) -> None:
364
- self._endpoints.delete_vsmart_template(id)
365
-
366
- @overload
367
- def get(self) -> DataSequence[CentralizedPolicyInfo]:
368
- ...
369
-
370
- @overload
371
- def get(self, id: UUID) -> CentralizedPolicy:
372
- ...
373
-
374
- def get(self, id: Optional[UUID] = None) -> Any:
375
- if id is not None:
376
- return self._endpoints.get_template_by_policy_id(id)
377
- return self._endpoints.generate_vsmart_policy_template_list()
378
-
379
- def check_vsmart_connectivity(self) -> DataSequence[VSmartConnectivityStatus]:
380
- return self._endpoints.check_vsmart_connectivity_status()
381
-
382
-
383
- class LocalizedPolicyAPI:
384
- def __init__(self, session: ManagerSession):
385
- self._session = session
386
- self._endpoints = ConfigurationVEdgeTemplatePolicy(session)
387
-
388
- def create(self, policy: LocalizedPolicy) -> UUID:
389
- return self._endpoints.create_vedge_template(policy).policy_id
390
-
391
- def edit(self, id: UUID, policy: LocalizedPolicy) -> LocalizedPolicyEditResponse:
392
- return self._endpoints.edit_vedge_template(id, policy)
393
-
394
- def delete(self, id: UUID) -> None:
395
- self._endpoints.delete_vedge_template(id)
396
-
397
- @overload
398
- def get(self) -> DataSequence[LocalizedPolicyInfo]:
399
- ...
400
-
401
- @overload
402
- def get(self, id: UUID) -> LocalizedPolicy:
403
- ...
404
-
405
- def get(self, id: Optional[UUID] = None) -> Any:
406
- if id is not None:
407
- return self._endpoints.get_vedge_template(id)
408
- return self._endpoints.generate_policy_template_list()
409
-
410
- def list_devices(self, id: Optional[UUID] = None) -> DataSequence[LocalizedPolicyDeviceInfo]:
411
- if id is not None:
412
- return self._endpoints.get_device_list_by_policy(id)
413
- return self._endpoints.get_vedge_policy_device_list()
414
-
415
- def preview(self, id: UUID) -> str:
416
- return self._endpoints.preview_by_id(id).preview
417
-
418
-
419
- class SecurityPolicyAPI:
420
- def __init__(self, session: ManagerSession):
421
- self._session = session
422
- self._endpoints = ConfigurationSecurityTemplatePolicy(session)
423
-
424
- def create(self, policy: AnySecurityPolicy) -> UUID:
425
- # POST does not return anything! we need to list all after creation and find by name to get id
426
- self._endpoints.create_security_template(policy)
427
- policy_infos = [
428
- info
429
- for info in self._endpoints.generate_security_template_list().root
430
- if info.policy_name == policy.policy_name
431
- ]
432
- assert len(policy_infos) == 1
433
- return policy_infos[0].policy_id
434
-
435
- def edit(self, id: UUID, policy: AnySecurityPolicy) -> SecurityPolicyEditResponse:
436
- return self._endpoints.edit_security_template(id, policy)
437
-
438
- def delete(self, id: UUID) -> None:
439
- self._endpoints.delete_security_template(id)
440
-
441
- @overload
442
- def get(self) -> AnySecurityPolicyInfoList:
443
- ...
444
-
445
- @overload
446
- def get(self, id: UUID) -> AnySecurityPolicy:
447
- ...
448
-
449
- def get(self, id: Optional[UUID] = None) -> Any:
450
- if id is not None:
451
- return self._endpoints.get_security_template(id).root
452
- return self._endpoints.generate_security_template_list()
453
-
454
-
455
- class VoicePolicyAPI:
456
- def __init__(self, session: ManagerSession):
457
- self._session = session
458
- self._endpoints = ConfigurationVoiceTemplatePolicy(session)
459
-
460
- def create(self, policy: VoicePolicy) -> None:
461
- self._endpoints.create_voice_template(policy)
462
-
463
- def edit(self, id: UUID, policy: VoicePolicy) -> VoicePolicyEditResponse:
464
- return self._endpoints.edit_voice_template(id, policy)
465
-
466
- def delete(self, id: UUID) -> None:
467
- self._endpoints.delete_voice_template(id)
468
-
469
- @overload
470
- def get(self) -> DataSequence[VoicePolicyInfo]:
471
- ...
472
-
473
- @overload
474
- def get(self, id: UUID) -> VoicePolicy:
475
- ...
476
-
477
- def get(self, id: Optional[UUID] = None) -> Any:
478
- if id is not None:
479
- return self._endpoints.get_voice_template(id)
480
- return self._endpoints.generate_voice_template_list()
481
-
482
-
483
- class PolicyListsAPI:
484
- def __init__(self, session: ManagerSession):
485
- self._session = session
486
-
487
- def __get_list_endpoints_instance(self, payload_type: type) -> PolicyListEndpoints:
488
- endpoints_class = POLICY_LIST_ENDPOINTS_MAP.get(payload_type)
489
- if endpoints_class is None:
490
- raise TypeError(f"Unsupported policy list type: {payload_type}")
491
- return endpoints_class(self._session)
492
-
493
- def create(self, policy_list: AnyPolicyList) -> UUID:
494
- endpoints = self.__get_list_endpoints_instance(type(policy_list))
495
- return endpoints.create_policy_list(payload=policy_list).list_id
496
-
497
- def edit(self, id: UUID, policy_list: AnyPolicyList) -> None:
498
- endpoints = self.__get_list_endpoints_instance(type(policy_list))
499
- endpoints.edit_policy_list(id=id, payload=policy_list)
500
-
501
- def delete(self, type: Type[AnyPolicyList], id: UUID) -> None:
502
- endpoints = self.__get_list_endpoints_instance(type)
503
- endpoints.delete_policy_list(id=id)
504
-
505
- @overload
506
- def get(self, type: Type[AppList]) -> DataSequence[AppListInfo]:
507
- ...
508
-
509
- @overload
510
- def get(self, type: Type[AppProbeClassList]) -> DataSequence[AppProbeClassListInfo]:
511
- ...
512
-
513
- @overload
514
- def get(self, type: Type[ASPathList]) -> DataSequence[ASPathListInfo]:
515
- ...
516
-
517
- @overload
518
- def get(self, type: Type[ClassMapList]) -> DataSequence[ClassMapListInfo]:
519
- ...
520
-
521
- @overload
522
- def get(self, type: Type[ColorList]) -> DataSequence[ColorListInfo]:
523
- ...
524
-
525
- @overload
526
- def get(self, type: Type[CommunityList]) -> DataSequence[CommunityListInfo]:
527
- ...
528
-
529
- @overload
530
- def get(self, type: Type[DataIPv6PrefixList]) -> DataSequence[DataIPv6PrefixListInfo]:
531
- ...
532
-
533
- @overload
534
- def get(self, type: Type[DataPrefixList]) -> DataSequence[DataPrefixListInfo]:
535
- ...
536
-
537
- @overload
538
- def get(self, type: Type[ExpandedCommunityList]) -> DataSequence[ExpandedCommunityListInfo]:
539
- ...
540
-
541
- @overload
542
- def get(self, type: Type[ExtendedCommunityList]) -> DataSequence[ExtendedCommunityListInfo]:
543
- ...
544
-
545
- @overload
546
- def get(self, type: Type[FaxProtocolList]) -> DataSequence[FaxProtocolListInfo]:
547
- ...
548
-
549
- @overload
550
- def get(self, type: Type[FQDNList]) -> DataSequence[FQDNListInfo]:
551
- ...
552
-
553
- @overload
554
- def get(self, type: Type[GeoLocationList]) -> DataSequence[GeoLocationListInfo]:
555
- ...
556
-
557
- @overload
558
- def get(self, type: Type[IPSSignatureList]) -> DataSequence[IPSSignatureListInfo]:
559
- ...
560
-
561
- @overload
562
- def get(self, type: Type[IPv6PrefixList]) -> DataSequence[IPv6PrefixListInfo]:
563
- ...
564
-
565
- @overload
566
- def get(self, type: Type[LocalAppList]) -> DataSequence[LocalAppListInfo]:
567
- ...
568
-
569
- @overload
570
- def get(self, type: Type[LocalDomainList]) -> DataSequence[LocalDomainListInfo]:
571
- ...
572
-
573
- @overload
574
- def get(self, type: Type[MediaProfileList]) -> DataSequence[MediaProfileListInfo]:
575
- ...
576
-
577
- @overload
578
- def get(self, type: Type[ModemPassThroughList]) -> DataSequence[ModemPassThroughListInfo]:
579
- ...
580
-
581
- @overload
582
- def get(self, type: Type[MirrorList]) -> DataSequence[MirrorListInfo]:
583
- ...
584
-
585
- @overload
586
- def get(self, type: Type[PolicerList]) -> DataSequence[PolicerListInfo]:
587
- ...
588
-
589
- @overload
590
- def get(self, type: Type[PortList]) -> DataSequence[PortListInfo]:
591
- ...
592
-
593
- @overload
594
- def get(self, type: Type[PreferredColorGroupList]) -> DataSequence[PreferredColorGroupListInfo]:
595
- ...
596
-
597
- @overload
598
- def get(self, type: Type[PrefixList]) -> DataSequence[PrefixListInfo]:
599
- ...
600
-
601
- @overload
602
- def get(self, type: Type[ProtocolNameList]) -> DataSequence[ProtocolNameListInfo]:
603
- ...
604
-
605
- @overload
606
- def get(self, type: Type[RegionList]) -> DataSequence[RegionListInfo]:
607
- ...
608
-
609
- @overload
610
- def get(self, type: Type[SiteList]) -> DataSequence[SiteListInfo]:
611
- ...
612
-
613
- @overload
614
- def get(self, type: Type[SLAClassList]) -> DataSequence[SLAClassListInfo]:
615
- ...
616
-
617
- @overload
618
- def get(self, type: Type[SupervisoryDisconnectList]) -> DataSequence[SupervisoryDisconnectListInfo]:
619
- ...
620
-
621
- @overload
622
- def get(self, type: Type[ThreatGridApiKeyList]) -> DataSequence[ThreatGridApiKeyListInfo]:
623
- ...
624
-
625
- @overload
626
- def get(self, type: Type[TLOCList]) -> DataSequence[TLOCListInfo]:
627
- ...
628
-
629
- @overload
630
- def get(self, type: Type[TranslationProfileList]) -> DataSequence[TranslationProfileListInfo]:
631
- ...
632
-
633
- @overload
634
- def get(self, type: Type[TranslationRulesList]) -> DataSequence[TranslationRulesListInfo]:
635
- ...
636
-
637
- @overload
638
- def get(self, type: Type[TrunkGroupList]) -> DataSequence[TrunkGroupListInfo]:
639
- ...
640
-
641
- @overload
642
- def get(self, type: Type[UmbrellaDataList]) -> DataSequence[UmbrellaDataListInfo]:
643
- ...
644
-
645
- @overload
646
- def get(self, type: Type[URLBlockList]) -> DataSequence[URLBlockListInfo]:
647
- ...
648
-
649
- @overload
650
- def get(self, type: Type[URLAllowList]) -> DataSequence[URLAllowListInfo]:
651
- ...
652
-
653
- @overload
654
- def get(self, type: Type[VPNList]) -> DataSequence[VPNListInfo]:
655
- ...
656
-
657
- @overload
658
- def get(self, type: Type[ZoneList]) -> DataSequence[ZoneListInfo]:
659
- ...
660
-
661
- @overload
662
- def get(self, type: Type[ScalableGroupTagList]) -> DataSequence[ScalableGroupTagListInfo]:
663
- ...
664
-
665
- @overload
666
- def get(self, type: Type[IdentityList]) -> DataSequence[IdentityListInfo]:
667
- ...
668
-
669
- # get by id
670
-
671
- @overload
672
- def get(self, type: Type[AppList], id: UUID) -> AppListInfo:
673
- ...
674
-
675
- @overload
676
- def get(self, type: Type[AppProbeClassList], id: UUID) -> AppProbeClassListInfo:
677
- ...
678
-
679
- @overload
680
- def get(self, type: Type[ASPathList], id: UUID) -> ASPathListInfo:
681
- ...
682
-
683
- @overload
684
- def get(self, type: Type[ClassMapList], id: UUID) -> ClassMapListInfo:
685
- ...
686
-
687
- @overload
688
- def get(self, type: Type[ColorList], id: UUID) -> ColorListInfo:
689
- ...
690
-
691
- @overload
692
- def get(self, type: Type[CommunityList], id: UUID) -> CommunityListInfo:
693
- ...
694
-
695
- @overload
696
- def get(self, type: Type[DataIPv6PrefixList], id: UUID) -> DataIPv6PrefixListInfo:
697
- ...
698
-
699
- @overload
700
- def get(self, type: Type[DataPrefixList], id: UUID) -> DataPrefixListInfo:
701
- ...
702
-
703
- @overload
704
- def get(self, type: Type[ExpandedCommunityList], id: UUID) -> ExpandedCommunityListInfo:
705
- ...
706
-
707
- @overload
708
- def get(self, type: Type[ExtendedCommunityList], id: UUID) -> ExtendedCommunityListInfo:
709
- ...
710
-
711
- @overload
712
- def get(self, type: Type[FaxProtocolList], id: UUID) -> FaxProtocolListInfo:
713
- ...
714
-
715
- @overload
716
- def get(self, type: Type[FQDNList], id: UUID) -> FQDNListInfo:
717
- ...
718
-
719
- @overload
720
- def get(self, type: Type[GeoLocationList], id: UUID) -> GeoLocationListInfo:
721
- ...
722
-
723
- @overload
724
- def get(self, type: Type[IPSSignatureList], id: UUID) -> IPSSignatureListInfo:
725
- ...
726
-
727
- @overload
728
- def get(self, type: Type[IPv6PrefixList], id: UUID) -> IPv6PrefixListInfo:
729
- ...
730
-
731
- @overload
732
- def get(self, type: Type[LocalAppList], id: UUID) -> LocalAppListInfo:
733
- ...
734
-
735
- @overload
736
- def get(self, type: Type[LocalDomainList], id: UUID) -> LocalDomainListInfo:
737
- ...
738
-
739
- @overload
740
- def get(self, type: Type[MediaProfileList], id: UUID) -> MediaProfileListInfo:
741
- ...
742
-
743
- @overload
744
- def get(self, type: Type[MirrorList], id: UUID) -> MirrorListInfo:
745
- ...
746
-
747
- @overload
748
- def get(self, type: Type[ModemPassThroughList], id: UUID) -> ModemPassThroughListInfo:
749
- ...
750
-
751
- @overload
752
- def get(self, type: Type[PolicerList], id: UUID) -> PolicerListInfo:
753
- ...
754
-
755
- @overload
756
- def get(self, type: Type[PortList], id: UUID) -> PortListInfo:
757
- ...
758
-
759
- @overload
760
- def get(self, type: Type[PreferredColorGroupList], id: UUID) -> PreferredColorGroupListInfo:
761
- ...
762
-
763
- @overload
764
- def get(self, type: Type[PrefixList], id: UUID) -> PrefixListInfo:
765
- ...
766
-
767
- @overload
768
- def get(self, type: Type[ProtocolNameList], id: UUID) -> ProtocolNameListInfo:
769
- ...
770
-
771
- @overload
772
- def get(self, type: Type[RegionList], id: UUID) -> RegionListInfo:
773
- ...
774
-
775
- @overload
776
- def get(self, type: Type[SiteList], id: UUID) -> SiteListInfo:
777
- ...
778
-
779
- @overload
780
- def get(self, type: Type[SLAClassList], id: UUID) -> SLAClassListInfo:
781
- ...
782
-
783
- @overload
784
- def get(self, type: Type[SupervisoryDisconnectList], id: UUID) -> SupervisoryDisconnectListInfo:
785
- ...
786
-
787
- @overload
788
- def get(self, type: Type[ThreatGridApiKeyList], id: UUID) -> ThreatGridApiKeyListInfo:
789
- ...
790
-
791
- @overload
792
- def get(self, type: Type[TLOCList], id: UUID) -> TLOCListInfo:
793
- ...
794
-
795
- @overload
796
- def get(self, type: Type[TranslationProfileList], id: UUID) -> TranslationProfileListInfo:
797
- ...
798
-
799
- @overload
800
- def get(self, type: Type[TranslationRulesList], id: UUID) -> TranslationRulesListInfo:
801
- ...
802
-
803
- @overload
804
- def get(self, type: Type[TrunkGroupList], id: UUID) -> TrunkGroupListInfo:
805
- ...
806
-
807
- @overload
808
- def get(self, type: Type[UmbrellaDataList], id: UUID) -> UmbrellaDataListInfo:
809
- ...
810
-
811
- @overload
812
- def get(self, type: Type[URLBlockList], id: UUID) -> URLBlockListInfo:
813
- ...
814
-
815
- @overload
816
- def get(self, type: Type[URLAllowList], id: UUID) -> URLAllowListInfo:
817
- ...
818
-
819
- @overload
820
- def get(self, type: Type[VPNList], id: UUID) -> VPNListInfo:
821
- ...
822
-
823
- @overload
824
- def get(self, type: Type[ZoneList], id: UUID) -> ZoneListInfo:
825
- ...
826
-
827
- @overload
828
- def get(self, type: Type[ScalableGroupTagList], id: UUID) -> ScalableGroupTagListInfo:
829
- ...
830
-
831
- @overload
832
- def get(self, type: Type[IdentityList], id: UUID) -> IdentityListInfo:
833
- ...
834
-
835
- def get(self, type: Type[AnyPolicyList], id: Optional[UUID] = None) -> Any:
836
- endpoints = self.__get_list_endpoints_instance(type)
837
- if id is not None:
838
- return endpoints.get_lists_by_id(id=id)
839
- return endpoints.get_policy_lists()
840
-
841
- def get_all(self) -> List[AnyPolicyList]:
842
- infos: List[AnyPolicyList] = []
843
- for list_type, _ in POLICY_LIST_ENDPOINTS_MAP.items():
844
- infos.extend(self.get(list_type))
845
- return infos
846
-
847
-
848
- class PolicyDefinitionsAPI:
849
- def __init__(self, session: ManagerSession):
850
- self._session = session
851
-
852
- def __get_definition_endpoints_instance(self, payload_type: type) -> PolicyDefinitionEndpoints:
853
- endpoints_class = POLICY_DEFINITION_ENDPOINTS_MAP.get(payload_type)
854
- if endpoints_class is None:
855
- raise TypeError(f"Unsupported policy definition type: {payload_type}")
856
- return endpoints_class(self._session)
857
-
858
- def create(self, policy_definition: AnyPolicyDefinition) -> UUID:
859
- endpoints = self.__get_definition_endpoints_instance(type(policy_definition))
860
- return endpoints.create_policy_definition(payload=policy_definition).definition_id
861
-
862
- def edit(self, id: UUID, policy_definition: AnyPolicyDefinition) -> PolicyDefinitionEditResponse:
863
- endpoints = self.__get_definition_endpoints_instance(type(policy_definition))
864
- return endpoints.edit_policy_definition(id=id, payload=policy_definition)
865
-
866
- def delete(self, type: Type[AnyPolicyDefinition], id: UUID) -> None:
867
- endpoints = self.__get_definition_endpoints_instance(type)
868
- endpoints.delete_policy_definition(id=id)
869
-
870
- @overload
871
- def get(self, type: Type[IntrusionPreventionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
872
- ...
873
-
874
- @overload
875
- def get(self, type: Type[TrafficDataPolicy]) -> DataSequence[PolicyDefinitionInfo]:
876
- ...
877
-
878
- @overload
879
- def get(self, type: Type[UrlFilteringPolicy]) -> DataSequence[PolicyDefinitionInfo]:
880
- ...
881
-
882
- @overload
883
- def get(self, type: Type[AdvancedInspectionProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
884
- ...
885
-
886
- @overload
887
- def get(self, type: Type[AdvancedMalwareProtectionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
888
- ...
889
-
890
- @overload
891
- def get(self, type: Type[CflowdPolicy]) -> DataSequence[PolicyDefinitionInfo]:
892
- ...
893
-
894
- @overload
895
- def get(self, type: Type[DnsSecurityPolicy]) -> DataSequence[PolicyDefinitionInfo]:
896
- ...
897
-
898
- @overload
899
- def get(self, type: Type[RoutePolicy]) -> DataSequence[PolicyDefinitionInfo]:
900
- ...
901
-
902
- @overload
903
- def get(self, type: Type[RuleSet]) -> DataSequence[PolicyDefinitionInfo]:
904
- ...
905
-
906
- @overload
907
- def get(self, type: Type[SecurityGroup]) -> DataSequence[PolicyDefinitionInfo]:
908
- ...
909
-
910
- @overload
911
- def get(self, type: Type[SslDecryptionPolicy]) -> DataSequence[PolicyDefinitionInfo]:
912
- ...
913
-
914
- @overload
915
- def get(self, type: Type[SslDecryptionUtdProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
916
- ...
917
-
918
- @overload
919
- def get(self, type: Type[ZoneBasedFWPolicy]) -> DataSequence[PolicyDefinitionInfo]:
920
- ...
921
-
922
- @overload
923
- def get(self, type: Type[QoSMapPolicy]) -> DataSequence[PolicyDefinitionInfo]:
924
- ...
925
-
926
- @overload
927
- def get(self, type: Type[RewritePolicy]) -> DataSequence[PolicyDefinitionInfo]:
928
- ...
929
-
930
- @overload
931
- def get(self, type: Type[ControlPolicy]) -> DataSequence[PolicyDefinitionInfo]:
932
- ...
933
-
934
- @overload
935
- def get(self, type: Type[VPNMembershipPolicy]) -> DataSequence[PolicyDefinitionInfo]:
936
- ...
937
-
938
- @overload
939
- def get(self, type: Type[VPNQoSMapPolicy]) -> DataSequence[PolicyDefinitionInfo]:
940
- ...
941
-
942
- @overload
943
- def get(self, type: Type[HubAndSpokePolicy]) -> DataSequence[PolicyDefinitionInfo]:
944
- ...
945
-
946
- @overload
947
- def get(self, type: Type[MeshPolicy]) -> DataSequence[PolicyDefinitionInfo]:
948
- ...
949
-
950
- @overload
951
- def get(self, type: Type[AclPolicy]) -> DataSequence[PolicyDefinitionInfo]:
952
- ...
953
-
954
- @overload
955
- def get(self, type: Type[AclIPv6Policy]) -> DataSequence[PolicyDefinitionInfo]:
956
- ...
957
-
958
- @overload
959
- def get(self, type: Type[DeviceAccessPolicy]) -> DataSequence[PolicyDefinitionInfo]:
960
- ...
961
-
962
- @overload
963
- def get(self, type: Type[DeviceAccessIPv6Policy]) -> DataSequence[PolicyDefinitionInfo]:
964
- ...
965
-
966
- @overload
967
- def get(self, type: Type[AppRoutePolicy]) -> DataSequence[PolicyDefinitionInfo]:
968
- ...
969
-
970
- @overload
971
- def get(self, type: Type[FxoPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
972
- ...
973
-
974
- @overload
975
- def get(self, type: Type[FxsPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
976
- ...
977
-
978
- @overload
979
- def get(self, type: Type[FxsDidPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
980
- ...
981
-
982
- @overload
983
- def get(self, type: Type[DialPeerPolicy]) -> DataSequence[PolicyDefinitionInfo]:
984
- ...
985
-
986
- @overload
987
- def get(self, type: Type[PriIsdnPortPolicy]) -> DataSequence[PolicyDefinitionInfo]:
988
- ...
989
-
990
- @overload
991
- def get(self, type: Type[SrstPhoneProfilePolicy]) -> DataSequence[PolicyDefinitionInfo]:
992
- ...
993
-
994
- # get by id
995
- @overload
996
- def get(self, type: Type[IntrusionPreventionPolicy], id: UUID) -> IntrusionPreventionPolicyGetResponse:
997
- ...
998
-
999
- @overload
1000
- def get(self, type: Type[TrafficDataPolicy], id: UUID) -> TrafficDataPolicyGetResponse:
1001
- ...
1002
-
1003
- @overload
1004
- def get(self, type: Type[UrlFilteringPolicy], id: UUID) -> UrlFilteringPolicyGetResponse:
1005
- ...
1006
-
1007
- @overload
1008
- def get(self, type: Type[AdvancedInspectionProfilePolicy], id: UUID) -> AdvancedInspectionProfilePolicyGetResponse:
1009
- ...
1010
-
1011
- @overload
1012
- def get(self, type: Type[AdvancedMalwareProtectionPolicy], id: UUID) -> AdvancedMalwareProtectionPolicyGetResponse:
1013
- ...
1014
-
1015
- @overload
1016
- def get(self, type: Type[CflowdPolicy], id: UUID) -> CflowdPolicyGetResponse:
1017
- ...
1018
-
1019
- @overload
1020
- def get(self, type: Type[DnsSecurityPolicy], id: UUID) -> DnsSecurityPolicyGetResponse:
1021
- ...
1022
-
1023
- @overload
1024
- def get(self, type: Type[RoutePolicy], id: UUID) -> RoutePolicyGetResponse:
1025
- ...
1026
-
1027
- @overload
1028
- def get(self, type: Type[RuleSet], id: UUID) -> RuleSetGetResponse:
1029
- ...
1030
-
1031
- @overload
1032
- def get(self, type: Type[SecurityGroup], id: UUID) -> SecurityGroupGetResponse:
1033
- ...
1034
-
1035
- @overload
1036
- def get(self, type: Type[SslDecryptionPolicy], id: UUID) -> SslDecryptionPolicyGetResponse:
1037
- ...
1038
-
1039
- @overload
1040
- def get(self, type: Type[SslDecryptionUtdProfilePolicy], id: UUID) -> SslDecryptionUtdProfilePolicyGetResponse:
1041
- ...
1042
-
1043
- @overload
1044
- def get(self, type: Type[ZoneBasedFWPolicy], id: UUID) -> ZoneBasedFWPolicyGetResponse:
1045
- ...
1046
-
1047
- @overload
1048
- def get(self, type: Type[QoSMapPolicy], id: UUID) -> QoSMapPolicyGetResponse:
1049
- ...
1050
-
1051
- @overload
1052
- def get(self, type: Type[RewritePolicy], id: UUID) -> RewritePolicyGetResponse:
1053
- ...
1054
-
1055
- @overload
1056
- def get(self, type: Type[ControlPolicy], id: UUID) -> ControlPolicyGetResponse:
1057
- ...
1058
-
1059
- @overload
1060
- def get(self, type: Type[VPNMembershipPolicy], id: UUID) -> VPNMembershipPolicyGetResponse:
1061
- ...
1062
-
1063
- @overload
1064
- def get(self, type: Type[VPNQoSMapPolicy], id: UUID) -> VPNMembershipPolicyGetResponse:
1065
- ...
1066
-
1067
- @overload
1068
- def get(self, type: Type[HubAndSpokePolicy], id: UUID) -> HubAndSpokePolicyGetResponse:
1069
- ...
1070
-
1071
- @overload
1072
- def get(self, type: Type[MeshPolicy], id: UUID) -> MeshPolicyGetResponse:
1073
- ...
1074
-
1075
- @overload
1076
- def get(self, type: Type[AclPolicy], id: UUID) -> AclPolicyGetResponse:
1077
- ...
1078
-
1079
- @overload
1080
- def get(self, type: Type[AclIPv6Policy], id: UUID) -> AclIPv6PolicyGetResponse:
1081
- ...
1082
-
1083
- @overload
1084
- def get(self, type: Type[DeviceAccessPolicy], id: UUID) -> DeviceAccessPolicyGetResponse:
1085
- ...
1086
-
1087
- @overload
1088
- def get(self, type: Type[DeviceAccessIPv6Policy], id: UUID) -> DeviceAccessIPv6PolicyGetResponse:
1089
- ...
1090
-
1091
- @overload
1092
- def get(self, type: Type[AppRoutePolicy], id: UUID) -> AppRoutePolicyGetResponse:
1093
- ...
1094
-
1095
- @overload
1096
- def get(self, type: Type[FxoPortPolicy], id: UUID) -> FxoPortPolicyGetResponse:
1097
- ...
1098
-
1099
- @overload
1100
- def get(self, type: Type[FxsPortPolicy], id: UUID) -> FxsPortPolicyGetResponse:
1101
- ...
1102
-
1103
- @overload
1104
- def get(self, type: Type[FxsDidPortPolicy], id: UUID) -> FxsDidPortPolicyGetResponse:
1105
- ...
1106
-
1107
- @overload
1108
- def get(self, type: Type[DialPeerPolicy], id: UUID) -> DialPeerPolicyGetResponse:
1109
- ...
1110
-
1111
- @overload
1112
- def get(self, type: Type[PriIsdnPortPolicy], id: UUID) -> PriIsdnPortPolicyGetResponse:
1113
- ...
1114
-
1115
- @overload
1116
- def get(self, type: Type[SrstPhoneProfilePolicy], id: UUID) -> SrstPhoneProfilePolicyGetResponse:
1117
- ...
1118
-
1119
- def get(self, type: Type[AnyPolicyDefinition], id: Optional[UUID] = None) -> Any:
1120
- endpoints = self.__get_definition_endpoints_instance(type)
1121
- if id is not None:
1122
- return endpoints.get_policy_definition(id=id)
1123
- return endpoints.get_definitions()
1124
-
1125
- def get_all(self) -> List[Tuple[type, PolicyDefinitionInfo]]:
1126
- all_items: List[Tuple[type, PolicyDefinitionInfo]] = []
1127
- for definition_type, _ in POLICY_DEFINITION_ENDPOINTS_MAP.items():
1128
- all_items.extend([(definition_type, info) for info in self.get(definition_type)])
1129
- return all_items
1130
-
1131
-
1132
- class PolicyAPI:
1133
- """This is exposing so called 'UX 1.0' API"""
1134
-
1135
- def __init__(self, session: ManagerSession):
1136
- self._session = session
1137
- self.centralized = CentralizedPolicyAPI(session)
1138
- self.definitions = PolicyDefinitionsAPI(session)
1139
- self.lists = PolicyListsAPI(session)
1140
- self.localized = LocalizedPolicyAPI(session)
1141
- self.security = SecurityPolicyAPI(session)
1142
- self.voice = VoicePolicyAPI(session)
1143
-
1144
- def delete_any(self, _type: Any, id: UUID) -> None:
1145
- if issubclass(_type, PolicyListBase):
1146
- self.lists.delete(_type, id)
1147
- elif issubclass(_type, PolicyDefinitionBase):
1148
- self.definitions.delete(_type, id)
1149
- elif _type == CentralizedPolicy:
1150
- self.centralized.delete(id)
1151
- elif _type == LocalizedPolicy:
1152
- self.localized.delete(id)
1153
- elif _type in [SecurityPolicy, UnifiedSecurityPolicy]:
1154
- self.security.delete(id)
1155
- else:
1156
- raise TypeError(f"Cannot find API method to delete item type: {_type}, {id}")
1157
-
1158
- def get_protocol_map(self) -> Dict[str, ApplicationProtocol]:
1159
- result = {}
1160
- protocol_map_list = self._session.endpoints.misc.get_application_protocols()
1161
- for protocol_map in protocol_map_list:
1162
- result.update(protocol_map.root)
1163
- return result