Class RealApolloStore

  • All Implemented Interfaces:
    com.apollographql.apollo.cache.normalized.ApolloStore, com.apollographql.apollo.cache.normalized.internal.ReadableStore, com.apollographql.apollo.cache.normalized.internal.WriteableStore

    public final class RealApolloStore
    extends java.lang.Object
    implements com.apollographql.apollo.cache.normalized.ApolloStore, com.apollographql.apollo.cache.normalized.internal.ReadableStore, com.apollographql.apollo.cache.normalized.internal.WriteableStore
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface com.apollographql.apollo.cache.normalized.ApolloStore

        com.apollographql.apollo.cache.normalized.ApolloStore.Companion, com.apollographql.apollo.cache.normalized.ApolloStore.RecordChangeSubscriber
    • Field Summary

      • Fields inherited from interface com.apollographql.apollo.cache.normalized.ApolloStore

        Companion, NO_APOLLO_STORE
    • Constructor Summary

      Constructors 
      Constructor Description
      RealApolloStore​(com.apollographql.apollo.cache.normalized.NormalizedCache normalizedCache, com.apollographql.apollo.cache.normalized.CacheKeyResolver cacheKeyResolver, com.apollographql.apollo.api.ScalarTypeAdapters scalarTypeAdapters, java.util.concurrent.Executor dispatcher, com.apollographql.apollo.api.internal.ApolloLogger logger)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.apollographql.apollo.cache.normalized.CacheKeyResolver cacheKeyResolver()  
      com.apollographql.apollo.cache.normalized.internal.ResponseNormalizer<com.apollographql.apollo.cache.normalized.Record> cacheResponseNormalizer()  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> clearAll()  
      java.util.Set<java.lang.String> merge​(com.apollographql.apollo.cache.normalized.Record record, com.apollographql.apollo.cache.CacheHeaders cacheHeaders)  
      java.util.Set<java.lang.String> merge​(java.util.Collection<com.apollographql.apollo.cache.normalized.Record> recordSet, com.apollographql.apollo.cache.CacheHeaders cacheHeaders)  
      com.apollographql.apollo.cache.normalized.internal.ResponseNormalizer<java.util.Map<java.lang.String,​java.lang.Object>> networkResponseNormalizer()  
      com.apollographql.apollo.cache.normalized.NormalizedCache normalizedCache()  
      void publish​(java.util.Set<java.lang.String> changedKeys)  
      <F extends com.apollographql.apollo.api.GraphqlFragment>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<F>
      read​(com.apollographql.apollo.api.internal.ResponseFieldMapper<F> responseFieldMapper, com.apollographql.apollo.cache.normalized.CacheKey cacheKey, com.apollographql.apollo.api.Operation.Variables variables)  
      <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<T>
      read​(com.apollographql.apollo.api.Operation<D,​T,​V> operation)  
      <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<com.apollographql.apollo.api.Response<T>>
      read​(com.apollographql.apollo.api.Operation<D,​T,​V> operation, com.apollographql.apollo.api.internal.ResponseFieldMapper<D> responseFieldMapper, com.apollographql.apollo.cache.normalized.internal.ResponseNormalizer<com.apollographql.apollo.cache.normalized.Record> responseNormalizer, com.apollographql.apollo.cache.CacheHeaders cacheHeaders)  
      com.apollographql.apollo.cache.normalized.Record read​(java.lang.String key, com.apollographql.apollo.cache.CacheHeaders cacheHeaders)  
      java.util.Collection<com.apollographql.apollo.cache.normalized.Record> read​(java.util.Collection<java.lang.String> keys, com.apollographql.apollo.cache.CacheHeaders cacheHeaders)  
      <R> R readTransaction​(com.apollographql.apollo.cache.normalized.internal.Transaction<com.apollographql.apollo.cache.normalized.internal.ReadableStore,​R> transaction)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> remove​(com.apollographql.apollo.cache.normalized.CacheKey cacheKey)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> remove​(com.apollographql.apollo.cache.normalized.CacheKey cacheKey, boolean cascade)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Integer> remove​(java.util.List<com.apollographql.apollo.cache.normalized.CacheKey> cacheKeys)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>> rollbackOptimisticUpdates​(java.util.UUID mutationId)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> rollbackOptimisticUpdatesAndPublish​(java.util.UUID mutationId)  
      void subscribe​(com.apollographql.apollo.cache.normalized.ApolloStore.RecordChangeSubscriber subscriber)  
      void unsubscribe​(com.apollographql.apollo.cache.normalized.ApolloStore.RecordChangeSubscriber subscriber)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>> write​(com.apollographql.apollo.api.GraphqlFragment fragment, com.apollographql.apollo.cache.normalized.CacheKey cacheKey, com.apollographql.apollo.api.Operation.Variables variables)  
      <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>>
      write​(com.apollographql.apollo.api.Operation<D,​T,​V> operation, D operationData)  
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> writeAndPublish​(com.apollographql.apollo.api.GraphqlFragment fragment, com.apollographql.apollo.cache.normalized.CacheKey cacheKey, com.apollographql.apollo.api.Operation.Variables variables)  
      <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean>
      writeAndPublish​(com.apollographql.apollo.api.Operation<D,​T,​V> operation, D operationData)  
      <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>>
      writeOptimisticUpdates​(com.apollographql.apollo.api.Operation<D,​T,​V> operation, D operationData, java.util.UUID mutationId)  
      <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables>
      com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean>
      writeOptimisticUpdatesAndPublish​(com.apollographql.apollo.api.Operation<D,​T,​V> operation, D operationData, java.util.UUID mutationId)  
      <R> R writeTransaction​(com.apollographql.apollo.cache.normalized.internal.Transaction<com.apollographql.apollo.cache.normalized.internal.WriteableStore,​R> transaction)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RealApolloStore

        public RealApolloStore​(@NotNull
                               com.apollographql.apollo.cache.normalized.NormalizedCache normalizedCache,
                               @NotNull
                               com.apollographql.apollo.cache.normalized.CacheKeyResolver cacheKeyResolver,
                               @NotNull
                               com.apollographql.apollo.api.ScalarTypeAdapters scalarTypeAdapters,
                               @NotNull
                               java.util.concurrent.Executor dispatcher,
                               @NotNull
                               com.apollographql.apollo.api.internal.ApolloLogger logger)
    • Method Detail

      • networkResponseNormalizer

        public com.apollographql.apollo.cache.normalized.internal.ResponseNormalizer<java.util.Map<java.lang.String,​java.lang.Object>> networkResponseNormalizer()
        Specified by:
        networkResponseNormalizer in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • cacheResponseNormalizer

        public com.apollographql.apollo.cache.normalized.internal.ResponseNormalizer<com.apollographql.apollo.cache.normalized.Record> cacheResponseNormalizer()
        Specified by:
        cacheResponseNormalizer in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • subscribe

        public void subscribe​(com.apollographql.apollo.cache.normalized.ApolloStore.RecordChangeSubscriber subscriber)
        Specified by:
        subscribe in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • unsubscribe

        public void unsubscribe​(com.apollographql.apollo.cache.normalized.ApolloStore.RecordChangeSubscriber subscriber)
        Specified by:
        unsubscribe in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • publish

        public void publish​(@NotNull
                            java.util.Set<java.lang.String> changedKeys)
        Specified by:
        publish in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • clearAll

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> clearAll()
        Specified by:
        clearAll in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • remove

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> remove​(@NotNull
                                                                                                        com.apollographql.apollo.cache.normalized.CacheKey cacheKey)
        Specified by:
        remove in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • remove

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> remove​(@NotNull
                                                                                                        com.apollographql.apollo.cache.normalized.CacheKey cacheKey,
                                                                                                        boolean cascade)
        Specified by:
        remove in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • remove

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Integer> remove​(@NotNull
                                                                                                        java.util.List<com.apollographql.apollo.cache.normalized.CacheKey> cacheKeys)
        Specified by:
        remove in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • readTransaction

        public <R> R readTransaction​(com.apollographql.apollo.cache.normalized.internal.Transaction<com.apollographql.apollo.cache.normalized.internal.ReadableStore,​R> transaction)
        Specified by:
        readTransaction in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • writeTransaction

        public <R> R writeTransaction​(com.apollographql.apollo.cache.normalized.internal.Transaction<com.apollographql.apollo.cache.normalized.internal.WriteableStore,​R> transaction)
        Specified by:
        writeTransaction in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • normalizedCache

        public com.apollographql.apollo.cache.normalized.NormalizedCache normalizedCache()
        Specified by:
        normalizedCache in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • read

        @Nullable
        public com.apollographql.apollo.cache.normalized.Record read​(@NotNull
                                                                     java.lang.String key,
                                                                     @NotNull
                                                                     com.apollographql.apollo.cache.CacheHeaders cacheHeaders)
        Specified by:
        read in interface com.apollographql.apollo.cache.normalized.internal.ReadableStore
      • read

        @NotNull
        public java.util.Collection<com.apollographql.apollo.cache.normalized.Record> read​(@NotNull
                                                                                           java.util.Collection<java.lang.String> keys,
                                                                                           @NotNull
                                                                                           com.apollographql.apollo.cache.CacheHeaders cacheHeaders)
        Specified by:
        read in interface com.apollographql.apollo.cache.normalized.internal.ReadableStore
      • merge

        @NotNull
        public java.util.Set<java.lang.String> merge​(@NotNull
                                                     java.util.Collection<com.apollographql.apollo.cache.normalized.Record> recordSet,
                                                     @NotNull
                                                     com.apollographql.apollo.cache.CacheHeaders cacheHeaders)
        Specified by:
        merge in interface com.apollographql.apollo.cache.normalized.internal.WriteableStore
      • merge

        public java.util.Set<java.lang.String> merge​(@NotNull
                                                     com.apollographql.apollo.cache.normalized.Record record,
                                                     @NotNull
                                                     com.apollographql.apollo.cache.CacheHeaders cacheHeaders)
        Specified by:
        merge in interface com.apollographql.apollo.cache.normalized.internal.WriteableStore
      • cacheKeyResolver

        public com.apollographql.apollo.cache.normalized.CacheKeyResolver cacheKeyResolver()
        Specified by:
        cacheKeyResolver in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • read

        @NotNull
        public <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<T> read​(@NotNull
                                                                                                                                                                                                                       com.apollographql.apollo.api.Operation<D,​T,​V> operation)
        Specified by:
        read in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • read

        @NotNull
        public <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<com.apollographql.apollo.api.Response<T>> read​(@NotNull
                                                                                                                                                                                                                                                              com.apollographql.apollo.api.Operation<D,​T,​V> operation,
                                                                                                                                                                                                                                                              @NotNull
                                                                                                                                                                                                                                                              com.apollographql.apollo.api.internal.ResponseFieldMapper<D> responseFieldMapper,
                                                                                                                                                                                                                                                              @NotNull
                                                                                                                                                                                                                                                              com.apollographql.apollo.cache.normalized.internal.ResponseNormalizer<com.apollographql.apollo.cache.normalized.Record> responseNormalizer,
                                                                                                                                                                                                                                                              @NotNull
                                                                                                                                                                                                                                                              com.apollographql.apollo.cache.CacheHeaders cacheHeaders)
        Specified by:
        read in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • read

        @NotNull
        public <F extends com.apollographql.apollo.api.GraphqlFragment> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<F> read​(@NotNull
                                                                                                                                               com.apollographql.apollo.api.internal.ResponseFieldMapper<F> responseFieldMapper,
                                                                                                                                               @NotNull
                                                                                                                                               com.apollographql.apollo.cache.normalized.CacheKey cacheKey,
                                                                                                                                               @NotNull
                                                                                                                                               com.apollographql.apollo.api.Operation.Variables variables)
        Specified by:
        read in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • write

        @NotNull
        public <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>> write​(@NotNull
                                                                                                                                                                                                                                                      com.apollographql.apollo.api.Operation<D,​T,​V> operation,
                                                                                                                                                                                                                                                      @NotNull
                                                                                                                                                                                                                                                      D operationData)
        Specified by:
        write in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • writeAndPublish

        @NotNull
        public <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> writeAndPublish​(@NotNull
                                                                                                                                                                                                                                                  com.apollographql.apollo.api.Operation<D,​T,​V> operation,
                                                                                                                                                                                                                                                  @NotNull
                                                                                                                                                                                                                                                  D operationData)
        Specified by:
        writeAndPublish in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • write

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>> write​(@NotNull
                                                                                                                     com.apollographql.apollo.api.GraphqlFragment fragment,
                                                                                                                     @NotNull
                                                                                                                     com.apollographql.apollo.cache.normalized.CacheKey cacheKey,
                                                                                                                     @NotNull
                                                                                                                     com.apollographql.apollo.api.Operation.Variables variables)
        Specified by:
        write in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • writeAndPublish

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> writeAndPublish​(@NotNull
                                                                                                                 com.apollographql.apollo.api.GraphqlFragment fragment,
                                                                                                                 @NotNull
                                                                                                                 com.apollographql.apollo.cache.normalized.CacheKey cacheKey,
                                                                                                                 @NotNull
                                                                                                                 com.apollographql.apollo.api.Operation.Variables variables)
        Specified by:
        writeAndPublish in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • writeOptimisticUpdates

        @NotNull
        public <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>> writeOptimisticUpdates​(@NotNull
                                                                                                                                                                                                                                                                       com.apollographql.apollo.api.Operation<D,​T,​V> operation,
                                                                                                                                                                                                                                                                       @NotNull
                                                                                                                                                                                                                                                                       D operationData,
                                                                                                                                                                                                                                                                       @NotNull
                                                                                                                                                                                                                                                                       java.util.UUID mutationId)
        Specified by:
        writeOptimisticUpdates in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • writeOptimisticUpdatesAndPublish

        @NotNull
        public <D extends com.apollographql.apollo.api.Operation.Data,​T,​V extends com.apollographql.apollo.api.Operation.Variables> com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> writeOptimisticUpdatesAndPublish​(@NotNull
                                                                                                                                                                                                                                                                   com.apollographql.apollo.api.Operation<D,​T,​V> operation,
                                                                                                                                                                                                                                                                   @NotNull
                                                                                                                                                                                                                                                                   D operationData,
                                                                                                                                                                                                                                                                   @NotNull
                                                                                                                                                                                                                                                                   java.util.UUID mutationId)
        Specified by:
        writeOptimisticUpdatesAndPublish in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • rollbackOptimisticUpdates

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.util.Set<java.lang.String>> rollbackOptimisticUpdates​(@NotNull
                                                                                                                                         java.util.UUID mutationId)
        Specified by:
        rollbackOptimisticUpdates in interface com.apollographql.apollo.cache.normalized.ApolloStore
      • rollbackOptimisticUpdatesAndPublish

        @NotNull
        public com.apollographql.apollo.cache.normalized.ApolloStoreOperation<java.lang.Boolean> rollbackOptimisticUpdatesAndPublish​(@NotNull
                                                                                                                                     java.util.UUID mutationId)
        Specified by:
        rollbackOptimisticUpdatesAndPublish in interface com.apollographql.apollo.cache.normalized.ApolloStore