@@ -73,6 +73,7 @@ import kotlin.jvm.JvmStatic
73
73
*
74
74
* On native targets, [ApolloClient.close] must be called to release resources when not in use anymore.
75
75
*/
76
+ @Suppress(" DEPRECATION" )
76
77
class ApolloClient
77
78
private constructor (
78
79
private val builder: Builder ,
@@ -351,6 +352,8 @@ private constructor(
351
352
val interceptors: List <ApolloInterceptor > = _interceptors
352
353
353
354
private val _httpInterceptors : MutableList <HttpInterceptor > = mutableListOf ()
355
+ @Deprecated(" HTTP properties should be set on HttpNetworkTransport directly" )
356
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
354
357
val httpInterceptors: List <HttpInterceptor > = _httpInterceptors
355
358
356
359
private val _listeners : MutableList <ApolloClientListener > = mutableListOf ()
@@ -378,20 +381,36 @@ private constructor(
378
381
private set
379
382
var httpServerUrl: String? = null
380
383
private set
384
+ @Deprecated(" HTTP properties should be set on HttpNetworkTransport directly" )
385
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
381
386
var httpEngine: HttpEngine ? = null
382
387
private set
388
+ @Deprecated(" WebSockets properties should be set on WebSocketNetworkTransport directly" )
389
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
383
390
var webSocketServerUrl: String? = null
384
391
private set
392
+ @Deprecated(" WebSockets properties should be set on WebSocketNetworkTransport directly" )
393
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
385
394
var webSocketIdleTimeoutMillis: Long? = null
386
395
private set
396
+ @Deprecated(" WebSockets properties should be set on WebSocketNetworkTransport directly" )
397
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
387
398
var wsProtocolFactory: WsProtocol .Factory ? = null
388
399
private set
400
+ @Deprecated(" HTTP properties should be set on HttpNetworkTransport directly" )
401
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
389
402
var httpExposeErrorBody: Boolean? = null
390
403
private set
404
+ @Deprecated(" WebSockets properties should be set on WebSocketNetworkTransport directly" )
405
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
391
406
var webSocketEngine: WebSocketEngine ? = null
392
407
private set
408
+ @Deprecated(" WebSockets properties should be set on WebSocketNetworkTransport directly" )
409
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
393
410
var webSocketReopenWhen: (suspend (Throwable , attempt: Long ) -> Boolean )? = null
394
411
private set
412
+ @Deprecated(" WebSockets properties should be set on WebSocketNetworkTransport directly" )
413
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
395
414
var webSocketReopenServerUrl: (suspend () -> String )? = null
396
415
private set
397
416
@@ -560,11 +579,11 @@ private constructor(
560
579
/* *
561
580
* The http:// or https:// url of the GraphQL server.
562
581
*
563
- * This is the same as [httpServerUrl].
564
- *
565
- * This is a convenience function that configures the underlying [HttpNetworkTransport]. See also [networkTransport] for more customization.
582
+ * This is a convenience function that configures a default [HttpNetworkTransport] to use with queries/mutations
583
+ * and a default [WebSocketNetworkTransport] to use with subscriptions.
566
584
*
567
585
* @see networkTransport
586
+ * @see subscriptionNetworkTransport
568
587
*/
569
588
fun serverUrl (serverUrl : String ) = apply {
570
589
httpServerUrl = serverUrl
@@ -573,12 +592,18 @@ private constructor(
573
592
/* *
574
593
* The http:// or https:// url of the GraphQL server.
575
594
*
576
- * This is the same as [serverUrl].
577
- *
578
595
* This is a convenience function that configures the underlying [HttpNetworkTransport]. See also [networkTransport] for more customization.
579
596
*
580
597
* @see networkTransport
581
598
*/
599
+ @Deprecated(
600
+ " Use networkTransport() instead" ,
601
+ ReplaceWith (
602
+ " networkTransport(HttpNetworkTransport.Builder().serverUrl(httpServerUrl).build())" ,
603
+ " com.apollographql.apollo.network.http.HttpNetworkTransport"
604
+ )
605
+ )
606
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
582
607
fun httpServerUrl (httpServerUrl : String? ) = apply {
583
608
this .httpServerUrl = httpServerUrl
584
609
}
@@ -590,6 +615,14 @@ private constructor(
590
615
*
591
616
* @see networkTransport
592
617
*/
618
+ @Deprecated(
619
+ " Use networkTransport() instead" ,
620
+ ReplaceWith (
621
+ " networkTransport(HttpNetworkTransport.Builder().httpEngine(httpEngine).build())" ,
622
+ " com.apollographql.apollo.network.http.HttpNetworkTransport"
623
+ )
624
+ )
625
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
593
626
fun httpEngine (httpEngine : HttpEngine ? ) = apply {
594
627
this .httpEngine = httpEngine
595
628
}
@@ -604,17 +637,33 @@ private constructor(
604
637
*
605
638
* @param httpExposeErrorBody whether to expose the error body or `null` to use the `false` default.
606
639
*/
640
+ @Deprecated(
641
+ " Use networkTransport() instead" ,
642
+ ReplaceWith (
643
+ " networkTransport(HttpNetworkTransport.Builder().exposeErrorBody(httpExposeErrorBody).build())" ,
644
+ " com.apollographql.apollo.network.http.HttpNetworkTransport"
645
+ )
646
+ )
647
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
607
648
fun httpExposeErrorBody (httpExposeErrorBody : Boolean? ) = apply {
608
649
this .httpExposeErrorBody = httpExposeErrorBody
609
650
}
610
651
611
652
/* *
612
- * Adds [httpInterceptor ] to the list of HTTP interceptors.
653
+ * Adds [httpInterceptors ] to the list of HTTP interceptors.
613
654
*
614
655
* This is a convenience function that configures the underlying [HttpNetworkTransport]. See also [networkTransport] for more customization.
615
656
*
616
657
* @see networkTransport
617
658
*/
659
+ @Deprecated(
660
+ " Use networkTransport() instead" ,
661
+ ReplaceWith (
662
+ " networkTransport(HttpNetworkTransport.Builder().interceptors(httpInterceptors).build())" ,
663
+ " com.apollographql.apollo.network.http.HttpNetworkTransport"
664
+ )
665
+ )
666
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
618
667
fun httpInterceptors (httpInterceptors : List <HttpInterceptor >) = apply {
619
668
_httpInterceptors .clear()
620
669
_httpInterceptors .addAll(httpInterceptors)
@@ -627,13 +676,25 @@ private constructor(
627
676
*
628
677
* @see networkTransport
629
678
*/
679
+ @Deprecated(
680
+ " Use networkTransport() instead" ,
681
+ ReplaceWith (
682
+ " networkTransport(HttpNetworkTransport.Builder().addInterceptor(httpInterceptor).build())" ,
683
+ " com.apollographql.apollo.network.http.HttpNetworkTransport"
684
+ )
685
+ )
686
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
630
687
fun addHttpInterceptor (httpInterceptor : HttpInterceptor ) = apply {
631
688
_httpInterceptors + = httpInterceptor
632
689
}
633
690
634
691
/* *
635
692
* Removes [httpInterceptor] from the list of HTTP interceptors.
636
693
*/
694
+ @Deprecated(
695
+ " Use networkTransport() instead" ,
696
+ )
697
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
637
698
fun removeHttpInterceptor (httpInterceptor : HttpInterceptor ) = apply {
638
699
_httpInterceptors - = httpInterceptor
639
700
}
@@ -646,6 +707,14 @@ private constructor(
646
707
*
647
708
* @see subscriptionNetworkTransport
648
709
*/
710
+ @Deprecated(
711
+ " Use subscriptionNetworkTransport() instead" ,
712
+ ReplaceWith (
713
+ " subscriptionNetworkTransport(WebSocketNetworkTransport.Builder().serverUrl(webSocketServerUrl).build())" ,
714
+ " com.apollographql.apollo.network.ws.WebSocketNetworkTransport"
715
+ )
716
+ )
717
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
649
718
fun webSocketServerUrl (webSocketServerUrl : String? ) = apply {
650
719
this .webSocketServerUrl = webSocketServerUrl
651
720
}
@@ -664,6 +733,14 @@ private constructor(
664
733
*
665
734
* @see subscriptionNetworkTransport
666
735
*/
736
+ @Deprecated(
737
+ " Use subscriptionNetworkTransport() instead" ,
738
+ ReplaceWith (
739
+ " subscriptionNetworkTransport(WebSocketNetworkTransport.Builder().serverUrl(webSocketServerUrl).build())" ,
740
+ " com.apollographql.apollo.network.ws.WebSocketNetworkTransport"
741
+ )
742
+ )
743
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
667
744
fun webSocketServerUrl (webSocketServerUrl : (suspend () -> String )? ) = apply {
668
745
this .webSocketReopenServerUrl = webSocketServerUrl
669
746
}
@@ -677,6 +754,14 @@ private constructor(
677
754
*
678
755
* @see subscriptionNetworkTransport
679
756
*/
757
+ @Deprecated(
758
+ " Use subscriptionNetworkTransport() instead" ,
759
+ ReplaceWith (
760
+ " subscriptionNetworkTransport(WebSocketNetworkTransport.Builder().idleTimeoutMillis(webSocketIdleTimeoutMillis).build())" ,
761
+ " com.apollographql.apollo.network.ws.WebSocketNetworkTransport"
762
+ )
763
+ )
764
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
680
765
fun webSocketIdleTimeoutMillis (webSocketIdleTimeoutMillis : Long? ) = apply {
681
766
this .webSocketIdleTimeoutMillis = webSocketIdleTimeoutMillis
682
767
}
@@ -688,6 +773,14 @@ private constructor(
688
773
*
689
774
* @see subscriptionNetworkTransport
690
775
*/
776
+ @Deprecated(
777
+ " Use subscriptionNetworkTransport() instead" ,
778
+ ReplaceWith (
779
+ " subscriptionNetworkTransport(WebSocketNetworkTransport.Builder().protocol(wsProtocolFactory).build())" ,
780
+ " com.apollographql.apollo.network.ws.WebSocketNetworkTransport"
781
+ )
782
+ )
783
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
691
784
fun wsProtocol (wsProtocolFactory : WsProtocol .Factory ? ) = apply {
692
785
this .wsProtocolFactory = wsProtocolFactory
693
786
}
@@ -699,6 +792,14 @@ private constructor(
699
792
*
700
793
* @see subscriptionNetworkTransport
701
794
*/
795
+ @Deprecated(
796
+ " Use subscriptionNetworkTransport() instead" ,
797
+ ReplaceWith (
798
+ " subscriptionNetworkTransport(WebSocketNetworkTransport.Builder().webSocketEngine(webSocketEngine).build())" ,
799
+ " com.apollographql.apollo.network.ws.WebSocketNetworkTransport"
800
+ )
801
+ )
802
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
702
803
fun webSocketEngine (webSocketEngine : WebSocketEngine ? ) = apply {
703
804
this .webSocketEngine = webSocketEngine
704
805
}
@@ -717,6 +818,14 @@ private constructor(
717
818
*
718
819
* @see subscriptionNetworkTransport
719
820
*/
821
+ @Deprecated(
822
+ " Use subscriptionNetworkTransport() instead" ,
823
+ ReplaceWith (
824
+ " subscriptionNetworkTransport(WebSocketNetworkTransport.Builder().reopenWhen(webSocketReopenWhen).build())" ,
825
+ " com.apollographql.apollo.network.ws.WebSocketNetworkTransport"
826
+ )
827
+ )
828
+ @ApolloDeprecatedSince(ApolloDeprecatedSince .Version .v4_1_1)
720
829
fun webSocketReopenWhen (webSocketReopenWhen : (suspend (Throwable , attempt: Long ) -> Boolean )? ) = apply {
721
830
this .webSocketReopenWhen = webSocketReopenWhen
722
831
}
0 commit comments