Package org.allGraphQLCases.server.impl
Class DataFetchersDelegateWithIDImpl
java.lang.Object
org.allGraphQLCases.server.impl.DataFetchersDelegateWithIDImpl
- All Implemented Interfaces:
DataFetchersDelegateWithID
@Component
public class DataFetchersDelegateWithIDImpl
extends Object
implements DataFetchersDelegateWithID
- Author:
- etienne-sf
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionbatchLoader
(List<UUID> keys, org.dataloader.BatchLoaderEnvironment environment) This method loads a list of ${dataFetcher.field.name}, based on the list of id to be fetched.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.allGraphQLCases.server.DataFetchersDelegateWithID
unorderedReturnBatchLoader
-
Constructor Details
-
DataFetchersDelegateWithIDImpl
public DataFetchersDelegateWithIDImpl()
-
-
Method Details
-
batchLoader
public List<SIP_WithID_SIS> batchLoader(List<UUID> keys, org.dataloader.BatchLoaderEnvironment environment) Description copied from interface:DataFetchersDelegateWithID
This method loads a list of ${dataFetcher.field.name}, based on the list of id to be fetched. This method is used by graphql-java java-dataloader to highly optimize the number of requests to the server, when recursing down through the object associations.
You can find more information on this page: graphql-java batching
Important notes:- The list returned by this method must be sorted in the exact same order as the given keys list. If values are missing (no value for a given key), then the returned list must contain a null value at this key's position.
- One of
batchLoader
orunorderedReturnBatchLoader
must be overriden in the data fetcher implementation. If not, then a NullPointerException will be thrown at runtime, with a proper error message. - If your data storage implementation makes it complex to return values in the same order as the keys list, then it's
easier to override
unorderedReturnBatchLoader
, and let the default implementation ofbatchLoader
order the values
- Specified by:
batchLoader
in interfaceDataFetchersDelegateWithID
- Parameters:
keys
- A list of ID's id, for which the matching objects must be returnedenvironment
- The Data Loader environment- Returns:
- A list of IDs
-