@@ -628,6 +628,7 @@ def save(
628628 entities .append (entity )
629629 for asset in entities :
630630 asset .validate_required ()
631+ asset .flush_custom_metadata (client = self ._client ) # type: ignore[arg-type]
631632 request = BulkRequest [Asset ](entities = entities )
632633 raw_json = self ._client ._call_api (BULK_UPDATE , query_params , request )
633634 response = AssetMutationResponse (** raw_json )
@@ -745,6 +746,7 @@ def save_replacing_cm(
745746 entities .append (entity )
746747 for asset in entities :
747748 asset .validate_required ()
749+ asset .flush_custom_metadata (client = self ._client ) # type: ignore[arg-type]
748750 request = BulkRequest [Asset ](entities = entities )
749751 raw_json = self ._client ._call_api (BULK_UPDATE , query_params , request )
750752 return AssetMutationResponse (** raw_json )
@@ -885,6 +887,7 @@ def _restore_asset(self, asset: Asset) -> AssetMutationResponse:
885887 "replaceBusinessAttributes" : False ,
886888 "overwriteBusinessAttributes" : False ,
887889 }
890+ to_restore .flush_custom_metadata (self ._client ) # type: ignore[arg-type]
888891 request = BulkRequest [Asset ](entities = [to_restore ])
889892 raw_json = self ._client ._call_api (BULK_UPDATE , query_params , request )
890893 return AssetMutationResponse (** raw_json )
@@ -919,7 +922,7 @@ def _modify_tags(
919922 )
920923
921924 atlan_tag = [
922- AtlanTag (
925+ AtlanTag ( # type: ignore[call-arg]
923926 type_name = AtlanTagName (display_text = name ),
924927 propagate = propagate ,
925928 remove_propagations_on_entity_delete = remove_propagation_on_delete ,
@@ -1091,6 +1094,7 @@ def _update_asset_by_attribute(
10911094 self , asset : A , asset_type : Type [A ], qualified_name : str
10921095 ):
10931096 query_params = {"attr:qualifiedName" : qualified_name }
1097+ asset .flush_custom_metadata (client = self ._client ) # type: ignore[arg-type]
10941098 raw_json = self ._client ._call_api (
10951099 PARTIAL_UPDATE_ENTITY_BY_ATTRIBUTE .format_path_with_params (
10961100 asset_type .__name__
@@ -1404,7 +1408,7 @@ def remove_custom_metadata(self, guid: str, cm_name: str):
14041408 :param cm_name: human-readable name of the custom metadata to remove
14051409 :raises AtlanError: on any API communication issue
14061410 """
1407- custom_metadata = CustomMetadataDict (name = cm_name )
1411+ custom_metadata = CustomMetadataDict (client = self . _client , name = cm_name ) # type: ignore[arg-type]
14081412 # invoke clear_all so all attributes are set to None and consequently removed
14091413 custom_metadata .clear_all ()
14101414 custom_metadata_request = CustomMetadataRequest .create (
0 commit comments