Skip to content

Commit b33fe26

Browse files
committed
Add append_terms method to AtlanClient
1 parent 0b1c9c4 commit b33fe26

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

pyatlan/client/atlan.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -602,3 +602,23 @@ def replace_custom_metadata(self, guid: str, custom_metadata: CustomMetadata):
602602
None,
603603
custom_metadata_request,
604604
)
605+
606+
def append_terms(
607+
self, guid: str, asset_type: Type[A], terms: list[AtlasGlossaryTerm]
608+
) -> Optional[A]:
609+
asset = self.get_asset_by_guid(guid=guid, asset_type=asset_type)
610+
if not terms:
611+
return asset
612+
existing_terms = asset.attributes.meanings
613+
replacement_terms: list[AtlasGlossaryTerm] = []
614+
if existing_terms:
615+
for term in existing_terms:
616+
if term.relationship_status != "DELETED":
617+
replacement_terms.append(term)
618+
replacement_terms.extend(terms)
619+
asset.attributes.meanings = replacement_terms
620+
response = self.upsert(entity=asset)
621+
assets = response.assets_updated(asset_type=asset_type)
622+
if assets:
623+
return assets[0]
624+
return None

0 commit comments

Comments
 (0)