uipath 2.0.42__py3-none-any.whl → 2.0.44__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.

Potentially problematic release.


This version of uipath might be problematic. Click here for more details.

@@ -18,6 +18,8 @@ from tenacity import (
18
18
  wait_exponential,
19
19
  )
20
20
 
21
+ from uipath._utils._read_overwrites import OverwritesManager
22
+
21
23
  from .._config import Config
22
24
  from .._execution_context import ExecutionContext
23
25
  from .._utils import user_agent_value
@@ -51,6 +53,7 @@ class BaseService:
51
53
  base_url=org_scope_base_url, headers=self.default_headers
52
54
  )
53
55
 
56
+ self._overwrites_manager = OverwritesManager()
54
57
  self._logger.debug(f"HEADERS: {self.default_headers}")
55
58
 
56
59
  super().__init__()
@@ -6,6 +6,7 @@ from .._config import Config
6
6
  from .._execution_context import ExecutionContext
7
7
  from .._folder_context import FolderContext
8
8
  from .._utils import Endpoint, RequestSpec, header_folder, infer_bindings
9
+ from .._utils._read_overwrites import OverwritesManager, read_resource_overwrites
9
10
  from ..models import UserAsset
10
11
  from ..tracing._traced import traced
11
12
  from ._base_service import BaseService
@@ -20,6 +21,8 @@ class AssetsService(FolderContext, BaseService):
20
21
 
21
22
  def __init__(self, config: Config, execution_context: ExecutionContext) -> None:
22
23
  super().__init__(config=config, execution_context=execution_context)
24
+ self._overwrites_manager = OverwritesManager()
25
+ self._base_url = "assets"
23
26
 
24
27
  @infer_bindings()
