feat(summary-tab): display links on glossary node entities (#14623)

This commit is contained in:
purnimagarg1 2025-09-03 20:47:08 +05:30 committed by GitHub
parent b80620292f
commit b79a2b91b0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 19 additions and 1 deletions

View File

@ -5,6 +5,7 @@ import static com.linkedin.metadata.Constants.FORMS_ASPECT_NAME;
import static com.linkedin.metadata.Constants.GLOSSARY_NODE_ENTITY_NAME; import static com.linkedin.metadata.Constants.GLOSSARY_NODE_ENTITY_NAME;
import static com.linkedin.metadata.Constants.GLOSSARY_NODE_INFO_ASPECT_NAME; import static com.linkedin.metadata.Constants.GLOSSARY_NODE_INFO_ASPECT_NAME;
import static com.linkedin.metadata.Constants.GLOSSARY_NODE_KEY_ASPECT_NAME; import static com.linkedin.metadata.Constants.GLOSSARY_NODE_KEY_ASPECT_NAME;
import static com.linkedin.metadata.Constants.INSTITUTIONAL_MEMORY_ASPECT_NAME;
import static com.linkedin.metadata.Constants.OWNERSHIP_ASPECT_NAME; import static com.linkedin.metadata.Constants.OWNERSHIP_ASPECT_NAME;
import static com.linkedin.metadata.Constants.STRUCTURED_PROPERTIES_ASPECT_NAME; import static com.linkedin.metadata.Constants.STRUCTURED_PROPERTIES_ASPECT_NAME;
@ -50,7 +51,8 @@ public class GlossaryNodeType
OWNERSHIP_ASPECT_NAME, OWNERSHIP_ASPECT_NAME,
STRUCTURED_PROPERTIES_ASPECT_NAME, STRUCTURED_PROPERTIES_ASPECT_NAME,
FORMS_ASPECT_NAME, FORMS_ASPECT_NAME,
APPLICATION_MEMBERSHIP_ASPECT_NAME); APPLICATION_MEMBERSHIP_ASPECT_NAME,
INSTITUTIONAL_MEMORY_ASPECT_NAME);
private final EntityClient _entityClient; private final EntityClient _entityClient;

View File

@ -5,6 +5,7 @@ import static com.linkedin.metadata.Constants.*;
import com.linkedin.common.DisplayProperties; import com.linkedin.common.DisplayProperties;
import com.linkedin.common.Forms; import com.linkedin.common.Forms;
import com.linkedin.common.InstitutionalMemory;
import com.linkedin.common.Ownership; import com.linkedin.common.Ownership;
import com.linkedin.common.urn.Urn; import com.linkedin.common.urn.Urn;
import com.linkedin.data.DataMap; import com.linkedin.data.DataMap;
@ -16,6 +17,7 @@ import com.linkedin.datahub.graphql.generated.GlossaryNodeProperties;
import com.linkedin.datahub.graphql.generated.ResolvedAuditStamp; import com.linkedin.datahub.graphql.generated.ResolvedAuditStamp;
import com.linkedin.datahub.graphql.types.common.mappers.CustomPropertiesMapper; import com.linkedin.datahub.graphql.types.common.mappers.CustomPropertiesMapper;
import com.linkedin.datahub.graphql.types.common.mappers.DisplayPropertiesMapper; import com.linkedin.datahub.graphql.types.common.mappers.DisplayPropertiesMapper;
import com.linkedin.datahub.graphql.types.common.mappers.InstitutionalMemoryMapper;
import com.linkedin.datahub.graphql.types.common.mappers.OwnershipMapper; import com.linkedin.datahub.graphql.types.common.mappers.OwnershipMapper;
import com.linkedin.datahub.graphql.types.common.mappers.util.MappingHelper; import com.linkedin.datahub.graphql.types.common.mappers.util.MappingHelper;
import com.linkedin.datahub.graphql.types.form.FormsMapper; import com.linkedin.datahub.graphql.types.form.FormsMapper;
@ -65,6 +67,12 @@ public class GlossaryNodeMapper implements ModelMapper<EntityResponse, GlossaryN
(glossaryNode, dataMap) -> (glossaryNode, dataMap) ->
glossaryNode.setOwnership( glossaryNode.setOwnership(
OwnershipMapper.map(context, new Ownership(dataMap), entityUrn))); OwnershipMapper.map(context, new Ownership(dataMap), entityUrn)));
mappingHelper.mapToResult(
INSTITUTIONAL_MEMORY_ASPECT_NAME,
(glossaryNode, dataMap) ->
glossaryNode.setInstitutionalMemory(
InstitutionalMemoryMapper.map(
context, new InstitutionalMemory(dataMap), entityUrn)));
mappingHelper.mapToResult( mappingHelper.mapToResult(
STRUCTURED_PROPERTIES_ASPECT_NAME, STRUCTURED_PROPERTIES_ASPECT_NAME,
((entity, dataMap) -> ((entity, dataMap) ->

View File

@ -2639,6 +2639,11 @@ type GlossaryNode implements Entity {
""" """
parentNodes: ParentNodesResult parentNodes: ParentNodesResult
"""
References to internal resources related to the Glossary Node
"""
institutionalMemory: InstitutionalMemory
""" """
Privileges given to a user relevant to this entity Privileges given to a user relevant to this entity
""" """

View File

@ -35,6 +35,9 @@ fragment glossaryNodeFields on GlossaryNode {
autoRenderAspects: aspects(input: { autoRenderOnly: true }) { autoRenderAspects: aspects(input: { autoRenderOnly: true }) {
...autoRenderAspectFields ...autoRenderAspectFields
} }
institutionalMemory {
...institutionalMemoryFields
}
structuredProperties { structuredProperties {
properties { properties {
...structuredPropertiesFields ...structuredPropertiesFields