Skip to content

Commit e82e27a

Browse files
authored
Update PubNub Swift SDK dependency (#320)
chore(project): update PubNub Swift SDK dependency (8.2.2) feat(membership): add support for newly introduced methods regarding Memberships feat(objc-layer): adjust to the updated method names in the Objective-C KMP layer of the PubNub Swift SDK
1 parent 01995ed commit e82e27a

25 files changed

+326
-260
lines changed

build-logic/gradle-plugins/src/main/kotlin/com/pubnub/gradle/PubNubKotlinMultiplatformPlugin.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class PubNubKotlinMultiplatformPlugin : Plugin<Project> {
4040
pod("PubNubSwift") {
4141
// val swiftPath = project.findProperty("SWIFT_PATH") as? String ?: "swift"
4242
// source = path(rootProject.file(swiftPath))
43-
version = "8.1.0"
43+
version = "8.2.2"
4444
moduleName = "PubNubSDK"
4545
extraOpts += listOf("-compiler-option", "-fmodules")
4646
}

pubnub-kotlin/pubnub-kotlin-api/pubnub_kotlin_api.podspec

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |spec|
22
spec.name = 'pubnub_kotlin_api'
3-
spec.version = '10.2.1'
3+
spec.version = '10.3.0'
44
spec.homepage = ''
55
spec.source = { :http=> ''}
66
spec.authors = ''
@@ -11,7 +11,7 @@ Pod::Spec.new do |spec|
1111
spec.ios.deployment_target = '14.0'
1212
spec.osx.deployment_target = '11.0'
1313
spec.tvos.deployment_target = '14.0'
14-
spec.dependency 'PubNubSwift', '8.1.0'
14+
spec.dependency 'PubNubSwift', '8.2.2'
1515

1616
if !Dir.exist?('build/cocoapods/framework/pubnub_kotlin_api.framework') || Dir.empty?('build/cocoapods/framework/pubnub_kotlin_api.framework')
1717
raise "

pubnub-kotlin/pubnub-kotlin-api/src/appleMain/kotlin/com/pubnub/api/PubNubImpl.kt

+117-54
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
500500
override fun getChannelMetadata(channel: String, includeCustom: Boolean): GetChannelMetadata {
501501
return GetChannelMetadataImpl(
502502
pubnub = pubNubObjC,
503-
channel = channel,
503+
channelId = channel,
504504
includeCustom = includeCustom
505505
)
506506
}
@@ -516,7 +516,7 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
516516
): SetChannelMetadata {
517517
return SetChannelMetadataImpl(
518518
pubnub = pubNubObjC,
519-
channel = channel,
519+
metadataId = channel,
520520
name = name,
521521
description = description,
522522
custom = custom,
@@ -529,7 +529,7 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
529529
override fun removeChannelMetadata(channel: String): RemoveChannelMetadata {
530530
return RemoveChannelMetadataImpl(
531531
pubnub = pubNubObjC,
532-
channel = channel
532+
metadataId = channel
533533
)
534534
}
535535

@@ -555,7 +555,7 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
555555
override fun getUUIDMetadata(uuid: String?, includeCustom: Boolean): GetUUIDMetadata {
556556
return GetUUIDMetadataImpl(
557557
pubnub = pubNubObjC,
558-
uuid = uuid,
558+
metadataId = uuid,
559559
includeCustom = includeCustom
560560
)
561561
}
@@ -573,7 +573,7 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
573573
): SetUUIDMetadata {
574574
return SetUUIDMetadataImpl(
575575
pubnub = pubNubObjC,
576-
uuid = uuid,
576+
metadataId = uuid,
577577
name = name,
578578
externalId = externalId,
579579
profileUrl = profileUrl,
@@ -588,7 +588,7 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
588588
override fun removeUUIDMetadata(uuid: String?): RemoveUUIDMetadata {
589589
return RemoveUUIDMetadataImpl(
590590
pubnub = pubNubObjC,
591-
uuid = uuid
591+
metadataId = uuid
592592
)
593593
}
594594

@@ -604,17 +604,19 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
604604
includeChannelDetails: PNChannelDetailsLevel?,
605605
includeType: Boolean,
606606
): GetMemberships {
607-
return GetMembershipsImpl(
608-
pubnub = pubNubObjC,
609-
uuid = uuid,
607+
return getMemberships(
608+
userId = uuid,
610609
limit = limit,
611610
page = page,
612611
filter = filter,
613612
sort = sort,
614-
includeCount = includeCount,
615-
includeCustom = includeCustom,
616-
includeChannelDetails = includeChannelDetails,
617-
includeChannelType = includeType
613+
include = MembershipInclude(
614+
includeTotalCount = includeCount,
615+
includeCustom = includeCustom,
616+
includeType = includeType,
617+
includeChannel = includeChannelDetails == PNChannelDetailsLevel.CHANNEL || includeChannelDetails == PNChannelDetailsLevel.CHANNEL_WITH_CUSTOM,
618+
includeChannelCustom = includeChannelDetails == PNChannelDetailsLevel.CHANNEL_WITH_CUSTOM
619+
)
618620
)
619621
}
620622

@@ -626,7 +628,15 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
626628
sort: Collection<PNSortKey<PNMembershipKey>>,
627629
include: MembershipInclude
628630
): GetMemberships {
629-
TODO("Not yet implemented")
631+
return GetMembershipsImpl(
632+
pubnub = pubNubObjC,
633+
userId = userId,
634+
limit = limit,
635+
page = page,
636+
filter = filter,
637+
sort = sort,
638+
includeFields = include
639+
)
630640
}
631641

632642
// deprecated
@@ -642,18 +652,20 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
642652
includeChannelDetails: PNChannelDetailsLevel?,
643653
includeType: Boolean,
644654
): ManageMemberships {
645-
return AddMembershipsImpl(
646-
pubnub = pubNubObjC,
655+
return setMemberships(
647656
channels = channels,
648-
uuid = uuid,
657+
userId = uuid,
649658
limit = limit,
650659
page = page,
651660
filter = filter,
652661
sort = sort,
653-
includeCount = includeCount,
654-
includeCustom = includeCustom,
655-
includeChannelDetails = includeChannelDetails,
656-
includeChannelType = includeType
662+
include = MembershipInclude(
663+
includeTotalCount = includeCount,
664+
includeCustom = includeCustom,
665+
includeChannel = includeChannelDetails == PNChannelDetailsLevel.CHANNEL || includeChannelDetails == PNChannelDetailsLevel.CHANNEL_WITH_CUSTOM,
666+
includeChannelType = includeType,
667+
includeChannelCustom = includeChannelDetails == PNChannelDetailsLevel.CHANNEL_WITH_CUSTOM
668+
)
657669
)
658670
}
659671

@@ -666,7 +678,16 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
666678
sort: Collection<PNSortKey<PNMembershipKey>>,
667679
include: MembershipInclude
668680
): ManageMemberships {
669-
TODO("Not yet implemented")
681+
return AddMembershipsImpl(
682+
pubnub = pubNubObjC,
683+
channels = channels,
684+
userId = userId,
685+
limit = limit,
686+
page = page,
687+
filter = filter,
688+
sort = sort,
689+
includeFields = include
690+
)
670691
}
671692

672693
// deprecated
@@ -682,18 +703,20 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
682703
includeChannelDetails: PNChannelDetailsLevel?,
683704
includeType: Boolean,
684705
): ManageMemberships {
685-
return RemoveMembershipsImpl(
686-
pubnub = pubNubObjC,
706+
return removeMemberships(
687707
channels = channels,
688-
uuid = uuid,
708+
userId = uuid,
689709
limit = limit,
690710
page = page,
691711
filter = filter,
692712
sort = sort,
693-
includeCount = includeCount,
694-
includeCustom = includeCustom,
695-
includeChannelDetails = includeChannelDetails,
696-
includeChannelType = includeType
713+
include = MembershipInclude(
714+
includeTotalCount = includeCount,
715+
includeCustom = includeCustom,
716+
includeChannel = includeChannelDetails == PNChannelDetailsLevel.CHANNEL || includeChannelDetails == PNChannelDetailsLevel.CHANNEL_WITH_CUSTOM,
717+
includeChannelType = includeType,
718+
includeChannelCustom = includeChannelDetails == PNChannelDetailsLevel.CHANNEL_WITH_CUSTOM
719+
)
697720
)
698721
}
699722

@@ -706,7 +729,16 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
706729
sort: Collection<PNSortKey<PNMembershipKey>>,
707730
include: MembershipInclude,
708731
): ManageMemberships {
709-
TODO("Not yet implemented")
732+
return RemoveMembershipsImpl(
733+
pubnub = pubNubObjC,
734+
channels = channels,
735+
userId = userId,
736+
limit = limit,
737+
page = page,
738+
filter = filter,
739+
sort = sort,
740+
includeFields = include
741+
)
710742
}
711743

712744
override fun getChannelMembers(
@@ -720,17 +752,18 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
720752
includeUUIDDetails: PNUUIDDetailsLevel?,
721753
includeType: Boolean,
722754
): GetChannelMembers {
723-
return GetChannelMembersImpl(
724-
pubnub = pubNubObjC,
755+
return getChannelMembers(
725756
channel = channel,
726757
limit = limit,
727758
page = page,
728-
filter = filter,
729759
sort = sort,
730-
includeCount = includeCount,
731-
includeCustom = includeCustom,
732-
includeUUIDDetails = includeUUIDDetails,
733-
includeUUIDType = includeType
760+
include = MemberInclude(
761+
includeTotalCount = includeCount,
762+
includeCustom = includeCustom,
763+
includeType = includeType,
764+
includeUser = includeUUIDDetails == PNUUIDDetailsLevel.UUID || includeUUIDDetails == PNUUIDDetailsLevel.UUID_WITH_CUSTOM,
765+
includeUserCustom = includeUUIDDetails == PNUUIDDetailsLevel.UUID_WITH_CUSTOM,
766+
)
734767
)
735768
}
736769

@@ -742,7 +775,15 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
742775
sort: Collection<PNSortKey<PNMemberKey>>,
743776
include: MemberInclude
744777
): GetChannelMembers {
745-
TODO("Not yet implemented")
778+
return GetChannelMembersImpl(
779+
pubnub = pubNubObjC,
780+
channelId = channel,
781+
limit = limit,
782+
page = page,
783+
filter = filter,
784+
sort = sort,
785+
includeFields = include
786+
)
746787
}
747788

748789
// deprecated
@@ -758,18 +799,20 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
758799
includeUUIDDetails: PNUUIDDetailsLevel?,
759800
includeType: Boolean,
760801
): ManageChannelMembers {
761-
return SetChannelMembersImpl(
762-
pubnub = pubNubObjC,
802+
return setChannelMembers(
763803
channel = channel,
764-
uuids = uuids,
804+
users = uuids,
765805
limit = limit,
766806
page = page,
767807
filter = filter,
768808
sort = sort,
769-
includeCount = includeCount,
770-
includeCustom = includeCustom,
771-
includeUUIDDetails = includeUUIDDetails,
772-
includeUUIDType = includeType
809+
include = MemberInclude(
810+
includeTotalCount = includeCount,
811+
includeCustom = includeCustom,
812+
includeType = includeType,
813+
includeUser = includeUUIDDetails == PNUUIDDetailsLevel.UUID || includeUUIDDetails == PNUUIDDetailsLevel.UUID_WITH_CUSTOM,
814+
includeUserCustom = includeUUIDDetails == PNUUIDDetailsLevel.UUID_WITH_CUSTOM,
815+
)
773816
)
774817
}
775818

@@ -782,7 +825,16 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
782825
sort: Collection<PNSortKey<PNMemberKey>>,
783826
include: MemberInclude
784827
): ManageChannelMembers {
785-
TODO("Not yet implemented")
828+
return SetChannelMembersImpl(
829+
pubnub = pubNubObjC,
830+
channelId = channel,
831+
users = users,
832+
limit = limit,
833+
page = page,
834+
filter = filter,
835+
sort = sort,
836+
includeFields = include
837+
)
786838
}
787839

