@@ -50,6 +50,7 @@ def id(self):
50
50
51
51
52
52
class _CamelCaseMixin (BaseModel ):
53
+
53
54
class Config :
54
55
allow_population_by_field_name = True
55
56
alias_generator = camel_case
@@ -157,7 +158,7 @@ def _make_name_index(fields: List[DataRowMetadataSchema]):
157
158
158
159
@staticmethod
159
160
def _make_id_index (
160
- fields : List [DataRowMetadataSchema ]
161
+ fields : List [DataRowMetadataSchema ]
161
162
) -> Dict [SchemaId , DataRowMetadataSchema ]:
162
163
index = {}
163
164
for f in fields :
@@ -194,23 +195,21 @@ def _parse_ontology(self) -> List[DataRowMetadataSchema]:
194
195
for option in schema ["options" ]:
195
196
option ["uid" ] = option .pop ("id" )
196
197
options .append (
197
- DataRowMetadataSchema (
198
+ DataRowMetadataSchema (** {
199
+ ** option ,
198
200
** {
199
- ** option ,
200
- ** {
201
- "parent" : schema ["id" ]
202
- }
203
- })
204
- )
201
+ "parent" : schema ["id" ]
202
+ }
203
+ }))
205
204
schema ["options" ] = options
206
205
fields .append (DataRowMetadataSchema (** schema ))
207
206
208
207
return fields
209
208
210
209
def parse_metadata (
211
- self , unparsed : List [Dict [str ,
212
- List [Union [str ,
213
- Dict ]]]]) -> List [DataRowMetadata ]:
210
+ self , unparsed : List [Dict [str ,
211
+ List [Union [str ,
212
+ Dict ]]]]) -> List [DataRowMetadata ]:
214
213
""" Parse metadata responses
215
214
216
215
>>> mdo.parse_metadata([metdata])
@@ -271,7 +270,7 @@ def bulk_upsert(
271
270
raise ValueError ("Empty list passed" )
272
271
273
272
def _batch_upsert (
274
- upserts : List [_UpsertBatchDataRowMetadata ]
273
+ upserts : List [_UpsertBatchDataRowMetadata ]
275
274
) -> List [DataRowMetadataBatchResponse ]:
276
275
query = """mutation UpsertDataRowMetadataBetaPyApi($metadata: [DataRowCustomMetadataBatchUpsertInput!]!) {
277
276
upsertDataRowCustomMetadata(data: $metadata){
@@ -295,20 +294,22 @@ def _batch_upsert(
295
294
items = []
296
295
for m in metadata :
297
296
if len (m .fields ) > _MAX_METADATA_FIELDS :
298
- raise ValueError (f"Cannot upload { len (m .fields )} , the max number is { _MAX_METADATA_FIELDS } " )
297
+ raise ValueError (
298
+ f"Cannot upload { len (m .fields )} , the max number is { _MAX_METADATA_FIELDS } "
299
+ )
299
300
items .append (
300
301
_UpsertBatchDataRowMetadata (
301
302
data_row_id = m .data_row_id ,
302
303
fields = list (
303
304
chain .from_iterable (
304
305
self ._parse_upsert (m ) for m in m .fields ))).dict (
305
- by_alias = True ))
306
+ by_alias = True ))
306
307
307
308
res = _batch_operations (_batch_upsert , items , self ._batch_size )
308
309
return res
309
310
310
311
def bulk_delete (
311
- self , deletes : List [DeleteDataRowMetadata ]
312
+ self , deletes : List [DeleteDataRowMetadata ]
312
313
) -> List [DataRowMetadataBatchResponse ]:
313
314
""" Delete metadata from a datarow by specifiying the fields you want to remove
314
315
@@ -335,7 +336,7 @@ def bulk_delete(
335
336
raise ValueError ("Empty list passed" )
336
337
337
338
def _batch_delete (
338
- deletes : List [_DeleteBatchDataRowMetadata ]
339
+ deletes : List [_DeleteBatchDataRowMetadata ]
339
340
) -> List [DataRowMetadataBatchResponse ]:
340
341
query = """mutation DeleteDataRowMetadataBetaPyApi($deletes: [DataRowCustomMetadataBatchDeleteInput!]!) {
341
342
deleteDataRowCustomMetadata(data: $deletes) {
@@ -454,9 +455,9 @@ def _batch_items(iterable: List[Any], size: int) -> Generator[Any, None, None]:
454
455
455
456
456
457
def _batch_operations (
457
- batch_function : _BatchFunction ,
458
- items : List ,
459
- batch_size : int = 100 ,
458
+ batch_function : _BatchFunction ,
459
+ items : List ,
460
+ batch_size : int = 100 ,
460
461
):
461
462
response = []
462
463
0 commit comments