224 lines
13 KiB
Java
Raw Normal View History

2019-08-31 20:51:14 -07:00
package com.linkedin.metadata.dao;
import com.linkedin.data.template.RecordTemplate;
import com.linkedin.metadata.dao.utils.Statement;
import com.linkedin.metadata.query.CriterionArray;
import com.linkedin.metadata.query.Filter;
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
import com.linkedin.metadata.query.RelationshipFilter;
2019-08-31 20:51:14 -07:00
import java.util.List;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
import org.javatuples.Triplet;
2019-08-31 20:51:14 -07:00
/**
* A base class for all Query DAOs.
*
* Query DAO is a standardized interface to query the centralized graph DB.
* See http://go/gma for more details.
*/
public abstract class BaseQueryDAO {
/**
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* Finds a list of entities of a specific type based on the given filter on the entity
2019-08-31 20:51:14 -07:00
*
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param entityClass the entity class to query
2019-08-31 20:51:14 -07:00
* @param filter the filter to apply when querying
* @param offset the offset query should start at. Ignored if set to a negative value.
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
*
2019-08-31 20:51:14 -07:00
* @param <ENTITY> returned entity type. Must be a type defined in com.linkedin.metadata.entity.
* @return a list of entities that match the conditions specified in {@code filter}
*/
@Nonnull
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
public abstract <ENTITY extends RecordTemplate> List<ENTITY> findEntities(@Nonnull Class<ENTITY> entityClass,
2019-08-31 20:51:14 -07:00
@Nonnull Filter filter, int offset, int count);
/**
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* Finds a list of entities of a specific type using a raw graph query statement.
2019-08-31 20:51:14 -07:00
*
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param entityClass the entity class to query
2019-08-31 20:51:14 -07:00
* @param queryStatement a {@link Statement} with query text and parameters
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
*
2019-08-31 20:51:14 -07:00
* @param <ENTITY> returned entity type. Must be a type defined in com.linkedin.metadata.entity.
* @return a list of entities from the outcome of the query statement
*/
@Nonnull
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
public abstract <ENTITY extends RecordTemplate> List<ENTITY> findEntities(@Nonnull Class<ENTITY> entityClass,
2019-08-31 20:51:14 -07:00
@Nonnull Statement queryStatement);
/**
* Finds a list of entities containing a mixture of different types using a graph query.
*
* @param queryStatement a {@link Statement} with query text and parameters
* @return a list of entities from the outcome of the query statement
*/
@Nonnull
public abstract List<RecordTemplate> findMixedTypesEntities(@Nonnull Statement queryStatement);
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
/**
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
* Finds a list of entities through certain relationships given an entity filter
* For more details on design and use cases, refer to interface 1 in go/gma/graph/dao
*
* @param sourceEntityClass the source entity class to query
* @param sourceEntityFilter the filter to apply to the source entity when querying
* @param destinationEntityClass the destination entity class for result entity types
* @param destinationEntityFilter the filter to apply to the destination entity when querying
* @param relationshipType the type of relationship to query
* @param relationshipFilter the filter to apply to relationship when querying including the direction
* @param offset the offset query should start at. Ignored if set to a negative value.
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
*
* @param <SRC_ENTITY> source ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <DEST_ENTITY> destination ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <RELATIONSHIP> returned relationship type. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of entities that match the conditions specified in {@code filter}
*/
@Nonnull
public <SRC_ENTITY extends RecordTemplate, DEST_ENTITY extends RecordTemplate, RELATIONSHIP extends RecordTemplate>
List<RecordTemplate> findEntities(
@Nullable Class<SRC_ENTITY> sourceEntityClass, @Nonnull Filter sourceEntityFilter,
@Nullable Class<DEST_ENTITY> destinationEntityClass, @Nonnull Filter destinationEntityFilter,
@Nonnull Class<RELATIONSHIP> relationshipType, @Nonnull RelationshipFilter relationshipFilter,
int offset, int count) {
return findEntities(sourceEntityClass, sourceEntityFilter, destinationEntityClass, destinationEntityFilter,
relationshipType, relationshipFilter, 1, 1, offset, count);
}
/**
* Finds a list of entities of a specific type via multiple hops traversal based on the given relationship filter and source/destination entity filter.
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
*
* @param sourceEntityClass the source entity class to query
* @param sourceEntityFilter the filter to apply to the source entity when querying
* @param destinationEntityClass the destination entity class
* @param destinationEntityFilter the filter to apply to the destination entity when querying
* @param relationshipType the type of relationship to query
* @param relationshipFilter the filter to apply to relationship when querying
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
* @param minHops the lower bound of hops for graph traversing.
* @param maxHops the upper bound of hops for graph traversing.
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param offset the offset query should start at. Ignored if set to a negative value.
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
*
* @param <SRC_ENTITY> source ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <DEST_ENTITY> destination ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <RELATIONSHIP> returned relationship type. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of entities that match the conditions specified in {@code filter}
*/
@Nonnull
public abstract <SRC_ENTITY extends RecordTemplate, DEST_ENTITY extends RecordTemplate, RELATIONSHIP extends RecordTemplate>
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
List<RecordTemplate> findEntities(
@Nullable Class<SRC_ENTITY> sourceEntityClass, @Nonnull Filter sourceEntityFilter,
@Nullable Class<DEST_ENTITY> destinationEntityClass, @Nonnull Filter destinationEntityFilter,
@Nonnull Class<RELATIONSHIP> relationshipType, @Nonnull RelationshipFilter relationshipFilter, int minHops,
int maxHops, int offset, int count);
/**
* Finds a list of entities based on the given traversing paths.
*
* @param sourceEntityClass the source entity class as the starting point for the query
* @param sourceEntityFilter the filter to apply to the source entity when querying
* @param traversePaths specify the traverse paths via a list of <relationship type, relationship filter, intermediate entities>
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
*
* @param <SRC_ENTITY> source ENTITY type. Starting point of the traverse path. Must be a type defined in com.linkedin.metadata.entity.
* @param <INTER_ENTITY> intermediate entity type on the traverse path. Must be a type defined in com.linkedin.metadata.entity.
* @param <RELATIONSHIP> relationship type on the traverse path. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of entities that match the conditions specified in {@code filter}
*/
@Nonnull
public abstract <SRC_ENTITY extends RecordTemplate, RELATIONSHIP extends RecordTemplate, INTER_ENTITY extends RecordTemplate>
List<RecordTemplate> findEntities(
@Nullable Class<SRC_ENTITY> sourceEntityClass, @Nonnull Filter sourceEntityFilter,
@Nonnull List<Triplet<Class<RELATIONSHIP>, RelationshipFilter, Class<INTER_ENTITY>>> traversePaths, int offset, int count);
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
2019-08-31 20:51:14 -07:00
/**
* Finds a list of relationships of a specific type based on the given relationship filter and source entity filter.
*
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param sourceEntityClass the source entity class to query
* @param sourceEntityFilter the filter to apply to the source entity when querying
2019-08-31 20:51:14 -07:00
* @param relationshipType the type of relationship to query
* @param relationshipFilter the filter to apply to relationship when querying
* @param offset the offset query should start at. Ignored if set to a negative value.
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
*
2019-08-31 20:51:14 -07:00
* @param <ENTITY> source ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <RELATIONSHIP> returned relationship type. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of relationships that match the conditions specified in {@code filter}
*/
@Nonnull
public <ENTITY extends RecordTemplate, RELATIONSHIP extends RecordTemplate> List<RELATIONSHIP> findRelationshipsFromSource(
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
@Nullable Class<ENTITY> sourceEntityClass, @Nonnull Filter sourceEntityFilter,
@Nonnull Class<RELATIONSHIP> relationshipType, @Nonnull Filter relationshipFilter, int offset, int count) {
return findRelationships(sourceEntityClass, sourceEntityFilter, null,
new Filter().setCriteria(new CriterionArray()), relationshipType, relationshipFilter, offset, count);
2019-08-31 20:51:14 -07:00
}
/**
* Finds a list of relationships of a specific type based on the given relationship filter and destination entity filter.
*
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param destinationEntityClass the destination entity class
* @param destinationEntityFilter the filter to apply to the destination entity when querying
2019-08-31 20:51:14 -07:00
* @param relationshipType the type of relationship to query
* @param relationshipFilter the filter to apply to relationship when querying
* @param offset the offset query should start at. Ignored if set to a negative value.
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
*
2019-08-31 20:51:14 -07:00
* @param <ENTITY> destination ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <RELATIONSHIP> returned relationship type. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of relationships that match the conditions specified in {@code filter}
*/
@Nonnull
public <ENTITY extends RecordTemplate, RELATIONSHIP extends RecordTemplate> List<RELATIONSHIP> findRelationshipsFromDestination(
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
@Nullable Class<ENTITY> destinationEntityClass, @Nonnull Filter destinationEntityFilter,
2019-08-31 20:51:14 -07:00
@Nonnull Class<RELATIONSHIP> relationshipType, @Nonnull Filter relationshipFilter, int offset, int count) {
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
return findRelationships(null, new Filter().setCriteria(new CriterionArray()), destinationEntityClass,
destinationEntityFilter, relationshipType, relationshipFilter, offset, count);
2019-08-31 20:51:14 -07:00
}
/**
* Finds a list of relationships of a specific type based on the given relationship filter and source/destination entity filter.
*
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param sourceEntityClass the source entity class to query
* @param sourceEntityFilter the filter to apply to the source entity when querying
* @param destinationEntityClass the destination entity class
* @param destinationEntityFilter the filter to apply to the destination entity when querying
2019-08-31 20:51:14 -07:00
* @param relationshipType the type of relationship to query
* @param relationshipFilter the filter to apply to relationship when querying
* @param offset the offset query should start at. Ignored if set to a negative value.
* @param count the maximum number of entities to return. Ignored if set to a non-positive value.
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
*
2019-08-31 20:51:14 -07:00
* @param <SRC_ENTITY> source ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <DEST_ENTITY> destination ENTITY type. Must be a type defined in com.linkedin.metadata.entity.
* @param <RELATIONSHIP> returned relationship type. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of relationships that match the conditions specified in {@code filter}
*/
@Nonnull
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
public abstract <SRC_ENTITY extends RecordTemplate, DEST_ENTITY extends RecordTemplate, RELATIONSHIP extends RecordTemplate>
List<RELATIONSHIP> findRelationships(
@Nullable Class<SRC_ENTITY> sourceEntityClass, @Nonnull Filter sourceEntityFilter,
@Nullable Class<DEST_ENTITY> destinationEntityClass, @Nonnull Filter destinationEntityFilter,
2019-08-31 20:51:14 -07:00
@Nonnull Class<RELATIONSHIP> relationshipType, @Nonnull Filter relationshipFilter, int offset, int count);
/**
* Finds a list of relationships of a specific type using a graph query.
*
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
* @param relationshipClass the relationship class to query
2019-08-31 20:51:14 -07:00
* @param queryStatement a {@link Statement} with query text and parameters
corp-identity-gms 1.0.26 -> 1.0.40: 1.0.34: Downrank inactive users in user search query 1.0.33: Refactor clients to remove snapshot builder 1.0.32: Adding client & integration test for get_all 1.0.30: Implement other clients for corp groups 1.0.28: Add resources for search and autocomplete for corp groups 1.0.27: Start using BaseClient from metadata-models 1.0.26: Add get_all resource for CorpUsers metadata-models 38.1.12 -> 50.0.6: 50.0.2: Fix removed field update logic for all entities 49.0.1: Add dataset graph builder with DownstreamOf relationship 48.0.3: support query dao with traverse paths 47.0.2: refactor the query dao with relationship filter model 47.0.1: Fix for creating duplicate nodes when label for the node is missing 46.0.21: extend filter model with relationship direction 46.0.19: add unit test for entities partial update 46.0.16: Allow relationship filter in the model and query dao 46.0.15: support relationship directions for multi hop query 46.0.14: Implementing reportsto relationship builder and corpuser graph builder 46.0.10: refactor query dao interface using nullable to replace optional 46.0.9: Rename Mock Utils to Test Utils in Metadata-models mp 46.0.6: Remove search index config from metadata models 46.0.2: neo4j query DAO with relationships directions support 45.1.7: refactoring the graph relationship builders 45.1.5: Use correct total count in search response 45.1.3: Fix issue with empty search query filter 45.1.2: Fix a bug with autocomplete limit param 45.0.3: Change platform field type in the dataset search document 45.0.2: implement multi hops query DAO with interface 5 45.0.1: Moving dataset browsePaths build logic from wherehows-samza 44.0.2: implement interface 2 in query DAO 40.0.2: Only return records which exist in the DB after getting search hits 39.0.0: Add a getAuditor method to BaseSnapshotResource rather than taking it in as a constructor argument 38.1.13: Move BaseClient to metadata-models out of GMS template 38.1.12: Remove default filtering on removed field for get_all MP_VERSION=corp-identity-gms:1.0.40 MP_VERSION=metadata-models:50.0.6 MP_VERSION=wherehows-samza:1.0.56 This commit is automatically generated by li-opensource tool.
2019-11-19 02:26:51 -08:00
*
2019-08-31 20:51:14 -07:00
* @param <RELATIONSHIP> returned relationship type. Must be a type defined in com.linkedin.metadata.relationship.
* @return a list of relationships from the outcome of the query statement
*/
@Nonnull
public abstract <RELATIONSHIP extends RecordTemplate> List<RELATIONSHIP> findRelationships(
corp-identity-gms 1.0.0 -> 1.0.25: 1.0.24: Corp user search across teams and skills 1.0.21: Make /corpGroups /gridUsers /gridGroups extend BaseEntityResource 1.0.17: Use correct util function to load resource file 1.0.16: Add ingest, backfill & getSnapshot action methods to all top-level resources in corp-identity-gms 1.0.13: Onboard search query templates on corp-identity-gms 1.0.9: Fix batch get and add client for batch get 1.0.8: Change package name for corpuser search config 1.0.7: Use search config to get autocomplete field 1.0.6: Implement searchable client 1.0.5: Auto-complete backend support 1.0.3: Add search API metadata-models 24.0.0 -> 38.1.6: 38.1.3: Index active status to corp user search index 38.1.2: Change update response to create response for create API 38.0.10: Mark BaseAspectResource as deprecated 38.0.9: Allow TYPEREF items which have primitive types for arrays in models 38.0.7: Add get-and-set-if-absent function to Local DAO 38.0.6: Add find entities with one relationship in query dao 38.0.4: Fix the inconsistency use of constants and urn params in query dao 38.0.2: Parse source map to obtain the urn 38.0.1: Search document validator in Index Builder 38.0.0: Add urns to search result metadata 37.0.7: Refactor the query dao 37.0.6: Use test models in neo4j dao 37.0.5: Drop metadata model structural assumptions made in neo4j DAOs 37.0.2: Return empty list from getBrowsePaths if browsePaths field doesn't exist 36.0.3: Drop elasticsearch-dao's metadata-models dependency 35.0.10: ES Search DAO to handle null values 35.0.5: Ebean local Dao query string match 35.0.4: Drop all search & browse configs that have been moved to individual GMS 35.0.3: Add ReportTo relationship model 35.0.0: Load resource file properly 34.0.9: Make RestliAuditor injectable 34.0.8: Use encoded query in the test resource 34.0.4: Handle empty aspects param correctly for backfill & getSnapshot actions 34.0.1: Remove corp user specific files from metadata-models 34.0.0: Add backfill & getSnapshot actions to BaseEntityResource 32.0.16: Merge data template classes into metadata-dao's main artifact 32.0.14: Replace "update" method with "ingest" action in BaseEntityResource 32.0.13: Make fliter & sortCriteria parameters optional as they should have been 32.0.12: Move AspectVersion & SnapshotKey back to their original namespaces 32.0.11: Break metadata-dao's dependency on metadata-models 32.0.10: Move model validators to a separate module 32.0.9: Extract principal from the request context for user AuditStamp 32.0.8: Fixing nullability annotations for search/autocomplete/browse resources & daos 32.0.7: Move DAO-specific models to metadata-dao module 32.0.4: Fix search finder not returning total search results count 32.0.3: Implement get_all using search index 32.0.2: Add missing nullability annotation 32.0.1: Use more consistent naming for the test models 31.0.1: Use test-specific metadata models in metadata-dao 31.0.0: Add sort order to Search Dao 30.0.2: Rename Aspect test model to AspectUnion to avoid confusion 30.0.1: Committing migration for metadata-models. 30.0.0: Add default autocomplete field in search config 29.0.16: Modify testcase to account for empty filters 29.0.15: Add searchable interface that clients can use 29.0.14: Use test-specific metadata models in ebean-dao 29.0.12: Move TestUtils to metadata-test-models module 29.0.11: Refactor all tests in metadata-restli to use test models 29.0.10: Move li-metadata-test-utils, metadata-test-models, metadata-test-utils into a new metadata-testing directory to improve code organization. Note that this is a backward compatible change as this doesn't alter the produced artifacts. 29.0.9: Move test-specific models to a stand-alone module 29.0.2: Refactor the rest of validators 28.0.3: Refactor validateSchema for aspect 28.0.2: Implement searchDao for CorpUserInfo. 27.0.16: Refactor for ModelValidation tests 27.0.10: Add new relationship union to model utils 27.0.9: Add plugin to rest client factory 27.0.6: Add rest high level factory 27.0.5: Fix a test bug when reviewing the code 27.0.4: Add create via lambda API to BaseVersionedAspectResource 27.0.2: Change return type of search finder to capture search result metadata in BaseSearchableEntityResource 27.0.1: Drop the unnecessary get method from BaseEntityResource 27.0.0: Add BaseBrowsableEntityResource 26.0.15: Add autocomplete action to BaseSearchableEntityResource 26.0.14: Add BaseSearchableEntityResource 26.0.13: Add getUrnFromDocument & urnClassForDocument util methods that are needed in future RBs 26.0.11: Add BaseVersionedAspectResource 26.0.9: Index signals associated with dataset relevance 26.0.4: Support namespace for ID generation 26.0.1: Fix inconsistent instance variable naming in SearchResult 25.0.6: Add entity-snapshot conversion 25.0.5: Use test-specific metadata models in metadata-restli 25.0.3: Add aspect filtering to BaseEntityResource 24.0.9: Add update method to BaseEntityResource 24.0.7: Fix for parameter types of getBrowsePaths action method MP_VERSION=corp-identity-gms:1.0.25 MP_VERSION=metadata-models:38.1.6 MP_VERSION=wherehows-samza:1.0.29
2019-10-02 11:08:52 -07:00
@Nonnull Class<RELATIONSHIP> relationshipClass, @Nonnull Statement queryStatement);
2019-08-31 20:51:14 -07:00
/**
* Finds a list of relationships containing a mixture of different types using a graph query.
*
* @param queryStatement a {@link Statement} with query text and parameters
* @return a list of relationships from the outcome of the query statement
*/
@Nonnull
public abstract List<RecordTemplate> findMixedTypesRelationships(@Nonnull Statement queryStatement);
}