Package org.forum.server.specific_code
Class DataFetchersDelegateMemberImpl
java.lang.Object
org.forum.server.specific_code.DataFetchersDelegateMemberImpl
- All Implemented Interfaces:
DataFetchersDelegateMember
@Component
public class DataFetchersDelegateMemberImpl
extends Object
implements DataFetchersDelegateMember
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbatchLoader
(List<Long> keys, org.dataloader.BatchLoaderEnvironment env) 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.forum.server.graphql.util.DataFetchersDelegateMember
unorderedReturnBatchLoader
-
Field Details
-
logger
protected org.slf4j.Logger loggerThe logger for this instance
-
-
Constructor Details
-
DataFetchersDelegateMemberImpl
public DataFetchersDelegateMemberImpl()
-
-
Method Details
-
batchLoader
Description copied from interface:DataFetchersDelegateMember
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 interfaceDataFetchersDelegateMember
- Parameters:
keys
- A list of ID's id, for which the matching objects must be returnedenv
- The Data Loader environment- Returns:
- A list of IDs
-