azure-mgmt-storage 21.1.0b1__py3-none-any.whl → 21.2.1__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 (813) hide show
  1. azure/mgmt/storage/_configuration.py +2 -3
  2. azure/mgmt/storage/_serialization.py +66 -60
  3. azure/mgmt/storage/_storage_management_client.py +232 -26
  4. azure/mgmt/storage/_version.py +1 -1
  5. azure/mgmt/storage/aio/_configuration.py +2 -3
  6. azure/mgmt/storage/aio/_storage_management_client.py +232 -26
  7. azure/mgmt/storage/models.py +1 -1
  8. azure/mgmt/storage/v2015_06_15/_configuration.py +4 -11
  9. azure/mgmt/storage/v2015_06_15/_patch.py +1 -0
  10. azure/mgmt/storage/v2015_06_15/_storage_management.py +25 -5
  11. azure/mgmt/storage/v2015_06_15/_vendor.py +0 -14
  12. azure/mgmt/storage/v2015_06_15/_version.py +1 -1
  13. azure/mgmt/storage/v2015_06_15/aio/_configuration.py +4 -11
  14. azure/mgmt/storage/v2015_06_15/aio/_patch.py +1 -0
  15. azure/mgmt/storage/v2015_06_15/aio/_storage_management.py +27 -5
  16. azure/mgmt/storage/v2015_06_15/aio/operations/_storage_accounts_operations.py +132 -213
  17. azure/mgmt/storage/v2015_06_15/aio/operations/_usage_operations.py +20 -22
  18. azure/mgmt/storage/v2015_06_15/models/_models_py3.py +6 -6
  19. azure/mgmt/storage/v2015_06_15/operations/_storage_accounts_operations.py +151 -232
  20. azure/mgmt/storage/v2015_06_15/operations/_usage_operations.py +23 -25
  21. azure/mgmt/storage/v2016_01_01/_configuration.py +4 -11
  22. azure/mgmt/storage/v2016_01_01/_patch.py +1 -0
  23. azure/mgmt/storage/v2016_01_01/_storage_management_client.py +25 -5
  24. azure/mgmt/storage/v2016_01_01/_vendor.py +0 -14
  25. azure/mgmt/storage/v2016_01_01/_version.py +1 -1
  26. azure/mgmt/storage/v2016_01_01/aio/_configuration.py +4 -11
  27. azure/mgmt/storage/v2016_01_01/aio/_patch.py +1 -0
  28. azure/mgmt/storage/v2016_01_01/aio/_storage_management_client.py +27 -5
  29. azure/mgmt/storage/v2016_01_01/aio/operations/_storage_accounts_operations.py +132 -213
  30. azure/mgmt/storage/v2016_01_01/aio/operations/_usage_operations.py +20 -22
  31. azure/mgmt/storage/v2016_01_01/models/_models_py3.py +7 -7
  32. azure/mgmt/storage/v2016_01_01/operations/_storage_accounts_operations.py +151 -232
  33. azure/mgmt/storage/v2016_01_01/operations/_usage_operations.py +23 -25
  34. azure/mgmt/storage/v2016_12_01/_configuration.py +4 -11
  35. azure/mgmt/storage/v2016_12_01/_patch.py +1 -0
  36. azure/mgmt/storage/v2016_12_01/_storage_management.py +25 -5
  37. azure/mgmt/storage/v2016_12_01/_vendor.py +0 -14
  38. azure/mgmt/storage/v2016_12_01/_version.py +1 -1
  39. azure/mgmt/storage/v2016_12_01/aio/_configuration.py +4 -11
  40. azure/mgmt/storage/v2016_12_01/aio/_patch.py +1 -0
  41. azure/mgmt/storage/v2016_12_01/aio/_storage_management.py +27 -5
  42. azure/mgmt/storage/v2016_12_01/aio/operations/_storage_accounts_operations.py +162 -263
  43. azure/mgmt/storage/v2016_12_01/aio/operations/_usage_operations.py +20 -22
  44. azure/mgmt/storage/v2016_12_01/models/_models_py3.py +9 -9
  45. azure/mgmt/storage/v2016_12_01/operations/_storage_accounts_operations.py +185 -286
  46. azure/mgmt/storage/v2016_12_01/operations/_usage_operations.py +23 -25
  47. azure/mgmt/storage/v2017_06_01/_configuration.py +4 -11
  48. azure/mgmt/storage/v2017_06_01/_patch.py +1 -0
  49. azure/mgmt/storage/v2017_06_01/_storage_management.py +27 -7
  50. azure/mgmt/storage/v2017_06_01/_vendor.py +0 -14
  51. azure/mgmt/storage/v2017_06_01/_version.py +1 -1
  52. azure/mgmt/storage/v2017_06_01/aio/_configuration.py +4 -11
  53. azure/mgmt/storage/v2017_06_01/aio/_patch.py +1 -0
  54. azure/mgmt/storage/v2017_06_01/aio/_storage_management.py +29 -7
  55. azure/mgmt/storage/v2017_06_01/aio/operations/_operations.py +20 -22
  56. azure/mgmt/storage/v2017_06_01/aio/operations/_skus_operations.py +20 -22
  57. azure/mgmt/storage/v2017_06_01/aio/operations/_storage_accounts_operations.py +162 -263
  58. azure/mgmt/storage/v2017_06_01/aio/operations/_usage_operations.py +20 -22
  59. azure/mgmt/storage/v2017_06_01/models/_models_py3.py +16 -22
  60. azure/mgmt/storage/v2017_06_01/operations/_operations.py +21 -23
  61. azure/mgmt/storage/v2017_06_01/operations/_skus_operations.py +23 -25
  62. azure/mgmt/storage/v2017_06_01/operations/_storage_accounts_operations.py +185 -286
  63. azure/mgmt/storage/v2017_06_01/operations/_usage_operations.py +23 -25
  64. azure/mgmt/storage/v2017_10_01/_configuration.py +4 -11
  65. azure/mgmt/storage/v2017_10_01/_patch.py +1 -0
  66. azure/mgmt/storage/v2017_10_01/_storage_management.py +27 -7
  67. azure/mgmt/storage/v2017_10_01/_vendor.py +0 -14
  68. azure/mgmt/storage/v2017_10_01/_version.py +1 -1
  69. azure/mgmt/storage/v2017_10_01/aio/_configuration.py +4 -11
  70. azure/mgmt/storage/v2017_10_01/aio/_patch.py +1 -0
  71. azure/mgmt/storage/v2017_10_01/aio/_storage_management.py +29 -7
  72. azure/mgmt/storage/v2017_10_01/aio/operations/_operations.py +20 -22
  73. azure/mgmt/storage/v2017_10_01/aio/operations/_skus_operations.py +20 -22
  74. azure/mgmt/storage/v2017_10_01/aio/operations/_storage_accounts_operations.py +162 -263
  75. azure/mgmt/storage/v2017_10_01/aio/operations/_usage_operations.py +20 -22
  76. azure/mgmt/storage/v2017_10_01/models/_models_py3.py +16 -22
  77. azure/mgmt/storage/v2017_10_01/operations/_operations.py +21 -23
  78. azure/mgmt/storage/v2017_10_01/operations/_skus_operations.py +23 -25
  79. azure/mgmt/storage/v2017_10_01/operations/_storage_accounts_operations.py +185 -286
  80. azure/mgmt/storage/v2017_10_01/operations/_usage_operations.py +23 -25
  81. azure/mgmt/storage/v2018_02_01/_configuration.py +4 -11
  82. azure/mgmt/storage/v2018_02_01/_patch.py +1 -0
  83. azure/mgmt/storage/v2018_02_01/_storage_management_client.py +30 -8
  84. azure/mgmt/storage/v2018_02_01/_vendor.py +0 -14
  85. azure/mgmt/storage/v2018_02_01/_version.py +1 -1
  86. azure/mgmt/storage/v2018_02_01/aio/_configuration.py +4 -11
  87. azure/mgmt/storage/v2018_02_01/aio/_patch.py +1 -0
  88. azure/mgmt/storage/v2018_02_01/aio/_storage_management_client.py +32 -8
  89. azure/mgmt/storage/v2018_02_01/aio/operations/_blob_containers_operations.py +166 -264
  90. azure/mgmt/storage/v2018_02_01/aio/operations/_operations.py +20 -22
  91. azure/mgmt/storage/v2018_02_01/aio/operations/_skus_operations.py +20 -22
  92. azure/mgmt/storage/v2018_02_01/aio/operations/_storage_accounts_operations.py +162 -263
  93. azure/mgmt/storage/v2018_02_01/aio/operations/_usage_operations.py +34 -41
  94. azure/mgmt/storage/v2018_02_01/models/_models_py3.py +28 -34
  95. azure/mgmt/storage/v2018_02_01/models/_storage_management_client_enums.py +1 -1
  96. azure/mgmt/storage/v2018_02_01/operations/_blob_containers_operations.py +194 -292
  97. azure/mgmt/storage/v2018_02_01/operations/_operations.py +21 -23
  98. azure/mgmt/storage/v2018_02_01/operations/_skus_operations.py +23 -25
  99. azure/mgmt/storage/v2018_02_01/operations/_storage_accounts_operations.py +185 -286
  100. azure/mgmt/storage/v2018_02_01/operations/_usage_operations.py +39 -46
  101. azure/mgmt/storage/v2018_03_01_preview/_configuration.py +4 -11
  102. azure/mgmt/storage/v2018_03_01_preview/_patch.py +1 -0
  103. azure/mgmt/storage/v2018_03_01_preview/_storage_management_client.py +41 -8
  104. azure/mgmt/storage/v2018_03_01_preview/_vendor.py +0 -14
  105. azure/mgmt/storage/v2018_03_01_preview/_version.py +1 -1
  106. azure/mgmt/storage/v2018_03_01_preview/aio/_configuration.py +4 -11
  107. azure/mgmt/storage/v2018_03_01_preview/aio/_patch.py +1 -0
  108. azure/mgmt/storage/v2018_03_01_preview/aio/_storage_management_client.py +43 -8
  109. azure/mgmt/storage/v2018_03_01_preview/aio/operations/__init__.py +2 -0
  110. azure/mgmt/storage/v2018_03_01_preview/aio/operations/_blob_containers_operations.py +182 -277
  111. azure/mgmt/storage/{v2018_07_01 → v2018_03_01_preview}/aio/operations/_management_policies_operations.py +55 -72
  112. azure/mgmt/storage/v2018_03_01_preview/aio/operations/_operations.py +21 -23
  113. azure/mgmt/storage/v2018_03_01_preview/aio/operations/_skus_operations.py +21 -23
  114. azure/mgmt/storage/v2018_03_01_preview/aio/operations/_storage_accounts_operations.py +209 -330
  115. azure/mgmt/storage/v2018_03_01_preview/aio/operations/_usages_operations.py +36 -43
  116. azure/mgmt/storage/v2018_03_01_preview/models/_models_py3.py +30 -34
  117. azure/mgmt/storage/v2018_03_01_preview/models/_storage_management_client_enums.py +1 -1
  118. azure/mgmt/storage/v2018_03_01_preview/operations/__init__.py +2 -0
  119. azure/mgmt/storage/v2018_03_01_preview/operations/_blob_containers_operations.py +210 -331
  120. azure/mgmt/storage/{v2018_07_01 → v2018_03_01_preview}/operations/_management_policies_operations.py +62 -85
  121. azure/mgmt/storage/v2018_03_01_preview/operations/_operations.py +22 -26
  122. azure/mgmt/storage/v2018_03_01_preview/operations/_skus_operations.py +24 -28
  123. azure/mgmt/storage/v2018_03_01_preview/operations/_storage_accounts_operations.py +239 -388
  124. azure/mgmt/storage/v2018_03_01_preview/operations/_usages_operations.py +41 -52
  125. azure/mgmt/storage/v2018_07_01/_configuration.py +9 -4
  126. azure/mgmt/storage/v2018_07_01/_patch.py +1 -0
  127. azure/mgmt/storage/v2018_07_01/_storage_management_client.py +36 -16
  128. azure/mgmt/storage/v2018_07_01/_vendor.py +0 -14
  129. azure/mgmt/storage/v2018_07_01/_version.py +1 -1
  130. azure/mgmt/storage/v2018_07_01/aio/_configuration.py +9 -4
  131. azure/mgmt/storage/v2018_07_01/aio/_patch.py +1 -0
  132. azure/mgmt/storage/v2018_07_01/aio/_storage_management_client.py +38 -16
  133. azure/mgmt/storage/v2018_07_01/aio/operations/__init__.py +0 -2
  134. azure/mgmt/storage/v2018_07_01/aio/operations/_blob_containers_operations.py +166 -264
  135. azure/mgmt/storage/v2018_07_01/aio/operations/_blob_services_operations.py +31 -44
  136. azure/mgmt/storage/v2018_07_01/aio/operations/_operations.py +31 -21
  137. azure/mgmt/storage/v2018_07_01/aio/operations/_skus_operations.py +31 -21
  138. azure/mgmt/storage/v2018_07_01/aio/operations/_storage_accounts_operations.py +195 -289
  139. azure/mgmt/storage/v2018_07_01/aio/operations/_usages_operations.py +31 -23
  140. azure/mgmt/storage/v2018_07_01/models/__init__.py +0 -10
  141. azure/mgmt/storage/v2018_07_01/models/_models_py3.py +30 -164
  142. azure/mgmt/storage/v2018_07_01/models/_storage_management_client_enums.py +1 -7
  143. azure/mgmt/storage/v2018_07_01/operations/__init__.py +0 -2
  144. azure/mgmt/storage/v2018_07_01/operations/_blob_containers_operations.py +194 -292
  145. azure/mgmt/storage/v2018_07_01/operations/_blob_services_operations.py +36 -49
  146. azure/mgmt/storage/v2018_07_01/operations/_operations.py +32 -22
  147. azure/mgmt/storage/v2018_07_01/operations/_skus_operations.py +34 -24
  148. azure/mgmt/storage/v2018_07_01/operations/_storage_accounts_operations.py +220 -314
  149. azure/mgmt/storage/v2018_07_01/operations/_usages_operations.py +34 -26
  150. azure/mgmt/storage/v2018_11_01/_configuration.py +4 -11
  151. azure/mgmt/storage/v2018_11_01/_patch.py +1 -0
  152. azure/mgmt/storage/v2018_11_01/_storage_management_client.py +34 -10
  153. azure/mgmt/storage/v2018_11_01/_vendor.py +0 -14
  154. azure/mgmt/storage/v2018_11_01/_version.py +1 -1
  155. azure/mgmt/storage/v2018_11_01/aio/_configuration.py +4 -11
  156. azure/mgmt/storage/v2018_11_01/aio/_patch.py +1 -0
  157. azure/mgmt/storage/v2018_11_01/aio/_storage_management_client.py +36 -10
  158. azure/mgmt/storage/v2018_11_01/aio/operations/_blob_containers_operations.py +164 -262
  159. azure/mgmt/storage/v2018_11_01/aio/operations/_blob_services_operations.py +31 -44
  160. azure/mgmt/storage/v2018_11_01/aio/operations/_management_policies_operations.py +39 -57
  161. azure/mgmt/storage/v2018_11_01/aio/operations/_operations.py +20 -22
  162. azure/mgmt/storage/v2018_11_01/aio/operations/_skus_operations.py +20 -22
  163. azure/mgmt/storage/v2018_11_01/aio/operations/_storage_accounts_operations.py +182 -304
  164. azure/mgmt/storage/v2018_11_01/aio/operations/_usages_operations.py +20 -24
  165. azure/mgmt/storage/v2018_11_01/models/_models_py3.py +37 -43
  166. azure/mgmt/storage/v2018_11_01/models/_storage_management_client_enums.py +1 -1
  167. azure/mgmt/storage/v2018_11_01/operations/_blob_containers_operations.py +192 -290
  168. azure/mgmt/storage/v2018_11_01/operations/_blob_services_operations.py +36 -49
  169. azure/mgmt/storage/v2018_11_01/operations/_management_policies_operations.py +46 -64
  170. azure/mgmt/storage/v2018_11_01/operations/_operations.py +21 -23
  171. azure/mgmt/storage/v2018_11_01/operations/_skus_operations.py +23 -25
  172. azure/mgmt/storage/v2018_11_01/operations/_storage_accounts_operations.py +210 -332
  173. azure/mgmt/storage/v2018_11_01/operations/_usages_operations.py +23 -27
  174. azure/mgmt/storage/v2019_04_01/_configuration.py +4 -11
  175. azure/mgmt/storage/v2019_04_01/_patch.py +1 -0
  176. azure/mgmt/storage/v2019_04_01/_storage_management_client.py +40 -12
  177. azure/mgmt/storage/v2019_04_01/_vendor.py +0 -14
  178. azure/mgmt/storage/v2019_04_01/_version.py +1 -1
  179. azure/mgmt/storage/v2019_04_01/aio/_configuration.py +4 -11
  180. azure/mgmt/storage/v2019_04_01/aio/_patch.py +1 -0
  181. azure/mgmt/storage/v2019_04_01/aio/_storage_management_client.py +42 -12
  182. azure/mgmt/storage/v2019_04_01/aio/operations/_blob_containers_operations.py +169 -267
  183. azure/mgmt/storage/v2019_04_01/aio/operations/_blob_services_operations.py +45 -63
  184. azure/mgmt/storage/v2019_04_01/aio/operations/_file_services_operations.py +41 -59
  185. azure/mgmt/storage/v2019_04_01/aio/operations/_file_shares_operations.py +68 -101
  186. azure/mgmt/storage/v2019_04_01/aio/operations/_management_policies_operations.py +39 -57
  187. azure/mgmt/storage/v2019_04_01/aio/operations/_operations.py +20 -22
  188. azure/mgmt/storage/v2019_04_01/aio/operations/_skus_operations.py +20 -22
  189. azure/mgmt/storage/v2019_04_01/aio/operations/_storage_accounts_operations.py +183 -304
  190. azure/mgmt/storage/v2019_04_01/aio/operations/_usages_operations.py +20 -24
  191. azure/mgmt/storage/v2019_04_01/models/_models_py3.py +42 -48
  192. azure/mgmt/storage/v2019_04_01/models/_storage_management_client_enums.py +1 -1
  193. azure/mgmt/storage/v2019_04_01/operations/_blob_containers_operations.py +197 -295
  194. azure/mgmt/storage/v2019_04_01/operations/_blob_services_operations.py +52 -70
  195. azure/mgmt/storage/v2019_04_01/operations/_file_services_operations.py +48 -66
  196. azure/mgmt/storage/v2019_04_01/operations/_file_shares_operations.py +79 -112
  197. azure/mgmt/storage/v2019_04_01/operations/_management_policies_operations.py +46 -64
  198. azure/mgmt/storage/v2019_04_01/operations/_operations.py +21 -23
  199. azure/mgmt/storage/v2019_04_01/operations/_skus_operations.py +23 -25
  200. azure/mgmt/storage/v2019_04_01/operations/_storage_accounts_operations.py +211 -332
  201. azure/mgmt/storage/v2019_04_01/operations/_usages_operations.py +23 -27
  202. azure/mgmt/storage/v2019_06_01/_configuration.py +4 -11
  203. azure/mgmt/storage/v2019_06_01/_patch.py +1 -0
  204. azure/mgmt/storage/v2019_06_01/_storage_management_client.py +54 -22
  205. azure/mgmt/storage/v2019_06_01/_vendor.py +0 -14
  206. azure/mgmt/storage/v2019_06_01/_version.py +1 -1
  207. azure/mgmt/storage/v2019_06_01/aio/_configuration.py +4 -11
  208. azure/mgmt/storage/v2019_06_01/aio/_patch.py +1 -0
  209. azure/mgmt/storage/v2019_06_01/aio/_storage_management_client.py +56 -22
  210. azure/mgmt/storage/v2019_06_01/aio/operations/_blob_containers_operations.py +169 -267
  211. azure/mgmt/storage/v2019_06_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  212. azure/mgmt/storage/v2019_06_01/aio/operations/_blob_services_operations.py +45 -63
  213. azure/mgmt/storage/v2019_06_01/aio/operations/_encryption_scopes_operations.py +58 -86
  214. azure/mgmt/storage/v2019_06_01/aio/operations/_file_services_operations.py +41 -59
  215. azure/mgmt/storage/v2019_06_01/aio/operations/_file_shares_operations.py +82 -125
  216. azure/mgmt/storage/v2019_06_01/aio/operations/_management_policies_operations.py +39 -57
  217. azure/mgmt/storage/v2019_06_01/aio/operations/_object_replication_policies_operations.py +54 -76
  218. azure/mgmt/storage/v2019_06_01/aio/operations/_operations.py +20 -22
  219. azure/mgmt/storage/v2019_06_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  220. azure/mgmt/storage/v2019_06_01/aio/operations/_private_link_resources_operations.py +15 -19
  221. azure/mgmt/storage/v2019_06_01/aio/operations/_queue_operations.py +68 -101
  222. azure/mgmt/storage/v2019_06_01/aio/operations/_queue_services_operations.py +40 -58
  223. azure/mgmt/storage/v2019_06_01/aio/operations/_skus_operations.py +20 -22
  224. azure/mgmt/storage/v2019_06_01/aio/operations/_storage_accounts_operations.py +203 -357
  225. azure/mgmt/storage/v2019_06_01/aio/operations/_table_operations.py +55 -79
  226. azure/mgmt/storage/v2019_06_01/aio/operations/_table_services_operations.py +40 -58
  227. azure/mgmt/storage/v2019_06_01/aio/operations/_usages_operations.py +20 -24
  228. azure/mgmt/storage/v2019_06_01/models/_models_py3.py +62 -68
  229. azure/mgmt/storage/v2019_06_01/models/_storage_management_client_enums.py +1 -1
  230. azure/mgmt/storage/v2019_06_01/operations/_blob_containers_operations.py +197 -295
  231. azure/mgmt/storage/v2019_06_01/operations/_blob_inventory_policies_operations.py +62 -85
  232. azure/mgmt/storage/v2019_06_01/operations/_blob_services_operations.py +52 -70
  233. azure/mgmt/storage/v2019_06_01/operations/_encryption_scopes_operations.py +67 -95
  234. azure/mgmt/storage/v2019_06_01/operations/_file_services_operations.py +48 -66
  235. azure/mgmt/storage/v2019_06_01/operations/_file_shares_operations.py +95 -138
  236. azure/mgmt/storage/v2019_06_01/operations/_management_policies_operations.py +46 -64
  237. azure/mgmt/storage/v2019_06_01/operations/_object_replication_policies_operations.py +63 -85
  238. azure/mgmt/storage/v2019_06_01/operations/_operations.py +21 -23
  239. azure/mgmt/storage/v2019_06_01/operations/_private_endpoint_connections_operations.py +62 -85
  240. azure/mgmt/storage/v2019_06_01/operations/_private_link_resources_operations.py +18 -22
  241. azure/mgmt/storage/v2019_06_01/operations/_queue_operations.py +79 -112
  242. azure/mgmt/storage/v2019_06_01/operations/_queue_services_operations.py +47 -65
  243. azure/mgmt/storage/v2019_06_01/operations/_skus_operations.py +23 -25
  244. azure/mgmt/storage/v2019_06_01/operations/_storage_accounts_operations.py +233 -387
  245. azure/mgmt/storage/v2019_06_01/operations/_table_operations.py +66 -90
  246. azure/mgmt/storage/v2019_06_01/operations/_table_services_operations.py +47 -65
  247. azure/mgmt/storage/v2019_06_01/operations/_usages_operations.py +23 -27
  248. azure/mgmt/storage/v2020_08_01_preview/_configuration.py +4 -11
  249. azure/mgmt/storage/v2020_08_01_preview/_patch.py +1 -0
  250. azure/mgmt/storage/v2020_08_01_preview/_storage_management_client.py +64 -24
  251. azure/mgmt/storage/v2020_08_01_preview/_vendor.py +0 -14
  252. azure/mgmt/storage/v2020_08_01_preview/_version.py +1 -1
  253. azure/mgmt/storage/v2020_08_01_preview/aio/_configuration.py +4 -11
  254. azure/mgmt/storage/v2020_08_01_preview/aio/_patch.py +1 -0
  255. azure/mgmt/storage/v2020_08_01_preview/aio/_storage_management_client.py +66 -24
  256. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_blob_containers_operations.py +185 -280
  257. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_blob_inventory_policies_operations.py +58 -80
  258. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_blob_services_operations.py +49 -66
  259. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_deleted_accounts_operations.py +31 -38
  260. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_encryption_scopes_operations.py +64 -90
  261. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_file_services_operations.py +45 -62
  262. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_file_shares_operations.py +88 -131
  263. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_management_policies_operations.py +42 -60
  264. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_object_replication_policies_operations.py +59 -80
  265. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_operations.py +21 -23
  266. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_private_endpoint_connections_operations.py +57 -80
  267. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_private_link_resources_operations.py +16 -20
  268. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_queue_operations.py +73 -106
  269. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_queue_services_operations.py +44 -61
  270. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_skus_operations.py +21 -23
  271. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_storage_accounts_operations.py +221 -374
  272. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_table_operations.py +60 -84
  273. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_table_services_operations.py +44 -61
  274. azure/mgmt/storage/v2020_08_01_preview/aio/operations/_usages_operations.py +21 -25
  275. azure/mgmt/storage/v2020_08_01_preview/models/_models_py3.py +64 -86
  276. azure/mgmt/storage/v2020_08_01_preview/models/_storage_management_client_enums.py +1 -1
  277. azure/mgmt/storage/v2020_08_01_preview/operations/_blob_containers_operations.py +213 -334
  278. azure/mgmt/storage/v2020_08_01_preview/operations/_blob_inventory_policies_operations.py +67 -97
  279. azure/mgmt/storage/v2020_08_01_preview/operations/_blob_services_operations.py +56 -79
  280. azure/mgmt/storage/v2020_08_01_preview/operations/_deleted_accounts_operations.py +36 -47
  281. azure/mgmt/storage/v2020_08_01_preview/operations/_encryption_scopes_operations.py +73 -107
  282. azure/mgmt/storage/v2020_08_01_preview/operations/_file_services_operations.py +52 -75
  283. azure/mgmt/storage/v2020_08_01_preview/operations/_file_shares_operations.py +101 -156
  284. azure/mgmt/storage/v2020_08_01_preview/operations/_management_policies_operations.py +49 -73
  285. azure/mgmt/storage/v2020_08_01_preview/operations/_object_replication_policies_operations.py +68 -97
  286. azure/mgmt/storage/v2020_08_01_preview/operations/_operations.py +22 -26
  287. azure/mgmt/storage/v2020_08_01_preview/operations/_private_endpoint_connections_operations.py +66 -97
  288. azure/mgmt/storage/v2020_08_01_preview/operations/_private_link_resources_operations.py +19 -25
  289. azure/mgmt/storage/v2020_08_01_preview/operations/_queue_operations.py +84 -127
  290. azure/mgmt/storage/v2020_08_01_preview/operations/_queue_services_operations.py +51 -74
  291. azure/mgmt/storage/v2020_08_01_preview/operations/_skus_operations.py +24 -28
  292. azure/mgmt/storage/v2020_08_01_preview/operations/_storage_accounts_operations.py +251 -432
  293. azure/mgmt/storage/v2020_08_01_preview/operations/_table_operations.py +71 -105
  294. azure/mgmt/storage/v2020_08_01_preview/operations/_table_services_operations.py +51 -74
  295. azure/mgmt/storage/v2020_08_01_preview/operations/_usages_operations.py +24 -30
  296. azure/mgmt/storage/v2021_01_01/_configuration.py +4 -11
  297. azure/mgmt/storage/v2021_01_01/_patch.py +1 -0
  298. azure/mgmt/storage/v2021_01_01/_storage_management_client.py +55 -23
  299. azure/mgmt/storage/v2021_01_01/_vendor.py +0 -14
  300. azure/mgmt/storage/v2021_01_01/_version.py +1 -1
  301. azure/mgmt/storage/v2021_01_01/aio/_configuration.py +4 -11
  302. azure/mgmt/storage/v2021_01_01/aio/_patch.py +1 -0
  303. azure/mgmt/storage/v2021_01_01/aio/_storage_management_client.py +57 -23
  304. azure/mgmt/storage/v2021_01_01/aio/operations/_blob_containers_operations.py +169 -267
  305. azure/mgmt/storage/v2021_01_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  306. azure/mgmt/storage/v2021_01_01/aio/operations/_blob_services_operations.py +45 -63
  307. azure/mgmt/storage/v2021_01_01/aio/operations/_deleted_accounts_operations.py +29 -36
  308. azure/mgmt/storage/v2021_01_01/aio/operations/_encryption_scopes_operations.py +58 -86
  309. azure/mgmt/storage/v2021_01_01/aio/operations/_file_services_operations.py +41 -59
  310. azure/mgmt/storage/v2021_01_01/aio/operations/_file_shares_operations.py +82 -125
  311. azure/mgmt/storage/v2021_01_01/aio/operations/_management_policies_operations.py +39 -57
  312. azure/mgmt/storage/v2021_01_01/aio/operations/_object_replication_policies_operations.py +54 -76
  313. azure/mgmt/storage/v2021_01_01/aio/operations/_operations.py +20 -22
  314. azure/mgmt/storage/v2021_01_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  315. azure/mgmt/storage/v2021_01_01/aio/operations/_private_link_resources_operations.py +15 -19
  316. azure/mgmt/storage/v2021_01_01/aio/operations/_queue_operations.py +68 -101
  317. azure/mgmt/storage/v2021_01_01/aio/operations/_queue_services_operations.py +40 -58
  318. azure/mgmt/storage/v2021_01_01/aio/operations/_skus_operations.py +20 -22
  319. azure/mgmt/storage/v2021_01_01/aio/operations/_storage_accounts_operations.py +203 -357
  320. azure/mgmt/storage/v2021_01_01/aio/operations/_table_operations.py +55 -79
  321. azure/mgmt/storage/v2021_01_01/aio/operations/_table_services_operations.py +40 -58
  322. azure/mgmt/storage/v2021_01_01/aio/operations/_usages_operations.py +20 -24
  323. azure/mgmt/storage/v2021_01_01/models/_models_py3.py +64 -86
  324. azure/mgmt/storage/v2021_01_01/models/_storage_management_client_enums.py +1 -1
  325. azure/mgmt/storage/v2021_01_01/operations/_blob_containers_operations.py +197 -295
  326. azure/mgmt/storage/v2021_01_01/operations/_blob_inventory_policies_operations.py +62 -85
  327. azure/mgmt/storage/v2021_01_01/operations/_blob_services_operations.py +52 -70
  328. azure/mgmt/storage/v2021_01_01/operations/_deleted_accounts_operations.py +34 -41
  329. azure/mgmt/storage/v2021_01_01/operations/_encryption_scopes_operations.py +67 -95
  330. azure/mgmt/storage/v2021_01_01/operations/_file_services_operations.py +48 -66
  331. azure/mgmt/storage/v2021_01_01/operations/_file_shares_operations.py +95 -138
  332. azure/mgmt/storage/v2021_01_01/operations/_management_policies_operations.py +46 -64
  333. azure/mgmt/storage/v2021_01_01/operations/_object_replication_policies_operations.py +63 -85
  334. azure/mgmt/storage/v2021_01_01/operations/_operations.py +21 -23
  335. azure/mgmt/storage/v2021_01_01/operations/_private_endpoint_connections_operations.py +62 -85
  336. azure/mgmt/storage/v2021_01_01/operations/_private_link_resources_operations.py +18 -22
  337. azure/mgmt/storage/v2021_01_01/operations/_queue_operations.py +79 -112
  338. azure/mgmt/storage/v2021_01_01/operations/_queue_services_operations.py +47 -65
  339. azure/mgmt/storage/v2021_01_01/operations/_skus_operations.py +23 -25
  340. azure/mgmt/storage/v2021_01_01/operations/_storage_accounts_operations.py +233 -387
  341. azure/mgmt/storage/v2021_01_01/operations/_table_operations.py +66 -90
  342. azure/mgmt/storage/v2021_01_01/operations/_table_services_operations.py +47 -65
  343. azure/mgmt/storage/v2021_01_01/operations/_usages_operations.py +23 -27
  344. azure/mgmt/storage/v2021_02_01/_configuration.py +4 -11
  345. azure/mgmt/storage/v2021_02_01/_patch.py +1 -0
  346. azure/mgmt/storage/v2021_02_01/_storage_management_client.py +55 -23
  347. azure/mgmt/storage/v2021_02_01/_vendor.py +0 -14
  348. azure/mgmt/storage/v2021_02_01/_version.py +1 -1
  349. azure/mgmt/storage/v2021_02_01/aio/_configuration.py +4 -11
  350. azure/mgmt/storage/v2021_02_01/aio/_patch.py +1 -0
  351. azure/mgmt/storage/v2021_02_01/aio/_storage_management_client.py +57 -23
  352. azure/mgmt/storage/v2021_02_01/aio/operations/_blob_containers_operations.py +169 -267
  353. azure/mgmt/storage/v2021_02_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  354. azure/mgmt/storage/v2021_02_01/aio/operations/_blob_services_operations.py +45 -63
  355. azure/mgmt/storage/v2021_02_01/aio/operations/_deleted_accounts_operations.py +29 -36
  356. azure/mgmt/storage/v2021_02_01/aio/operations/_encryption_scopes_operations.py +58 -86
  357. azure/mgmt/storage/v2021_02_01/aio/operations/_file_services_operations.py +41 -59
  358. azure/mgmt/storage/v2021_02_01/aio/operations/_file_shares_operations.py +82 -125
  359. azure/mgmt/storage/v2021_02_01/aio/operations/_management_policies_operations.py +39 -57
  360. azure/mgmt/storage/v2021_02_01/aio/operations/_object_replication_policies_operations.py +54 -76
  361. azure/mgmt/storage/v2021_02_01/aio/operations/_operations.py +20 -22
  362. azure/mgmt/storage/v2021_02_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  363. azure/mgmt/storage/v2021_02_01/aio/operations/_private_link_resources_operations.py +15 -19
  364. azure/mgmt/storage/v2021_02_01/aio/operations/_queue_operations.py +68 -101
  365. azure/mgmt/storage/v2021_02_01/aio/operations/_queue_services_operations.py +40 -58
  366. azure/mgmt/storage/v2021_02_01/aio/operations/_skus_operations.py +20 -22
  367. azure/mgmt/storage/v2021_02_01/aio/operations/_storage_accounts_operations.py +203 -357
  368. azure/mgmt/storage/v2021_02_01/aio/operations/_table_operations.py +55 -79
  369. azure/mgmt/storage/v2021_02_01/aio/operations/_table_services_operations.py +40 -58
  370. azure/mgmt/storage/v2021_02_01/aio/operations/_usages_operations.py +20 -24
  371. azure/mgmt/storage/v2021_02_01/models/_models_py3.py +66 -88
  372. azure/mgmt/storage/v2021_02_01/models/_storage_management_client_enums.py +1 -1
  373. azure/mgmt/storage/v2021_02_01/operations/_blob_containers_operations.py +197 -295
  374. azure/mgmt/storage/v2021_02_01/operations/_blob_inventory_policies_operations.py +62 -85
  375. azure/mgmt/storage/v2021_02_01/operations/_blob_services_operations.py +52 -70
  376. azure/mgmt/storage/v2021_02_01/operations/_deleted_accounts_operations.py +34 -41
  377. azure/mgmt/storage/v2021_02_01/operations/_encryption_scopes_operations.py +67 -95
  378. azure/mgmt/storage/v2021_02_01/operations/_file_services_operations.py +48 -66
  379. azure/mgmt/storage/v2021_02_01/operations/_file_shares_operations.py +95 -138
  380. azure/mgmt/storage/v2021_02_01/operations/_management_policies_operations.py +46 -64
  381. azure/mgmt/storage/v2021_02_01/operations/_object_replication_policies_operations.py +63 -85
  382. azure/mgmt/storage/v2021_02_01/operations/_operations.py +21 -23
  383. azure/mgmt/storage/v2021_02_01/operations/_private_endpoint_connections_operations.py +62 -85
  384. azure/mgmt/storage/v2021_02_01/operations/_private_link_resources_operations.py +18 -22
  385. azure/mgmt/storage/v2021_02_01/operations/_queue_operations.py +79 -112
  386. azure/mgmt/storage/v2021_02_01/operations/_queue_services_operations.py +47 -65
  387. azure/mgmt/storage/v2021_02_01/operations/_skus_operations.py +23 -25
  388. azure/mgmt/storage/v2021_02_01/operations/_storage_accounts_operations.py +233 -387
  389. azure/mgmt/storage/v2021_02_01/operations/_table_operations.py +66 -90
  390. azure/mgmt/storage/v2021_02_01/operations/_table_services_operations.py +47 -65
  391. azure/mgmt/storage/v2021_02_01/operations/_usages_operations.py +23 -27
  392. azure/mgmt/storage/v2021_04_01/_configuration.py +4 -11
  393. azure/mgmt/storage/v2021_04_01/_patch.py +1 -0
  394. azure/mgmt/storage/v2021_04_01/_storage_management_client.py +55 -23
  395. azure/mgmt/storage/v2021_04_01/_vendor.py +0 -14
  396. azure/mgmt/storage/v2021_04_01/_version.py +1 -1
  397. azure/mgmt/storage/v2021_04_01/aio/_configuration.py +4 -11
  398. azure/mgmt/storage/v2021_04_01/aio/_patch.py +1 -0
  399. azure/mgmt/storage/v2021_04_01/aio/_storage_management_client.py +57 -23
  400. azure/mgmt/storage/v2021_04_01/aio/operations/_blob_containers_operations.py +181 -295
  401. azure/mgmt/storage/v2021_04_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  402. azure/mgmt/storage/v2021_04_01/aio/operations/_blob_services_operations.py +45 -63
  403. azure/mgmt/storage/v2021_04_01/aio/operations/_deleted_accounts_operations.py +29 -36
  404. azure/mgmt/storage/v2021_04_01/aio/operations/_encryption_scopes_operations.py +58 -86
  405. azure/mgmt/storage/v2021_04_01/aio/operations/_file_services_operations.py +41 -59
  406. azure/mgmt/storage/v2021_04_01/aio/operations/_file_shares_operations.py +98 -151
  407. azure/mgmt/storage/v2021_04_01/aio/operations/_management_policies_operations.py +39 -57
  408. azure/mgmt/storage/v2021_04_01/aio/operations/_object_replication_policies_operations.py +54 -76
  409. azure/mgmt/storage/v2021_04_01/aio/operations/_operations.py +20 -22
  410. azure/mgmt/storage/v2021_04_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  411. azure/mgmt/storage/v2021_04_01/aio/operations/_private_link_resources_operations.py +15 -19
  412. azure/mgmt/storage/v2021_04_01/aio/operations/_queue_operations.py +68 -101
  413. azure/mgmt/storage/v2021_04_01/aio/operations/_queue_services_operations.py +40 -58
  414. azure/mgmt/storage/v2021_04_01/aio/operations/_skus_operations.py +20 -22
  415. azure/mgmt/storage/v2021_04_01/aio/operations/_storage_accounts_operations.py +203 -357
  416. azure/mgmt/storage/v2021_04_01/aio/operations/_table_operations.py +55 -79
  417. azure/mgmt/storage/v2021_04_01/aio/operations/_table_services_operations.py +40 -58
  418. azure/mgmt/storage/v2021_04_01/aio/operations/_usages_operations.py +20 -24
  419. azure/mgmt/storage/v2021_04_01/models/_models_py3.py +66 -88
  420. azure/mgmt/storage/v2021_04_01/models/_storage_management_client_enums.py +2 -2
  421. azure/mgmt/storage/v2021_04_01/operations/_blob_containers_operations.py +211 -325
  422. azure/mgmt/storage/v2021_04_01/operations/_blob_inventory_policies_operations.py +62 -85
  423. azure/mgmt/storage/v2021_04_01/operations/_blob_services_operations.py +52 -70
  424. azure/mgmt/storage/v2021_04_01/operations/_deleted_accounts_operations.py +34 -41
  425. azure/mgmt/storage/v2021_04_01/operations/_encryption_scopes_operations.py +67 -95
  426. azure/mgmt/storage/v2021_04_01/operations/_file_services_operations.py +48 -66
  427. azure/mgmt/storage/v2021_04_01/operations/_file_shares_operations.py +113 -166
  428. azure/mgmt/storage/v2021_04_01/operations/_management_policies_operations.py +46 -64
  429. azure/mgmt/storage/v2021_04_01/operations/_object_replication_policies_operations.py +63 -85
  430. azure/mgmt/storage/v2021_04_01/operations/_operations.py +21 -23
  431. azure/mgmt/storage/v2021_04_01/operations/_private_endpoint_connections_operations.py +62 -85
  432. azure/mgmt/storage/v2021_04_01/operations/_private_link_resources_operations.py +18 -22
  433. azure/mgmt/storage/v2021_04_01/operations/_queue_operations.py +79 -112
  434. azure/mgmt/storage/v2021_04_01/operations/_queue_services_operations.py +47 -65
  435. azure/mgmt/storage/v2021_04_01/operations/_skus_operations.py +23 -25
  436. azure/mgmt/storage/v2021_04_01/operations/_storage_accounts_operations.py +233 -387
  437. azure/mgmt/storage/v2021_04_01/operations/_table_operations.py +66 -90
  438. azure/mgmt/storage/v2021_04_01/operations/_table_services_operations.py +47 -65
  439. azure/mgmt/storage/v2021_04_01/operations/_usages_operations.py +23 -27
  440. azure/mgmt/storage/v2021_06_01/_configuration.py +4 -11
  441. azure/mgmt/storage/v2021_06_01/_patch.py +1 -0
  442. azure/mgmt/storage/v2021_06_01/_storage_management_client.py +55 -23
  443. azure/mgmt/storage/v2021_06_01/_vendor.py +0 -14
  444. azure/mgmt/storage/v2021_06_01/_version.py +1 -1
  445. azure/mgmt/storage/v2021_06_01/aio/_configuration.py +4 -11
  446. azure/mgmt/storage/v2021_06_01/aio/_patch.py +1 -0
  447. azure/mgmt/storage/v2021_06_01/aio/_storage_management_client.py +57 -23
  448. azure/mgmt/storage/v2021_06_01/aio/operations/_blob_containers_operations.py +181 -315
  449. azure/mgmt/storage/v2021_06_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  450. azure/mgmt/storage/v2021_06_01/aio/operations/_blob_services_operations.py +45 -79
  451. azure/mgmt/storage/v2021_06_01/aio/operations/_deleted_accounts_operations.py +29 -36
  452. azure/mgmt/storage/v2021_06_01/aio/operations/_encryption_scopes_operations.py +58 -86
  453. azure/mgmt/storage/v2021_06_01/aio/operations/_file_services_operations.py +41 -75
  454. azure/mgmt/storage/v2021_06_01/aio/operations/_file_shares_operations.py +98 -151
  455. azure/mgmt/storage/v2021_06_01/aio/operations/_management_policies_operations.py +39 -57
  456. azure/mgmt/storage/v2021_06_01/aio/operations/_object_replication_policies_operations.py +54 -76
  457. azure/mgmt/storage/v2021_06_01/aio/operations/_operations.py +20 -22
  458. azure/mgmt/storage/v2021_06_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  459. azure/mgmt/storage/v2021_06_01/aio/operations/_private_link_resources_operations.py +15 -19
  460. azure/mgmt/storage/v2021_06_01/aio/operations/_queue_operations.py +68 -101
  461. azure/mgmt/storage/v2021_06_01/aio/operations/_queue_services_operations.py +40 -74
  462. azure/mgmt/storage/v2021_06_01/aio/operations/_skus_operations.py +20 -22
  463. azure/mgmt/storage/v2021_06_01/aio/operations/_storage_accounts_operations.py +230 -416
  464. azure/mgmt/storage/v2021_06_01/aio/operations/_table_operations.py +55 -79
  465. azure/mgmt/storage/v2021_06_01/aio/operations/_table_services_operations.py +40 -74
  466. azure/mgmt/storage/v2021_06_01/aio/operations/_usages_operations.py +20 -24
  467. azure/mgmt/storage/v2021_06_01/models/_models_py3.py +66 -88
  468. azure/mgmt/storage/v2021_06_01/models/_storage_management_client_enums.py +2 -2
  469. azure/mgmt/storage/v2021_06_01/operations/_blob_containers_operations.py +211 -345
  470. azure/mgmt/storage/v2021_06_01/operations/_blob_inventory_policies_operations.py +62 -85
  471. azure/mgmt/storage/v2021_06_01/operations/_blob_services_operations.py +52 -86
  472. azure/mgmt/storage/v2021_06_01/operations/_deleted_accounts_operations.py +34 -41
  473. azure/mgmt/storage/v2021_06_01/operations/_encryption_scopes_operations.py +67 -95
  474. azure/mgmt/storage/v2021_06_01/operations/_file_services_operations.py +48 -82
  475. azure/mgmt/storage/v2021_06_01/operations/_file_shares_operations.py +113 -166
  476. azure/mgmt/storage/v2021_06_01/operations/_management_policies_operations.py +46 -64
  477. azure/mgmt/storage/v2021_06_01/operations/_object_replication_policies_operations.py +63 -85
  478. azure/mgmt/storage/v2021_06_01/operations/_operations.py +21 -23
  479. azure/mgmt/storage/v2021_06_01/operations/_private_endpoint_connections_operations.py +62 -85
  480. azure/mgmt/storage/v2021_06_01/operations/_private_link_resources_operations.py +18 -22
  481. azure/mgmt/storage/v2021_06_01/operations/_queue_operations.py +79 -112
  482. azure/mgmt/storage/v2021_06_01/operations/_queue_services_operations.py +47 -81
  483. azure/mgmt/storage/v2021_06_01/operations/_skus_operations.py +23 -25
  484. azure/mgmt/storage/v2021_06_01/operations/_storage_accounts_operations.py +266 -452
  485. azure/mgmt/storage/v2021_06_01/operations/_table_operations.py +66 -90
  486. azure/mgmt/storage/v2021_06_01/operations/_table_services_operations.py +47 -81
  487. azure/mgmt/storage/v2021_06_01/operations/_usages_operations.py +23 -27
  488. azure/mgmt/storage/v2021_08_01/_configuration.py +4 -11
  489. azure/mgmt/storage/v2021_08_01/_patch.py +1 -0
  490. azure/mgmt/storage/v2021_08_01/_storage_management_client.py +59 -25
  491. azure/mgmt/storage/v2021_08_01/_vendor.py +0 -14
  492. azure/mgmt/storage/v2021_08_01/_version.py +1 -1
  493. azure/mgmt/storage/v2021_08_01/aio/_configuration.py +4 -11
  494. azure/mgmt/storage/v2021_08_01/aio/_patch.py +1 -0
  495. azure/mgmt/storage/v2021_08_01/aio/_storage_management_client.py +61 -25
  496. azure/mgmt/storage/v2021_08_01/aio/operations/_blob_containers_operations.py +181 -315
  497. azure/mgmt/storage/v2021_08_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  498. azure/mgmt/storage/v2021_08_01/aio/operations/_blob_services_operations.py +45 -79
  499. azure/mgmt/storage/v2021_08_01/aio/operations/_deleted_accounts_operations.py +29 -36
  500. azure/mgmt/storage/v2021_08_01/aio/operations/_encryption_scopes_operations.py +58 -86
  501. azure/mgmt/storage/v2021_08_01/aio/operations/_file_services_operations.py +41 -75
  502. azure/mgmt/storage/v2021_08_01/aio/operations/_file_shares_operations.py +98 -151
  503. azure/mgmt/storage/v2021_08_01/aio/operations/_local_users_operations.py +71 -104
  504. azure/mgmt/storage/v2021_08_01/aio/operations/_management_policies_operations.py +39 -57
  505. azure/mgmt/storage/v2021_08_01/aio/operations/_object_replication_policies_operations.py +54 -76
  506. azure/mgmt/storage/v2021_08_01/aio/operations/_operations.py +20 -22
  507. azure/mgmt/storage/v2021_08_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  508. azure/mgmt/storage/v2021_08_01/aio/operations/_private_link_resources_operations.py +15 -19
  509. azure/mgmt/storage/v2021_08_01/aio/operations/_queue_operations.py +68 -101
  510. azure/mgmt/storage/v2021_08_01/aio/operations/_queue_services_operations.py +40 -74
  511. azure/mgmt/storage/v2021_08_01/aio/operations/_skus_operations.py +20 -22
  512. azure/mgmt/storage/v2021_08_01/aio/operations/_storage_accounts_operations.py +230 -416
  513. azure/mgmt/storage/v2021_08_01/aio/operations/_table_operations.py +55 -79
  514. azure/mgmt/storage/v2021_08_01/aio/operations/_table_services_operations.py +40 -74
  515. azure/mgmt/storage/v2021_08_01/aio/operations/_usages_operations.py +20 -24
  516. azure/mgmt/storage/v2021_08_01/models/_models_py3.py +68 -90
  517. azure/mgmt/storage/v2021_08_01/models/_storage_management_client_enums.py +2 -2
  518. azure/mgmt/storage/v2021_08_01/operations/_blob_containers_operations.py +211 -345
  519. azure/mgmt/storage/v2021_08_01/operations/_blob_inventory_policies_operations.py +62 -85
  520. azure/mgmt/storage/v2021_08_01/operations/_blob_services_operations.py +52 -86
  521. azure/mgmt/storage/v2021_08_01/operations/_deleted_accounts_operations.py +34 -41
  522. azure/mgmt/storage/v2021_08_01/operations/_encryption_scopes_operations.py +67 -95
  523. azure/mgmt/storage/v2021_08_01/operations/_file_services_operations.py +48 -82
  524. azure/mgmt/storage/v2021_08_01/operations/_file_shares_operations.py +113 -166
  525. azure/mgmt/storage/v2021_08_01/operations/_local_users_operations.py +84 -117
  526. azure/mgmt/storage/v2021_08_01/operations/_management_policies_operations.py +46 -64
  527. azure/mgmt/storage/v2021_08_01/operations/_object_replication_policies_operations.py +63 -85
  528. azure/mgmt/storage/v2021_08_01/operations/_operations.py +21 -23
  529. azure/mgmt/storage/v2021_08_01/operations/_private_endpoint_connections_operations.py +62 -85
  530. azure/mgmt/storage/v2021_08_01/operations/_private_link_resources_operations.py +18 -22
  531. azure/mgmt/storage/v2021_08_01/operations/_queue_operations.py +79 -112
  532. azure/mgmt/storage/v2021_08_01/operations/_queue_services_operations.py +47 -81
  533. azure/mgmt/storage/v2021_08_01/operations/_skus_operations.py +23 -25
  534. azure/mgmt/storage/v2021_08_01/operations/_storage_accounts_operations.py +266 -452
  535. azure/mgmt/storage/v2021_08_01/operations/_table_operations.py +66 -90
  536. azure/mgmt/storage/v2021_08_01/operations/_table_services_operations.py +47 -81
  537. azure/mgmt/storage/v2021_08_01/operations/_usages_operations.py +23 -27
  538. azure/mgmt/storage/v2021_09_01/_configuration.py +4 -11
  539. azure/mgmt/storage/v2021_09_01/_patch.py +1 -0
  540. azure/mgmt/storage/v2021_09_01/_storage_management_client.py +59 -25
  541. azure/mgmt/storage/v2021_09_01/_vendor.py +0 -14
  542. azure/mgmt/storage/v2021_09_01/_version.py +1 -1
  543. azure/mgmt/storage/v2021_09_01/aio/_configuration.py +4 -11
  544. azure/mgmt/storage/v2021_09_01/aio/_patch.py +1 -0
  545. azure/mgmt/storage/v2021_09_01/aio/_storage_management_client.py +61 -25
  546. azure/mgmt/storage/v2021_09_01/aio/operations/_blob_containers_operations.py +181 -315
  547. azure/mgmt/storage/v2021_09_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  548. azure/mgmt/storage/v2021_09_01/aio/operations/_blob_services_operations.py +45 -79
  549. azure/mgmt/storage/v2021_09_01/aio/operations/_deleted_accounts_operations.py +29 -36
  550. azure/mgmt/storage/v2021_09_01/aio/operations/_encryption_scopes_operations.py +58 -86
  551. azure/mgmt/storage/v2021_09_01/aio/operations/_file_services_operations.py +41 -75
  552. azure/mgmt/storage/v2021_09_01/aio/operations/_file_shares_operations.py +98 -151
  553. azure/mgmt/storage/v2021_09_01/aio/operations/_local_users_operations.py +71 -104
  554. azure/mgmt/storage/v2021_09_01/aio/operations/_management_policies_operations.py +39 -57
  555. azure/mgmt/storage/v2021_09_01/aio/operations/_object_replication_policies_operations.py +54 -76
  556. azure/mgmt/storage/v2021_09_01/aio/operations/_operations.py +20 -22
  557. azure/mgmt/storage/v2021_09_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  558. azure/mgmt/storage/v2021_09_01/aio/operations/_private_link_resources_operations.py +15 -19
  559. azure/mgmt/storage/v2021_09_01/aio/operations/_queue_operations.py +68 -101
  560. azure/mgmt/storage/v2021_09_01/aio/operations/_queue_services_operations.py +40 -74
  561. azure/mgmt/storage/v2021_09_01/aio/operations/_skus_operations.py +20 -22
  562. azure/mgmt/storage/v2021_09_01/aio/operations/_storage_accounts_operations.py +230 -416
  563. azure/mgmt/storage/v2021_09_01/aio/operations/_table_operations.py +70 -103
  564. azure/mgmt/storage/v2021_09_01/aio/operations/_table_services_operations.py +40 -74
  565. azure/mgmt/storage/v2021_09_01/aio/operations/_usages_operations.py +20 -24
  566. azure/mgmt/storage/v2021_09_01/models/_models_py3.py +70 -92
  567. azure/mgmt/storage/v2021_09_01/models/_storage_management_client_enums.py +2 -2
  568. azure/mgmt/storage/v2021_09_01/operations/_blob_containers_operations.py +211 -345
  569. azure/mgmt/storage/v2021_09_01/operations/_blob_inventory_policies_operations.py +62 -85
  570. azure/mgmt/storage/v2021_09_01/operations/_blob_services_operations.py +52 -86
  571. azure/mgmt/storage/v2021_09_01/operations/_deleted_accounts_operations.py +34 -41
  572. azure/mgmt/storage/v2021_09_01/operations/_encryption_scopes_operations.py +67 -95
  573. azure/mgmt/storage/v2021_09_01/operations/_file_services_operations.py +48 -82
  574. azure/mgmt/storage/v2021_09_01/operations/_file_shares_operations.py +113 -166
  575. azure/mgmt/storage/v2021_09_01/operations/_local_users_operations.py +84 -117
  576. azure/mgmt/storage/v2021_09_01/operations/_management_policies_operations.py +46 -64
  577. azure/mgmt/storage/v2021_09_01/operations/_object_replication_policies_operations.py +63 -85
  578. azure/mgmt/storage/v2021_09_01/operations/_operations.py +21 -23
  579. azure/mgmt/storage/v2021_09_01/operations/_private_endpoint_connections_operations.py +62 -85
  580. azure/mgmt/storage/v2021_09_01/operations/_private_link_resources_operations.py +18 -22
  581. azure/mgmt/storage/v2021_09_01/operations/_queue_operations.py +79 -112
  582. azure/mgmt/storage/v2021_09_01/operations/_queue_services_operations.py +47 -81
  583. azure/mgmt/storage/v2021_09_01/operations/_skus_operations.py +23 -25
  584. azure/mgmt/storage/v2021_09_01/operations/_storage_accounts_operations.py +266 -452
  585. azure/mgmt/storage/v2021_09_01/operations/_table_operations.py +81 -114
  586. azure/mgmt/storage/v2021_09_01/operations/_table_services_operations.py +47 -81
  587. azure/mgmt/storage/v2021_09_01/operations/_usages_operations.py +23 -27
  588. azure/mgmt/storage/v2022_05_01/_configuration.py +4 -11
  589. azure/mgmt/storage/v2022_05_01/_storage_management_client.py +59 -25
  590. azure/mgmt/storage/v2022_05_01/_vendor.py +0 -14
  591. azure/mgmt/storage/v2022_05_01/_version.py +1 -1
  592. azure/mgmt/storage/v2022_05_01/aio/_configuration.py +4 -11
  593. azure/mgmt/storage/v2022_05_01/aio/_storage_management_client.py +61 -25
  594. azure/mgmt/storage/v2022_05_01/aio/operations/_blob_containers_operations.py +181 -315
  595. azure/mgmt/storage/v2022_05_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  596. azure/mgmt/storage/v2022_05_01/aio/operations/_blob_services_operations.py +45 -79
  597. azure/mgmt/storage/v2022_05_01/aio/operations/_deleted_accounts_operations.py +29 -36
  598. azure/mgmt/storage/v2022_05_01/aio/operations/_encryption_scopes_operations.py +58 -86
  599. azure/mgmt/storage/v2022_05_01/aio/operations/_file_services_operations.py +41 -75
  600. azure/mgmt/storage/v2022_05_01/aio/operations/_file_shares_operations.py +98 -151
  601. azure/mgmt/storage/v2022_05_01/aio/operations/_local_users_operations.py +71 -104
  602. azure/mgmt/storage/v2022_05_01/aio/operations/_management_policies_operations.py +39 -57
  603. azure/mgmt/storage/v2022_05_01/aio/operations/_object_replication_policies_operations.py +54 -76
  604. azure/mgmt/storage/v2022_05_01/aio/operations/_operations.py +20 -22
  605. azure/mgmt/storage/v2022_05_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  606. azure/mgmt/storage/v2022_05_01/aio/operations/_private_link_resources_operations.py +15 -19
  607. azure/mgmt/storage/v2022_05_01/aio/operations/_queue_operations.py +68 -101
  608. azure/mgmt/storage/v2022_05_01/aio/operations/_queue_services_operations.py +40 -74
  609. azure/mgmt/storage/v2022_05_01/aio/operations/_skus_operations.py +20 -22
  610. azure/mgmt/storage/v2022_05_01/aio/operations/_storage_accounts_operations.py +230 -416
  611. azure/mgmt/storage/v2022_05_01/aio/operations/_table_operations.py +70 -103
  612. azure/mgmt/storage/v2022_05_01/aio/operations/_table_services_operations.py +40 -74
  613. azure/mgmt/storage/v2022_05_01/aio/operations/_usages_operations.py +20 -24
  614. azure/mgmt/storage/v2022_05_01/models/_models_py3.py +69 -91
  615. azure/mgmt/storage/v2022_05_01/models/_storage_management_client_enums.py +2 -2
  616. azure/mgmt/storage/v2022_05_01/operations/_blob_containers_operations.py +211 -345
  617. azure/mgmt/storage/v2022_05_01/operations/_blob_inventory_policies_operations.py +62 -85
  618. azure/mgmt/storage/v2022_05_01/operations/_blob_services_operations.py +52 -86
  619. azure/mgmt/storage/v2022_05_01/operations/_deleted_accounts_operations.py +34 -41
  620. azure/mgmt/storage/v2022_05_01/operations/_encryption_scopes_operations.py +67 -95
  621. azure/mgmt/storage/v2022_05_01/operations/_file_services_operations.py +48 -82
  622. azure/mgmt/storage/v2022_05_01/operations/_file_shares_operations.py +113 -166
  623. azure/mgmt/storage/v2022_05_01/operations/_local_users_operations.py +84 -117
  624. azure/mgmt/storage/v2022_05_01/operations/_management_policies_operations.py +46 -64
  625. azure/mgmt/storage/v2022_05_01/operations/_object_replication_policies_operations.py +63 -85
  626. azure/mgmt/storage/v2022_05_01/operations/_operations.py +21 -23
  627. azure/mgmt/storage/v2022_05_01/operations/_private_endpoint_connections_operations.py +62 -85
  628. azure/mgmt/storage/v2022_05_01/operations/_private_link_resources_operations.py +18 -22
  629. azure/mgmt/storage/v2022_05_01/operations/_queue_operations.py +79 -112
  630. azure/mgmt/storage/v2022_05_01/operations/_queue_services_operations.py +47 -81
  631. azure/mgmt/storage/v2022_05_01/operations/_skus_operations.py +23 -25
  632. azure/mgmt/storage/v2022_05_01/operations/_storage_accounts_operations.py +266 -452
  633. azure/mgmt/storage/v2022_05_01/operations/_table_operations.py +81 -114
  634. azure/mgmt/storage/v2022_05_01/operations/_table_services_operations.py +47 -81
  635. azure/mgmt/storage/v2022_05_01/operations/_usages_operations.py +23 -27
  636. azure/mgmt/storage/v2022_09_01/_configuration.py +4 -11
  637. azure/mgmt/storage/v2022_09_01/_storage_management_client.py +59 -25
  638. azure/mgmt/storage/v2022_09_01/_vendor.py +0 -14
  639. azure/mgmt/storage/v2022_09_01/_version.py +1 -1
  640. azure/mgmt/storage/v2022_09_01/aio/_configuration.py +4 -11
  641. azure/mgmt/storage/v2022_09_01/aio/_storage_management_client.py +61 -25
  642. azure/mgmt/storage/v2022_09_01/aio/operations/_blob_containers_operations.py +181 -315
  643. azure/mgmt/storage/v2022_09_01/aio/operations/_blob_inventory_policies_operations.py +53 -76
  644. azure/mgmt/storage/v2022_09_01/aio/operations/_blob_services_operations.py +45 -79
  645. azure/mgmt/storage/v2022_09_01/aio/operations/_deleted_accounts_operations.py +29 -36
  646. azure/mgmt/storage/v2022_09_01/aio/operations/_encryption_scopes_operations.py +58 -86
  647. azure/mgmt/storage/v2022_09_01/aio/operations/_file_services_operations.py +41 -75
  648. azure/mgmt/storage/v2022_09_01/aio/operations/_file_shares_operations.py +98 -151
  649. azure/mgmt/storage/v2022_09_01/aio/operations/_local_users_operations.py +71 -104
  650. azure/mgmt/storage/v2022_09_01/aio/operations/_management_policies_operations.py +39 -57
  651. azure/mgmt/storage/v2022_09_01/aio/operations/_object_replication_policies_operations.py +54 -76
  652. azure/mgmt/storage/v2022_09_01/aio/operations/_operations.py +20 -22
  653. azure/mgmt/storage/v2022_09_01/aio/operations/_private_endpoint_connections_operations.py +53 -76
  654. azure/mgmt/storage/v2022_09_01/aio/operations/_private_link_resources_operations.py +15 -19
  655. azure/mgmt/storage/v2022_09_01/aio/operations/_queue_operations.py +68 -101
  656. azure/mgmt/storage/v2022_09_01/aio/operations/_queue_services_operations.py +40 -74
  657. azure/mgmt/storage/v2022_09_01/aio/operations/_skus_operations.py +20 -22
  658. azure/mgmt/storage/v2022_09_01/aio/operations/_storage_accounts_operations.py +230 -416
  659. azure/mgmt/storage/v2022_09_01/aio/operations/_table_operations.py +70 -103
  660. azure/mgmt/storage/v2022_09_01/aio/operations/_table_services_operations.py +40 -74
  661. azure/mgmt/storage/v2022_09_01/aio/operations/_usages_operations.py +20 -24
  662. azure/mgmt/storage/v2022_09_01/models/_models_py3.py +69 -91
  663. azure/mgmt/storage/v2022_09_01/models/_storage_management_client_enums.py +2 -2
  664. azure/mgmt/storage/v2022_09_01/operations/_blob_containers_operations.py +211 -345
  665. azure/mgmt/storage/v2022_09_01/operations/_blob_inventory_policies_operations.py +62 -85
  666. azure/mgmt/storage/v2022_09_01/operations/_blob_services_operations.py +52 -86
  667. azure/mgmt/storage/v2022_09_01/operations/_deleted_accounts_operations.py +34 -41
  668. azure/mgmt/storage/v2022_09_01/operations/_encryption_scopes_operations.py +67 -95
  669. azure/mgmt/storage/v2022_09_01/operations/_file_services_operations.py +48 -82
  670. azure/mgmt/storage/v2022_09_01/operations/_file_shares_operations.py +113 -166
  671. azure/mgmt/storage/v2022_09_01/operations/_local_users_operations.py +84 -117
  672. azure/mgmt/storage/v2022_09_01/operations/_management_policies_operations.py +46 -64
  673. azure/mgmt/storage/v2022_09_01/operations/_object_replication_policies_operations.py +63 -85
  674. azure/mgmt/storage/v2022_09_01/operations/_operations.py +21 -23
  675. azure/mgmt/storage/v2022_09_01/operations/_private_endpoint_connections_operations.py +62 -85
  676. azure/mgmt/storage/v2022_09_01/operations/_private_link_resources_operations.py +18 -22
  677. azure/mgmt/storage/v2022_09_01/operations/_queue_operations.py +79 -112
  678. azure/mgmt/storage/v2022_09_01/operations/_queue_services_operations.py +47 -81
  679. azure/mgmt/storage/v2022_09_01/operations/_skus_operations.py +23 -25
  680. azure/mgmt/storage/v2022_09_01/operations/_storage_accounts_operations.py +266 -452
  681. azure/mgmt/storage/v2022_09_01/operations/_table_operations.py +81 -114
  682. azure/mgmt/storage/v2022_09_01/operations/_table_services_operations.py +47 -81
  683. azure/mgmt/storage/v2022_09_01/operations/_usages_operations.py +23 -27
  684. azure/mgmt/storage/v2023_01_01/__init__.py +26 -0
  685. azure/mgmt/storage/v2023_01_01/_configuration.py +65 -0
  686. azure/mgmt/storage/v2023_01_01/_patch.py +20 -0
  687. azure/mgmt/storage/v2023_01_01/_storage_management_client.py +225 -0
  688. azure/mgmt/storage/v2023_01_01/_vendor.py +16 -0
  689. azure/mgmt/storage/v2023_01_01/_version.py +9 -0
  690. azure/mgmt/storage/v2023_01_01/aio/__init__.py +23 -0
  691. azure/mgmt/storage/v2023_01_01/aio/_configuration.py +65 -0
  692. azure/mgmt/storage/v2023_01_01/aio/_patch.py +20 -0
  693. azure/mgmt/storage/v2023_01_01/aio/_storage_management_client.py +230 -0
  694. azure/mgmt/storage/v2023_01_01/aio/operations/__init__.py +57 -0
  695. azure/mgmt/storage/v2023_01_01/aio/operations/_blob_containers_operations.py +1838 -0
  696. azure/mgmt/storage/v2023_01_01/aio/operations/_blob_inventory_policies_operations.py +442 -0
  697. azure/mgmt/storage/v2023_01_01/aio/operations/_blob_services_operations.py +362 -0
  698. azure/mgmt/storage/v2023_01_01/aio/operations/_deleted_accounts_operations.py +194 -0
  699. azure/mgmt/storage/v2023_01_01/aio/operations/_encryption_scopes_operations.py +568 -0
  700. azure/mgmt/storage/v2023_01_01/aio/operations/_file_services_operations.py +328 -0
  701. azure/mgmt/storage/v2023_01_01/aio/operations/_file_shares_operations.py +1003 -0
  702. azure/mgmt/storage/v2023_01_01/aio/operations/_local_users_operations.py +560 -0
  703. azure/mgmt/storage/v2023_01_01/aio/operations/_management_policies_operations.py +349 -0
  704. azure/mgmt/storage/v2023_01_01/aio/operations/_object_replication_policies_operations.py +446 -0
  705. azure/mgmt/storage/v2023_01_01/aio/operations/_operations.py +135 -0
  706. azure/mgmt/storage/v2023_01_01/aio/operations/_patch.py +20 -0
  707. azure/mgmt/storage/v2023_01_01/aio/operations/_private_endpoint_connections_operations.py +432 -0
  708. azure/mgmt/storage/v2023_01_01/aio/operations/_private_link_resources_operations.py +117 -0
  709. azure/mgmt/storage/v2023_01_01/aio/operations/_queue_operations.py +608 -0
  710. azure/mgmt/storage/v2023_01_01/aio/operations/_queue_services_operations.py +328 -0
  711. azure/mgmt/storage/v2023_01_01/aio/operations/_skus_operations.py +136 -0
  712. azure/mgmt/storage/v2023_01_01/aio/operations/_storage_accounts_operations.py +2187 -0
  713. azure/mgmt/storage/v2023_01_01/aio/operations/_table_operations.py +588 -0
  714. azure/mgmt/storage/v2023_01_01/aio/operations/_table_services_operations.py +328 -0
  715. azure/mgmt/storage/v2023_01_01/aio/operations/_usages_operations.py +139 -0
  716. azure/mgmt/storage/v2023_01_01/models/__init__.py +461 -0
  717. azure/mgmt/storage/v2023_01_01/models/_models_py3.py +8338 -0
  718. azure/mgmt/storage/v2023_01_01/models/_patch.py +20 -0
  719. azure/mgmt/storage/v2023_01_01/models/_storage_management_client_enums.py +626 -0
  720. azure/mgmt/storage/v2023_01_01/operations/__init__.py +57 -0
  721. azure/mgmt/storage/v2023_01_01/operations/_blob_containers_operations.py +2398 -0
  722. azure/mgmt/storage/v2023_01_01/operations/_blob_inventory_policies_operations.py +595 -0
  723. azure/mgmt/storage/v2023_01_01/operations/_blob_services_operations.py +470 -0
  724. azure/mgmt/storage/v2023_01_01/operations/_deleted_accounts_operations.py +250 -0
  725. azure/mgmt/storage/v2023_01_01/operations/_encryption_scopes_operations.py +732 -0
  726. azure/mgmt/storage/v2023_01_01/operations/_file_services_operations.py +437 -0
  727. azure/mgmt/storage/v2023_01_01/operations/_file_shares_operations.py +1310 -0
  728. azure/mgmt/storage/v2023_01_01/operations/_local_users_operations.py +770 -0
  729. azure/mgmt/storage/v2023_01_01/operations/_management_policies_operations.py +465 -0
  730. azure/mgmt/storage/v2023_01_01/operations/_object_replication_policies_operations.py +593 -0
  731. azure/mgmt/storage/v2023_01_01/operations/_operations.py +156 -0
  732. azure/mgmt/storage/v2023_01_01/operations/_patch.py +20 -0
  733. azure/mgmt/storage/v2023_01_01/operations/_private_endpoint_connections_operations.py +591 -0
  734. azure/mgmt/storage/v2023_01_01/operations/_private_link_resources_operations.py +155 -0
  735. azure/mgmt/storage/v2023_01_01/operations/_queue_operations.py +824 -0
  736. azure/mgmt/storage/v2023_01_01/operations/_queue_services_operations.py +437 -0
  737. azure/mgmt/storage/v2023_01_01/operations/_skus_operations.py +162 -0
  738. azure/mgmt/storage/v2023_01_01/operations/_storage_accounts_operations.py +2796 -0
  739. azure/mgmt/storage/v2023_01_01/operations/_table_operations.py +775 -0
  740. azure/mgmt/storage/v2023_01_01/operations/_table_services_operations.py +437 -0
  741. azure/mgmt/storage/v2023_01_01/operations/_usages_operations.py +169 -0
  742. azure/mgmt/storage/v2023_05_01/__init__.py +26 -0
  743. azure/mgmt/storage/v2023_05_01/_configuration.py +65 -0
  744. azure/mgmt/storage/v2023_05_01/_patch.py +20 -0
  745. azure/mgmt/storage/v2023_05_01/_storage_management_client.py +256 -0
  746. azure/mgmt/storage/v2023_05_01/_vendor.py +16 -0
  747. azure/mgmt/storage/v2023_05_01/_version.py +9 -0
  748. azure/mgmt/storage/v2023_05_01/aio/__init__.py +23 -0
  749. azure/mgmt/storage/v2023_05_01/aio/_configuration.py +65 -0
  750. azure/mgmt/storage/v2023_05_01/aio/_patch.py +20 -0
  751. azure/mgmt/storage/v2023_05_01/aio/_storage_management_client.py +261 -0
  752. azure/mgmt/storage/v2023_05_01/aio/operations/__init__.py +65 -0
  753. azure/mgmt/storage/v2023_05_01/aio/operations/_blob_containers_operations.py +1838 -0
  754. azure/mgmt/storage/v2023_05_01/aio/operations/_blob_inventory_policies_operations.py +442 -0
  755. azure/mgmt/storage/v2023_05_01/aio/operations/_blob_services_operations.py +362 -0
  756. azure/mgmt/storage/v2023_05_01/aio/operations/_deleted_accounts_operations.py +194 -0
  757. azure/mgmt/storage/v2023_05_01/aio/operations/_encryption_scopes_operations.py +568 -0
  758. azure/mgmt/storage/v2023_05_01/aio/operations/_file_services_operations.py +328 -0
  759. azure/mgmt/storage/v2023_05_01/aio/operations/_file_shares_operations.py +1003 -0
  760. azure/mgmt/storage/v2023_05_01/aio/operations/_local_users_operations.py +583 -0
  761. azure/mgmt/storage/v2023_05_01/aio/operations/_management_policies_operations.py +349 -0
  762. azure/mgmt/storage/v2023_05_01/aio/operations/_network_security_perimeter_configurations_operations.py +342 -0
  763. azure/mgmt/storage/v2023_05_01/aio/operations/_object_replication_policies_operations.py +446 -0
  764. azure/mgmt/storage/v2023_05_01/aio/operations/_operations.py +135 -0
  765. azure/mgmt/storage/v2023_05_01/aio/operations/_patch.py +20 -0
  766. azure/mgmt/storage/v2023_05_01/aio/operations/_private_endpoint_connections_operations.py +432 -0
  767. azure/mgmt/storage/v2023_05_01/aio/operations/_private_link_resources_operations.py +117 -0
  768. azure/mgmt/storage/v2023_05_01/aio/operations/_queue_operations.py +608 -0
  769. azure/mgmt/storage/v2023_05_01/aio/operations/_queue_services_operations.py +328 -0
  770. azure/mgmt/storage/v2023_05_01/aio/operations/_skus_operations.py +136 -0
  771. azure/mgmt/storage/v2023_05_01/aio/operations/_storage_accounts_operations.py +2187 -0
  772. azure/mgmt/storage/v2023_05_01/aio/operations/_storage_task_assignment_instances_report_operations.py +170 -0
  773. azure/mgmt/storage/v2023_05_01/aio/operations/_storage_task_assignments_instances_report_operations.py +164 -0
  774. azure/mgmt/storage/v2023_05_01/aio/operations/_storage_task_assignments_operations.py +802 -0
  775. azure/mgmt/storage/v2023_05_01/aio/operations/_table_operations.py +588 -0
  776. azure/mgmt/storage/v2023_05_01/aio/operations/_table_services_operations.py +328 -0
  777. azure/mgmt/storage/v2023_05_01/aio/operations/_usages_operations.py +139 -0
  778. azure/mgmt/storage/v2023_05_01/models/__init__.py +537 -0
  779. azure/mgmt/storage/v2023_05_01/models/_models_py3.py +9703 -0
  780. azure/mgmt/storage/v2023_05_01/models/_patch.py +20 -0
  781. azure/mgmt/storage/v2023_05_01/models/_storage_management_client_enums.py +706 -0
  782. azure/mgmt/storage/v2023_05_01/operations/__init__.py +65 -0
  783. azure/mgmt/storage/v2023_05_01/operations/_blob_containers_operations.py +2398 -0
  784. azure/mgmt/storage/v2023_05_01/operations/_blob_inventory_policies_operations.py +595 -0
  785. azure/mgmt/storage/v2023_05_01/operations/_blob_services_operations.py +470 -0
  786. azure/mgmt/storage/v2023_05_01/operations/_deleted_accounts_operations.py +250 -0
  787. azure/mgmt/storage/v2023_05_01/operations/_encryption_scopes_operations.py +732 -0
  788. azure/mgmt/storage/v2023_05_01/operations/_file_services_operations.py +437 -0
  789. azure/mgmt/storage/v2023_05_01/operations/_file_shares_operations.py +1310 -0
  790. azure/mgmt/storage/v2023_05_01/operations/_local_users_operations.py +808 -0
  791. azure/mgmt/storage/v2023_05_01/operations/_management_policies_operations.py +465 -0
  792. azure/mgmt/storage/v2023_05_01/operations/_network_security_perimeter_configurations_operations.py +463 -0
  793. azure/mgmt/storage/v2023_05_01/operations/_object_replication_policies_operations.py +593 -0
  794. azure/mgmt/storage/v2023_05_01/operations/_operations.py +156 -0
  795. azure/mgmt/storage/v2023_05_01/operations/_patch.py +20 -0
  796. azure/mgmt/storage/v2023_05_01/operations/_private_endpoint_connections_operations.py +591 -0
  797. azure/mgmt/storage/v2023_05_01/operations/_private_link_resources_operations.py +155 -0
  798. azure/mgmt/storage/v2023_05_01/operations/_queue_operations.py +824 -0
  799. azure/mgmt/storage/v2023_05_01/operations/_queue_services_operations.py +437 -0
  800. azure/mgmt/storage/v2023_05_01/operations/_skus_operations.py +162 -0
  801. azure/mgmt/storage/v2023_05_01/operations/_storage_accounts_operations.py +2796 -0
  802. azure/mgmt/storage/v2023_05_01/operations/_storage_task_assignment_instances_report_operations.py +227 -0
  803. azure/mgmt/storage/v2023_05_01/operations/_storage_task_assignments_instances_report_operations.py +212 -0
  804. azure/mgmt/storage/v2023_05_01/operations/_storage_task_assignments_operations.py +1018 -0
  805. azure/mgmt/storage/v2023_05_01/operations/_table_operations.py +775 -0
  806. azure/mgmt/storage/v2023_05_01/operations/_table_services_operations.py +437 -0
  807. azure/mgmt/storage/v2023_05_01/operations/_usages_operations.py +169 -0
  808. {azure_mgmt_storage-21.1.0b1.dist-info → azure_mgmt_storage-21.2.1.dist-info}/METADATA +52 -13
  809. azure_mgmt_storage-21.2.1.dist-info/RECORD +979 -0
  810. {azure_mgmt_storage-21.1.0b1.dist-info → azure_mgmt_storage-21.2.1.dist-info}/WHEEL +1 -1
  811. azure_mgmt_storage-21.1.0b1.dist-info/RECORD +0 -855
  812. {azure_mgmt_storage-21.1.0b1.dist-info → azure_mgmt_storage-21.2.1.dist-info}/LICENSE +0 -0
  813. {azure_mgmt_storage-21.1.0b1.dist-info → azure_mgmt_storage-21.2.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1838 @@
1
+ # pylint: disable=too-many-lines,too-many-statements
2
+ # coding=utf-8
3
+ # --------------------------------------------------------------------------
4
+ # Copyright (c) Microsoft Corporation. All rights reserved.
5
+ # Licensed under the MIT License. See License.txt in the project root for license information.
6
+ # Code generated by Microsoft (R) AutoRest Code Generator.
7
+ # Changes may cause incorrect behavior and will be lost if the code is regenerated.
8
+ # --------------------------------------------------------------------------
9
+ from io import IOBase
10
+ import sys
11
+ from typing import Any, AsyncIterable, Callable, Dict, IO, Literal, Optional, Type, TypeVar, Union, cast, overload
12
+ import urllib.parse
13
+
14
+ from azure.core.async_paging import AsyncItemPaged, AsyncList
15
+ from azure.core.exceptions import (
16
+ ClientAuthenticationError,
17
+ HttpResponseError,
18
+ ResourceExistsError,
19
+ ResourceNotFoundError,
20
+ ResourceNotModifiedError,
21
+ map_error,
22
+ )
23
+ from azure.core.pipeline import PipelineResponse
24
+ from azure.core.pipeline.transport import AsyncHttpResponse
25
+ from azure.core.polling import AsyncLROPoller, AsyncNoPolling, AsyncPollingMethod
26
+ from azure.core.rest import HttpRequest
27
+ from azure.core.tracing.decorator import distributed_trace
28
+ from azure.core.tracing.decorator_async import distributed_trace_async
29
+ from azure.core.utils import case_insensitive_dict
30
+ from azure.mgmt.core.exceptions import ARMErrorFormat
31
+ from azure.mgmt.core.polling.async_arm_polling import AsyncARMPolling
32
+
33
+ from ... import models as _models
34
+ from ..._vendor import _convert_request
35
+ from ...operations._blob_containers_operations import (
36
+ build_clear_legal_hold_request,
37
+ build_create_or_update_immutability_policy_request,
38
+ build_create_request,
39
+ build_delete_immutability_policy_request,
40
+ build_delete_request,
41
+ build_extend_immutability_policy_request,
42
+ build_get_immutability_policy_request,
43
+ build_get_request,
44
+ build_lease_request,
45
+ build_list_request,
46
+ build_lock_immutability_policy_request,
47
+ build_object_level_worm_request,
48
+ build_set_legal_hold_request,
49
+ build_update_request,
50
+ )
51
+
52
+ if sys.version_info >= (3, 9):
53
+ from collections.abc import MutableMapping
54
+ else:
55
+ from typing import MutableMapping # type: ignore # pylint: disable=ungrouped-imports
56
+ T = TypeVar("T")
57
+ ClsType = Optional[Callable[[PipelineResponse[HttpRequest, AsyncHttpResponse], T, Dict[str, Any]], Any]]
58
+
59
+
60
+ class BlobContainersOperations:
61
+ """
62
+ .. warning::
63
+ **DO NOT** instantiate this class directly.
64
+
65
+ Instead, you should access the following operations through
66
+ :class:`~azure.mgmt.storage.v2023_01_01.aio.StorageManagementClient`'s
67
+ :attr:`blob_containers` attribute.
68
+ """
69
+
70
+ models = _models
71
+
72
+ def __init__(self, *args, **kwargs) -> None:
73
+ input_args = list(args)
74
+ self._client = input_args.pop(0) if input_args else kwargs.pop("client")
75
+ self._config = input_args.pop(0) if input_args else kwargs.pop("config")
76
+ self._serialize = input_args.pop(0) if input_args else kwargs.pop("serializer")
77
+ self._deserialize = input_args.pop(0) if input_args else kwargs.pop("deserializer")
78
+ self._api_version = input_args.pop(0) if input_args else kwargs.pop("api_version")
79
+
80
+ @distributed_trace
81
+ def list(
82
+ self,
83
+ resource_group_name: str,
84
+ account_name: str,
85
+ maxpagesize: Optional[str] = None,
86
+ filter: Optional[str] = None,
87
+ include: Optional[Union[str, _models.ListContainersInclude]] = None,
88
+ **kwargs: Any
89
+ ) -> AsyncIterable["_models.ListContainerItem"]:
90
+ """Lists all containers and does not support a prefix like data plane. Also SRP today does not
91
+ return continuation token.
92
+
93
+ :param resource_group_name: The name of the resource group within the user's subscription. The
94
+ name is case insensitive. Required.
95
+ :type resource_group_name: str
96
+ :param account_name: The name of the storage account within the specified resource group.
97
+ Storage account names must be between 3 and 24 characters in length and use numbers and
98
+ lower-case letters only. Required.
99
+ :type account_name: str
100
+ :param maxpagesize: Optional. Specified maximum number of containers that can be included in
101
+ the list. Default value is None.
102
+ :type maxpagesize: str
103
+ :param filter: Optional. When specified, only container names starting with the filter will be
104
+ listed. Default value is None.
105
+ :type filter: str
106
+ :param include: Optional, used to include the properties for soft deleted blob containers.
107
+ "deleted" Default value is None.
108
+ :type include: str or ~azure.mgmt.storage.v2023_01_01.models.ListContainersInclude
109
+ :return: An iterator like instance of either ListContainerItem or the result of cls(response)
110
+ :rtype:
111
+ ~azure.core.async_paging.AsyncItemPaged[~azure.mgmt.storage.v2023_01_01.models.ListContainerItem]
112
+ :raises ~azure.core.exceptions.HttpResponseError:
113
+ """
114
+ _headers = kwargs.pop("headers", {}) or {}
115
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
116
+
117
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
118
+ cls: ClsType[_models.ListContainerItems] = kwargs.pop("cls", None)
119
+
120
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
121
+ 401: ClientAuthenticationError,
122
+ 404: ResourceNotFoundError,
123
+ 409: ResourceExistsError,
124
+ 304: ResourceNotModifiedError,
125
+ }
126
+ error_map.update(kwargs.pop("error_map", {}) or {})
127
+
128
+ def prepare_request(next_link=None):
129
+ if not next_link:
130
+
131
+ _request = build_list_request(
132
+ resource_group_name=resource_group_name,
133
+ account_name=account_name,
134
+ subscription_id=self._config.subscription_id,
135
+ maxpagesize=maxpagesize,
136
+ filter=filter,
137
+ include=include,
138
+ api_version=api_version,
139
+ headers=_headers,
140
+ params=_params,
141
+ )
142
+ _request = _convert_request(_request)
143
+ _request.url = self._client.format_url(_request.url)
144
+
145
+ else:
146
+ # make call to next link with the client's api-version
147
+ _parsed_next_link = urllib.parse.urlparse(next_link)
148
+ _next_request_params = case_insensitive_dict(
149
+ {
150
+ key: [urllib.parse.quote(v) for v in value]
151
+ for key, value in urllib.parse.parse_qs(_parsed_next_link.query).items()
152
+ }
153
+ )
154
+ _next_request_params["api-version"] = self._api_version
155
+ _request = HttpRequest(
156
+ "GET", urllib.parse.urljoin(next_link, _parsed_next_link.path), params=_next_request_params
157
+ )
158
+ _request = _convert_request(_request)
159
+ _request.url = self._client.format_url(_request.url)
160
+ _request.method = "GET"
161
+ return _request
162
+
163
+ async def extract_data(pipeline_response):
164
+ deserialized = self._deserialize("ListContainerItems", pipeline_response)
165
+ list_of_elem = deserialized.value
166
+ if cls:
167
+ list_of_elem = cls(list_of_elem) # type: ignore
168
+ return deserialized.next_link or None, AsyncList(list_of_elem)
169
+
170
+ async def get_next(next_link=None):
171
+ _request = prepare_request(next_link)
172
+
173
+ _stream = False
174
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
175
+ _request, stream=_stream, **kwargs
176
+ )
177
+ response = pipeline_response.http_response
178
+
179
+ if response.status_code not in [200]:
180
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
181
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
182
+
183
+ return pipeline_response
184
+
185
+ return AsyncItemPaged(get_next, extract_data)
186
+
187
+ @overload
188
+ async def create(
189
+ self,
190
+ resource_group_name: str,
191
+ account_name: str,
192
+ container_name: str,
193
+ blob_container: _models.BlobContainer,
194
+ *,
195
+ content_type: str = "application/json",
196
+ **kwargs: Any
197
+ ) -> _models.BlobContainer:
198
+ """Creates a new container under the specified account as described by request body. The container
199
+ resource includes metadata and properties for that container. It does not include a list of the
200
+ blobs contained by the container.
201
+
202
+ :param resource_group_name: The name of the resource group within the user's subscription. The
203
+ name is case insensitive. Required.
204
+ :type resource_group_name: str
205
+ :param account_name: The name of the storage account within the specified resource group.
206
+ Storage account names must be between 3 and 24 characters in length and use numbers and
207
+ lower-case letters only. Required.
208
+ :type account_name: str
209
+ :param container_name: The name of the blob container within the specified storage account.
210
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
211
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
212
+ by a letter or number. Required.
213
+ :type container_name: str
214
+ :param blob_container: Properties of the blob container to create. Required.
215
+ :type blob_container: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
216
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
217
+ Default value is "application/json".
218
+ :paramtype content_type: str
219
+ :return: BlobContainer or the result of cls(response)
220
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
221
+ :raises ~azure.core.exceptions.HttpResponseError:
222
+ """
223
+
224
+ @overload
225
+ async def create(
226
+ self,
227
+ resource_group_name: str,
228
+ account_name: str,
229
+ container_name: str,
230
+ blob_container: IO[bytes],
231
+ *,
232
+ content_type: str = "application/json",
233
+ **kwargs: Any
234
+ ) -> _models.BlobContainer:
235
+ """Creates a new container under the specified account as described by request body. The container
236
+ resource includes metadata and properties for that container. It does not include a list of the
237
+ blobs contained by the container.
238
+
239
+ :param resource_group_name: The name of the resource group within the user's subscription. The
240
+ name is case insensitive. Required.
241
+ :type resource_group_name: str
242
+ :param account_name: The name of the storage account within the specified resource group.
243
+ Storage account names must be between 3 and 24 characters in length and use numbers and
244
+ lower-case letters only. Required.
245
+ :type account_name: str
246
+ :param container_name: The name of the blob container within the specified storage account.
247
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
248
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
249
+ by a letter or number. Required.
250
+ :type container_name: str
251
+ :param blob_container: Properties of the blob container to create. Required.
252
+ :type blob_container: IO[bytes]
253
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
254
+ Default value is "application/json".
255
+ :paramtype content_type: str
256
+ :return: BlobContainer or the result of cls(response)
257
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
258
+ :raises ~azure.core.exceptions.HttpResponseError:
259
+ """
260
+
261
+ @distributed_trace_async
262
+ async def create(
263
+ self,
264
+ resource_group_name: str,
265
+ account_name: str,
266
+ container_name: str,
267
+ blob_container: Union[_models.BlobContainer, IO[bytes]],
268
+ **kwargs: Any
269
+ ) -> _models.BlobContainer:
270
+ """Creates a new container under the specified account as described by request body. The container
271
+ resource includes metadata and properties for that container. It does not include a list of the
272
+ blobs contained by the container.
273
+
274
+ :param resource_group_name: The name of the resource group within the user's subscription. The
275
+ name is case insensitive. Required.
276
+ :type resource_group_name: str
277
+ :param account_name: The name of the storage account within the specified resource group.
278
+ Storage account names must be between 3 and 24 characters in length and use numbers and
279
+ lower-case letters only. Required.
280
+ :type account_name: str
281
+ :param container_name: The name of the blob container within the specified storage account.
282
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
283
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
284
+ by a letter or number. Required.
285
+ :type container_name: str
286
+ :param blob_container: Properties of the blob container to create. Is either a BlobContainer
287
+ type or a IO[bytes] type. Required.
288
+ :type blob_container: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer or IO[bytes]
289
+ :return: BlobContainer or the result of cls(response)
290
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
291
+ :raises ~azure.core.exceptions.HttpResponseError:
292
+ """
293
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
294
+ 401: ClientAuthenticationError,
295
+ 404: ResourceNotFoundError,
296
+ 409: ResourceExistsError,
297
+ 304: ResourceNotModifiedError,
298
+ }
299
+ error_map.update(kwargs.pop("error_map", {}) or {})
300
+
301
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
302
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
303
+
304
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
305
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
306
+ cls: ClsType[_models.BlobContainer] = kwargs.pop("cls", None)
307
+
308
+ content_type = content_type or "application/json"
309
+ _json = None
310
+ _content = None
311
+ if isinstance(blob_container, (IOBase, bytes)):
312
+ _content = blob_container
313
+ else:
314
+ _json = self._serialize.body(blob_container, "BlobContainer")
315
+
316
+ _request = build_create_request(
317
+ resource_group_name=resource_group_name,
318
+ account_name=account_name,
319
+ container_name=container_name,
320
+ subscription_id=self._config.subscription_id,
321
+ api_version=api_version,
322
+ content_type=content_type,
323
+ json=_json,
324
+ content=_content,
325
+ headers=_headers,
326
+ params=_params,
327
+ )
328
+ _request = _convert_request(_request)
329
+ _request.url = self._client.format_url(_request.url)
330
+
331
+ _stream = False
332
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
333
+ _request, stream=_stream, **kwargs
334
+ )
335
+
336
+ response = pipeline_response.http_response
337
+
338
+ if response.status_code not in [200, 201]:
339
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
340
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
341
+
342
+ if response.status_code == 200:
343
+ deserialized = self._deserialize("BlobContainer", pipeline_response)
344
+
345
+ if response.status_code == 201:
346
+ deserialized = self._deserialize("BlobContainer", pipeline_response)
347
+
348
+ if cls:
349
+ return cls(pipeline_response, deserialized, {}) # type: ignore
350
+
351
+ return deserialized # type: ignore
352
+
353
+ @overload
354
+ async def update(
355
+ self,
356
+ resource_group_name: str,
357
+ account_name: str,
358
+ container_name: str,
359
+ blob_container: _models.BlobContainer,
360
+ *,
361
+ content_type: str = "application/json",
362
+ **kwargs: Any
363
+ ) -> _models.BlobContainer:
364
+ """Updates container properties as specified in request body. Properties not mentioned in the
365
+ request will be unchanged. Update fails if the specified container doesn't already exist.
366
+
367
+ :param resource_group_name: The name of the resource group within the user's subscription. The
368
+ name is case insensitive. Required.
369
+ :type resource_group_name: str
370
+ :param account_name: The name of the storage account within the specified resource group.
371
+ Storage account names must be between 3 and 24 characters in length and use numbers and
372
+ lower-case letters only. Required.
373
+ :type account_name: str
374
+ :param container_name: The name of the blob container within the specified storage account.
375
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
376
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
377
+ by a letter or number. Required.
378
+ :type container_name: str
379
+ :param blob_container: Properties to update for the blob container. Required.
380
+ :type blob_container: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
381
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
382
+ Default value is "application/json".
383
+ :paramtype content_type: str
384
+ :return: BlobContainer or the result of cls(response)
385
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
386
+ :raises ~azure.core.exceptions.HttpResponseError:
387
+ """
388
+
389
+ @overload
390
+ async def update(
391
+ self,
392
+ resource_group_name: str,
393
+ account_name: str,
394
+ container_name: str,
395
+ blob_container: IO[bytes],
396
+ *,
397
+ content_type: str = "application/json",
398
+ **kwargs: Any
399
+ ) -> _models.BlobContainer:
400
+ """Updates container properties as specified in request body. Properties not mentioned in the
401
+ request will be unchanged. Update fails if the specified container doesn't already exist.
402
+
403
+ :param resource_group_name: The name of the resource group within the user's subscription. The
404
+ name is case insensitive. Required.
405
+ :type resource_group_name: str
406
+ :param account_name: The name of the storage account within the specified resource group.
407
+ Storage account names must be between 3 and 24 characters in length and use numbers and
408
+ lower-case letters only. Required.
409
+ :type account_name: str
410
+ :param container_name: The name of the blob container within the specified storage account.
411
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
412
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
413
+ by a letter or number. Required.
414
+ :type container_name: str
415
+ :param blob_container: Properties to update for the blob container. Required.
416
+ :type blob_container: IO[bytes]
417
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
418
+ Default value is "application/json".
419
+ :paramtype content_type: str
420
+ :return: BlobContainer or the result of cls(response)
421
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
422
+ :raises ~azure.core.exceptions.HttpResponseError:
423
+ """
424
+
425
+ @distributed_trace_async
426
+ async def update(
427
+ self,
428
+ resource_group_name: str,
429
+ account_name: str,
430
+ container_name: str,
431
+ blob_container: Union[_models.BlobContainer, IO[bytes]],
432
+ **kwargs: Any
433
+ ) -> _models.BlobContainer:
434
+ """Updates container properties as specified in request body. Properties not mentioned in the
435
+ request will be unchanged. Update fails if the specified container doesn't already exist.
436
+
437
+ :param resource_group_name: The name of the resource group within the user's subscription. The
438
+ name is case insensitive. Required.
439
+ :type resource_group_name: str
440
+ :param account_name: The name of the storage account within the specified resource group.
441
+ Storage account names must be between 3 and 24 characters in length and use numbers and
442
+ lower-case letters only. Required.
443
+ :type account_name: str
444
+ :param container_name: The name of the blob container within the specified storage account.
445
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
446
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
447
+ by a letter or number. Required.
448
+ :type container_name: str
449
+ :param blob_container: Properties to update for the blob container. Is either a BlobContainer
450
+ type or a IO[bytes] type. Required.
451
+ :type blob_container: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer or IO[bytes]
452
+ :return: BlobContainer or the result of cls(response)
453
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
454
+ :raises ~azure.core.exceptions.HttpResponseError:
455
+ """
456
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
457
+ 401: ClientAuthenticationError,
458
+ 404: ResourceNotFoundError,
459
+ 409: ResourceExistsError,
460
+ 304: ResourceNotModifiedError,
461
+ }
462
+ error_map.update(kwargs.pop("error_map", {}) or {})
463
+
464
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
465
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
466
+
467
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
468
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
469
+ cls: ClsType[_models.BlobContainer] = kwargs.pop("cls", None)
470
+
471
+ content_type = content_type or "application/json"
472
+ _json = None
473
+ _content = None
474
+ if isinstance(blob_container, (IOBase, bytes)):
475
+ _content = blob_container
476
+ else:
477
+ _json = self._serialize.body(blob_container, "BlobContainer")
478
+
479
+ _request = build_update_request(
480
+ resource_group_name=resource_group_name,
481
+ account_name=account_name,
482
+ container_name=container_name,
483
+ subscription_id=self._config.subscription_id,
484
+ api_version=api_version,
485
+ content_type=content_type,
486
+ json=_json,
487
+ content=_content,
488
+ headers=_headers,
489
+ params=_params,
490
+ )
491
+ _request = _convert_request(_request)
492
+ _request.url = self._client.format_url(_request.url)
493
+
494
+ _stream = False
495
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
496
+ _request, stream=_stream, **kwargs
497
+ )
498
+
499
+ response = pipeline_response.http_response
500
+
501
+ if response.status_code not in [200]:
502
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
503
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
504
+
505
+ deserialized = self._deserialize("BlobContainer", pipeline_response)
506
+
507
+ if cls:
508
+ return cls(pipeline_response, deserialized, {}) # type: ignore
509
+
510
+ return deserialized # type: ignore
511
+
512
+ @distributed_trace_async
513
+ async def get(
514
+ self, resource_group_name: str, account_name: str, container_name: str, **kwargs: Any
515
+ ) -> _models.BlobContainer:
516
+ """Gets properties of a specified container.
517
+
518
+ :param resource_group_name: The name of the resource group within the user's subscription. The
519
+ name is case insensitive. Required.
520
+ :type resource_group_name: str
521
+ :param account_name: The name of the storage account within the specified resource group.
522
+ Storage account names must be between 3 and 24 characters in length and use numbers and
523
+ lower-case letters only. Required.
524
+ :type account_name: str
525
+ :param container_name: The name of the blob container within the specified storage account.
526
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
527
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
528
+ by a letter or number. Required.
529
+ :type container_name: str
530
+ :return: BlobContainer or the result of cls(response)
531
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.BlobContainer
532
+ :raises ~azure.core.exceptions.HttpResponseError:
533
+ """
534
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
535
+ 401: ClientAuthenticationError,
536
+ 404: ResourceNotFoundError,
537
+ 409: ResourceExistsError,
538
+ 304: ResourceNotModifiedError,
539
+ }
540
+ error_map.update(kwargs.pop("error_map", {}) or {})
541
+
542
+ _headers = kwargs.pop("headers", {}) or {}
543
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
544
+
545
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
546
+ cls: ClsType[_models.BlobContainer] = kwargs.pop("cls", None)
547
+
548
+ _request = build_get_request(
549
+ resource_group_name=resource_group_name,
550
+ account_name=account_name,
551
+ container_name=container_name,
552
+ subscription_id=self._config.subscription_id,
553
+ api_version=api_version,
554
+ headers=_headers,
555
+ params=_params,
556
+ )
557
+ _request = _convert_request(_request)
558
+ _request.url = self._client.format_url(_request.url)
559
+
560
+ _stream = False
561
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
562
+ _request, stream=_stream, **kwargs
563
+ )
564
+
565
+ response = pipeline_response.http_response
566
+
567
+ if response.status_code not in [200]:
568
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
569
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
570
+
571
+ deserialized = self._deserialize("BlobContainer", pipeline_response)
572
+
573
+ if cls:
574
+ return cls(pipeline_response, deserialized, {}) # type: ignore
575
+
576
+ return deserialized # type: ignore
577
+
578
+ @distributed_trace_async
579
+ async def delete( # pylint: disable=inconsistent-return-statements
580
+ self, resource_group_name: str, account_name: str, container_name: str, **kwargs: Any
581
+ ) -> None:
582
+ """Deletes specified container under its account.
583
+
584
+ :param resource_group_name: The name of the resource group within the user's subscription. The
585
+ name is case insensitive. Required.
586
+ :type resource_group_name: str
587
+ :param account_name: The name of the storage account within the specified resource group.
588
+ Storage account names must be between 3 and 24 characters in length and use numbers and
589
+ lower-case letters only. Required.
590
+ :type account_name: str
591
+ :param container_name: The name of the blob container within the specified storage account.
592
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
593
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
594
+ by a letter or number. Required.
595
+ :type container_name: str
596
+ :return: None or the result of cls(response)
597
+ :rtype: None
598
+ :raises ~azure.core.exceptions.HttpResponseError:
599
+ """
600
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
601
+ 401: ClientAuthenticationError,
602
+ 404: ResourceNotFoundError,
603
+ 409: ResourceExistsError,
604
+ 304: ResourceNotModifiedError,
605
+ }
606
+ error_map.update(kwargs.pop("error_map", {}) or {})
607
+
608
+ _headers = kwargs.pop("headers", {}) or {}
609
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
610
+
611
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
612
+ cls: ClsType[None] = kwargs.pop("cls", None)
613
+
614
+ _request = build_delete_request(
615
+ resource_group_name=resource_group_name,
616
+ account_name=account_name,
617
+ container_name=container_name,
618
+ subscription_id=self._config.subscription_id,
619
+ api_version=api_version,
620
+ headers=_headers,
621
+ params=_params,
622
+ )
623
+ _request = _convert_request(_request)
624
+ _request.url = self._client.format_url(_request.url)
625
+
626
+ _stream = False
627
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
628
+ _request, stream=_stream, **kwargs
629
+ )
630
+
631
+ response = pipeline_response.http_response
632
+
633
+ if response.status_code not in [200, 204]:
634
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
635
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
636
+
637
+ if cls:
638
+ return cls(pipeline_response, None, {}) # type: ignore
639
+
640
+ @overload
641
+ async def set_legal_hold(
642
+ self,
643
+ resource_group_name: str,
644
+ account_name: str,
645
+ container_name: str,
646
+ legal_hold: _models.LegalHold,
647
+ *,
648
+ content_type: str = "application/json",
649
+ **kwargs: Any
650
+ ) -> _models.LegalHold:
651
+ """Sets legal hold tags. Setting the same tag results in an idempotent operation. SetLegalHold
652
+ follows an append pattern and does not clear out the existing tags that are not specified in
653
+ the request.
654
+
655
+ :param resource_group_name: The name of the resource group within the user's subscription. The
656
+ name is case insensitive. Required.
657
+ :type resource_group_name: str
658
+ :param account_name: The name of the storage account within the specified resource group.
659
+ Storage account names must be between 3 and 24 characters in length and use numbers and
660
+ lower-case letters only. Required.
661
+ :type account_name: str
662
+ :param container_name: The name of the blob container within the specified storage account.
663
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
664
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
665
+ by a letter or number. Required.
666
+ :type container_name: str
667
+ :param legal_hold: The LegalHold property that will be set to a blob container. Required.
668
+ :type legal_hold: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
669
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
670
+ Default value is "application/json".
671
+ :paramtype content_type: str
672
+ :return: LegalHold or the result of cls(response)
673
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
674
+ :raises ~azure.core.exceptions.HttpResponseError:
675
+ """
676
+
677
+ @overload
678
+ async def set_legal_hold(
679
+ self,
680
+ resource_group_name: str,
681
+ account_name: str,
682
+ container_name: str,
683
+ legal_hold: IO[bytes],
684
+ *,
685
+ content_type: str = "application/json",
686
+ **kwargs: Any
687
+ ) -> _models.LegalHold:
688
+ """Sets legal hold tags. Setting the same tag results in an idempotent operation. SetLegalHold
689
+ follows an append pattern and does not clear out the existing tags that are not specified in
690
+ the request.
691
+
692
+ :param resource_group_name: The name of the resource group within the user's subscription. The
693
+ name is case insensitive. Required.
694
+ :type resource_group_name: str
695
+ :param account_name: The name of the storage account within the specified resource group.
696
+ Storage account names must be between 3 and 24 characters in length and use numbers and
697
+ lower-case letters only. Required.
698
+ :type account_name: str
699
+ :param container_name: The name of the blob container within the specified storage account.
700
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
701
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
702
+ by a letter or number. Required.
703
+ :type container_name: str
704
+ :param legal_hold: The LegalHold property that will be set to a blob container. Required.
705
+ :type legal_hold: IO[bytes]
706
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
707
+ Default value is "application/json".
708
+ :paramtype content_type: str
709
+ :return: LegalHold or the result of cls(response)
710
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
711
+ :raises ~azure.core.exceptions.HttpResponseError:
712
+ """
713
+
714
+ @distributed_trace_async
715
+ async def set_legal_hold(
716
+ self,
717
+ resource_group_name: str,
718
+ account_name: str,
719
+ container_name: str,
720
+ legal_hold: Union[_models.LegalHold, IO[bytes]],
721
+ **kwargs: Any
722
+ ) -> _models.LegalHold:
723
+ """Sets legal hold tags. Setting the same tag results in an idempotent operation. SetLegalHold
724
+ follows an append pattern and does not clear out the existing tags that are not specified in
725
+ the request.
726
+
727
+ :param resource_group_name: The name of the resource group within the user's subscription. The
728
+ name is case insensitive. Required.
729
+ :type resource_group_name: str
730
+ :param account_name: The name of the storage account within the specified resource group.
731
+ Storage account names must be between 3 and 24 characters in length and use numbers and
732
+ lower-case letters only. Required.
733
+ :type account_name: str
734
+ :param container_name: The name of the blob container within the specified storage account.
735
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
736
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
737
+ by a letter or number. Required.
738
+ :type container_name: str
739
+ :param legal_hold: The LegalHold property that will be set to a blob container. Is either a
740
+ LegalHold type or a IO[bytes] type. Required.
741
+ :type legal_hold: ~azure.mgmt.storage.v2023_01_01.models.LegalHold or IO[bytes]
742
+ :return: LegalHold or the result of cls(response)
743
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
744
+ :raises ~azure.core.exceptions.HttpResponseError:
745
+ """
746
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
747
+ 401: ClientAuthenticationError,
748
+ 404: ResourceNotFoundError,
749
+ 409: ResourceExistsError,
750
+ 304: ResourceNotModifiedError,
751
+ }
752
+ error_map.update(kwargs.pop("error_map", {}) or {})
753
+
754
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
755
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
756
+
757
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
758
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
759
+ cls: ClsType[_models.LegalHold] = kwargs.pop("cls", None)
760
+
761
+ content_type = content_type or "application/json"
762
+ _json = None
763
+ _content = None
764
+ if isinstance(legal_hold, (IOBase, bytes)):
765
+ _content = legal_hold
766
+ else:
767
+ _json = self._serialize.body(legal_hold, "LegalHold")
768
+
769
+ _request = build_set_legal_hold_request(
770
+ resource_group_name=resource_group_name,
771
+ account_name=account_name,
772
+ container_name=container_name,
773
+ subscription_id=self._config.subscription_id,
774
+ api_version=api_version,
775
+ content_type=content_type,
776
+ json=_json,
777
+ content=_content,
778
+ headers=_headers,
779
+ params=_params,
780
+ )
781
+ _request = _convert_request(_request)
782
+ _request.url = self._client.format_url(_request.url)
783
+
784
+ _stream = False
785
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
786
+ _request, stream=_stream, **kwargs
787
+ )
788
+
789
+ response = pipeline_response.http_response
790
+
791
+ if response.status_code not in [200]:
792
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
793
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
794
+
795
+ deserialized = self._deserialize("LegalHold", pipeline_response)
796
+
797
+ if cls:
798
+ return cls(pipeline_response, deserialized, {}) # type: ignore
799
+
800
+ return deserialized # type: ignore
801
+
802
+ @overload
803
+ async def clear_legal_hold(
804
+ self,
805
+ resource_group_name: str,
806
+ account_name: str,
807
+ container_name: str,
808
+ legal_hold: _models.LegalHold,
809
+ *,
810
+ content_type: str = "application/json",
811
+ **kwargs: Any
812
+ ) -> _models.LegalHold:
813
+ """Clears legal hold tags. Clearing the same or non-existent tag results in an idempotent
814
+ operation. ClearLegalHold clears out only the specified tags in the request.
815
+
816
+ :param resource_group_name: The name of the resource group within the user's subscription. The
817
+ name is case insensitive. Required.
818
+ :type resource_group_name: str
819
+ :param account_name: The name of the storage account within the specified resource group.
820
+ Storage account names must be between 3 and 24 characters in length and use numbers and
821
+ lower-case letters only. Required.
822
+ :type account_name: str
823
+ :param container_name: The name of the blob container within the specified storage account.
824
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
825
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
826
+ by a letter or number. Required.
827
+ :type container_name: str
828
+ :param legal_hold: The LegalHold property that will be clear from a blob container. Required.
829
+ :type legal_hold: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
830
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
831
+ Default value is "application/json".
832
+ :paramtype content_type: str
833
+ :return: LegalHold or the result of cls(response)
834
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
835
+ :raises ~azure.core.exceptions.HttpResponseError:
836
+ """
837
+
838
+ @overload
839
+ async def clear_legal_hold(
840
+ self,
841
+ resource_group_name: str,
842
+ account_name: str,
843
+ container_name: str,
844
+ legal_hold: IO[bytes],
845
+ *,
846
+ content_type: str = "application/json",
847
+ **kwargs: Any
848
+ ) -> _models.LegalHold:
849
+ """Clears legal hold tags. Clearing the same or non-existent tag results in an idempotent
850
+ operation. ClearLegalHold clears out only the specified tags in the request.
851
+
852
+ :param resource_group_name: The name of the resource group within the user's subscription. The
853
+ name is case insensitive. Required.
854
+ :type resource_group_name: str
855
+ :param account_name: The name of the storage account within the specified resource group.
856
+ Storage account names must be between 3 and 24 characters in length and use numbers and
857
+ lower-case letters only. Required.
858
+ :type account_name: str
859
+ :param container_name: The name of the blob container within the specified storage account.
860
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
861
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
862
+ by a letter or number. Required.
863
+ :type container_name: str
864
+ :param legal_hold: The LegalHold property that will be clear from a blob container. Required.
865
+ :type legal_hold: IO[bytes]
866
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
867
+ Default value is "application/json".
868
+ :paramtype content_type: str
869
+ :return: LegalHold or the result of cls(response)
870
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
871
+ :raises ~azure.core.exceptions.HttpResponseError:
872
+ """
873
+
874
+ @distributed_trace_async
875
+ async def clear_legal_hold(
876
+ self,
877
+ resource_group_name: str,
878
+ account_name: str,
879
+ container_name: str,
880
+ legal_hold: Union[_models.LegalHold, IO[bytes]],
881
+ **kwargs: Any
882
+ ) -> _models.LegalHold:
883
+ """Clears legal hold tags. Clearing the same or non-existent tag results in an idempotent
884
+ operation. ClearLegalHold clears out only the specified tags in the request.
885
+
886
+ :param resource_group_name: The name of the resource group within the user's subscription. The
887
+ name is case insensitive. Required.
888
+ :type resource_group_name: str
889
+ :param account_name: The name of the storage account within the specified resource group.
890
+ Storage account names must be between 3 and 24 characters in length and use numbers and
891
+ lower-case letters only. Required.
892
+ :type account_name: str
893
+ :param container_name: The name of the blob container within the specified storage account.
894
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
895
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
896
+ by a letter or number. Required.
897
+ :type container_name: str
898
+ :param legal_hold: The LegalHold property that will be clear from a blob container. Is either a
899
+ LegalHold type or a IO[bytes] type. Required.
900
+ :type legal_hold: ~azure.mgmt.storage.v2023_01_01.models.LegalHold or IO[bytes]
901
+ :return: LegalHold or the result of cls(response)
902
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LegalHold
903
+ :raises ~azure.core.exceptions.HttpResponseError:
904
+ """
905
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
906
+ 401: ClientAuthenticationError,
907
+ 404: ResourceNotFoundError,
908
+ 409: ResourceExistsError,
909
+ 304: ResourceNotModifiedError,
910
+ }
911
+ error_map.update(kwargs.pop("error_map", {}) or {})
912
+
913
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
914
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
915
+
916
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
917
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
918
+ cls: ClsType[_models.LegalHold] = kwargs.pop("cls", None)
919
+
920
+ content_type = content_type or "application/json"
921
+ _json = None
922
+ _content = None
923
+ if isinstance(legal_hold, (IOBase, bytes)):
924
+ _content = legal_hold
925
+ else:
926
+ _json = self._serialize.body(legal_hold, "LegalHold")
927
+
928
+ _request = build_clear_legal_hold_request(
929
+ resource_group_name=resource_group_name,
930
+ account_name=account_name,
931
+ container_name=container_name,
932
+ subscription_id=self._config.subscription_id,
933
+ api_version=api_version,
934
+ content_type=content_type,
935
+ json=_json,
936
+ content=_content,
937
+ headers=_headers,
938
+ params=_params,
939
+ )
940
+ _request = _convert_request(_request)
941
+ _request.url = self._client.format_url(_request.url)
942
+
943
+ _stream = False
944
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
945
+ _request, stream=_stream, **kwargs
946
+ )
947
+
948
+ response = pipeline_response.http_response
949
+
950
+ if response.status_code not in [200]:
951
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
952
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
953
+
954
+ deserialized = self._deserialize("LegalHold", pipeline_response)
955
+
956
+ if cls:
957
+ return cls(pipeline_response, deserialized, {}) # type: ignore
958
+
959
+ return deserialized # type: ignore
960
+
961
+ @overload
962
+ async def create_or_update_immutability_policy(
963
+ self,
964
+ resource_group_name: str,
965
+ account_name: str,
966
+ container_name: str,
967
+ if_match: Optional[str] = None,
968
+ parameters: Optional[_models.ImmutabilityPolicy] = None,
969
+ *,
970
+ content_type: str = "application/json",
971
+ **kwargs: Any
972
+ ) -> _models.ImmutabilityPolicy:
973
+ """Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but
974
+ not required for this operation.
975
+
976
+ :param resource_group_name: The name of the resource group within the user's subscription. The
977
+ name is case insensitive. Required.
978
+ :type resource_group_name: str
979
+ :param account_name: The name of the storage account within the specified resource group.
980
+ Storage account names must be between 3 and 24 characters in length and use numbers and
981
+ lower-case letters only. Required.
982
+ :type account_name: str
983
+ :param container_name: The name of the blob container within the specified storage account.
984
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
985
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
986
+ by a letter or number. Required.
987
+ :type container_name: str
988
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
989
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
990
+ omitted, this operation will always be applied. Default value is None.
991
+ :type if_match: str
992
+ :param parameters: The ImmutabilityPolicy Properties that will be created or updated to a blob
993
+ container. Default value is None.
994
+ :type parameters: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
995
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
996
+ Default value is "application/json".
997
+ :paramtype content_type: str
998
+ :return: ImmutabilityPolicy or the result of cls(response)
999
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1000
+ :raises ~azure.core.exceptions.HttpResponseError:
1001
+ """
1002
+
1003
+ @overload
1004
+ async def create_or_update_immutability_policy(
1005
+ self,
1006
+ resource_group_name: str,
1007
+ account_name: str,
1008
+ container_name: str,
1009
+ if_match: Optional[str] = None,
1010
+ parameters: Optional[IO[bytes]] = None,
1011
+ *,
1012
+ content_type: str = "application/json",
1013
+ **kwargs: Any
1014
+ ) -> _models.ImmutabilityPolicy:
1015
+ """Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but
1016
+ not required for this operation.
1017
+
1018
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1019
+ name is case insensitive. Required.
1020
+ :type resource_group_name: str
1021
+ :param account_name: The name of the storage account within the specified resource group.
1022
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1023
+ lower-case letters only. Required.
1024
+ :type account_name: str
1025
+ :param container_name: The name of the blob container within the specified storage account.
1026
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1027
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1028
+ by a letter or number. Required.
1029
+ :type container_name: str
1030
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1031
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1032
+ omitted, this operation will always be applied. Default value is None.
1033
+ :type if_match: str
1034
+ :param parameters: The ImmutabilityPolicy Properties that will be created or updated to a blob
1035
+ container. Default value is None.
1036
+ :type parameters: IO[bytes]
1037
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
1038
+ Default value is "application/json".
1039
+ :paramtype content_type: str
1040
+ :return: ImmutabilityPolicy or the result of cls(response)
1041
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1042
+ :raises ~azure.core.exceptions.HttpResponseError:
1043
+ """
1044
+
1045
+ @distributed_trace_async
1046
+ async def create_or_update_immutability_policy(
1047
+ self,
1048
+ resource_group_name: str,
1049
+ account_name: str,
1050
+ container_name: str,
1051
+ if_match: Optional[str] = None,
1052
+ parameters: Optional[Union[_models.ImmutabilityPolicy, IO[bytes]]] = None,
1053
+ **kwargs: Any
1054
+ ) -> _models.ImmutabilityPolicy:
1055
+ """Creates or updates an unlocked immutability policy. ETag in If-Match is honored if given but
1056
+ not required for this operation.
1057
+
1058
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1059
+ name is case insensitive. Required.
1060
+ :type resource_group_name: str
1061
+ :param account_name: The name of the storage account within the specified resource group.
1062
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1063
+ lower-case letters only. Required.
1064
+ :type account_name: str
1065
+ :param container_name: The name of the blob container within the specified storage account.
1066
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1067
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1068
+ by a letter or number. Required.
1069
+ :type container_name: str
1070
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1071
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1072
+ omitted, this operation will always be applied. Default value is None.
1073
+ :type if_match: str
1074
+ :param parameters: The ImmutabilityPolicy Properties that will be created or updated to a blob
1075
+ container. Is either a ImmutabilityPolicy type or a IO[bytes] type. Default value is None.
1076
+ :type parameters: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy or IO[bytes]
1077
+ :return: ImmutabilityPolicy or the result of cls(response)
1078
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1079
+ :raises ~azure.core.exceptions.HttpResponseError:
1080
+ """
1081
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1082
+ 401: ClientAuthenticationError,
1083
+ 404: ResourceNotFoundError,
1084
+ 409: ResourceExistsError,
1085
+ 304: ResourceNotModifiedError,
1086
+ }
1087
+ error_map.update(kwargs.pop("error_map", {}) or {})
1088
+
1089
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
1090
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1091
+
1092
+ immutability_policy_name: Literal["default"] = kwargs.pop("immutability_policy_name", "default")
1093
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1094
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
1095
+ cls: ClsType[_models.ImmutabilityPolicy] = kwargs.pop("cls", None)
1096
+
1097
+ content_type = content_type or "application/json"
1098
+ _json = None
1099
+ _content = None
1100
+ if isinstance(parameters, (IOBase, bytes)):
1101
+ _content = parameters
1102
+ else:
1103
+ if parameters is not None:
1104
+ _json = self._serialize.body(parameters, "ImmutabilityPolicy")
1105
+ else:
1106
+ _json = None
1107
+
1108
+ _request = build_create_or_update_immutability_policy_request(
1109
+ resource_group_name=resource_group_name,
1110
+ account_name=account_name,
1111
+ container_name=container_name,
1112
+ subscription_id=self._config.subscription_id,
1113
+ if_match=if_match,
1114
+ immutability_policy_name=immutability_policy_name,
1115
+ api_version=api_version,
1116
+ content_type=content_type,
1117
+ json=_json,
1118
+ content=_content,
1119
+ headers=_headers,
1120
+ params=_params,
1121
+ )
1122
+ _request = _convert_request(_request)
1123
+ _request.url = self._client.format_url(_request.url)
1124
+
1125
+ _stream = False
1126
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1127
+ _request, stream=_stream, **kwargs
1128
+ )
1129
+
1130
+ response = pipeline_response.http_response
1131
+
1132
+ if response.status_code not in [200]:
1133
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1134
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1135
+
1136
+ response_headers = {}
1137
+ response_headers["ETag"] = self._deserialize("str", response.headers.get("ETag"))
1138
+
1139
+ deserialized = self._deserialize("ImmutabilityPolicy", pipeline_response)
1140
+
1141
+ if cls:
1142
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
1143
+
1144
+ return deserialized # type: ignore
1145
+
1146
+ @distributed_trace_async
1147
+ async def get_immutability_policy(
1148
+ self,
1149
+ resource_group_name: str,
1150
+ account_name: str,
1151
+ container_name: str,
1152
+ if_match: Optional[str] = None,
1153
+ **kwargs: Any
1154
+ ) -> _models.ImmutabilityPolicy:
1155
+ """Gets the existing immutability policy along with the corresponding ETag in response headers and
1156
+ body.
1157
+
1158
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1159
+ name is case insensitive. Required.
1160
+ :type resource_group_name: str
1161
+ :param account_name: The name of the storage account within the specified resource group.
1162
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1163
+ lower-case letters only. Required.
1164
+ :type account_name: str
1165
+ :param container_name: The name of the blob container within the specified storage account.
1166
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1167
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1168
+ by a letter or number. Required.
1169
+ :type container_name: str
1170
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1171
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1172
+ omitted, this operation will always be applied. Default value is None.
1173
+ :type if_match: str
1174
+ :return: ImmutabilityPolicy or the result of cls(response)
1175
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1176
+ :raises ~azure.core.exceptions.HttpResponseError:
1177
+ """
1178
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1179
+ 401: ClientAuthenticationError,
1180
+ 404: ResourceNotFoundError,
1181
+ 409: ResourceExistsError,
1182
+ 304: ResourceNotModifiedError,
1183
+ }
1184
+ error_map.update(kwargs.pop("error_map", {}) or {})
1185
+
1186
+ _headers = kwargs.pop("headers", {}) or {}
1187
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1188
+
1189
+ immutability_policy_name: Literal["default"] = kwargs.pop("immutability_policy_name", "default")
1190
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1191
+ cls: ClsType[_models.ImmutabilityPolicy] = kwargs.pop("cls", None)
1192
+
1193
+ _request = build_get_immutability_policy_request(
1194
+ resource_group_name=resource_group_name,
1195
+ account_name=account_name,
1196
+ container_name=container_name,
1197
+ subscription_id=self._config.subscription_id,
1198
+ if_match=if_match,
1199
+ immutability_policy_name=immutability_policy_name,
1200
+ api_version=api_version,
1201
+ headers=_headers,
1202
+ params=_params,
1203
+ )
1204
+ _request = _convert_request(_request)
1205
+ _request.url = self._client.format_url(_request.url)
1206
+
1207
+ _stream = False
1208
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1209
+ _request, stream=_stream, **kwargs
1210
+ )
1211
+
1212
+ response = pipeline_response.http_response
1213
+
1214
+ if response.status_code not in [200]:
1215
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1216
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1217
+
1218
+ response_headers = {}
1219
+ response_headers["ETag"] = self._deserialize("str", response.headers.get("ETag"))
1220
+
1221
+ deserialized = self._deserialize("ImmutabilityPolicy", pipeline_response)
1222
+
1223
+ if cls:
1224
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
1225
+
1226
+ return deserialized # type: ignore
1227
+
1228
+ @distributed_trace_async
1229
+ async def delete_immutability_policy(
1230
+ self, resource_group_name: str, account_name: str, container_name: str, if_match: str, **kwargs: Any
1231
+ ) -> _models.ImmutabilityPolicy:
1232
+ """Aborts an unlocked immutability policy. The response of delete has
1233
+ immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is required for this
1234
+ operation. Deleting a locked immutability policy is not allowed, the only way is to delete the
1235
+ container after deleting all expired blobs inside the policy locked container.
1236
+
1237
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1238
+ name is case insensitive. Required.
1239
+ :type resource_group_name: str
1240
+ :param account_name: The name of the storage account within the specified resource group.
1241
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1242
+ lower-case letters only. Required.
1243
+ :type account_name: str
1244
+ :param container_name: The name of the blob container within the specified storage account.
1245
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1246
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1247
+ by a letter or number. Required.
1248
+ :type container_name: str
1249
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1250
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1251
+ omitted, this operation will always be applied. Required.
1252
+ :type if_match: str
1253
+ :return: ImmutabilityPolicy or the result of cls(response)
1254
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1255
+ :raises ~azure.core.exceptions.HttpResponseError:
1256
+ """
1257
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1258
+ 401: ClientAuthenticationError,
1259
+ 404: ResourceNotFoundError,
1260
+ 409: ResourceExistsError,
1261
+ 304: ResourceNotModifiedError,
1262
+ }
1263
+ error_map.update(kwargs.pop("error_map", {}) or {})
1264
+
1265
+ _headers = kwargs.pop("headers", {}) or {}
1266
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1267
+
1268
+ immutability_policy_name: Literal["default"] = kwargs.pop("immutability_policy_name", "default")
1269
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1270
+ cls: ClsType[_models.ImmutabilityPolicy] = kwargs.pop("cls", None)
1271
+
1272
+ _request = build_delete_immutability_policy_request(
1273
+ resource_group_name=resource_group_name,
1274
+ account_name=account_name,
1275
+ container_name=container_name,
1276
+ subscription_id=self._config.subscription_id,
1277
+ if_match=if_match,
1278
+ immutability_policy_name=immutability_policy_name,
1279
+ api_version=api_version,
1280
+ headers=_headers,
1281
+ params=_params,
1282
+ )
1283
+ _request = _convert_request(_request)
1284
+ _request.url = self._client.format_url(_request.url)
1285
+
1286
+ _stream = False
1287
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1288
+ _request, stream=_stream, **kwargs
1289
+ )
1290
+
1291
+ response = pipeline_response.http_response
1292
+
1293
+ if response.status_code not in [200]:
1294
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1295
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1296
+
1297
+ response_headers = {}
1298
+ response_headers["ETag"] = self._deserialize("str", response.headers.get("ETag"))
1299
+
1300
+ deserialized = self._deserialize("ImmutabilityPolicy", pipeline_response)
1301
+
1302
+ if cls:
1303
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
1304
+
1305
+ return deserialized # type: ignore
1306
+
1307
+ @distributed_trace_async
1308
+ async def lock_immutability_policy(
1309
+ self, resource_group_name: str, account_name: str, container_name: str, if_match: str, **kwargs: Any
1310
+ ) -> _models.ImmutabilityPolicy:
1311
+ """Sets the ImmutabilityPolicy to Locked state. The only action allowed on a Locked policy is
1312
+ ExtendImmutabilityPolicy action. ETag in If-Match is required for this operation.
1313
+
1314
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1315
+ name is case insensitive. Required.
1316
+ :type resource_group_name: str
1317
+ :param account_name: The name of the storage account within the specified resource group.
1318
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1319
+ lower-case letters only. Required.
1320
+ :type account_name: str
1321
+ :param container_name: The name of the blob container within the specified storage account.
1322
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1323
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1324
+ by a letter or number. Required.
1325
+ :type container_name: str
1326
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1327
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1328
+ omitted, this operation will always be applied. Required.
1329
+ :type if_match: str
1330
+ :return: ImmutabilityPolicy or the result of cls(response)
1331
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1332
+ :raises ~azure.core.exceptions.HttpResponseError:
1333
+ """
1334
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1335
+ 401: ClientAuthenticationError,
1336
+ 404: ResourceNotFoundError,
1337
+ 409: ResourceExistsError,
1338
+ 304: ResourceNotModifiedError,
1339
+ }
1340
+ error_map.update(kwargs.pop("error_map", {}) or {})
1341
+
1342
+ _headers = kwargs.pop("headers", {}) or {}
1343
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1344
+
1345
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1346
+ cls: ClsType[_models.ImmutabilityPolicy] = kwargs.pop("cls", None)
1347
+
1348
+ _request = build_lock_immutability_policy_request(
1349
+ resource_group_name=resource_group_name,
1350
+ account_name=account_name,
1351
+ container_name=container_name,
1352
+ subscription_id=self._config.subscription_id,
1353
+ if_match=if_match,
1354
+ api_version=api_version,
1355
+ headers=_headers,
1356
+ params=_params,
1357
+ )
1358
+ _request = _convert_request(_request)
1359
+ _request.url = self._client.format_url(_request.url)
1360
+
1361
+ _stream = False
1362
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1363
+ _request, stream=_stream, **kwargs
1364
+ )
1365
+
1366
+ response = pipeline_response.http_response
1367
+
1368
+ if response.status_code not in [200]:
1369
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1370
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1371
+
1372
+ response_headers = {}
1373
+ response_headers["ETag"] = self._deserialize("str", response.headers.get("ETag"))
1374
+
1375
+ deserialized = self._deserialize("ImmutabilityPolicy", pipeline_response)
1376
+
1377
+ if cls:
1378
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
1379
+
1380
+ return deserialized # type: ignore
1381
+
1382
+ @overload
1383
+ async def extend_immutability_policy(
1384
+ self,
1385
+ resource_group_name: str,
1386
+ account_name: str,
1387
+ container_name: str,
1388
+ if_match: str,
1389
+ parameters: Optional[_models.ImmutabilityPolicy] = None,
1390
+ *,
1391
+ content_type: str = "application/json",
1392
+ **kwargs: Any
1393
+ ) -> _models.ImmutabilityPolicy:
1394
+ """Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only
1395
+ action allowed on a Locked policy will be this action. ETag in If-Match is required for this
1396
+ operation.
1397
+
1398
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1399
+ name is case insensitive. Required.
1400
+ :type resource_group_name: str
1401
+ :param account_name: The name of the storage account within the specified resource group.
1402
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1403
+ lower-case letters only. Required.
1404
+ :type account_name: str
1405
+ :param container_name: The name of the blob container within the specified storage account.
1406
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1407
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1408
+ by a letter or number. Required.
1409
+ :type container_name: str
1410
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1411
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1412
+ omitted, this operation will always be applied. Required.
1413
+ :type if_match: str
1414
+ :param parameters: The ImmutabilityPolicy Properties that will be extended for a blob
1415
+ container. Default value is None.
1416
+ :type parameters: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1417
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
1418
+ Default value is "application/json".
1419
+ :paramtype content_type: str
1420
+ :return: ImmutabilityPolicy or the result of cls(response)
1421
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1422
+ :raises ~azure.core.exceptions.HttpResponseError:
1423
+ """
1424
+
1425
+ @overload
1426
+ async def extend_immutability_policy(
1427
+ self,
1428
+ resource_group_name: str,
1429
+ account_name: str,
1430
+ container_name: str,
1431
+ if_match: str,
1432
+ parameters: Optional[IO[bytes]] = None,
1433
+ *,
1434
+ content_type: str = "application/json",
1435
+ **kwargs: Any
1436
+ ) -> _models.ImmutabilityPolicy:
1437
+ """Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only
1438
+ action allowed on a Locked policy will be this action. ETag in If-Match is required for this
1439
+ operation.
1440
+
1441
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1442
+ name is case insensitive. Required.
1443
+ :type resource_group_name: str
1444
+ :param account_name: The name of the storage account within the specified resource group.
1445
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1446
+ lower-case letters only. Required.
1447
+ :type account_name: str
1448
+ :param container_name: The name of the blob container within the specified storage account.
1449
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1450
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1451
+ by a letter or number. Required.
1452
+ :type container_name: str
1453
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1454
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1455
+ omitted, this operation will always be applied. Required.
1456
+ :type if_match: str
1457
+ :param parameters: The ImmutabilityPolicy Properties that will be extended for a blob
1458
+ container. Default value is None.
1459
+ :type parameters: IO[bytes]
1460
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
1461
+ Default value is "application/json".
1462
+ :paramtype content_type: str
1463
+ :return: ImmutabilityPolicy or the result of cls(response)
1464
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1465
+ :raises ~azure.core.exceptions.HttpResponseError:
1466
+ """
1467
+
1468
+ @distributed_trace_async
1469
+ async def extend_immutability_policy(
1470
+ self,
1471
+ resource_group_name: str,
1472
+ account_name: str,
1473
+ container_name: str,
1474
+ if_match: str,
1475
+ parameters: Optional[Union[_models.ImmutabilityPolicy, IO[bytes]]] = None,
1476
+ **kwargs: Any
1477
+ ) -> _models.ImmutabilityPolicy:
1478
+ """Extends the immutabilityPeriodSinceCreationInDays of a locked immutabilityPolicy. The only
1479
+ action allowed on a Locked policy will be this action. ETag in If-Match is required for this
1480
+ operation.
1481
+
1482
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1483
+ name is case insensitive. Required.
1484
+ :type resource_group_name: str
1485
+ :param account_name: The name of the storage account within the specified resource group.
1486
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1487
+ lower-case letters only. Required.
1488
+ :type account_name: str
1489
+ :param container_name: The name of the blob container within the specified storage account.
1490
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1491
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1492
+ by a letter or number. Required.
1493
+ :type container_name: str
1494
+ :param if_match: The entity state (ETag) version of the immutability policy to update. A value
1495
+ of "*" can be used to apply the operation only if the immutability policy already exists. If
1496
+ omitted, this operation will always be applied. Required.
1497
+ :type if_match: str
1498
+ :param parameters: The ImmutabilityPolicy Properties that will be extended for a blob
1499
+ container. Is either a ImmutabilityPolicy type or a IO[bytes] type. Default value is None.
1500
+ :type parameters: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy or IO[bytes]
1501
+ :return: ImmutabilityPolicy or the result of cls(response)
1502
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.ImmutabilityPolicy
1503
+ :raises ~azure.core.exceptions.HttpResponseError:
1504
+ """
1505
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1506
+ 401: ClientAuthenticationError,
1507
+ 404: ResourceNotFoundError,
1508
+ 409: ResourceExistsError,
1509
+ 304: ResourceNotModifiedError,
1510
+ }
1511
+ error_map.update(kwargs.pop("error_map", {}) or {})
1512
+
1513
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
1514
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1515
+
1516
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1517
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
1518
+ cls: ClsType[_models.ImmutabilityPolicy] = kwargs.pop("cls", None)
1519
+
1520
+ content_type = content_type or "application/json"
1521
+ _json = None
1522
+ _content = None
1523
+ if isinstance(parameters, (IOBase, bytes)):
1524
+ _content = parameters
1525
+ else:
1526
+ if parameters is not None:
1527
+ _json = self._serialize.body(parameters, "ImmutabilityPolicy")
1528
+ else:
1529
+ _json = None
1530
+
1531
+ _request = build_extend_immutability_policy_request(
1532
+ resource_group_name=resource_group_name,
1533
+ account_name=account_name,
1534
+ container_name=container_name,
1535
+ subscription_id=self._config.subscription_id,
1536
+ if_match=if_match,
1537
+ api_version=api_version,
1538
+ content_type=content_type,
1539
+ json=_json,
1540
+ content=_content,
1541
+ headers=_headers,
1542
+ params=_params,
1543
+ )
1544
+ _request = _convert_request(_request)
1545
+ _request.url = self._client.format_url(_request.url)
1546
+
1547
+ _stream = False
1548
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1549
+ _request, stream=_stream, **kwargs
1550
+ )
1551
+
1552
+ response = pipeline_response.http_response
1553
+
1554
+ if response.status_code not in [200]:
1555
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1556
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1557
+
1558
+ response_headers = {}
1559
+ response_headers["ETag"] = self._deserialize("str", response.headers.get("ETag"))
1560
+
1561
+ deserialized = self._deserialize("ImmutabilityPolicy", pipeline_response)
1562
+
1563
+ if cls:
1564
+ return cls(pipeline_response, deserialized, response_headers) # type: ignore
1565
+
1566
+ return deserialized # type: ignore
1567
+
1568
+ @overload
1569
+ async def lease(
1570
+ self,
1571
+ resource_group_name: str,
1572
+ account_name: str,
1573
+ container_name: str,
1574
+ parameters: Optional[_models.LeaseContainerRequest] = None,
1575
+ *,
1576
+ content_type: str = "application/json",
1577
+ **kwargs: Any
1578
+ ) -> _models.LeaseContainerResponse:
1579
+ """The Lease Container operation establishes and manages a lock on a container for delete
1580
+ operations. The lock duration can be 15 to 60 seconds, or can be infinite.
1581
+
1582
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1583
+ name is case insensitive. Required.
1584
+ :type resource_group_name: str
1585
+ :param account_name: The name of the storage account within the specified resource group.
1586
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1587
+ lower-case letters only. Required.
1588
+ :type account_name: str
1589
+ :param container_name: The name of the blob container within the specified storage account.
1590
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1591
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1592
+ by a letter or number. Required.
1593
+ :type container_name: str
1594
+ :param parameters: Lease Container request body. Default value is None.
1595
+ :type parameters: ~azure.mgmt.storage.v2023_01_01.models.LeaseContainerRequest
1596
+ :keyword content_type: Body Parameter content-type. Content type parameter for JSON body.
1597
+ Default value is "application/json".
1598
+ :paramtype content_type: str
1599
+ :return: LeaseContainerResponse or the result of cls(response)
1600
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LeaseContainerResponse
1601
+ :raises ~azure.core.exceptions.HttpResponseError:
1602
+ """
1603
+
1604
+ @overload
1605
+ async def lease(
1606
+ self,
1607
+ resource_group_name: str,
1608
+ account_name: str,
1609
+ container_name: str,
1610
+ parameters: Optional[IO[bytes]] = None,
1611
+ *,
1612
+ content_type: str = "application/json",
1613
+ **kwargs: Any
1614
+ ) -> _models.LeaseContainerResponse:
1615
+ """The Lease Container operation establishes and manages a lock on a container for delete
1616
+ operations. The lock duration can be 15 to 60 seconds, or can be infinite.
1617
+
1618
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1619
+ name is case insensitive. Required.
1620
+ :type resource_group_name: str
1621
+ :param account_name: The name of the storage account within the specified resource group.
1622
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1623
+ lower-case letters only. Required.
1624
+ :type account_name: str
1625
+ :param container_name: The name of the blob container within the specified storage account.
1626
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1627
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1628
+ by a letter or number. Required.
1629
+ :type container_name: str
1630
+ :param parameters: Lease Container request body. Default value is None.
1631
+ :type parameters: IO[bytes]
1632
+ :keyword content_type: Body Parameter content-type. Content type parameter for binary body.
1633
+ Default value is "application/json".
1634
+ :paramtype content_type: str
1635
+ :return: LeaseContainerResponse or the result of cls(response)
1636
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LeaseContainerResponse
1637
+ :raises ~azure.core.exceptions.HttpResponseError:
1638
+ """
1639
+
1640
+ @distributed_trace_async
1641
+ async def lease(
1642
+ self,
1643
+ resource_group_name: str,
1644
+ account_name: str,
1645
+ container_name: str,
1646
+ parameters: Optional[Union[_models.LeaseContainerRequest, IO[bytes]]] = None,
1647
+ **kwargs: Any
1648
+ ) -> _models.LeaseContainerResponse:
1649
+ """The Lease Container operation establishes and manages a lock on a container for delete
1650
+ operations. The lock duration can be 15 to 60 seconds, or can be infinite.
1651
+
1652
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1653
+ name is case insensitive. Required.
1654
+ :type resource_group_name: str
1655
+ :param account_name: The name of the storage account within the specified resource group.
1656
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1657
+ lower-case letters only. Required.
1658
+ :type account_name: str
1659
+ :param container_name: The name of the blob container within the specified storage account.
1660
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1661
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1662
+ by a letter or number. Required.
1663
+ :type container_name: str
1664
+ :param parameters: Lease Container request body. Is either a LeaseContainerRequest type or a
1665
+ IO[bytes] type. Default value is None.
1666
+ :type parameters: ~azure.mgmt.storage.v2023_01_01.models.LeaseContainerRequest or IO[bytes]
1667
+ :return: LeaseContainerResponse or the result of cls(response)
1668
+ :rtype: ~azure.mgmt.storage.v2023_01_01.models.LeaseContainerResponse
1669
+ :raises ~azure.core.exceptions.HttpResponseError:
1670
+ """
1671
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1672
+ 401: ClientAuthenticationError,
1673
+ 404: ResourceNotFoundError,
1674
+ 409: ResourceExistsError,
1675
+ 304: ResourceNotModifiedError,
1676
+ }
1677
+ error_map.update(kwargs.pop("error_map", {}) or {})
1678
+
1679
+ _headers = case_insensitive_dict(kwargs.pop("headers", {}) or {})
1680
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1681
+
1682
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1683
+ content_type: Optional[str] = kwargs.pop("content_type", _headers.pop("Content-Type", None))
1684
+ cls: ClsType[_models.LeaseContainerResponse] = kwargs.pop("cls", None)
1685
+
1686
+ content_type = content_type or "application/json"
1687
+ _json = None
1688
+ _content = None
1689
+ if isinstance(parameters, (IOBase, bytes)):
1690
+ _content = parameters
1691
+ else:
1692
+ if parameters is not None:
1693
+ _json = self._serialize.body(parameters, "LeaseContainerRequest")
1694
+ else:
1695
+ _json = None
1696
+
1697
+ _request = build_lease_request(
1698
+ resource_group_name=resource_group_name,
1699
+ account_name=account_name,
1700
+ container_name=container_name,
1701
+ subscription_id=self._config.subscription_id,
1702
+ api_version=api_version,
1703
+ content_type=content_type,
1704
+ json=_json,
1705
+ content=_content,
1706
+ headers=_headers,
1707
+ params=_params,
1708
+ )
1709
+ _request = _convert_request(_request)
1710
+ _request.url = self._client.format_url(_request.url)
1711
+
1712
+ _stream = False
1713
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1714
+ _request, stream=_stream, **kwargs
1715
+ )
1716
+
1717
+ response = pipeline_response.http_response
1718
+
1719
+ if response.status_code not in [200]:
1720
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1721
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1722
+
1723
+ deserialized = self._deserialize("LeaseContainerResponse", pipeline_response)
1724
+
1725
+ if cls:
1726
+ return cls(pipeline_response, deserialized, {}) # type: ignore
1727
+
1728
+ return deserialized # type: ignore
1729
+
1730
+ async def _object_level_worm_initial( # pylint: disable=inconsistent-return-statements
1731
+ self, resource_group_name: str, account_name: str, container_name: str, **kwargs: Any
1732
+ ) -> None:
1733
+ error_map: MutableMapping[int, Type[HttpResponseError]] = {
1734
+ 401: ClientAuthenticationError,
1735
+ 404: ResourceNotFoundError,
1736
+ 409: ResourceExistsError,
1737
+ 304: ResourceNotModifiedError,
1738
+ }
1739
+ error_map.update(kwargs.pop("error_map", {}) or {})
1740
+
1741
+ _headers = kwargs.pop("headers", {}) or {}
1742
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1743
+
1744
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1745
+ cls: ClsType[None] = kwargs.pop("cls", None)
1746
+
1747
+ _request = build_object_level_worm_request(
1748
+ resource_group_name=resource_group_name,
1749
+ account_name=account_name,
1750
+ container_name=container_name,
1751
+ subscription_id=self._config.subscription_id,
1752
+ api_version=api_version,
1753
+ headers=_headers,
1754
+ params=_params,
1755
+ )
1756
+ _request = _convert_request(_request)
1757
+ _request.url = self._client.format_url(_request.url)
1758
+
1759
+ _stream = False
1760
+ pipeline_response: PipelineResponse = await self._client._pipeline.run( # pylint: disable=protected-access
1761
+ _request, stream=_stream, **kwargs
1762
+ )
1763
+
1764
+ response = pipeline_response.http_response
1765
+
1766
+ if response.status_code not in [200, 202]:
1767
+ map_error(status_code=response.status_code, response=response, error_map=error_map)
1768
+ raise HttpResponseError(response=response, error_format=ARMErrorFormat)
1769
+
1770
+ if cls:
1771
+ return cls(pipeline_response, None, {}) # type: ignore
1772
+
1773
+ @distributed_trace_async
1774
+ async def begin_object_level_worm(
1775
+ self, resource_group_name: str, account_name: str, container_name: str, **kwargs: Any
1776
+ ) -> AsyncLROPoller[None]:
1777
+ """This operation migrates a blob container from container level WORM to object level immutability
1778
+ enabled container. Prerequisites require a container level immutability policy either in locked
1779
+ or unlocked state, Account level versioning must be enabled and there should be no Legal hold
1780
+ on the container.
1781
+
1782
+ :param resource_group_name: The name of the resource group within the user's subscription. The
1783
+ name is case insensitive. Required.
1784
+ :type resource_group_name: str
1785
+ :param account_name: The name of the storage account within the specified resource group.
1786
+ Storage account names must be between 3 and 24 characters in length and use numbers and
1787
+ lower-case letters only. Required.
1788
+ :type account_name: str
1789
+ :param container_name: The name of the blob container within the specified storage account.
1790
+ Blob container names must be between 3 and 63 characters in length and use numbers, lower-case
1791
+ letters and dash (-) only. Every dash (-) character must be immediately preceded and followed
1792
+ by a letter or number. Required.
1793
+ :type container_name: str
1794
+ :return: An instance of AsyncLROPoller that returns either None or the result of cls(response)
1795
+ :rtype: ~azure.core.polling.AsyncLROPoller[None]
1796
+ :raises ~azure.core.exceptions.HttpResponseError:
1797
+ """
1798
+ _headers = kwargs.pop("headers", {}) or {}
1799
+ _params = case_insensitive_dict(kwargs.pop("params", {}) or {})
1800
+
1801
+ api_version: str = kwargs.pop("api_version", _params.pop("api-version", self._api_version or "2023-01-01"))
1802
+ cls: ClsType[None] = kwargs.pop("cls", None)
1803
+ polling: Union[bool, AsyncPollingMethod] = kwargs.pop("polling", True)
1804
+ lro_delay = kwargs.pop("polling_interval", self._config.polling_interval)
1805
+ cont_token: Optional[str] = kwargs.pop("continuation_token", None)
1806
+ if cont_token is None:
1807
+ raw_result = await self._object_level_worm_initial( # type: ignore
1808
+ resource_group_name=resource_group_name,
1809
+ account_name=account_name,
1810
+ container_name=container_name,
1811
+ api_version=api_version,
1812
+ cls=lambda x, y, z: x,
1813
+ headers=_headers,
1814
+ params=_params,
1815
+ **kwargs
1816
+ )
1817
+ kwargs.pop("error_map", None)
1818
+
1819
+ def get_long_running_output(pipeline_response): # pylint: disable=inconsistent-return-statements
1820
+ if cls:
1821
+ return cls(pipeline_response, None, {}) # type: ignore
1822
+
1823
+ if polling is True:
1824
+ polling_method: AsyncPollingMethod = cast(
1825
+ AsyncPollingMethod, AsyncARMPolling(lro_delay, lro_options={"final-state-via": "location"}, **kwargs)
1826
+ )
1827
+ elif polling is False:
1828
+ polling_method = cast(AsyncPollingMethod, AsyncNoPolling())
1829
+ else:
1830
+ polling_method = polling
1831
+ if cont_token:
1832
+ return AsyncLROPoller[None].from_continuation_token(
1833
+ polling_method=polling_method,
1834
+ continuation_token=cont_token,
1835
+ client=self._client,
1836
+ deserialization_callback=get_long_running_output,
1837
+ )
1838
+ return AsyncLROPoller[None](self._client, raw_result, get_long_running_output, polling_method) # type: ignore