@@ -96,7 +96,7 @@ def _execute_graphql(
9696 )
9797
9898
99- def _inject_urls_for_urns (
99+ def inject_urls_for_urns (
100100 graph : DataHubGraph , response : Any , json_paths : List [str ]
101101) -> None :
102102 if not _is_datahub_cloud (graph ):
@@ -112,7 +112,7 @@ def _inject_urls_for_urns(
112112 item .update (new_item )
113113
114114
115- def _maybe_convert_to_schema_field_urn (urn : str , column : Optional [str ]) -> str :
115+ def maybe_convert_to_schema_field_urn (urn : str , column : Optional [str ]) -> str :
116116 if column is not None :
117117 maybe_dataset_urn = Urn .from_string (urn )
118118 if not isinstance (maybe_dataset_urn , DatasetUrn ):
@@ -131,7 +131,7 @@ def _maybe_convert_to_schema_field_urn(urn: str, column: Optional[str]) -> str:
131131queries_gql = (pathlib .Path (__file__ ).parent / "gql/queries.gql" ).read_text ()
132132
133133
134- def _clean_gql_response (response : Any ) -> Any :
134+ def clean_gql_response (response : Any ) -> Any :
135135 if isinstance (response , dict ):
136136 banned_keys = {
137137 "__typename" ,
@@ -141,19 +141,19 @@ def _clean_gql_response(response: Any) -> Any:
141141 for k , v in response .items ():
142142 if k in banned_keys or v is None or v == []:
143143 continue
144- cleaned_v = _clean_gql_response (v )
144+ cleaned_v = clean_gql_response (v )
145145 if cleaned_v is not None and cleaned_v != {}:
146146 cleaned_response [k ] = cleaned_v
147147
148148 return cleaned_response
149149 elif isinstance (response , list ):
150- return [_clean_gql_response (item ) for item in response ]
150+ return [clean_gql_response (item ) for item in response ]
151151 else :
152152 return response
153153
154154
155- def _clean_get_entity_response (raw_response : dict ) -> dict :
156- response = _clean_gql_response (raw_response )
155+ def clean_get_entity_response (raw_response : dict ) -> dict :
156+ response = clean_gql_response (raw_response )
157157
158158 if response and (schema_metadata := response .get ("schemaMetadata" )):
159159 # Remove empty platformSchema to reduce response clutter
@@ -191,9 +191,9 @@ def get_entity(urn: str) -> dict:
191191 operation_name = "GetEntity" ,
192192 )["entity" ]
193193
194- _inject_urls_for_urns (client ._graph , result , ["" ])
194+ inject_urls_for_urns (client ._graph , result , ["" ])
195195
196- return _clean_get_entity_response (result )
196+ return clean_get_entity_response (result )
197197
198198
199199@mcp .tool (
@@ -274,7 +274,7 @@ def search(
274274 response .pop ("searchResults" , None )
275275 response .pop ("count" , None )
276276
277- return _clean_gql_response (response )
277+ return clean_gql_response (response )
278278
279279
280280@mcp .tool (
@@ -286,7 +286,7 @@ def get_dataset_queries(
286286) -> dict :
287287 client = get_datahub_client ()
288288
289- urn = _maybe_convert_to_schema_field_urn (urn , column )
289+ urn = maybe_convert_to_schema_field_urn (urn , column )
290290
291291 entities_filter = FilterDsl .custom_filter (
292292 field = "entities" , condition = "EQUAL" , values = [urn ]
@@ -310,7 +310,7 @@ def get_dataset_queries(
310310 if query .get ("subjects" ):
311311 query ["subjects" ] = _deduplicate_subjects (query ["subjects" ])
312312
313- return _clean_gql_response (result )
313+ return clean_gql_response (result )
314314
315315
316316def _deduplicate_subjects (subjects : list [dict ]) -> list [str ]:
@@ -374,7 +374,7 @@ def get_lineage(
374374 "searchFlags" : {"skipHighlighting" : True , "maxAggValues" : 3 },
375375 }
376376 if asset_lineage_directive .upstream :
377- result ["upstreams" ] = _clean_gql_response (
377+ result ["upstreams" ] = clean_gql_response (
378378 _execute_graphql (
379379 self .graph ,
380380 query = entity_details_fragment_gql ,
@@ -388,7 +388,7 @@ def get_lineage(
388388 )["searchAcrossLineage" ]
389389 )
390390 if asset_lineage_directive .downstream :
391- result ["downstreams" ] = _clean_gql_response (
391+ result ["downstreams" ] = clean_gql_response (
392392 _execute_graphql (
393393 self .graph ,
394394 query = entity_details_fragment_gql ,
@@ -430,7 +430,7 @@ def get_lineage(
430430
431431 lineage_api = AssetLineageAPI (client ._graph )
432432
433- urn = _maybe_convert_to_schema_field_urn (urn , column )
433+ urn = maybe_convert_to_schema_field_urn (urn , column )
434434 asset_lineage_directive = AssetLineageDirective (
435435 urn = urn ,
436436 upstream = upstream ,
@@ -439,5 +439,5 @@ def get_lineage(
439439 extra_filters = filters ,
440440 )
441441 lineage = lineage_api .get_lineage (asset_lineage_directive )
442- _inject_urls_for_urns (client ._graph , lineage , ["*.searchResults[].entity" ])
442+ inject_urls_for_urns (client ._graph , lineage , ["*.searchResults[].entity" ])
443443 return lineage
0 commit comments