public final class ApolloCacheInterceptor extends java.lang.Object implements ApolloInterceptor
ApolloInterceptor responsible for serving requests from the normalized
cache. It takes the following actions based on the CacheControl set:
ApolloInterceptor.InterceptorResponse
with the GraphQL Operation object wrapped inside. ApolloInterceptor.CallBack, ApolloInterceptor.InterceptorResponse| Constructor and Description |
|---|
ApolloCacheInterceptor(ApolloStore apolloStore,
CacheControl cacheControl,
CacheHeaders cacheHeaders,
com.apollographql.apollo.api.ResponseFieldMapper responseFieldMapper,
java.util.Map<com.apollographql.apollo.api.ScalarType,CustomTypeAdapter> customTypeAdapters,
java.util.concurrent.ExecutorService dispatcher,
ApolloLogger logger) |
| Modifier and Type | Method and Description |
|---|---|
void |
dispose()
Disposes of the resources which are no longer required.
|
ApolloInterceptor.InterceptorResponse |
intercept(com.apollographql.apollo.api.Operation operation,
ApolloInterceptorChain chain)
Intercepts the outgoing request, performs blocking operations on the request or the response returned by the next
set of interceptors in the chain, and returns an
ApolloInterceptor.InterceptorResponse if the operations succeeded or throws
an exception if the operations failed. |
void |
interceptAsync(com.apollographql.apollo.api.Operation operation,
ApolloInterceptorChain chain,
java.util.concurrent.ExecutorService dispatcher,
ApolloInterceptor.CallBack callBack)
Intercepts the outgoing request and performs non blocking operations on the request or the response returned by
the next set of interceptors in the chain.
|
public ApolloCacheInterceptor(@Nonnull
ApolloStore apolloStore,
@Nonnull
CacheControl cacheControl,
@Nonnull
CacheHeaders cacheHeaders,
@Nonnull
com.apollographql.apollo.api.ResponseFieldMapper responseFieldMapper,
@Nonnull
java.util.Map<com.apollographql.apollo.api.ScalarType,CustomTypeAdapter> customTypeAdapters,
@Nonnull
java.util.concurrent.ExecutorService dispatcher,
@Nonnull
ApolloLogger logger)
@Nonnull public ApolloInterceptor.InterceptorResponse intercept(com.apollographql.apollo.api.Operation operation, ApolloInterceptorChain chain) throws ApolloException
ApolloInterceptorApolloInterceptor.InterceptorResponse if the operations succeeded or throws
an exception if the operations failed.intercept in interface ApolloInterceptoroperation - the GraphQL Operation object contained within the outgoing request.chain - the ApolloInterceptorChain object containing the next set of interceptors.ApolloException - if an error occurred while performing operations on the request/response.public void interceptAsync(@Nonnull
com.apollographql.apollo.api.Operation operation,
@Nonnull
ApolloInterceptorChain chain,
@Nonnull
java.util.concurrent.ExecutorService dispatcher,
@Nonnull
ApolloInterceptor.CallBack callBack)
ApolloInterceptorinterceptAsync in interface ApolloInterceptoroperation - the GraphQL Operation object contained within the outgoing request.chain - the ApolloInterceptorChain object containing the next set of interceptors.dispatcher - the ExecutorService which dispatches the non blocking operations on the request/response.callBack - the Callback which will handle the interceptor's response or failure exception.public void dispose()
ApolloInterceptorA use case for this method call would be when an ApolloCall needs to be
cancelled and resources need to be disposed of.
dispose in interface ApolloInterceptor