catalystwan 0.40.1.dev6__py3-none-any.whl → 2.0.0a0__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 (630) 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} +29 -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 +203 -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} +38 -85
  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.0a0.dist-info/METADATA +327 -0
  19. catalystwan-2.0.0a0.dist-info/RECORD +24 -0
  20. {catalystwan-0.40.1.dev6.dist-info → catalystwan-2.0.0a0.dist-info}/WHEEL +2 -1
  21. catalystwan-2.0.0a0.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 -181
  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 -137
  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 -749
  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 -749
  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 -215
  267. catalystwan/models/configuration/feature_profile/sdwan/application_priority/policy_settings.py +0 -31
  268. catalystwan/models/configuration/feature_profile/sdwan/application_priority/qos_policy.py +0 -102
  269. catalystwan/models/configuration/feature_profile/sdwan/application_priority/traffic_policy.py +0 -1054
  270. catalystwan/models/configuration/feature_profile/sdwan/cli/__init__.py +0 -23
  271. catalystwan/models/configuration/feature_profile/sdwan/cli/config.py +0 -18
  272. catalystwan/models/configuration/feature_profile/sdwan/cli/full_config.py +0 -15
  273. catalystwan/models/configuration/feature_profile/sdwan/dns_security/__init__.py +0 -13
  274. catalystwan/models/configuration/feature_profile/sdwan/dns_security/dns.py +0 -107
  275. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/__init__.py +0 -23
  276. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/ngfirewall.py +0 -915
  277. catalystwan/models/configuration/feature_profile/sdwan/embedded_security/policy.py +0 -171
  278. catalystwan/models/configuration/feature_profile/sdwan/other/__init__.py +0 -23
  279. catalystwan/models/configuration/feature_profile/sdwan/other/thousandeyes.py +0 -147
  280. catalystwan/models/configuration/feature_profile/sdwan/other/ucse.py +0 -110
  281. catalystwan/models/configuration/feature_profile/sdwan/policy_object/__init__.py +0 -175
  282. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/app_probe.py +0 -56
  283. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/application_list.py +0 -31
  284. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/as_path.py +0 -22
  285. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/color_list.py +0 -21
  286. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/data_prefix.py +0 -35
  287. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/expanded_community_list.py +0 -25
  288. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/extended_community.py +0 -34
  289. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/fowarding_class.py +0 -26
  290. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_data_prefix.py +0 -28
  291. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/ipv6_prefix_list.py +0 -38
  292. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/mirror.py +0 -27
  293. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/policer.py +0 -42
  294. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefered_group_color.py +0 -83
  295. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/prefix_list.py +0 -28
  296. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/sla_class.py +0 -130
  297. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/standard_community.py +0 -30
  298. catalystwan/models/configuration/feature_profile/sdwan/policy_object/policy/tloc_list.py +0 -44
  299. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/aip.py +0 -64
  300. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/amp.py +0 -79
  301. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/application_list.py +0 -31
  302. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/data_prefix.py +0 -22
  303. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/fqdn.py +0 -24
  304. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/geolocation_list.py +0 -32
  305. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/identity.py +0 -30
  306. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/intrusion_prevention.py +0 -58
  307. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ips_signature.py +0 -44
  308. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/local_domain.py +0 -24
  309. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/protocol_list.py +0 -21
  310. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/scalable_group_tag.py +0 -26
  311. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/security_port.py +0 -45
  312. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption.py +0 -126
  313. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/ssl_decryption_profile.py +0 -165
  314. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url.py +0 -32
  315. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/url_filtering.py +0 -148
  316. catalystwan/models/configuration/feature_profile/sdwan/policy_object/security/zone.py +0 -44
  317. catalystwan/models/configuration/feature_profile/sdwan/routing/__init__.py +0 -26
  318. catalystwan/models/configuration/feature_profile/sdwan/routing/bgp.py +0 -594
  319. catalystwan/models/configuration/feature_profile/sdwan/routing/ospf.py +0 -170
  320. catalystwan/models/configuration/feature_profile/sdwan/routing/ospfv3.py +0 -298
  321. catalystwan/models/configuration/feature_profile/sdwan/service/__init__.py +0 -85
  322. catalystwan/models/configuration/feature_profile/sdwan/service/appqoe.py +0 -270
  323. catalystwan/models/configuration/feature_profile/sdwan/service/dhcp_server.py +0 -127
  324. catalystwan/models/configuration/feature_profile/sdwan/service/eigrp.py +0 -103
  325. catalystwan/models/configuration/feature_profile/sdwan/service/lan/common.py +0 -33
  326. catalystwan/models/configuration/feature_profile/sdwan/service/lan/ethernet.py +0 -275
  327. catalystwan/models/configuration/feature_profile/sdwan/service/lan/gre.py +0 -136
  328. catalystwan/models/configuration/feature_profile/sdwan/service/lan/ipsec.py +0 -119
  329. catalystwan/models/configuration/feature_profile/sdwan/service/lan/multilink.py +0 -101
  330. catalystwan/models/configuration/feature_profile/sdwan/service/lan/svi.py +0 -172
  331. catalystwan/models/configuration/feature_profile/sdwan/service/lan/vpn.py +0 -624
  332. catalystwan/models/configuration/feature_profile/sdwan/service/multicast.py +0 -242
  333. catalystwan/models/configuration/feature_profile/sdwan/service/object_tracker.py +0 -84
  334. catalystwan/models/configuration/feature_profile/sdwan/service/route_policy.py +0 -419
  335. catalystwan/models/configuration/feature_profile/sdwan/service/service_insertion_attachment.py +0 -184
  336. catalystwan/models/configuration/feature_profile/sdwan/service/switchport.py +0 -112
  337. catalystwan/models/configuration/feature_profile/sdwan/service/tracker.py +0 -92
  338. catalystwan/models/configuration/feature_profile/sdwan/service/wireless_lan.py +0 -216
  339. catalystwan/models/configuration/feature_profile/sdwan/sig_security/__init__.py +0 -19
  340. catalystwan/models/configuration/feature_profile/sdwan/sig_security/sig_security.py +0 -379
  341. catalystwan/models/configuration/feature_profile/sdwan/system/__init__.py +0 -59
  342. catalystwan/models/configuration/feature_profile/sdwan/system/aaa.py +0 -406
  343. catalystwan/models/configuration/feature_profile/sdwan/system/banner.py +0 -30
  344. catalystwan/models/configuration/feature_profile/sdwan/system/basic.py +0 -290
  345. catalystwan/models/configuration/feature_profile/sdwan/system/bfd.py +0 -69
  346. catalystwan/models/configuration/feature_profile/sdwan/system/device_access.py +0 -157
  347. catalystwan/models/configuration/feature_profile/sdwan/system/device_access_ipv6.py +0 -157
  348. catalystwan/models/configuration/feature_profile/sdwan/system/global_parcel.py +0 -149
  349. catalystwan/models/configuration/feature_profile/sdwan/system/logging_parcel.py +0 -162
  350. catalystwan/models/configuration/feature_profile/sdwan/system/mrf.py +0 -75
  351. catalystwan/models/configuration/feature_profile/sdwan/system/ntp.py +0 -103
  352. catalystwan/models/configuration/feature_profile/sdwan/system/omp.py +0 -111
  353. catalystwan/models/configuration/feature_profile/sdwan/system/security.py +0 -179
  354. catalystwan/models/configuration/feature_profile/sdwan/system/snmp.py +0 -173
  355. catalystwan/models/configuration/feature_profile/sdwan/topology/__init__.py +0 -29
  356. catalystwan/models/configuration/feature_profile/sdwan/topology/custom_control.py +0 -425
  357. catalystwan/models/configuration/feature_profile/sdwan/topology/hubspoke.py +0 -60
  358. catalystwan/models/configuration/feature_profile/sdwan/topology/mesh.py +0 -23
  359. catalystwan/models/configuration/feature_profile/sdwan/transport/__init__.py +0 -93
  360. catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_controller.py +0 -58
  361. catalystwan/models/configuration/feature_profile/sdwan/transport/cellular_profile.py +0 -71
  362. catalystwan/models/configuration/feature_profile/sdwan/transport/gps.py +0 -37
  363. catalystwan/models/configuration/feature_profile/sdwan/transport/management/ethernet.py +0 -121
  364. catalystwan/models/configuration/feature_profile/sdwan/transport/t1e1controller.py +0 -124
  365. catalystwan/models/configuration/feature_profile/sdwan/transport/vpn.py +0 -285
  366. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/cellular.py +0 -166
  367. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ethernet.py +0 -281
  368. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/gre.py +0 -46
  369. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/ipsec.py +0 -98
  370. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/multilink.py +0 -219
  371. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/protocol_over.py +0 -405
  372. catalystwan/models/configuration/feature_profile/sdwan/transport/wan/interface/t1e1serial.py +0 -195
  373. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/__init__.py +0 -62
  374. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/analog_interface.py +0 -436
  375. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/call_routing.py +0 -179
  376. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/digital_interface.py +0 -329
  377. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/dsp_farm.py +0 -193
  378. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/media_profile.py +0 -25
  379. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/server_group.py +0 -51
  380. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/srst.py +0 -86
  381. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/supervisory_disconnect.py +0 -68
  382. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_profile.py +0 -42
  383. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/translation_rule.py +0 -31
  384. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/trunk_group.py +0 -26
  385. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_global.py +0 -55
  386. catalystwan/models/configuration/feature_profile/sdwan/uc_voice/voice_tenant.py +0 -40
  387. catalystwan/models/configuration/network_hierarchy/__init__.py +0 -22
  388. catalystwan/models/configuration/network_hierarchy/cflowd.py +0 -120
  389. catalystwan/models/configuration/network_hierarchy/node.py +0 -88
  390. catalystwan/models/configuration/policy_group.py +0 -74
  391. catalystwan/models/configuration/profile_type.py +0 -5
  392. catalystwan/models/configuration/topology_group.py +0 -52
  393. catalystwan/models/device_inventory.py +0 -30
  394. catalystwan/models/feature_profile_parcel.py +0 -15
  395. catalystwan/models/misc/application_protocols.py +0 -29
  396. catalystwan/models/monitoring/security_policy.py +0 -16
  397. catalystwan/models/monitoring/server_info.py +0 -12
  398. catalystwan/models/policy/__init__.py +0 -392
  399. catalystwan/models/policy/centralized.py +0 -265
  400. catalystwan/models/policy/definition/access_control_list.py +0 -193
  401. catalystwan/models/policy/definition/access_control_list_ipv6.py +0 -187
  402. catalystwan/models/policy/definition/aip.py +0 -60
  403. catalystwan/models/policy/definition/amp.py +0 -65
  404. catalystwan/models/policy/definition/app_route.py +0 -246
  405. catalystwan/models/policy/definition/cflowd.py +0 -95
  406. catalystwan/models/policy/definition/control.py +0 -366
  407. catalystwan/models/policy/definition/device_access.py +0 -117
  408. catalystwan/models/policy/definition/device_access_ipv6.py +0 -115
  409. catalystwan/models/policy/definition/dial_peer.py +0 -60
  410. catalystwan/models/policy/definition/dns_security.py +0 -130
  411. catalystwan/models/policy/definition/fxo_port.py +0 -63
  412. catalystwan/models/policy/definition/fxs_did_port.py +0 -58
  413. catalystwan/models/policy/definition/fxs_port.py +0 -56
  414. catalystwan/models/policy/definition/hub_and_spoke.py +0 -87
  415. catalystwan/models/policy/definition/intrusion_prevention.py +0 -55
  416. catalystwan/models/policy/definition/mesh.py +0 -47
  417. catalystwan/models/policy/definition/pri_isdn_port.py +0 -48
  418. catalystwan/models/policy/definition/qos_map.py +0 -111
  419. catalystwan/models/policy/definition/rewrite.py +0 -47
  420. catalystwan/models/policy/definition/route_policy.py +0 -187
  421. catalystwan/models/policy/definition/rule_set.py +0 -270
  422. catalystwan/models/policy/definition/security_group.py +0 -93
  423. catalystwan/models/policy/definition/srst_phone_profile.py +0 -37
  424. catalystwan/models/policy/definition/ssl_decryption.py +0 -209
  425. catalystwan/models/policy/definition/ssl_decryption_utd_profile.py +0 -87
  426. catalystwan/models/policy/definition/traffic_data.py +0 -496
  427. catalystwan/models/policy/definition/url_filtering.py +0 -70
  428. catalystwan/models/policy/definition/vpn_membership.py +0 -42
  429. catalystwan/models/policy/definition/vpn_qos_map.py +0 -46
  430. catalystwan/models/policy/definition/zone_based_firewall.py +0 -301
  431. catalystwan/models/policy/list/app.py +0 -44
  432. catalystwan/models/policy/list/app_probe.py +0 -42
  433. catalystwan/models/policy/list/as_path.py +0 -30
  434. catalystwan/models/policy/list/class_map.py +0 -30
  435. catalystwan/models/policy/list/color.py +0 -28
  436. catalystwan/models/policy/list/communities.py +0 -83
  437. catalystwan/models/policy/list/data_ipv6_prefix.py +0 -30
  438. catalystwan/models/policy/list/data_prefix.py +0 -30
  439. catalystwan/models/policy/list/fax_protocol.py +0 -45
  440. catalystwan/models/policy/list/fqdn.py +0 -24
  441. catalystwan/models/policy/list/geo_location.py +0 -33
  442. catalystwan/models/policy/list/identity.py +0 -29
  443. catalystwan/models/policy/list/ips_signature.py +0 -27
  444. catalystwan/models/policy/list/ipv6_prefix.py +0 -33
  445. catalystwan/models/policy/list/local_app.py +0 -45
  446. catalystwan/models/policy/list/local_domain.py +0 -36
  447. catalystwan/models/policy/list/media_profile.py +0 -44
  448. catalystwan/models/policy/list/mirror.py +0 -27
  449. catalystwan/models/policy/list/modem_pass_through.py +0 -27
  450. catalystwan/models/policy/list/policer.py +0 -39
  451. catalystwan/models/policy/list/port.py +0 -33
  452. catalystwan/models/policy/list/preferred_color_group.py +0 -82
  453. catalystwan/models/policy/list/prefix.py +0 -33
  454. catalystwan/models/policy/list/protocol_name.py +0 -26
  455. catalystwan/models/policy/list/region.py +0 -45
  456. catalystwan/models/policy/list/scalable_group_tag.py +0 -30
  457. catalystwan/models/policy/list/site.py +0 -34
  458. catalystwan/models/policy/list/sla.py +0 -77
  459. catalystwan/models/policy/list/supervisory_disconnect.py +0 -62
  460. catalystwan/models/policy/list/threat_grid_api_key.py +0 -32
  461. catalystwan/models/policy/list/tloc.py +0 -32
  462. catalystwan/models/policy/list/translation_profile.py +0 -32
  463. catalystwan/models/policy/list/translation_rules.py +0 -29
  464. catalystwan/models/policy/list/trunkgroup.py +0 -56
  465. catalystwan/models/policy/list/umbrella_data.py +0 -30
  466. catalystwan/models/policy/list/url.py +0 -39
  467. catalystwan/models/policy/list/vpn.py +0 -40
  468. catalystwan/models/policy/list/zone.py +0 -45
  469. catalystwan/models/policy/localized.py +0 -154
  470. catalystwan/models/policy/policy.py +0 -100
  471. catalystwan/models/policy/policy_definition.py +0 -1624
  472. catalystwan/models/policy/policy_list.py +0 -47
  473. catalystwan/models/policy/security.py +0 -279
  474. catalystwan/models/policy/voice.py +0 -71
  475. catalystwan/models/settings.py +0 -41
  476. catalystwan/models/templates.py +0 -79
  477. catalystwan/models/tenant.py +0 -105
  478. catalystwan/models/url_monitoring.py +0 -28
  479. catalystwan/tests/__init__.py +0 -0
  480. catalystwan/tests/builders/uc_voice.py +0 -85
  481. catalystwan/tests/models/__init__.py +0 -0
  482. catalystwan/tests/templates/__init__.py +0 -0
  483. catalystwan/tests/templates/definitions/__init__.py +0 -0
  484. catalystwan/tests/templates/definitions/aaa_basic.json +0 -96
  485. catalystwan/tests/templates/definitions/aaa_complex.json +0 -464
  486. catalystwan/tests/templates/definitions/basic/__init__.py +0 -0
  487. catalystwan/tests/templates/definitions/basic/alias.json +0 -7
  488. catalystwan/tests/templates/definitions/basic/basic.json +0 -7
  489. catalystwan/tests/templates/definitions/basic/basic_no_value.json +0 -7
  490. catalystwan/tests/templates/definitions/basic/children.json +0 -39
  491. catalystwan/tests/templates/definitions/basic/children_nested.json +0 -72
  492. catalystwan/tests/templates/definitions/basic/children_nested_datapath.json +0 -72
  493. catalystwan/tests/templates/definitions/basic/data_path.json +0 -13
  494. catalystwan/tests/templates/definitions/cisco_aaa.json +0 -178
  495. catalystwan/tests/templates/definitions/cisco_aaa_complex.json +0 -361
  496. catalystwan/tests/templates/definitions/cisco_banner.json +0 -20
  497. catalystwan/tests/templates/definitions/cisco_bfd.json +0 -90
  498. catalystwan/tests/templates/definitions/cisco_logging_complex.json +0 -268
  499. catalystwan/tests/templates/definitions/cisco_ntp_complex.json +0 -143
  500. catalystwan/tests/templates/definitions/cisco_omp_complex.json +0 -175
  501. catalystwan/tests/templates/definitions/cisco_ospf_complex.json +0 -302
  502. catalystwan/tests/templates/definitions/cisco_sig.json +0 -405
  503. catalystwan/tests/templates/definitions/cisco_snmp_complex.json +0 -258
  504. catalystwan/tests/templates/definitions/cisco_system_complex.json +0 -502
  505. catalystwan/tests/templates/definitions/cisco_vpn_basic.json +0 -17
  506. catalystwan/tests/templates/definitions/cisco_vpn_complex.json +0 -1081
  507. catalystwan/tests/templates/definitions/cisco_vpn_interface_complex.json +0 -821
  508. catalystwan/tests/templates/definitions/default_cisco_system.json +0 -184
  509. catalystwan/tests/templates/definitions/omp_vsmart_1.json +0 -26
  510. catalystwan/tests/templates/definitions/omp_vsmart_2.json +0 -48
  511. catalystwan/tests/templates/definitions/omp_vsmart_3.json +0 -71
  512. catalystwan/tests/templates/definitions/omp_vsmart_complex.json +0 -73
  513. catalystwan/tests/templates/definitions/security_vsmart_complex.json +0 -24
  514. catalystwan/tests/templates/definitions/system_vsmart_complex.json +0 -193
  515. catalystwan/tests/templates/definitions/vpn_vsmart_basic.json +0 -17
  516. catalystwan/tests/templates/definitions/vpn_vsmart_complex.json +0 -179
  517. catalystwan/tests/templates/definitions/vpn_vsmart_interface_basic.json +0 -42
  518. catalystwan/tests/templates/definitions/vpn_vsmart_interface_complex.json +0 -208
  519. catalystwan/tests/templates/models/__init__.py +0 -53
  520. catalystwan/tests/templates/models/aaa.py +0 -106
  521. catalystwan/tests/templates/models/cisco_aaa.py +0 -124
  522. catalystwan/tests/templates/models/cisco_banner.py +0 -7
  523. catalystwan/tests/templates/models/cisco_bfd.py +0 -15
  524. catalystwan/tests/templates/models/cisco_logging.py +0 -65
  525. catalystwan/tests/templates/models/cisco_ntp.py +0 -17
  526. catalystwan/tests/templates/models/cisco_omp.py +0 -37
  527. catalystwan/tests/templates/models/cisco_ospf.py +0 -60
  528. catalystwan/tests/templates/models/cisco_secure_internet_gateway.py +0 -95
  529. catalystwan/tests/templates/models/cisco_snmp.py +0 -40
  530. catalystwan/tests/templates/models/cisco_system.py +0 -113
  531. catalystwan/tests/templates/models/cisco_vpn.py +0 -240
  532. catalystwan/tests/templates/models/cisco_vpn_interface.py +0 -200
  533. catalystwan/tests/templates/models/omp_vsmart.py +0 -53
  534. catalystwan/tests/templates/models/security_vsmart.py +0 -11
  535. catalystwan/tests/templates/models/system_vsmart.py +0 -37
  536. catalystwan/tests/templates/models/vpn_vsmart.py +0 -32
  537. catalystwan/tests/templates/models/vpn_vsmart_interface.py +0 -54
  538. catalystwan/tests/templates/schemas/aaa.json +0 -1096
  539. catalystwan/tests/templates/schemas/basic/alias.json +0 -24
  540. catalystwan/tests/templates/schemas/basic/basic.json +0 -23
  541. catalystwan/tests/templates/schemas/basic/children.json +0 -59
  542. catalystwan/tests/templates/schemas/basic/children_nested.json +0 -112
  543. catalystwan/tests/templates/schemas/basic/children_nested_datapath.json +0 -112
  544. catalystwan/tests/templates/schemas/basic/data_path.json +0 -29
  545. catalystwan/tests/templates/schemas/cedge_aaa.json +0 -1185
  546. catalystwan/tests/templates/schemas/cisco_banner.json +0 -44
  547. catalystwan/tests/templates/schemas/cisco_bfd.json +0 -266
  548. catalystwan/tests/templates/schemas/cisco_logging.json +0 -577
  549. catalystwan/tests/templates/schemas/cisco_ntp.json +0 -265
  550. catalystwan/tests/templates/schemas/cisco_omp.json +0 -479
  551. catalystwan/tests/templates/schemas/cisco_ospf.json +0 -908
  552. catalystwan/tests/templates/schemas/cisco_secure_internet_gateway.json +0 -1520
  553. catalystwan/tests/templates/schemas/cisco_snmp.json +0 -561
  554. catalystwan/tests/templates/schemas/cisco_system.json +0 -3099
  555. catalystwan/tests/templates/schemas/cisco_vpn.json +0 -2504
  556. catalystwan/tests/templates/schemas/cisco_vpn_interface.json +0 -3348
  557. catalystwan/tests/templates/schemas/omp-vsmart.json +0 -222
  558. catalystwan/tests/templates/schemas/security-vsmart.json +0 -58
  559. catalystwan/tests/templates/schemas/system-vsmart.json +0 -2585
  560. catalystwan/tests/templates/schemas/vpn-vsmart-interface.json +0 -859
  561. catalystwan/tests/templates/schemas/vpn-vsmart.json +0 -445
  562. catalystwan/tests/templates/test_chose_model.py +0 -32
  563. catalystwan/tests/templates/test_deserialize_model.py +0 -69
  564. catalystwan/tests/templates/test_find_template_values.py +0 -193
  565. catalystwan/tests/templates/test_find_template_values_2.py +0 -193
  566. catalystwan/tests/templates/test_generate_payload.py +0 -137
  567. catalystwan/tests/templates/test_serialize_model.py +0 -52
  568. catalystwan/tests/test_admin_tech_api.py +0 -198
  569. catalystwan/tests/test_administration.py +0 -470
  570. catalystwan/tests/test_alarms_api.py +0 -251
  571. catalystwan/tests/test_cli_template.py +0 -218
  572. catalystwan/tests/test_creation_tools.py +0 -155
  573. catalystwan/tests/test_device_action_api.py +0 -117
  574. catalystwan/tests/test_devices_api.py +0 -674
  575. catalystwan/tests/test_endpoints.py +0 -907
  576. catalystwan/tests/test_feature_profile_api.py +0 -282
  577. catalystwan/tests/test_feature_template_field.py +0 -33
  578. catalystwan/tests/test_logs_api.py +0 -40
  579. catalystwan/tests/test_models_common.py +0 -53
  580. catalystwan/tests/test_monitoring_security_policy.py +0 -65
  581. catalystwan/tests/test_monitoring_server_info.py +0 -49
  582. catalystwan/tests/test_monitoring_status_api.py +0 -118
  583. catalystwan/tests/test_mtt_aaa_api.py +0 -293
  584. catalystwan/tests/test_omp_api.py +0 -438
  585. catalystwan/tests/test_packet_capture.py +0 -125
  586. catalystwan/tests/test_partition_manager_api.py +0 -121
  587. catalystwan/tests/test_response.py +0 -183
  588. catalystwan/tests/test_session.py +0 -102
  589. catalystwan/tests/test_software_action_api.py +0 -154
  590. catalystwan/tests/test_speed_test_api.py +0 -143
  591. catalystwan/tests/test_task_status_api.py +0 -381
  592. catalystwan/tests/test_templates.py +0 -405
  593. catalystwan/tests/test_tenant_backup_restore_api.py +0 -88
  594. catalystwan/tests/test_tenant_management_api.py +0 -153
  595. catalystwan/tests/test_tenant_migration_api.py +0 -102
  596. catalystwan/tests/test_typed_list.py +0 -426
  597. catalystwan/tests/test_url_monitoring.py +0 -80
  598. catalystwan/tests/test_version.py +0 -99
  599. catalystwan/tests/test_version_utils.py +0 -240
  600. catalystwan/tests/test_vmanage_auth.py +0 -149
  601. catalystwan/typed_list.py +0 -288
  602. catalystwan/utils/__init__.py +0 -0
  603. catalystwan/utils/alarm_status.py +0 -16
  604. catalystwan/utils/certificate_status.py +0 -13
  605. catalystwan/utils/colors.py +0 -12
  606. catalystwan/utils/config_status.py +0 -8
  607. catalystwan/utils/creation_tools.py +0 -136
  608. catalystwan/utils/dashboard.py +0 -255
  609. catalystwan/utils/device_model.py +0 -322
  610. catalystwan/utils/dict.py +0 -61
  611. catalystwan/utils/feature_template/choose_model.py +0 -30
  612. catalystwan/utils/feature_template/find_template_values.py +0 -111
  613. catalystwan/utils/model.py +0 -45
  614. catalystwan/utils/operation_status.py +0 -22
  615. catalystwan/utils/persona.py +0 -5
  616. catalystwan/utils/personality.py +0 -10
  617. catalystwan/utils/pydantic_field.py +0 -12
  618. catalystwan/utils/reachability.py +0 -14
  619. catalystwan/utils/session_type.py +0 -17
  620. catalystwan/utils/template_type.py +0 -8
  621. catalystwan/utils/type_check.py +0 -22
  622. catalystwan/utils/upgrades_helper.py +0 -95
  623. catalystwan/utils/validate_status.py +0 -8
  624. catalystwan/workflows/backup_restore_device_templates.py +0 -467
  625. catalystwan/workflows/tenant_migration.py +0 -203
  626. catalystwan-0.40.1.dev6.dist-info/METADATA +0 -539
  627. catalystwan-0.40.1.dev6.dist-info/RECORD +0 -618
  628. /catalystwan/{api → core/models}/__init__.py +0 -0
  629. /catalystwan/{api/builders/feature_profiles/__init__.py → core/py.typed} +0 -0
  630. {catalystwan-0.40.1.dev6.dist-info → catalystwan-2.0.0a0.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