25
28
  @traced(
@@ -53,12 +56,23 @@ class AssetsService(FolderContext, BaseService):
53
56
  client.assets.retrieve(name="MyAsset")
54
57
  ```
55
58
  """
56
- spec = self._retrieve_spec(name, folder_key=folder_key, folder_path=folder_path)
57
- response = self.request(
58
- spec.method, url=spec.endpoint, content=spec.content, headers=spec.headers
59
- )
60
-
61
- return UserAsset.model_validate(response.json())
59
+ with read_resource_overwrites("asset", name, folder_path) as (
60
+ overwritten_name,
61
+ overwritten_folder_path,
62
+ ):
63
+ spec = self._retrieve_spec(
64
+ overwritten_name,
65
+ folder_key=folder_key,
66
+ folder_path=overwritten_folder_path,
67
+ )
68
+ response = self.request(
69
+ spec.method,
70
+ url=spec.endpoint,
71
+ content=spec.content,
72
+ headers=spec.headers,
73
+ )
74
+
75
+ return UserAsset.model_validate(response.json())
62
76
 
63
77
  @traced(
64
78
  name="assets_retrieve", run_type="uipath", hide_input=True, hide_output=True
@@ -82,12 +96,23 @@ class AssetsService(FolderContext, BaseService):
82
96
  Returns:
83
97
  UserAsset: The asset data.
84
98
  """
85
- spec = self._retrieve_spec(name, folder_key=folder_key, folder_path=folder_path)
86
- response = await self.request_async(
87
- spec.method, url=spec.endpoint, content=spec.content, headers=spec.headers
88
- )
89
-
90
- return UserAsset.model_validate(response.json())
99
+ with read_resource_overwrites("asset", name, folder_path) as (
100
+ overwritten_name,
101
+ overwritten_folder_path,
102
+ ):
103
+ spec = self._retrieve_spec(
104
+ overwritten_name,
105
+ folder_key=folder_key,
106
+ folder_path=overwritten_folder_path,
107
+ )
108
+ response = await self.request_async(
109
+ spec.method,
110
+ url=spec.endpoint,
111
+ content=spec.content,
112
+ headers=spec.headers,
113
+ )
114
+
115
+ return UserAsset.model_validate(response.json())
91
116
 
92
117
  @infer_bindings()
93
118
  @traced(
@@ -114,18 +139,26 @@ class AssetsService(FolderContext, BaseService):
114
139
  Returns:
115
140
  Optional[str]: The decrypted credential password.
116
141
  """
117
- spec = self._retrieve_spec(name, folder_key=folder_key, folder_path=folder_path)
118
-
119
- response = self.request(
120
- spec.method,
121
- url=spec.endpoint,
122
- content=spec.content,
123
- headers=spec.headers,
124
- )
125
-
126
- user_asset = UserAsset.model_validate(response.json())
127
-
128
- return user_asset.credential_password
142
+ with read_resource_overwrites("asset", name, folder_path) as (
143
+ overwritten_name,
144
+ overwritten_folder_path,
145
+ ):
146
+ spec = self._retrieve_spec(
147
+ overwritten_name,
148
+ folder_key=folder_key,
149
+ folder_path=overwritten_folder_path,
150
+ )
151
+
152
+ response = self.request(
153
+ spec.method,
154
+ url=spec.endpoint,
155
+ content=spec.content,
156
+ headers=spec.headers,
157
+ )
158
+
159
+ user_asset = UserAsset.model_validate(response.json())
160
+
161
+ return user_asset.credential_password
129
162
 
130
163
  @infer_bindings()
131
164
  @traced(
@@ -153,18 +186,26 @@ class AssetsService(FolderContext, BaseService):
153
186
  Optional[str]: The decrypted credential password.
154
187
 
155
188
  """
156
- spec = self._retrieve_spec(name, folder_key=folder_key, folder_path=folder_path)
157
-
158
- response = await self.request_async(
159
- spec.method,
160
- url=spec.endpoint,
161
- content=spec.content,
162
- headers=spec.headers,
163
- )
164
-
165
- user_asset = UserAsset.model_validate(response.json())
166
-
167
- return user_asset.credential_password
189
+ with read_resource_overwrites("asset", name, folder_path) as (
190
+ overwritten_name,
191
+ overwritten_folder_path,
192
+ ):
193
+ spec = self._retrieve_spec(
194
+ overwritten_name,
195
+ folder_key=folder_key,
196
+ folder_path=overwritten_folder_path,
197
+ )
198
+
199
+ response = await self.request_async(
200
+ spec.method,
201
+ url=spec.endpoint,
202
+ content=spec.content,
203
+ headers=spec.headers,
204
+ )
205
+
206
+ user_asset = UserAsset.model_validate(response.json())
207
+
208
+ return user_asset.credential_password
168
209
 
169
210
  @traced(name="assets_update", run_type="uipath", hide_input=True, hide_output=True)
170
211
  def update(
@@ -184,18 +225,22 @@ class AssetsService(FolderContext, BaseService):
184
225
  Returns:
185
226
  Response: The HTTP response confirming the update.
186
227
  """
187
- spec = self._update_spec(
188
- robot_asset, folder_key=folder_key, folder_path=folder_path
189
- )
190
-
191
- response = self.request(
192
- spec.method,
193
- url=spec.endpoint,
194
- content=spec.content,
195
- headers=spec.headers,
196
- )
197
-
198
- return response.json()
228
+ with read_resource_overwrites("asset", robot_asset.name or "", folder_path) as (
229
+ overwritten_name,
230
+ overwritten_folder_path,
231
+ ):
232
+ spec = self._update_spec(
233
+ robot_asset, folder_key=folder_key, folder_path=overwritten_folder_path
234
+ )
235
+
236
+ response = self.request(
237
+ spec.method,
238
+ url=spec.endpoint,
239
+ content=spec.content,
240
+ headers=spec.headers,
241
+ )
242
+
243
+ return response.json()
199
244
 
200
245
  @traced(name="assets_update", run_type="uipath", hide_input=True, hide_output=True)
201
246
  async def update_async(
@@ -215,18 +260,22 @@ class AssetsService(FolderContext, BaseService):
215
260
  Returns:
216
261
  Response: The HTTP response confirming the update.
217
262
  """
218
- spec = self._update_spec(
219
- robot_asset, folder_key=folder_key, folder_path=folder_path
220
- )
221
-
222
- response = await self.request_async(
223
- spec.method,
224
- url=spec.endpoint,
225
- content=spec.content,
226
- headers=spec.headers,
227
- )
228
-
229
- return response.json()
263
+ with read_resource_overwrites("asset", robot_asset.name or "", folder_path) as (
264
+ overwritten_name,
265
+ overwritten_folder_path,
266
+ ):
267
+ spec = self._update_spec(
268
+ robot_asset, folder_key=folder_key, folder_path=overwritten_folder_path
269
+ )
270
+
271
+ response = await self.request_async(
272
+ spec.method,
273
+ url=spec.endpoint,
274
+ content=spec.content,
275
+ headers=spec.headers,
276
+ )
277
+
278
+ return response.json()
230
279
 
231
280
  @property
232
281
  def custom_headers(self) -> Dict[str, str]: