in common/entities/entities.py [0:0]
def proto_to_project(msg: asset.ResourceSearchResult) -> "Project":
"""
Converts a ResourceSearchResult message to a Project instance.
"""
pattern = r".*projects/(?P<project>[^/]+)$"
project_id_match = re.match(
pattern, msg.parent_full_resource_name
)
if project_id_match is None:
raise FormatException(f"Incorrect parent name: "
f"{msg.parent_full_resource_name}")
project_number_match = re.match(
pattern, msg.project
)
if project_number_match is None:
raise FormatException(f"Incorrect project name: "
f"{msg.project}")
project = Project(
project_id_match.group("project"),
project_number_match.group("project"),
)
if msg.display_name == "datacatalog.googleapis.com":
project.set_data_catalog_api_enabled(True)
if msg.display_name == "dataplex.googleapis.com":
project.set_dataplex_api_enabled(True)
return project