2929)
3030from datahub .utilities .file_backed_collections import FileBackedDict
3131from datahub .utilities .lossy_collections import LossyList
32+ from datahub .utilities .urns .urn import guess_platform_name
3233
3334logger = logging .getLogger (__name__ )
3435LogLevel = Literal ["ERROR" , "WARNING" , "INFO" , "DEBUG" ]
@@ -41,6 +42,15 @@ def as_obj(self) -> dict: ...
4142
4243@dataclass
4344class Report (SupportsAsObj ):
45+ def __post_init__ (self ) -> None :
46+ self .platform : Optional [str ] = None
47+
48+ def set_platform (self , platform : str ) -> None :
49+ self .platform = platform
50+
51+ def get_platform (self ) -> Optional [str ]:
52+ return self .platform
53+
4454 @staticmethod
4555 def to_str (some_val : Any ) -> str :
4656 if isinstance (some_val , Enum ):
@@ -213,6 +223,7 @@ class ExamplesReport(Report, Closeable):
213223 _lineage_aspects_seen : Set [str ] = field (default_factory = set )
214224
215225 def __post_init__ (self ) -> None :
226+ super ().__post_init__ ()
216227 self ._file_based_dict = FileBackedDict (
217228 tablename = "urn_aspects" ,
218229 extra_columns = {
@@ -347,6 +358,9 @@ def _update_file_based_dict(
347358 aspectName : str ,
348359 mcp : Union [MetadataChangeProposalClass , MetadataChangeProposalWrapper ],
349360 ) -> None :
361+ platform_name = guess_platform_name (urn )
362+ if platform_name != self .get_platform ():
363+ return
350364 if is_lineage_aspect (entityType , aspectName ):
351365 self ._lineage_aspects_seen .add (aspectName )
352366 has_fine_grained_lineage = self ._has_fine_grained_lineage (mcp )
0 commit comments