Skip to content

Commit

Permalink
Add documentation about using GraphQLQueryWatcher with mutations (apo…
Browse files Browse the repository at this point in the history
  • Loading branch information
damian0815 authored and gh-action-runner committed Nov 21, 2024
1 parent e7abd71 commit 7e1c45b
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions Sources/Apollo/GraphQLQueryWatcher.swift
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,14 @@ import Foundation
import ApolloAPI
#endif

/// A `GraphQLQueryWatcher` is responsible for watching the store, and calling the result handler with a new result whenever any of the data the previous result depends on changes.
/// A `GraphQLQueryWatcher` is responsible for watching the store, and calling the result handler with a new result
/// whenever any of the data the previous result depends on changes. If your query shares response objects with other
/// operations you should read about normalizing objects by cache key in our documentation. Normalized objects will
/// update all query watchers that had received that object before.
///
/// NOTE: The store retains the watcher while subscribed. You must call `cancel()` on your query watcher when you no longer need results. Failure to call `cancel()` before releasing your reference to the returned watcher will result in a memory leak.
/// NOTE: The store retains the watcher while subscribed. You must call `cancel()` on your query watcher when you no
/// longer need results. Failure to call `cancel()` before releasing your reference to the returned watcher will
/// result in a memory leak.
public final class GraphQLQueryWatcher<Query: GraphQLQuery>: Cancellable, ApolloStoreSubscriber {
weak var client: (any ApolloClientProtocol)?
public let query: Query
Expand Down

0 comments on commit 7e1c45b

Please sign in to comment.