788840
override fun removeChannelMembers(
@@ -797,18 +849,20 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
797849
includeUUIDDetails: PNUUIDDetailsLevel?,
798850
includeType: Boolean
799851
): ManageChannelMembers {
800-
return RemoveChannelMembersImpl(
801-
pubnub = pubNubObjC,
852+
return removeChannelMembers(
802853
channel = channel,
803-
uuids = uuids,
854+
userIds = uuids,
804855
limit = limit,
805856
page = page,
806857
filter = filter,
807858
sort = sort,
808-
includeCount = includeCount,
809-
includeCustom = includeCustom,
810-
includeUUIDDetails = includeUUIDDetails,
811-
includeUUIDType = includeType
859+
include = MemberInclude(
860+
includeTotalCount = includeCount,
861+
includeCustom = includeCustom,
862+
includeType = includeType,
863+
includeUser = includeUUIDDetails == PNUUIDDetailsLevel.UUID || includeUUIDDetails == PNUUIDDetailsLevel.UUID_WITH_CUSTOM,
864+
includeUserCustom = includeUUIDDetails == PNUUIDDetailsLevel.UUID_WITH_CUSTOM,
865+
)
812866
)
813867
}
814868

@@ -821,7 +875,16 @@ class PubNubImpl(private val pubNubObjC: KMPPubNub) : PubNub {
821875
sort: Collection<PNSortKey<PNMemberKey>>,
822876
include: MemberInclude
823877
): ManageChannelMembers {
824-
TODO("Not yet implemented")
878+
return RemoveChannelMembersImpl(
879+
pubnub = pubNubObjC,
880+
channel = channel,
881+
userIds = userIds,
882+
limit = limit,
883+
page = page,
884+
filter = filter,
885+
sort = sort,
886+
includeFields = include
887+
)
825888
}
826889

827890
override fun listFiles(channel: String, limit: Int?, next: PNPage.PNNext?): ListFiles {

pubnub-kotlin/pubnub-kotlin-api/src/appleMain/kotlin/com/pubnub/api/endpoints/FetchMessages.ios.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ open class FetchMessagesImpl(
4242
includeMeta = includeMeta,
4343
includeMessageActions = includeMessageActions,
4444
includeMessageType = includeMessageType,
45-
// includeCustomMessageType = includeCustomMessageType, // todo
45+
includeCustomMessageType = includeCustomMessageType,
4646
page = KMPBoundedPage(
4747
start = page.start?.let { NSNumber(long = it) },
4848
end = page.end?.let { NSNumber(long = it) },
@@ -72,6 +72,7 @@ open class FetchMessagesImpl(
7272
timetoken = it.published().toLong(),
7373
actions = mapMessageActions(rawValue = it.actions()),
7474
messageType = HistoryMessageType.of(it.messageType().toInt()),
75+
customMessageType = it.customMessageType(),
7576
error = null // todo translate crypto errors
7677
)
7778
}

pubnub-kotlin/pubnub-kotlin-api/src/appleMain/kotlin/com/pubnub/api/endpoints/files/PublishFileMessage.ios.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ class PublishFileMessageImpl(
3737
meta = meta,
3838
ttl = ttl?.let { NSNumber(it) },
3939
shouldStore = shouldStore?.let { NSNumber(bool = it) },
40-
// customMessageType = customMessageType, // todo ask Kuba
40+
customMessageType = customMessageType,
4141
onSuccess = callback.onSuccessHandler { PNPublishFileMessageResult(it.toLong()) },
4242
onFailure = callback.onFailureHandler()
4343
)

pubnub-kotlin/pubnub-kotlin-api/src/appleMain/kotlin/com/pubnub/api/endpoints/files/SendFile.ios.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ class SendFileImpl(
4848
meta = meta,
4949
ttl = ttl?.let { NSNumber(it) },
5050
shouldStore = shouldStore?.let { NSNumber(it) },
51-
// customMessageType = customMessageType, // todo ask Kuba
51+
customMessageType = customMessageType,
5252
onSuccess = callback.onSuccessHandler2 { uploadedFile, timetoken ->
5353
PNFileUploadResult(
5454
status = 200,

0 commit comments

Comments
 (0)