Skip to content

Commit 3483916

Browse files
authored
Add ignoreUnknownKeys (#6473)
1 parent 9822b20 commit 3483916

File tree

24 files changed

+390
-29
lines changed

24 files changed

+390
-29
lines changed

libraries/apollo-api/api/apollo-api.api

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,15 @@ public final class com/apollographql/apollo/api/ApolloOptionalAdapter : com/apol
4646
}
4747

4848
public final class com/apollographql/apollo/api/ApolloRequest : com/apollographql/apollo/api/ExecutionOptions {
49-
public synthetic fun <init> (Lcom/apollographql/apollo/api/Operation;Ljava/util/UUID;Lcom/apollographql/apollo/api/ExecutionContext;Lcom/apollographql/apollo/api/http/HttpMethod;Ljava/util/List;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
49+
public synthetic fun <init> (Lcom/apollographql/apollo/api/Operation;Ljava/util/UUID;Lcom/apollographql/apollo/api/ExecutionContext;Lcom/apollographql/apollo/api/http/HttpMethod;Ljava/util/List;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
5050
public fun getCanBeBatched ()Ljava/lang/Boolean;
5151
public fun getEnableAutoPersistedQueries ()Ljava/lang/Boolean;
5252
public fun getExecutionContext ()Lcom/apollographql/apollo/api/ExecutionContext;
5353
public final fun getFailFastIfOffline ()Ljava/lang/Boolean;
5454
public fun getHttpHeaders ()Ljava/util/List;
5555
public fun getHttpMethod ()Lcom/apollographql/apollo/api/http/HttpMethod;
5656
public final fun getIgnoreApolloClientHttpHeaders ()Ljava/lang/Boolean;
57+
public fun getIgnoreUnknownKeys ()Ljava/lang/Boolean;
5758
public final fun getOperation ()Lcom/apollographql/apollo/api/Operation;
5859
public final fun getRequestUuid ()Ljava/util/UUID;
5960
public final fun getRetryOnError ()Ljava/lang/Boolean;
@@ -83,6 +84,7 @@ public final class com/apollographql/apollo/api/ApolloRequest$Builder : com/apol
8384
public fun getHttpHeaders ()Ljava/util/List;
8485
public fun getHttpMethod ()Lcom/apollographql/apollo/api/http/HttpMethod;
8586
public final fun getIgnoreApolloClientHttpHeaders ()Ljava/lang/Boolean;
87+
public fun getIgnoreUnknownKeys ()Ljava/lang/Boolean;
8688
public final fun getOperation ()Lcom/apollographql/apollo/api/Operation;
8789
public final fun getRequestUuid ()Ljava/util/UUID;
8890
public final fun getRetryOnError ()Ljava/lang/Boolean;
@@ -93,6 +95,8 @@ public final class com/apollographql/apollo/api/ApolloRequest$Builder : com/apol
9395
public fun httpMethod (Lcom/apollographql/apollo/api/http/HttpMethod;)Lcom/apollographql/apollo/api/ApolloRequest$Builder;
9496
public synthetic fun httpMethod (Lcom/apollographql/apollo/api/http/HttpMethod;)Ljava/lang/Object;
9597
public final fun ignoreApolloClientHttpHeaders (Ljava/lang/Boolean;)Lcom/apollographql/apollo/api/ApolloRequest$Builder;
98+
public fun ignoreUnknownKeys (Ljava/lang/Boolean;)Lcom/apollographql/apollo/api/ApolloRequest$Builder;
99+
public synthetic fun ignoreUnknownKeys (Ljava/lang/Boolean;)Ljava/lang/Object;
96100
public final fun requestUuid (Ljava/util/UUID;)Lcom/apollographql/apollo/api/ApolloRequest$Builder;
97101
public final fun retryOnError (Ljava/lang/Boolean;)Lcom/apollographql/apollo/api/ApolloRequest$Builder;
98102
public fun sendApqExtensions (Ljava/lang/Boolean;)Lcom/apollographql/apollo/api/ApolloRequest$Builder;
@@ -591,6 +595,7 @@ public abstract interface class com/apollographql/apollo/api/ExecutionOptions {
591595
public abstract fun getExecutionContext ()Lcom/apollographql/apollo/api/ExecutionContext;
592596
public abstract fun getHttpHeaders ()Ljava/util/List;
593597
public abstract fun getHttpMethod ()Lcom/apollographql/apollo/api/http/HttpMethod;
598+
public abstract fun getIgnoreUnknownKeys ()Ljava/lang/Boolean;
594599
public abstract fun getSendApqExtensions ()Ljava/lang/Boolean;
595600
public abstract fun getSendDocument ()Ljava/lang/Boolean;
596601
}
@@ -691,6 +696,7 @@ public abstract interface class com/apollographql/apollo/api/MutableExecutionOpt
691696
public abstract fun enableAutoPersistedQueries (Ljava/lang/Boolean;)Ljava/lang/Object;
692697
public abstract fun httpHeaders (Ljava/util/List;)Ljava/lang/Object;
693698
public abstract fun httpMethod (Lcom/apollographql/apollo/api/http/HttpMethod;)Ljava/lang/Object;
699+
public abstract fun ignoreUnknownKeys (Ljava/lang/Boolean;)Ljava/lang/Object;
694700
public abstract fun sendApqExtensions (Ljava/lang/Boolean;)Ljava/lang/Object;
695701
public abstract fun sendDocument (Ljava/lang/Boolean;)Ljava/lang/Object;
696702
}
@@ -1104,6 +1110,8 @@ public final class com/apollographql/apollo/api/json/BufferedSourceJsonReader :
11041110
public fun endObject ()Lcom/apollographql/apollo/api/json/JsonReader;
11051111
public fun getPath ()Ljava/util/List;
11061112
public fun hasNext ()Z
1113+
public fun ignoreUnknownKeys ()Z
1114+
public fun ignoreUnknownKeys (Z)V
11071115
public fun nextBoolean ()Z
11081116
public fun nextDouble ()D
11091117
public fun nextInt ()I
@@ -1134,6 +1142,8 @@ public abstract interface class com/apollographql/apollo/api/json/JsonReader : j
11341142
public abstract fun endObject ()Lcom/apollographql/apollo/api/json/JsonReader;
11351143
public abstract fun getPath ()Ljava/util/List;
11361144
public abstract fun hasNext ()Z
1145+
public fun ignoreUnknownKeys ()Z
1146+
public fun ignoreUnknownKeys (Z)V
11371147
public abstract fun nextBoolean ()Z
11381148
public abstract fun nextDouble ()D
11391149
public abstract fun nextInt ()I
@@ -1205,6 +1215,8 @@ public final class com/apollographql/apollo/api/json/MapJsonReader : com/apollog
12051215
public fun getPath ()Ljava/util/List;
12061216
public final fun getRoot ()Ljava/lang/Object;
12071217
public fun hasNext ()Z
1218+
public fun ignoreUnknownKeys ()Z
1219+
public fun ignoreUnknownKeys (Z)V
12081220
public fun nextBoolean ()Z
12091221
public fun nextDouble ()D
12101222
public fun nextInt ()I

libraries/apollo-api/api/apollo-api.klib.api

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ abstract interface <#A: kotlin/Any?> com.apollographql.apollo.api/MutableExecuti
7272
abstract fun enableAutoPersistedQueries(kotlin/Boolean?): #A // com.apollographql.apollo.api/MutableExecutionOptions.enableAutoPersistedQueries|enableAutoPersistedQueries(kotlin.Boolean?){}[0]
7373
abstract fun httpHeaders(kotlin.collections/List<com.apollographql.apollo.api.http/HttpHeader>?): #A // com.apollographql.apollo.api/MutableExecutionOptions.httpHeaders|httpHeaders(kotlin.collections.List<com.apollographql.apollo.api.http.HttpHeader>?){}[0]
7474
abstract fun httpMethod(com.apollographql.apollo.api.http/HttpMethod?): #A // com.apollographql.apollo.api/MutableExecutionOptions.httpMethod|httpMethod(com.apollographql.apollo.api.http.HttpMethod?){}[0]
75+
abstract fun ignoreUnknownKeys(kotlin/Boolean?): #A // com.apollographql.apollo.api/MutableExecutionOptions.ignoreUnknownKeys|ignoreUnknownKeys(kotlin.Boolean?){}[0]
7576
abstract fun sendApqExtensions(kotlin/Boolean?): #A // com.apollographql.apollo.api/MutableExecutionOptions.sendApqExtensions|sendApqExtensions(kotlin.Boolean?){}[0]
7677
abstract fun sendDocument(kotlin/Boolean?): #A // com.apollographql.apollo.api/MutableExecutionOptions.sendDocument|sendDocument(kotlin.Boolean?){}[0]
7778
}
@@ -116,6 +117,8 @@ abstract interface com.apollographql.apollo.api.json/JsonReader : okio/Closeable
116117
abstract fun rewind() // com.apollographql.apollo.api.json/JsonReader.rewind|rewind(){}[0]
117118
abstract fun selectName(kotlin.collections/List<kotlin/String>): kotlin/Int // com.apollographql.apollo.api.json/JsonReader.selectName|selectName(kotlin.collections.List<kotlin.String>){}[0]
118119
abstract fun skipValue() // com.apollographql.apollo.api.json/JsonReader.skipValue|skipValue(){}[0]
120+
open fun ignoreUnknownKeys(): kotlin/Boolean // com.apollographql.apollo.api.json/JsonReader.ignoreUnknownKeys|ignoreUnknownKeys(){}[0]
121+
open fun ignoreUnknownKeys(kotlin/Boolean) // com.apollographql.apollo.api.json/JsonReader.ignoreUnknownKeys|ignoreUnknownKeys(kotlin.Boolean){}[0]
119122

120123
final enum class Token : kotlin/Enum<com.apollographql.apollo.api.json/JsonReader.Token> { // com.apollographql.apollo.api.json/JsonReader.Token|null[0]
121124
enum entry ANY // com.apollographql.apollo.api.json/JsonReader.Token.ANY|null[0]
@@ -198,6 +201,8 @@ abstract interface com.apollographql.apollo.api/ExecutionOptions { // com.apollo
198201
abstract fun <get-httpHeaders>(): kotlin.collections/List<com.apollographql.apollo.api.http/HttpHeader>? // com.apollographql.apollo.api/ExecutionOptions.httpHeaders.<get-httpHeaders>|<get-httpHeaders>(){}[0]
199202
abstract val httpMethod // com.apollographql.apollo.api/ExecutionOptions.httpMethod|{}httpMethod[0]
200203
abstract fun <get-httpMethod>(): com.apollographql.apollo.api.http/HttpMethod? // com.apollographql.apollo.api/ExecutionOptions.httpMethod.<get-httpMethod>|<get-httpMethod>(){}[0]
204+
abstract val ignoreUnknownKeys // com.apollographql.apollo.api/ExecutionOptions.ignoreUnknownKeys|{}ignoreUnknownKeys[0]
205+
abstract fun <get-ignoreUnknownKeys>(): kotlin/Boolean? // com.apollographql.apollo.api/ExecutionOptions.ignoreUnknownKeys.<get-ignoreUnknownKeys>|<get-ignoreUnknownKeys>(){}[0]
201206
abstract val sendApqExtensions // com.apollographql.apollo.api/ExecutionOptions.sendApqExtensions|{}sendApqExtensions[0]
202207
abstract fun <get-sendApqExtensions>(): kotlin/Boolean? // com.apollographql.apollo.api/ExecutionOptions.sendApqExtensions.<get-sendApqExtensions>|<get-sendApqExtensions>(){}[0]
203208
abstract val sendDocument // com.apollographql.apollo.api/ExecutionOptions.sendDocument|{}sendDocument[0]
@@ -296,6 +301,8 @@ final class <#A: com.apollographql.apollo.api/Operation.Data> com.apollographql.
296301
final fun <get-httpMethod>(): com.apollographql.apollo.api.http/HttpMethod? // com.apollographql.apollo.api/ApolloRequest.httpMethod.<get-httpMethod>|<get-httpMethod>(){}[0]
297302
final val ignoreApolloClientHttpHeaders // com.apollographql.apollo.api/ApolloRequest.ignoreApolloClientHttpHeaders|{}ignoreApolloClientHttpHeaders[0]
298303
final fun <get-ignoreApolloClientHttpHeaders>(): kotlin/Boolean? // com.apollographql.apollo.api/ApolloRequest.ignoreApolloClientHttpHeaders.<get-ignoreApolloClientHttpHeaders>|<get-ignoreApolloClientHttpHeaders>(){}[0]
304+
final val ignoreUnknownKeys // com.apollographql.apollo.api/ApolloRequest.ignoreUnknownKeys|{}ignoreUnknownKeys[0]
305+
final fun <get-ignoreUnknownKeys>(): kotlin/Boolean? // com.apollographql.apollo.api/ApolloRequest.ignoreUnknownKeys.<get-ignoreUnknownKeys>|<get-ignoreUnknownKeys>(){}[0]
299306
final val operation // com.apollographql.apollo.api/ApolloRequest.operation|{}operation[0]
300307
final fun <get-operation>(): com.apollographql.apollo.api/Operation<#A> // com.apollographql.apollo.api/ApolloRequest.operation.<get-operation>|<get-operation>(){}[0]
301308
final val requestUuid // com.apollographql.apollo.api/ApolloRequest.requestUuid|{}requestUuid[0]
@@ -330,6 +337,8 @@ final class <#A: com.apollographql.apollo.api/Operation.Data> com.apollographql.
330337
final fun <get-httpMethod>(): com.apollographql.apollo.api.http/HttpMethod? // com.apollographql.apollo.api/ApolloRequest.Builder.httpMethod.<get-httpMethod>|<get-httpMethod>(){}[0]
331338
final var ignoreApolloClientHttpHeaders // com.apollographql.apollo.api/ApolloRequest.Builder.ignoreApolloClientHttpHeaders|{}ignoreApolloClientHttpHeaders[0]
332339
final fun <get-ignoreApolloClientHttpHeaders>(): kotlin/Boolean? // com.apollographql.apollo.api/ApolloRequest.Builder.ignoreApolloClientHttpHeaders.<get-ignoreApolloClientHttpHeaders>|<get-ignoreApolloClientHttpHeaders>(){}[0]
340+
final var ignoreUnknownKeys // com.apollographql.apollo.api/ApolloRequest.Builder.ignoreUnknownKeys|{}ignoreUnknownKeys[0]
341+
final fun <get-ignoreUnknownKeys>(): kotlin/Boolean? // com.apollographql.apollo.api/ApolloRequest.Builder.ignoreUnknownKeys.<get-ignoreUnknownKeys>|<get-ignoreUnknownKeys>(){}[0]
333342
final var requestUuid // com.apollographql.apollo.api/ApolloRequest.Builder.requestUuid|{}requestUuid[0]
334343
final fun <get-requestUuid>(): com.benasher44.uuid/Uuid? // com.apollographql.apollo.api/ApolloRequest.Builder.requestUuid.<get-requestUuid>|<get-requestUuid>(){}[0]
335344
final var retryOnError // com.apollographql.apollo.api/ApolloRequest.Builder.retryOnError|{}retryOnError[0]
@@ -349,6 +358,7 @@ final class <#A: com.apollographql.apollo.api/Operation.Data> com.apollographql.
349358
final fun httpHeaders(kotlin.collections/List<com.apollographql.apollo.api.http/HttpHeader>?): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.httpHeaders|httpHeaders(kotlin.collections.List<com.apollographql.apollo.api.http.HttpHeader>?){}[0]
350359
final fun httpMethod(com.apollographql.apollo.api.http/HttpMethod?): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.httpMethod|httpMethod(com.apollographql.apollo.api.http.HttpMethod?){}[0]
351360
final fun ignoreApolloClientHttpHeaders(kotlin/Boolean?): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.ignoreApolloClientHttpHeaders|ignoreApolloClientHttpHeaders(kotlin.Boolean?){}[0]
361+
final fun ignoreUnknownKeys(kotlin/Boolean?): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.ignoreUnknownKeys|ignoreUnknownKeys(kotlin.Boolean?){}[0]
352362
final fun requestUuid(com.benasher44.uuid/Uuid): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.requestUuid|requestUuid(com.benasher44.uuid.Uuid){}[0]
353363
final fun retryOnError(kotlin/Boolean?): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.retryOnError|retryOnError(kotlin.Boolean?){}[0]
354364
final fun sendApqExtensions(kotlin/Boolean?): com.apollographql.apollo.api/ApolloRequest.Builder<#A1> // com.apollographql.apollo.api/ApolloRequest.Builder.sendApqExtensions|sendApqExtensions(kotlin.Boolean?){}[0]
@@ -614,6 +624,8 @@ final class com.apollographql.apollo.api.json/BufferedSourceJsonReader : com.apo
614624
final fun endObject(): com.apollographql.apollo.api.json/JsonReader // com.apollographql.apollo.api.json/BufferedSourceJsonReader.endObject|endObject(){}[0]
615625
final fun getPath(): kotlin.collections/List<kotlin/Any> // com.apollographql.apollo.api.json/BufferedSourceJsonReader.getPath|getPath(){}[0]
616626
final fun hasNext(): kotlin/Boolean // com.apollographql.apollo.api.json/BufferedSourceJsonReader.hasNext|hasNext(){}[0]
627+
final fun ignoreUnknownKeys(): kotlin/Boolean // com.apollographql.apollo.api.json/BufferedSourceJsonReader.ignoreUnknownKeys|ignoreUnknownKeys(){}[0]
628+
final fun ignoreUnknownKeys(kotlin/Boolean) // com.apollographql.apollo.api.json/BufferedSourceJsonReader.ignoreUnknownKeys|ignoreUnknownKeys(kotlin.Boolean){}[0]
617629
final fun nextBoolean(): kotlin/Boolean // com.apollographql.apollo.api.json/BufferedSourceJsonReader.nextBoolean|nextBoolean(){}[0]
618630
final fun nextDouble(): kotlin/Double // com.apollographql.apollo.api.json/BufferedSourceJsonReader.nextDouble|nextDouble(){}[0]
619631
final fun nextInt(): kotlin/Int // com.apollographql.apollo.api.json/BufferedSourceJsonReader.nextInt|nextInt(){}[0]
@@ -652,6 +664,8 @@ final class com.apollographql.apollo.api.json/MapJsonReader : com.apollographql.
652664
final fun endObject(): com.apollographql.apollo.api.json/MapJsonReader // com.apollographql.apollo.api.json/MapJsonReader.endObject|endObject(){}[0]
653665
final fun getPath(): kotlin.collections/List<kotlin/Any> // com.apollographql.apollo.api.json/MapJsonReader.getPath|getPath(){}[0]
654666
final fun hasNext(): kotlin/Boolean // com.apollographql.apollo.api.json/MapJsonReader.hasNext|hasNext(){}[0]
667+
final fun ignoreUnknownKeys(): kotlin/Boolean // com.apollographql.apollo.api.json/MapJsonReader.ignoreUnknownKeys|ignoreUnknownKeys(){}[0]
668+
final fun ignoreUnknownKeys(kotlin/Boolean) // com.apollographql.apollo.api.json/MapJsonReader.ignoreUnknownKeys|ignoreUnknownKeys(kotlin.Boolean){}[0]
655669
final fun nextBoolean(): kotlin/Boolean // com.apollographql.apollo.api.json/MapJsonReader.nextBoolean|nextBoolean(){}[0]
656670
final fun nextDouble(): kotlin/Double // com.apollographql.apollo.api.json/MapJsonReader.nextDouble|nextDouble(){}[0]
657671
final fun nextInt(): kotlin/Int // com.apollographql.apollo.api.json/MapJsonReader.nextInt|nextInt(){}[0]
@@ -1530,6 +1544,8 @@ final class com.apollographql.apollo.api.json/DynamicJsJsonReader : com.apollogr
15301544
final fun endObject(): com.apollographql.apollo.api.json/DynamicJsJsonReader // com.apollographql.apollo.api.json/DynamicJsJsonReader.endObject|endObject(){}[0]
15311545
final fun getPath(): kotlin.collections/List<kotlin/Any> // com.apollographql.apollo.api.json/DynamicJsJsonReader.getPath|getPath(){}[0]
15321546
final fun hasNext(): kotlin/Boolean // com.apollographql.apollo.api.json/DynamicJsJsonReader.hasNext|hasNext(){}[0]
1547+
final fun ignoreUnknownKeys(): kotlin/Boolean // com.apollographql.apollo.api.json/DynamicJsJsonReader.ignoreUnknownKeys|ignoreUnknownKeys(){}[0]
1548+
final fun ignoreUnknownKeys(kotlin/Boolean) // com.apollographql.apollo.api.json/DynamicJsJsonReader.ignoreUnknownKeys|ignoreUnknownKeys(kotlin.Boolean){}[0]
15331549
final fun nextBoolean(): kotlin/Boolean // com.apollographql.apollo.api.json/DynamicJsJsonReader.nextBoolean|nextBoolean(){}[0]
15341550
final fun nextDouble(): kotlin/Double // com.apollographql.apollo.api.json/DynamicJsJsonReader.nextDouble|nextDouble(){}[0]
15351551
final fun nextInt(): kotlin/Int // com.apollographql.apollo.api.json/DynamicJsJsonReader.nextInt|nextInt(){}[0]

libraries/apollo-api/src/commonMain/kotlin/com/apollographql/apollo/api/ApolloRequest.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ private constructor(
3434
override val sendDocument: Boolean?,
3535
override val enableAutoPersistedQueries: Boolean?,
3636
override val canBeBatched: Boolean?,
37+
override val ignoreUnknownKeys: Boolean?,
3738
val ignoreApolloClientHttpHeaders: Boolean?,
3839
@ApolloExperimental
3940
val retryOnError: Boolean?,
@@ -57,6 +58,7 @@ private constructor(
5758
.retryOnError(retryOnError)
5859
.failFastIfOffline(failFastIfOffline)
5960
.ignoreApolloClientHttpHeaders(ignoreApolloClientHttpHeaders)
61+
.ignoreUnknownKeys(ignoreUnknownKeys)
6062
}
6163

6264
class Builder<D : Operation.Data>(
@@ -78,6 +80,8 @@ private constructor(
7880
private set
7981
override var canBeBatched: Boolean? = null
8082
private set
83+
override var ignoreUnknownKeys: Boolean? = null
84+
private set
8185
var ignoreApolloClientHttpHeaders: Boolean? = null
8286
private set
8387
@ApolloExperimental
@@ -132,6 +136,10 @@ private constructor(
132136
this.canBeBatched = canBeBatched
133137
}
134138

139+
override fun ignoreUnknownKeys(ignoreUnknownKeys: Boolean?): Builder<D> = apply {
140+
this.ignoreUnknownKeys = ignoreUnknownKeys
141+
}
142+
135143
@ApolloExperimental
136144
fun retryOnError(retryOnError: Boolean?): Builder<D> = apply {
137145
this.retryOnError = retryOnError
@@ -156,6 +164,7 @@ private constructor(
156164
ignoreApolloClientHttpHeaders = ignoreApolloClientHttpHeaders,
157165
retryOnError = retryOnError,
158166
failFastIfOffline = failFastIfOffline,
167+
ignoreUnknownKeys = ignoreUnknownKeys
159168
)
160169
}
161170
}

libraries/apollo-api/src/commonMain/kotlin/com/apollographql/apollo/api/ExecutionOptions.kt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,11 @@ interface ExecutionOptions {
4848
*/
4949
val canBeBatched: Boolean?
5050

51+
/**
52+
* Whether to ignore the unknown keys in the JSON response.
53+
*/
54+
val ignoreUnknownKeys: Boolean?
55+
5156
companion object {
5257
/**
5358
* Used by [com.apollographql.apollo.network.http.BatchingHttpInterceptor]
@@ -85,4 +90,9 @@ interface MutableExecutionOptions<T> : ExecutionOptions {
8590
fun enableAutoPersistedQueries(enableAutoPersistedQueries: Boolean?): T
8691

8792
fun canBeBatched(canBeBatched: Boolean?): T
93+
94+
/**
95+
* Sets whether to ignore the unknown keys in the JSON response.
96+
*/
97+
fun ignoreUnknownKeys(ignoreUnknownKeys: Boolean?): T
8898
}

libraries/apollo-api/src/commonMain/kotlin/com/apollographql/apollo/api/Operations.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
package com.apollographql.apollo.api
44

55
import com.apollographql.apollo.annotations.ApolloExperimental
6+
import com.apollographql.apollo.annotations.ApolloInternal
67
import com.apollographql.apollo.api.internal.ResponseParser
78
import com.apollographql.apollo.api.json.JsonReader
89
import com.apollographql.apollo.api.json.JsonWriter
@@ -230,4 +231,3 @@ fun <D : Operation.Data> JsonReader.parseResponse(
230231
.build()
231232
}
232233
}
233-

0 commit comments

Comments
 (0)