com.beamable 5.0.0-PREVIEW.RC1 → 5.0.0-PREVIEW.RC11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.attestation.p7m +0 -0
- package/CHANGELOG.md +12 -0
- package/Common/Runtime/AgnosticAttribute.cs +52 -52
- package/Common/Runtime/AgnosticAttribute.cs.meta +11 -11
- package/Common/Runtime/Api/AliasHelper.cs +55 -55
- package/Common/Runtime/Api/AliasHelper.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/AnalyticsEventRequest.cs +2 -2
- package/Common/Runtime/Api/Analytics/AnalyticsEventRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/AnalyticsService.cs +2 -2
- package/Common/Runtime/Api/Analytics/AnalyticsService.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/IBeamAnalyticsService.cs +2 -2
- package/Common/Runtime/Api/Analytics/IBeamAnalyticsService.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/Models/CoreEvent.cs +2 -2
- package/Common/Runtime/Api/Analytics/Models/CoreEvent.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/Models/IAnalyticsEvent.cs +2 -2
- package/Common/Runtime/Api/Analytics/Models/IAnalyticsEvent.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/Models/SampleCustomEvent.cs +2 -2
- package/Common/Runtime/Api/Analytics/Models/SampleCustomEvent.cs.meta +11 -11
- package/Common/Runtime/Api/Analytics/Models.meta +11 -11
- package/Common/Runtime/Api/Analytics.meta +11 -11
- package/Common/Runtime/Api/Announcements/AbsAnnouncementsApi.cs +68 -68
- package/Common/Runtime/Api/Announcements/AbsAnnouncementsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Announcements/IAnnouncementsApi.cs +388 -388
- package/Common/Runtime/Api/Announcements/IAnnouncementsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Announcements.meta +11 -11
- package/Common/Runtime/Api/Auth/AuthApi.cs +981 -981
- package/Common/Runtime/Api/Auth/AuthApi.cs.meta +11 -11
- package/Common/Runtime/Api/Auth/IAuthApi.cs +343 -343
- package/Common/Runtime/Api/Auth/IAuthApi.cs.meta +11 -11
- package/Common/Runtime/Api/Auth.meta +11 -11
- package/Common/Runtime/Api/Calendars/AbsCalendarApi.cs +41 -41
- package/Common/Runtime/Api/Calendars/AbsCalendarApi.cs.meta +11 -11
- package/Common/Runtime/Api/Calendars/ICalendarApi.cs +120 -120
- package/Common/Runtime/Api/Calendars/ICalendarApi.cs.meta +11 -11
- package/Common/Runtime/Api/Calendars.meta +11 -11
- package/Common/Runtime/Api/Chat/ChatApi.cs +70 -70
- package/Common/Runtime/Api/Chat/ChatApi.cs.meta +11 -11
- package/Common/Runtime/Api/Chat/IChatApi.cs +184 -184
- package/Common/Runtime/Api/Chat/IChatApi.cs.meta +11 -11
- package/Common/Runtime/Api/Chat.meta +11 -11
- package/Common/Runtime/Api/CloudData/CloudDataApi.cs +127 -127
- package/Common/Runtime/Api/CloudData/CloudDataApi.cs.meta +11 -11
- package/Common/Runtime/Api/CloudData/ICloudDataApi.cs +42 -42
- package/Common/Runtime/Api/CloudData/ICloudDataApi.cs.meta +11 -11
- package/Common/Runtime/Api/CloudData.meta +11 -11
- package/Common/Runtime/Api/CometClientData.cs +69 -69
- package/Common/Runtime/Api/CometClientData.cs.meta +11 -11
- package/Common/Runtime/Api/Commerce/ICommerceApi.cs +10 -10
- package/Common/Runtime/Api/Commerce/ICommerceApi.cs.meta +11 -11
- package/Common/Runtime/Api/Commerce.meta +11 -11
- package/Common/Runtime/Api/Content/IContentApi.cs +167 -167
- package/Common/Runtime/Api/Content/IContentApi.cs.meta +11 -11
- package/Common/Runtime/Api/Content.meta +11 -11
- package/Common/Runtime/Api/Events/AbsEventsApi.cs +50 -50
- package/Common/Runtime/Api/Events/AbsEventsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Events/IEventsApi.cs +166 -166
- package/Common/Runtime/Api/Events/IEventsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Events.meta +11 -11
- package/Common/Runtime/Api/Groups/GroupsApi.cs +762 -762
- package/Common/Runtime/Api/Groups/GroupsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Groups/IGroupsApi.cs +211 -211
- package/Common/Runtime/Api/Groups/IGroupsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Groups.meta +11 -11
- package/Common/Runtime/Api/IAccessToken.cs +48 -48
- package/Common/Runtime/Api/IAccessToken.cs.meta +11 -11
- package/Common/Runtime/Api/IBeamableFilesystemAccessor.cs +13 -13
- package/Common/Runtime/Api/IBeamableFilesystemAccessor.cs.meta +11 -11
- package/Common/Runtime/Api/IBeamableRequester.cs +770 -770
- package/Common/Runtime/Api/IBeamableRequester.cs.meta +11 -11
- package/Common/Runtime/Api/IConnectivityChecker.cs +49 -49
- package/Common/Runtime/Api/IConnectivityChecker.cs.meta +11 -11
- package/Common/Runtime/Api/IHasBeamableRequester.cs +12 -12
- package/Common/Runtime/Api/IHasBeamableRequester.cs.meta +11 -11
- package/Common/Runtime/Api/IServiceRoutingStrategy.cs +123 -123
- package/Common/Runtime/Api/IServiceRoutingStrategy.cs.meta +11 -11
- package/Common/Runtime/Api/ISupportsGet.cs +160 -160
- package/Common/Runtime/Api/ISupportsGet.cs.meta +11 -11
- package/Common/Runtime/Api/IUserContext.cs +22 -22
- package/Common/Runtime/Api/IUserContext.cs.meta +11 -11
- package/Common/Runtime/Api/IUserDataCache.cs +88 -88
- package/Common/Runtime/Api/IUserDataCache.cs.meta +11 -11
- package/Common/Runtime/Api/Inventory/IInventoryApi.cs +796 -796
- package/Common/Runtime/Api/Inventory/IInventoryApi.cs.meta +11 -11
- package/Common/Runtime/Api/Inventory/InventoryApi.cs +308 -308
- package/Common/Runtime/Api/Inventory/InventoryApi.cs.meta +11 -11
- package/Common/Runtime/Api/Inventory/InventoryUpdateBuilder.cs +712 -712
- package/Common/Runtime/Api/Inventory/InventoryUpdateBuilder.cs.meta +11 -11
- package/Common/Runtime/Api/Inventory.meta +11 -11
- package/Common/Runtime/Api/Leaderboards/ILeaderboardApi.cs +509 -509
- package/Common/Runtime/Api/Leaderboards/ILeaderboardApi.cs.meta +11 -11
- package/Common/Runtime/Api/Leaderboards/LeaderboardApi.cs +237 -237
- package/Common/Runtime/Api/Leaderboards/LeaderboardApi.cs.meta +11 -11
- package/Common/Runtime/Api/Leaderboards.meta +11 -11
- package/Common/Runtime/Api/Lobbies/ILobbyApi.cs +153 -153
- package/Common/Runtime/Api/Lobbies/ILobbyApi.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Lobby.cs +92 -92
- package/Common/Runtime/Api/Lobbies/Lobby.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/LobbyNotification.cs +15 -15
- package/Common/Runtime/Api/Lobbies/LobbyNotification.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/LobbyPlayer.cs +59 -59
- package/Common/Runtime/Api/Lobbies/LobbyPlayer.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/LobbyRestriction.cs +19 -19
- package/Common/Runtime/Api/Lobbies/LobbyRestriction.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/LobbyService.cs +191 -191
- package/Common/Runtime/Api/Lobbies/LobbyService.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/LobbyUtils.cs +157 -157
- package/Common/Runtime/Api/Lobbies/LobbyUtils.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/NotInLobby.cs +12 -12
- package/Common/Runtime/Api/Lobbies/NotInLobby.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/AddTagsRequest.cs +36 -36
- package/Common/Runtime/Api/Lobbies/Requests/AddTagsRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/CreateLobbyRequest.cs +70 -70
- package/Common/Runtime/Api/Lobbies/Requests/CreateLobbyRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/JoinByPasscodeRequest.cs +30 -30
- package/Common/Runtime/Api/Lobbies/Requests/JoinByPasscodeRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/JoinLobbyRequest.cs +24 -24
- package/Common/Runtime/Api/Lobbies/Requests/JoinLobbyRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryRequest.cs +35 -35
- package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryResponse.cs +19 -19
- package/Common/Runtime/Api/Lobbies/Requests/LobbyQueryResponse.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/RemoveFromLobbyRequest.cs +24 -24
- package/Common/Runtime/Api/Lobbies/Requests/RemoveFromLobbyRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/RemoveTagsRequest.cs +30 -30
- package/Common/Runtime/Api/Lobbies/Requests/RemoveTagsRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests/UpdateLobbyRequest.cs +62 -62
- package/Common/Runtime/Api/Lobbies/Requests/UpdateLobbyRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Lobbies/Requests.meta +11 -11
- package/Common/Runtime/Api/Lobbies.meta +11 -11
- package/Common/Runtime/Api/Mail/AbsMailApi.cs +704 -704
- package/Common/Runtime/Api/Mail/AbsMailApi.cs.meta +11 -11
- package/Common/Runtime/Api/Mail/IMailApi.cs +48 -48
- package/Common/Runtime/Api/Mail/IMailApi.cs.meta +11 -11
- package/Common/Runtime/Api/Mail.meta +11 -11
- package/Common/Runtime/Api/Notifications/INotificationService.cs +113 -113
- package/Common/Runtime/Api/Notifications/INotificationService.cs.meta +11 -11
- package/Common/Runtime/Api/Notifications/PrimitiveStringPayload.cs +13 -13
- package/Common/Runtime/Api/Notifications/PrimitiveStringPayload.cs.meta +11 -11
- package/Common/Runtime/Api/Notifications.meta +11 -11
- package/Common/Runtime/Api/Parties/IPartyApi.cs +96 -96
- package/Common/Runtime/Api/Parties/IPartyApi.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/NotInParty.cs +11 -11
- package/Common/Runtime/Api/Parties/NotInParty.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/Party.cs +59 -59
- package/Common/Runtime/Api/Parties/Party.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/PartyNotifications.cs +55 -55
- package/Common/Runtime/Api/Parties/PartyNotifications.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/PartyRestriction.cs +13 -13
- package/Common/Runtime/Api/Parties/PartyRestriction.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/PartyService.cs +124 -124
- package/Common/Runtime/Api/Parties/PartyService.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/Requests/CreatePartyRequest.cs +43 -43
- package/Common/Runtime/Api/Parties/Requests/CreatePartyRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/Requests/PartyQueryResponse.cs +19 -19
- package/Common/Runtime/Api/Parties/Requests/PartyQueryResponse.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/Requests/PlayerRequest.cs +24 -24
- package/Common/Runtime/Api/Parties/Requests/PlayerRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/Requests/UpdatePartyRequest.cs +37 -37
- package/Common/Runtime/Api/Parties/Requests/UpdatePartyRequest.cs.meta +11 -11
- package/Common/Runtime/Api/Parties/Requests.meta +11 -11
- package/Common/Runtime/Api/Parties.meta +11 -11
- package/Common/Runtime/Api/Payments/IPaymentsApi.cs +14 -14
- package/Common/Runtime/Api/Payments/IPaymentsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Payments/PaymentsApi.cs +33 -33
- package/Common/Runtime/Api/Payments/PaymentsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Payments.meta +11 -11
- package/Common/Runtime/Api/Presence/IPresenceApi.cs +31 -31
- package/Common/Runtime/Api/Presence/IPresenceApi.cs.meta +11 -11
- package/Common/Runtime/Api/Presence/PresenceService.cs +165 -165
- package/Common/Runtime/Api/Presence/PresenceService.cs.meta +11 -11
- package/Common/Runtime/Api/Presence.meta +11 -11
- package/Common/Runtime/Api/Push/IPushApi.cs +9 -9
- package/Common/Runtime/Api/Push/IPushApi.cs.meta +11 -11
- package/Common/Runtime/Api/Push.meta +11 -11
- package/Common/Runtime/Api/QueryBuilder.cs +85 -85
- package/Common/Runtime/Api/QueryBuilder.cs.meta +11 -11
- package/Common/Runtime/Api/Realms/IAliasService.cs +98 -98
- package/Common/Runtime/Api/Realms/IAliasService.cs.meta +11 -11
- package/Common/Runtime/Api/Realms/IRealmApi.cs +17 -17
- package/Common/Runtime/Api/Realms/IRealmApi.cs.meta +11 -11
- package/Common/Runtime/Api/Realms/RealmService.cs +378 -378
- package/Common/Runtime/Api/Realms/RealmService.cs.meta +11 -11
- package/Common/Runtime/Api/Realms.meta +11 -11
- package/Common/Runtime/Api/SignedRequesterHelper.cs +2 -2
- package/Common/Runtime/Api/SignedRequesterHelper.cs.meta +11 -11
- package/Common/Runtime/Api/Social/ISocialApi.cs +76 -76
- package/Common/Runtime/Api/Social/ISocialApi.cs.meta +11 -11
- package/Common/Runtime/Api/Social/SocialApi.cs +329 -329
- package/Common/Runtime/Api/Social/SocialApi.cs.meta +11 -11
- package/Common/Runtime/Api/Social.meta +11 -11
- package/Common/Runtime/Api/Stats/AbsStatsApi.cs +345 -345
- package/Common/Runtime/Api/Stats/AbsStatsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Stats/IStatsApi.cs +199 -199
- package/Common/Runtime/Api/Stats/IStatsApi.cs.meta +11 -11
- package/Common/Runtime/Api/Stats/StatsAccessType.cs +2 -2
- package/Common/Runtime/Api/Stats/StatsAccessType.cs.meta +11 -11
- package/Common/Runtime/Api/Stats/StatsApiHelper.cs +2 -2
- package/Common/Runtime/Api/Stats/StatsApiHelper.cs.meta +11 -11
- package/Common/Runtime/Api/Stats/StatsDomainType.cs +2 -2
- package/Common/Runtime/Api/Stats/StatsDomainType.cs.meta +11 -11
- package/Common/Runtime/Api/Stats.meta +11 -11
- package/Common/Runtime/Api/Tournaments/ITournamentApi.cs +626 -626
- package/Common/Runtime/Api/Tournaments/ITournamentApi.cs.meta +11 -11
- package/Common/Runtime/Api/Tournaments/TournamentApi.cs +284 -284
- package/Common/Runtime/Api/Tournaments/TournamentApi.cs.meta +11 -11
- package/Common/Runtime/Api/Tournaments.meta +11 -11
- package/Common/Runtime/Api.meta +11 -11
- package/Common/Runtime/BeamCli/CliContractTypeAttribute.cs +12 -12
- package/Common/Runtime/BeamCli/CliContractTypeAttribute.cs.meta +11 -11
- package/Common/Runtime/BeamCli/CliOtelData.cs +25 -25
- package/Common/Runtime/BeamCli/CliOtelData.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/CliLogMessage.cs +32 -32
- package/Common/Runtime/BeamCli/Contracts/CliLogMessage.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/CollectorStatus.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/CollectorStatus.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/Constants.cs +33 -33
- package/Common/Runtime/BeamCli/Contracts/Constants.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotActionType.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotActionType.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotType.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/AutoSnapshotType.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/ContentSnapshotType.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/ContentSnapshotType.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/ContentStatus.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/ContentStatus.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifest.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifest.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifestEntry.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/LocalContentManifestEntry.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestAuthor.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestAuthor.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestProjectData.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/ManifestProjectData.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService/TagStatus.cs +2 -2
- package/Common/Runtime/BeamCli/Contracts/ContentService/TagStatus.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ContentService.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/EnvironmentVersionData.cs +14 -14
- package/Common/Runtime/BeamCli/Contracts/EnvironmentVersionData.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/GenerateEnvOutput.cs +23 -23
- package/Common/Runtime/BeamCli/Contracts/GenerateEnvOutput.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts/ServiceInfo.cs +15 -15
- package/Common/Runtime/BeamCli/Contracts/ServiceInfo.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Contracts.meta +11 -11
- package/Common/Runtime/BeamCli/ErrorOutput.cs +38 -38
- package/Common/Runtime/BeamCli/ErrorOutput.cs.meta +11 -11
- package/Common/Runtime/BeamCli/IBeamCommand.cs +51 -51
- package/Common/Runtime/BeamCli/IBeamCommand.cs.meta +11 -11
- package/Common/Runtime/BeamCli/Reporting.cs +51 -51
- package/Common/Runtime/BeamCli/Reporting.cs.meta +11 -11
- package/Common/Runtime/BeamCli/ServiceInfoHelper.cs +31 -31
- package/Common/Runtime/BeamCli/ServiceInfoHelper.cs.meta +11 -11
- package/Common/Runtime/BeamCli.meta +11 -11
- package/Common/Runtime/BeamGenerateSchemaAttribute.cs +2 -2
- package/Common/Runtime/BeamGenerateSchemaAttribute.cs.meta +11 -11
- package/Common/Runtime/BeamableColorUtil.cs +25 -25
- package/Common/Runtime/BeamableColorUtil.cs.meta +11 -11
- package/Common/Runtime/BeamableEnumExtensions.cs +35 -35
- package/Common/Runtime/BeamableEnumExtensions.cs.meta +11 -11
- package/Common/Runtime/BeamableTaskExtensions.cs +27 -27
- package/Common/Runtime/BeamableTaskExtensions.cs.meta +11 -11
- package/Common/Runtime/Collections/ConcurrentBag.cs +49 -49
- package/Common/Runtime/Collections/ConcurrentBag.cs.meta +11 -11
- package/Common/Runtime/Collections/ConcurrentDictionary.cs +109 -109
- package/Common/Runtime/Collections/ConcurrentDictionary.cs.meta +11 -11
- package/Common/Runtime/Collections.meta +11 -11
- package/Common/Runtime/Constants/Constants.cs +184 -184
- package/Common/Runtime/Constants/Constants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ArchiveConstants.cs +24 -24
- package/Common/Runtime/Constants/Implementations/ArchiveConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ConfigConstants.cs +25 -25
- package/Common/Runtime/Constants/Implementations/ConfigConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ContentConstants.cs +28 -28
- package/Common/Runtime/Constants/Implementations/ContentConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ContentManagerConstants.cs +113 -113
- package/Common/Runtime/Constants/Implementations/ContentManagerConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/CronConstants.cs +19 -19
- package/Common/Runtime/Constants/Implementations/CronConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/DockerConstants.cs +21 -21
- package/Common/Runtime/Constants/Implementations/DockerConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/EnvironmentConstants.cs +23 -23
- package/Common/Runtime/Constants/Implementations/EnvironmentConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/LoginBaseConstants.cs +45 -45
- package/Common/Runtime/Constants/Implementations/LoginBaseConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/MigrationConstants.cs +14 -14
- package/Common/Runtime/Constants/Implementations/MigrationConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/NotificationConstants.cs +18 -18
- package/Common/Runtime/Constants/Implementations/NotificationConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/OtelConstants.cs +2 -2
- package/Common/Runtime/Constants/Implementations/OtelConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/RequesterConstants.cs +90 -90
- package/Common/Runtime/Constants/Implementations/RequesterConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/SchedulesConstants.cs +20 -20
- package/Common/Runtime/Constants/Implementations/SchedulesConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ServiceConstants.cs +161 -161
- package/Common/Runtime/Constants/Implementations/ServiceConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/SpewConstants.cs +38 -38
- package/Common/Runtime/Constants/Implementations/SpewConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/TestingToolConstants.cs +40 -40
- package/Common/Runtime/Constants/Implementations/TestingToolConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ToolbarConstants.cs +16 -16
- package/Common/Runtime/Constants/Implementations/ToolbarConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/ToolboxConstants.cs +25 -25
- package/Common/Runtime/Constants/Implementations/ToolboxConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations/TooltipConstants.cs +82 -82
- package/Common/Runtime/Constants/Implementations/TooltipConstants.cs.meta +11 -11
- package/Common/Runtime/Constants/Implementations.meta +11 -11
- package/Common/Runtime/Constants.meta +11 -11
- package/Common/Runtime/Content/ClientContentSerializer.cs +45 -45
- package/Common/Runtime/Content/ClientContentSerializer.cs.meta +11 -11
- package/Common/Runtime/Content/ClientManifest.cs +303 -303
- package/Common/Runtime/Content/ClientManifest.cs.meta +11 -11
- package/Common/Runtime/Content/ClientPermissions.cs +30 -30
- package/Common/Runtime/Content/ClientPermissions.cs.meta +11 -11
- package/Common/Runtime/Content/ContentCorruptedException.cs +15 -15
- package/Common/Runtime/Content/ContentCorruptedException.cs.meta +11 -11
- package/Common/Runtime/Content/ContentDataInfo.cs +147 -147
- package/Common/Runtime/Content/ContentDataInfo.cs.meta +11 -11
- package/Common/Runtime/Content/ContentDeserializationException.cs +14 -14
- package/Common/Runtime/Content/ContentDeserializationException.cs.meta +11 -11
- package/Common/Runtime/Content/ContentFieldAttribute.cs +30 -30
- package/Common/Runtime/Content/ContentFieldAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/ContentFilterType.cs +2 -2
- package/Common/Runtime/Content/ContentFilterType.cs.meta +11 -11
- package/Common/Runtime/Content/ContentNotFoundException.cs +19 -19
- package/Common/Runtime/Content/ContentNotFoundException.cs.meta +11 -11
- package/Common/Runtime/Content/ContentObject.cs +644 -644
- package/Common/Runtime/Content/ContentObject.cs.meta +11 -11
- package/Common/Runtime/Content/ContentQuery.cs +333 -333
- package/Common/Runtime/Content/ContentQuery.cs.meta +11 -11
- package/Common/Runtime/Content/ContentQueryExtensions.cs +42 -42
- package/Common/Runtime/Content/ContentQueryExtensions.cs.meta +11 -11
- package/Common/Runtime/Content/ContentRef.cs +307 -307
- package/Common/Runtime/Content/ContentRef.cs.meta +11 -11
- package/Common/Runtime/Content/ContentSerializer.cs +776 -770
- package/Common/Runtime/Content/ContentSerializer.cs.meta +11 -11
- package/Common/Runtime/Content/ContentTypeAttribute.cs +137 -137
- package/Common/Runtime/Content/ContentTypeAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/ContentTypeReflectionCache.cs +601 -601
- package/Common/Runtime/Content/ContentTypeReflectionCache.cs.meta +11 -11
- package/Common/Runtime/Content/ContentVisibility.cs +24 -24
- package/Common/Runtime/Content/ContentVisibility.cs.meta +11 -11
- package/Common/Runtime/Content/Federation.cs +32 -32
- package/Common/Runtime/Content/Federation.cs.meta +11 -11
- package/Common/Runtime/Content/IContentObject.cs +51 -51
- package/Common/Runtime/Content/IContentObject.cs.meta +11 -11
- package/Common/Runtime/Content/IContentService.cs +20 -20
- package/Common/Runtime/Content/IContentService.cs.meta +11 -11
- package/Common/Runtime/Content/IIgnoreSerializationCallbacks.cs +10 -10
- package/Common/Runtime/Content/IIgnoreSerializationCallbacks.cs.meta +11 -11
- package/Common/Runtime/Content/IgnoreContentFieldAttribute.cs +24 -24
- package/Common/Runtime/Content/IgnoreContentFieldAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/Optionals.cs +582 -582
- package/Common/Runtime/Content/Optionals.cs.meta +11 -11
- package/Common/Runtime/Content/PropertyAttributes/FilePathSelectorAttribute.cs +22 -22
- package/Common/Runtime/Content/PropertyAttributes/FilePathSelectorAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/PropertyAttributes/HideUnlessServerPackageInstalled.cs +14 -14
- package/Common/Runtime/Content/PropertyAttributes/HideUnlessServerPackageInstalled.cs.meta +11 -11
- package/Common/Runtime/Content/PropertyAttributes/ReadonlyIfAttribute.cs +24 -24
- package/Common/Runtime/Content/PropertyAttributes/ReadonlyIfAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/PropertyAttributes/ShowOnlyAttribute.cs +10 -10
- package/Common/Runtime/Content/PropertyAttributes/ShowOnlyAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/PropertyAttributes.meta +11 -11
- package/Common/Runtime/Content/RenderAsRefAttribute.cs +33 -33
- package/Common/Runtime/Content/RenderAsRefAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/SerializableDictionary.cs +183 -183
- package/Common/Runtime/Content/SerializableDictionary.cs.meta +11 -11
- package/Common/Runtime/Content/Utility/DateUtility.cs +120 -120
- package/Common/Runtime/Content/Utility/DateUtility.cs.meta +11 -11
- package/Common/Runtime/Content/Utility.meta +11 -11
- package/Common/Runtime/Content/Validation/AggregateContentValidationException.cs +12 -12
- package/Common/Runtime/Content/Validation/AggregateContentValidationException.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/CannotBeBlank.cs +115 -115
- package/Common/Runtime/Content/Validation/CannotBeBlank.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/CannotBeEmpty.cs +43 -43
- package/Common/Runtime/Content/Validation/CannotBeEmpty.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/ContentValidationException.cs +122 -122
- package/Common/Runtime/Content/Validation/ContentValidationException.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/FederationMustBeValid.cs +58 -58
- package/Common/Runtime/Content/Validation/FederationMustBeValid.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeComparatorString.cs +29 -29
- package/Common/Runtime/Content/Validation/MustBeComparatorString.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeCurrency.cs +25 -25
- package/Common/Runtime/Content/Validation/MustBeCurrency.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeCurrencyOrItem.cs +25 -25
- package/Common/Runtime/Content/Validation/MustBeCurrencyOrItem.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeDateString.cs +85 -85
- package/Common/Runtime/Content/Validation/MustBeDateString.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeItem.cs +25 -25
- package/Common/Runtime/Content/Validation/MustBeItem.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeLeaderboard.cs +26 -26
- package/Common/Runtime/Content/Validation/MustBeLeaderboard.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeNonDefault.cs +30 -30
- package/Common/Runtime/Content/Validation/MustBeNonDefault.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeNonNegative.cs +20 -20
- package/Common/Runtime/Content/Validation/MustBeNonNegative.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeOneOf.cs +64 -64
- package/Common/Runtime/Content/Validation/MustBeOneOf.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBePositive.cs +106 -106
- package/Common/Runtime/Content/Validation/MustBePositive.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeSlugString.cs +86 -86
- package/Common/Runtime/Content/Validation/MustBeSlugString.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeTimeSpanDuration.cs +106 -106
- package/Common/Runtime/Content/Validation/MustBeTimeSpanDuration.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustBeValidCron.cs +2 -2
- package/Common/Runtime/Content/Validation/MustBeValidCron.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustContain.cs +53 -53
- package/Common/Runtime/Content/Validation/MustContain.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/MustReferenceContent.cs +237 -237
- package/Common/Runtime/Content/Validation/MustReferenceContent.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/RouteParametersMustBeValid.cs +51 -51
- package/Common/Runtime/Content/Validation/RouteParametersMustBeValid.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/ServiceRouteMustBeValid.cs +43 -43
- package/Common/Runtime/Content/Validation/ServiceRouteMustBeValid.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/TimeSpanDisplayAttribute.cs +18 -18
- package/Common/Runtime/Content/Validation/TimeSpanDisplayAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/ValidationAttribute.cs +110 -110
- package/Common/Runtime/Content/Validation/ValidationAttribute.cs.meta +11 -11
- package/Common/Runtime/Content/Validation/ValidationContext.cs +104 -104
- package/Common/Runtime/Content/Validation/ValidationContext.cs.meta +11 -11
- package/Common/Runtime/Content/Validation.meta +11 -11
- package/Common/Runtime/Content.meta +11 -11
- package/Common/Runtime/CronExpression/CronLocale.cs +2 -2
- package/Common/Runtime/CronExpression/CronLocale.cs.meta +11 -11
- package/Common/Runtime/CronExpression/ErrorData.cs +2 -2
- package/Common/Runtime/CronExpression/ErrorData.cs.meta +11 -11
- package/Common/Runtime/CronExpression/ExpressionParser.cs +2 -2
- package/Common/Runtime/CronExpression/ExpressionParser.cs.meta +11 -11
- package/Common/Runtime/CronExpression/Options.cs +2 -2
- package/Common/Runtime/CronExpression/Options.cs.meta +11 -11
- package/Common/Runtime/CronExpression.meta +11 -11
- package/Common/Runtime/Debug.cs +180 -180
- package/Common/Runtime/Debug.cs.meta +11 -11
- package/Common/Runtime/DefaultQuery.cs +248 -248
- package/Common/Runtime/DefaultQuery.cs.meta +11 -11
- package/Common/Runtime/Dependencies/DependencyBuilder.cs +776 -776
- package/Common/Runtime/Dependencies/DependencyBuilder.cs.meta +11 -11
- package/Common/Runtime/Dependencies/DependencyProvider.cs +560 -560
- package/Common/Runtime/Dependencies/DependencyProvider.cs.meta +11 -11
- package/Common/Runtime/Dependencies/Exceptions.cs +21 -21
- package/Common/Runtime/Dependencies/Exceptions.cs.meta +11 -11
- package/Common/Runtime/Dependencies/IDependencyList.cs +23 -23
- package/Common/Runtime/Dependencies/IDependencyList.cs.meta +11 -11
- package/Common/Runtime/Dependencies/IDependencyNameProvider.cs +14 -14
- package/Common/Runtime/Dependencies/IDependencyNameProvider.cs.meta +11 -11
- package/Common/Runtime/Dependencies/RegisterBeamableDependenciesAttribute.cs +74 -74
- package/Common/Runtime/Dependencies/RegisterBeamableDependenciesAttribute.cs.meta +11 -11
- package/Common/Runtime/Dependencies/ServiceStorage.cs +258 -258
- package/Common/Runtime/Dependencies/ServiceStorage.cs.meta +11 -11
- package/Common/Runtime/Dependencies/Utils.cs +49 -49
- package/Common/Runtime/Dependencies/Utils.cs.meta +11 -11
- package/Common/Runtime/Dependencies.meta +11 -11
- package/Common/Runtime/DocUtils.cs +24 -24
- package/Common/Runtime/DocUtils.cs.meta +11 -11
- package/Common/Runtime/Environment/PackageVersion.cs +366 -366
- package/Common/Runtime/Environment/PackageVersion.cs.meta +11 -11
- package/Common/Runtime/Environment.meta +11 -11
- package/Common/Runtime/Federation/FederatedGameServer.cs +2 -2
- package/Common/Runtime/Federation/FederatedGameServer.cs.meta +11 -11
- package/Common/Runtime/Federation/FederatedInventory.cs +2 -2
- package/Common/Runtime/Federation/FederatedInventory.cs.meta +11 -11
- package/Common/Runtime/Federation/FederatedLogin.cs +2 -2
- package/Common/Runtime/Federation/FederatedLogin.cs.meta +11 -11
- package/Common/Runtime/Federation/FederatedPlayerInit.cs +36 -36
- package/Common/Runtime/Federation/FederatedPlayerInit.cs.meta +11 -11
- package/Common/Runtime/Federation/Federation.cs +2 -2
- package/Common/Runtime/Federation/Federation.cs.meta +11 -11
- package/Common/Runtime/Federation.meta +11 -11
- package/Common/Runtime/IRuntimeConfigProvider.cs +74 -74
- package/Common/Runtime/IRuntimeConfigProvider.cs.meta +11 -11
- package/Common/Runtime/ISearchableElement.cs +14 -14
- package/Common/Runtime/ISearchableElement.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/DeleteStream.cs +438 -438
- package/Common/Runtime/JsonSerializable/DeleteStream.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/DiffStream.cs +367 -367
- package/Common/Runtime/JsonSerializable/DiffStream.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/JsonData.cs +102 -102
- package/Common/Runtime/JsonSerializable/JsonData.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/JsonSaveStream.cs +765 -765
- package/Common/Runtime/JsonSerializable/JsonSaveStream.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/JsonSerializable.cs +386 -386
- package/Common/Runtime/JsonSerializable/JsonSerializable.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/LoadStream.cs +1103 -1103
- package/Common/Runtime/JsonSerializable/LoadStream.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/MessagePackStream.cs +2 -2
- package/Common/Runtime/JsonSerializable/MessagePackStream.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/SaveStream.cs +419 -419
- package/Common/Runtime/JsonSerializable/SaveStream.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable/TypeLookupFactory.cs +58 -58
- package/Common/Runtime/JsonSerializable/TypeLookupFactory.cs.meta +11 -11
- package/Common/Runtime/JsonSerializable.meta +11 -11
- package/Common/Runtime/Modules/Announcements/AnnouncementApiContent.cs +42 -42
- package/Common/Runtime/Modules/Announcements/AnnouncementApiContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Announcements/AnnouncementContent.cs +120 -120
- package/Common/Runtime/Modules/Announcements/AnnouncementContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Announcements/AnnouncementRef.cs +96 -96
- package/Common/Runtime/Modules/Announcements/AnnouncementRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Announcements.meta +11 -11
- package/Common/Runtime/Modules/Calendars/CalendarContent.cs +41 -41
- package/Common/Runtime/Modules/Calendars/CalendarContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Calendars/CalendarRef.cs +67 -67
- package/Common/Runtime/Modules/Calendars/CalendarRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Calendars.meta +11 -11
- package/Common/Runtime/Modules/Groups/GroupDonationContentRef.cs +76 -76
- package/Common/Runtime/Modules/Groups/GroupDonationContentRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Groups/GroupDonationsContent.cs +39 -39
- package/Common/Runtime/Modules/Groups/GroupDonationsContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Groups.meta +11 -11
- package/Common/Runtime/Modules/Inventory/CurrencyContent.cs +79 -79
- package/Common/Runtime/Modules/Inventory/CurrencyContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Inventory/CurrencyRef.cs +82 -82
- package/Common/Runtime/Modules/Inventory/CurrencyRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Inventory/ItemContent.cs +66 -66
- package/Common/Runtime/Modules/Inventory/ItemContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Inventory/ItemRef.cs +79 -79
- package/Common/Runtime/Modules/Inventory/ItemRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Inventory/VipContent.cs +103 -103
- package/Common/Runtime/Modules/Inventory/VipContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Inventory.meta +11 -11
- package/Common/Runtime/Modules/Leaderboards/LeaderboardContent.cs +67 -67
- package/Common/Runtime/Modules/Leaderboards/LeaderboardContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Leaderboards/LeaderboardRef.cs +77 -77
- package/Common/Runtime/Modules/Leaderboards/LeaderboardRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Leaderboards.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/ApiContent.cs +282 -282
- package/Common/Runtime/Modules/SharedContent/ApiContent.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/EmailContent.cs +104 -104
- package/Common/Runtime/Modules/SharedContent/EmailContent.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/EventContent.cs +273 -273
- package/Common/Runtime/Modules/SharedContent/EventContent.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/PlayerReward.cs +63 -63
- package/Common/Runtime/Modules/SharedContent/PlayerReward.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/ScheduleDefinition.cs +129 -129
- package/Common/Runtime/Modules/SharedContent/ScheduleDefinition.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/ScheduleExtensions.cs +35 -35
- package/Common/Runtime/Modules/SharedContent/ScheduleExtensions.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent/SimGameType.cs +300 -300
- package/Common/Runtime/Modules/SharedContent/SimGameType.cs.meta +11 -11
- package/Common/Runtime/Modules/SharedContent.meta +11 -11
- package/Common/Runtime/Modules/Shop/ListingContent.cs +329 -329
- package/Common/Runtime/Modules/Shop/ListingContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop/ListingLink.cs +23 -23
- package/Common/Runtime/Modules/Shop/ListingLink.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop/ListingRef.cs +33 -33
- package/Common/Runtime/Modules/Shop/ListingRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop/SKUContent.cs +105 -105
- package/Common/Runtime/Modules/Shop/SKUContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop/SKURef.cs +49 -49
- package/Common/Runtime/Modules/Shop/SKURef.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop/StoreContent.cs +47 -47
- package/Common/Runtime/Modules/Shop/StoreContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop/StoreRef.cs +50 -50
- package/Common/Runtime/Modules/Shop/StoreRef.cs.meta +11 -11
- package/Common/Runtime/Modules/Shop.meta +11 -11
- package/Common/Runtime/Modules/Steam/ISteamService.cs +68 -68
- package/Common/Runtime/Modules/Steam/ISteamService.cs.meta +11 -11
- package/Common/Runtime/Modules/Steam.meta +11 -11
- package/Common/Runtime/Modules/Tournaments/TournamentColorConstants.cs +20 -20
- package/Common/Runtime/Modules/Tournaments/TournamentColorConstants.cs.meta +11 -11
- package/Common/Runtime/Modules/Tournaments/TournamentContent.cs +317 -317
- package/Common/Runtime/Modules/Tournaments/TournamentContent.cs.meta +11 -11
- package/Common/Runtime/Modules/Tournaments.meta +11 -11
- package/Common/Runtime/ObjectExtensions.cs +50 -50
- package/Common/Runtime/ObjectExtensions.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AccountsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AccountsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AccountsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AccountsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AccountsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AccountsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AnnouncementsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AnnouncementsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AnnouncementsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AnnouncementsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AnnouncementsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AnnouncementsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AuthBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AuthBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/AuthBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/AuthBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamAdmin.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamAdmin.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamAdminCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamAdminCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamAuth.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamAuth.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamAuthCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamAuthCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamBeamo.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamBeamo.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamBeamoCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamBeamoCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamBeamootel.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamBeamootel.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamBeamootelCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamBeamootelCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamCustomer.gs.cs +157 -85
- package/Common/Runtime/OpenApi/BeamCustomer.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamCustomerCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamCustomerCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamLobby.gs.cs +320 -318
- package/Common/Runtime/OpenApi/BeamLobby.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamLobbyCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamLobbyCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamMailbox.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamMailbox.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamMailboxCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamMailboxCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamMatchmaking.gs.cs +169 -169
- package/Common/Runtime/OpenApi/BeamMatchmaking.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamMatchmakingCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamMatchmakingCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamParty.gs.cs +270 -219
- package/Common/Runtime/OpenApi/BeamParty.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPartyCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPartyCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayer.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayer.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerlobby.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerlobby.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerlobbyCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerlobbyCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerparty.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerparty.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerpartyCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerpartyCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerticket.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerticket.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPlayerticketCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPlayerticketCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPresence.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPresence.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamPresenceCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamPresenceCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamScheduler.gs.cs +6 -6
- package/Common/Runtime/OpenApi/BeamScheduler.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamSchedulerCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamSchedulerCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamServiceplan.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamServiceplan.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamServiceplanCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamServiceplanCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamoBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamoBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/BeamoBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/BeamoBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CalendarsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/CalendarsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CalendarsObjectCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/CalendarsObjectCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CloudsavingBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/CloudsavingBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CloudsavingBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/CloudsavingBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CommerceBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/CommerceBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CommerceBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/CommerceBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/CommerceObject.gs.cs +7 -7
- package/Common/Runtime/OpenApi/CommerceObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/ContentBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/ContentBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/ContentBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/ContentBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/Event-playersObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/Event-playersObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/Event-playersObjectCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/Event-playersObjectCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/EventsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/EventsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/EventsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/EventsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/EventsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/EventsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/Group-usersObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/Group-usersObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/Group-usersObjectCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/Group-usersObjectCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/GroupsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/GroupsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/GroupsObjectCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/GroupsObjectCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/InventoryBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/InventoryBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/InventoryBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/InventoryBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/InventoryObject.gs.cs +7 -7
- package/Common/Runtime/OpenApi/InventoryObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/LeaderboardsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/LeaderboardsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/LeaderboardsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/LeaderboardsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/LeaderboardsObject.gs.cs +54 -34
- package/Common/Runtime/OpenApi/LeaderboardsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/MailBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/MailBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/MailBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/MailBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/MailObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/MailObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/Models.gs.cs +366 -187
- package/Common/Runtime/OpenApi/Models.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/NotificationBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/NotificationBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/NotificationBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/NotificationBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/PaymentsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/PaymentsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/PaymentsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/PaymentsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/PaymentsObject.gs.cs +4 -4
- package/Common/Runtime/OpenApi/PaymentsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/PushBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/PushBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/PushBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/PushBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/RealmsBasic.gs.cs +6 -6
- package/Common/Runtime/OpenApi/RealmsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/RealmsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/RealmsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/SessionBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/SessionBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/SessionBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/SessionBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/SocialBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/SocialBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/SocialBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/SocialBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/StatsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/StatsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/StatsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/StatsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/StatsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/StatsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/TournamentsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/TournamentsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/TournamentsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/TournamentsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/TournamentsObject.gs.cs +2 -2
- package/Common/Runtime/OpenApi/TournamentsObject.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/TrialsBasic.gs.cs +2 -2
- package/Common/Runtime/OpenApi/TrialsBasic.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi/TrialsBasicCommon.gs.cs +2 -2
- package/Common/Runtime/OpenApi/TrialsBasicCommon.gs.cs.meta +11 -11
- package/Common/Runtime/OpenApi.meta +11 -11
- package/Common/Runtime/OpenApiExtensions/BeamoExtensions.cs +48 -48
- package/Common/Runtime/OpenApiExtensions/BeamoExtensions.cs.meta +11 -11
- package/Common/Runtime/OpenApiExtensions/LegacyConverterExtensions.cs +2 -2
- package/Common/Runtime/OpenApiExtensions/LegacyConverterExtensions.cs.meta +11 -11
- package/Common/Runtime/OpenApiExtensions.meta +11 -11
- package/Common/Runtime/OpenApiSystem.cs +236 -236
- package/Common/Runtime/OpenApiSystem.cs.meta +11 -11
- package/Common/Runtime/Player/Lazy.cs +26 -26
- package/Common/Runtime/Player/Lazy.cs.meta +11 -11
- package/Common/Runtime/Player/Observables.cs +449 -449
- package/Common/Runtime/Player/Observables.cs.meta +11 -11
- package/Common/Runtime/Player.meta +11 -11
- package/Common/Runtime/Pooling/ClassPool.cs +142 -142
- package/Common/Runtime/Pooling/ClassPool.cs.meta +11 -11
- package/Common/Runtime/Pooling/StringBuilderPool.cs +171 -171
- package/Common/Runtime/Pooling/StringBuilderPool.cs.meta +11 -11
- package/Common/Runtime/Pooling.meta +11 -11
- package/Common/Runtime/Promise.cs +1329 -1329
- package/Common/Runtime/Promise.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/BeamContextSystemAttribute.cs +11 -11
- package/Common/Runtime/ReflectionCache/BeamContextSystemAttribute.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/INamingAttribute.cs +143 -143
- package/Common/Runtime/ReflectionCache/INamingAttribute.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/IReflectionAttribute.cs +154 -154
- package/Common/Runtime/ReflectionCache/IReflectionAttribute.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/PreserveAttribute.cs +22 -22
- package/Common/Runtime/ReflectionCache/PreserveAttribute.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/ReflectionCache.cs +457 -457
- package/Common/Runtime/ReflectionCache/ReflectionCache.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/ReflectionCache_Attributes.cs +289 -289
- package/Common/Runtime/ReflectionCache/ReflectionCache_Attributes.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/ReflectionCache_BaseTypes.cs +111 -111
- package/Common/Runtime/ReflectionCache/ReflectionCache_BaseTypes.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache/ReflectionCache_SignatureMatching.cs +247 -247
- package/Common/Runtime/ReflectionCache/ReflectionCache_SignatureMatching.cs.meta +11 -11
- package/Common/Runtime/ReflectionCache.meta +11 -11
- package/Common/Runtime/Scheduler/BeamScheduler.cs +962 -962
- package/Common/Runtime/Scheduler/BeamScheduler.cs.meta +11 -11
- package/Common/Runtime/Scheduler/Cron.cs +557 -557
- package/Common/Runtime/Scheduler/Cron.cs.meta +11 -11
- package/Common/Runtime/Scheduler/CronValidation.cs +63 -63
- package/Common/Runtime/Scheduler/CronValidation.cs.meta +11 -11
- package/Common/Runtime/Scheduler.meta +11 -11
- package/Common/Runtime/Semantics/ServiceName.cs +38 -38
- package/Common/Runtime/Semantics/ServiceName.cs.meta +11 -11
- package/Common/Runtime/Semantics.meta +11 -11
- package/Common/Runtime/SmallerJSON/IRawJsonProvider.cs +41 -41
- package/Common/Runtime/SmallerJSON/IRawJsonProvider.cs.meta +11 -11
- package/Common/Runtime/SmallerJSON/SmallerJSON.ArrayDict.cs +479 -479
- package/Common/Runtime/SmallerJSON/SmallerJSON.ArrayDict.cs.meta +11 -11
- package/Common/Runtime/SmallerJSON/SmallerJSON.FromString.cs +627 -627
- package/Common/Runtime/SmallerJSON/SmallerJSON.FromString.cs.meta +11 -11
- package/Common/Runtime/SmallerJSON/SmallerJSON.cs +1056 -1056
- package/Common/Runtime/SmallerJSON/SmallerJSON.cs.meta +11 -11
- package/Common/Runtime/SmallerJSON.meta +11 -11
- package/Common/Runtime/Spew/Logger.cs +418 -418
- package/Common/Runtime/Spew/Logger.cs.meta +11 -11
- package/Common/Runtime/Spew/SpewLoggerAttribute.cs +14 -14
- package/Common/Runtime/Spew/SpewLoggerAttribute.cs.meta +11 -11
- package/Common/Runtime/Spew.meta +11 -11
- package/Common/Runtime/Trie.cs +463 -463
- package/Common/Runtime/Trie.cs.meta +11 -11
- package/Common/Runtime/TypeExtensions.cs +66 -66
- package/Common/Runtime/TypeExtensions.cs.meta +11 -11
- package/Common/Runtime/Util/BeamAssemblyVersionUtil.cs +52 -52
- package/Common/Runtime/Util/BeamAssemblyVersionUtil.cs.meta +11 -11
- package/Common/Runtime/Util/BeamFileUtil.cs +27 -27
- package/Common/Runtime/Util/BeamFileUtil.cs.meta +11 -11
- package/Common/Runtime/Util/DocsPageHelper.cs +2 -2
- package/Common/Runtime/Util/DocsPageHelper.cs.meta +11 -11
- package/Common/Runtime/Util/NaturalStringComparer.cs +2 -2
- package/Common/Runtime/Util/NaturalStringComparer.cs.meta +11 -11
- package/Common/Runtime/Util.meta +11 -11
- package/Common/Runtime.meta +11 -11
- package/Editor/3rdParty/Splitter/SplitterGUILayout2.cs +194 -194
- package/Editor/BeamCli/BeamCli.cs +449 -417
- package/Editor/BeamCli/BeamCliUtil.cs +254 -254
- package/Editor/BeamCli/BeamCommand.cs +555 -552
- package/Editor/BeamCli/BeamWebCommand.cs +534 -534
- package/Editor/BeamCli/BeamWebHistory.cs +267 -267
- package/Editor/BeamCli/CliSpewLogger.cs +17 -17
- package/Editor/BeamCli/Commands/Beam.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamAccountMeCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamAccountMeExternalIdentity.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamBuildProjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamBuildSolutionCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCheckFixedResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCheckGrafanaCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCheckPerfCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCheckRegistryCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCheckResultsForBeamoId.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCheckStatusServiceResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamChecksLockedFiles.cs +65 -0
- package/Editor/BeamCli/Commands/BeamChecksLockedFiles.cs.meta +11 -0
- package/Editor/BeamCli/Commands/BeamChecksScan.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamClearTempLogFilesCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCliServiceComponent.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCliServiceDependency.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCliServiceManifest.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCliServiceReference.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCliServiceStorageReference.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCollectorStatusResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfig.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigRealm.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigRealmRemove.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigRealmSet.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigRoutes.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigRoutesCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConfigRoutesCommandWebsocketResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamConstructVersionOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentArchiveManifest.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentArchiveManifestCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentCreateLocalManifestCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentListManifests.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentListManifestsCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentNewManifest.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentProgressUpdateData.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentPsCommandEvent.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentPsProgressMessage.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentPublish.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentPublishResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentResolve.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentResolveConflictResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentRestore.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentRestoreErrorReport.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentRestoreResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSave.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSnapshot.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSnapshotList.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSnapshotListItem.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSnapshotListResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSnapshotResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSync.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSyncReport.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentSyncResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentTagAdd.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentTagRm.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamContentTagSet.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamCopyProjectSrcToUnityCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeleteProjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDependencyData.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeployMode.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeployablePlan.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentDiffSummary.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentGet.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentList.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentManifestJsonDiff.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentPlan.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentPlanMetadata.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentRegistry.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentRelease.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeploymentStatus.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserData.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerCleanCapturedUserBuffer.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerCreateUser.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerCreateUserBatch.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerRemoveUser.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerSaveUser.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserManagerUpdateInfo.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserPsCommandEvent.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDeveloperUserResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDisableFederationCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDockerServiceDescriptor.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDockerStatusCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDownloadAllNugetDepsToUnityCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDownloadCollectorCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamDownloadNugetDepToUnityCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamEraseStorageObjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationDisable.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationEnable.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationEntry.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationList.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationLocalKey.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationLocalSettingsGetIFederatedGameServer.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFederationLocalSettingsSetIFederatedGameServer.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFetchCommandLogRecord.cs +1 -0
- package/Editor/BeamCli/Commands/BeamFetchCommandLogRecord.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamFetchTelemetryLogsResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGameListCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGenerateClientFileEvent.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGenerateClientOapiCommandArgsResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGenerateMkDocsCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGenerateOApiCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGenerateWebClientCommandArgsResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetBeamOtelConfigCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetClickhouseCredentialsResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetDeploymentCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetLocalRoutingKeyCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetLogsUrlHeader.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetSignedUrlResponse.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetTokenDetailsCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetTokenForGuestCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetTokenListCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetTokenListElement.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetTokenViaRefreshCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGetUnityVersionInfoCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGrafanaOpen.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGrafanaPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamGrafanaStop.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamHostServiceDescriptor.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamInit.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamInitCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamInvalidCidError.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamInvalidTokenError.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamInvalidTokenErrorOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamListCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamListDeploymentsCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamListDepsCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamListServicesCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamListenPlayer.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamListenServer.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamLockedFilesCheckCommandResult.cs +12 -0
- package/Editor/BeamCli/Commands/BeamLockedFilesCheckCommandResult.cs.meta +11 -0
- package/Editor/BeamCli/Commands/BeamLogin.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamLoginFailedError.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamLoginResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamLogout.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamLogoutCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamManifestChecksum.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamManifestChecksums.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamManifestServiceEntry.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamManifestSnapshotItem.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamManifestStorageEntry.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamMe.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamMkdocs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamNoTokenError.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamNotificationPlayerOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamNotificationServerOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamOapiDownload.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamOrgGames.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamOrgRealmData.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamOrgRealms.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamPlanReleaseProgress.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProcessInfo.cs +14 -0
- package/Editor/BeamCli/Commands/BeamProcessInfo.cs.meta +11 -0
- package/Editor/BeamCli/Commands/BeamProfileCheckCounters.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProfileCheckNbomber.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectAddPaths.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectAddUnityProject.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectBuild.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectBuildSln.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectDeps.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectDepsAdd.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectDepsList.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectDepsRemove.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectDisable.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectEnable.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectErrorReport.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectErrorResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectGenerateClient.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectGenerateClientOapi.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectGenerateEnv.cs +7 -0
- package/Editor/BeamCli/Commands/BeamProjectGenerateEnv.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectGenerateProperties.cs +2 -2
- package/Editor/BeamCli/Commands/BeamProjectGenerateProperties.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectGenerateWebClient.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectList.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectLogs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectNewCommonLib.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectNewService.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectNewStorage.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectOapi.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectOpen.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectOpenMongo.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectOpenSwagger.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectReadSettings.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectRegenerate.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectRemoteLogs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectRemove.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectRun.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectSettingsOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectStop.cs +7 -0
- package/Editor/BeamCli/Commands/BeamProjectStop.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectStorageErase.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectStorageRestore.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectStorageSnapshot.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamProjectWriteSetting.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamReadProjectSettingsCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRealmConfigOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRealmRole.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRealmsListCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamReleaseSharedUnityCodeCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRemoteServiceDescriptor.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRemoteStorageDescriptor.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamReportTelemetryResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRequestCliCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRequiredFileEdit.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRestoreProjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRestoreStorageObjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRunFailErrorOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRunProjectBuildErrorStream.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamRunProjectResultStream.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamSaveProjectPathsCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServeCliCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerClear.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerDescriptor.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerKillCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerPsCommandResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerReq.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServerServe.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceDependenciesPair.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceDeployReportResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceFederationChange.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceFederations.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceImageIdChange.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceInstance.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceListResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceLogProviderChange.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceManifestOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceRemoteDeployProgressResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceRunProgressResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceRunReportResult.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceStatus.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServiceTemplate.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesBuild.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesBuildCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesBuiltProgress.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesDeploy.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesDockerStart.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesDockerStatus.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesForRouteCollection.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesGetConnectionString.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesGetConnectionStringCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesManifests.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesPromote.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesRegistry.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesRegistryOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesResetContainer.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesResetContainerCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesResetImage.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesResetImageCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesRun.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesServiceLogs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesServiceMetrics.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesStop.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesTemplates.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesTemplatesCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesUpdateDockerfile.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesUploadApi.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamServicesUploadApiOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamSetBeamOtelConfigCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamSetEnabledCommandArgsOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamSetEnabledCommandComponent.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamSettingOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamShowCurrentBeamoStatusCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamShowManifestCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamSnapshotStorageObjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamStartDockerCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamStartGrafanaCommandResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamStopProjectCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTailLogMessageForClient.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryCollector.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryCollectorGet.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryCollectorPs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryConfig.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryGetCreds.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryLogs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryPrune.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryPush.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetryReport.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTelemetrySetConfig.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTempClearLogs.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTokenFromRefresh.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTokenInspect.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTokenList.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamTokenNewGuest.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityAssemblyReferenceData.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityCopyDotnetSrc.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityDownloadAllNugetPackages.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityDownloadNugetPackage.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityGetVersionInfo.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityManifest.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityReleaseSharedCode.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityRestore.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityUpdateDlls.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamUnityUpdateReferences.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamVersion.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamVersionConstruct.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamVersionResults.cs.meta +11 -11
- package/Editor/BeamCli/Commands/BeamWriteProjectSettingsCommandOutput.cs.meta +11 -11
- package/Editor/BeamCli/Extensions/BeamManifestServiceEntry_ComputedTypes.cs +53 -53
- package/Editor/BeamCli/Extensions/BeamManifestStorageEntry_ComputedTypes.cs +10 -10
- package/Editor/BeamCli/Extensions/DiscoveryExtensions.cs +57 -41
- package/Editor/BeamCli/Extensions/FederationsConfig.cs +22 -22
- package/Editor/BeamCli/UI/BeamCliJsonPopup.cs +29 -29
- package/Editor/BeamCli/UI/BeamCliTextPopup.cs +32 -32
- package/Editor/BeamCli/UI/BeamCliWindow.cs +174 -174
- package/Editor/BeamCli/UI/BeamCliWindow_Commands.cs +539 -512
- package/Editor/BeamCli/UI/BeamCliWindow_Overrides.cs +117 -117
- package/Editor/BeamCli/UI/BeamCliWindow_Server.cs +156 -156
- package/Editor/BeamCli/UI/BeamCliWindow_Terminal.cs +207 -207
- package/Editor/BeamCli/UI/BeamCliWindow_Util.cs +336 -336
- package/Editor/BeamCli/UI/JsonHighlighterUtil.cs +143 -143
- package/Editor/BeamCli/UI/LogUtil/LogViewUtil.cs +727 -727
- package/Editor/BeamCli/UI/TimeDisplayUtil.cs +22 -22
- package/Editor/BeamEditor.cs +758 -733
- package/Editor/BeamableLinker.cs +77 -77
- package/Editor/BuildPostProcessor.cs +44 -44
- package/Editor/BuildPreProcessor.cs +264 -264
- package/Editor/ContentService/CliContentService.cs +49 -18
- package/Editor/Dotnet/DotnetService.cs +193 -193
- package/Editor/Dotnet/DotnetUtil.cs +296 -296
- package/Editor/EditorAPI.cs +4 -4
- package/Editor/EditorPlatformRequesterErrorHandler.cs +28 -28
- package/Editor/EditorRuntimeConfigProvider.cs +19 -19
- package/Editor/EditorStorageLayer.cs +40 -40
- package/Editor/Eggs/EggEntry.cs +38 -38
- package/Editor/Eggs/Serpent/EggSerpent.cs +209 -209
- package/Editor/Environment/BeamableDiagnosticData.cs +198 -198
- package/Editor/Environment/BeamableEditorWebRequester.cs +62 -62
- package/Editor/Environment/BeamablePackages.cs +90 -90
- package/Editor/Environment/IEditorHttpRequester.cs +49 -49
- package/Editor/FileAssetModificationProcessor.cs +49 -49
- package/Editor/LibraryService.cs +297 -297
- package/Editor/Modules/Account/BeamableSocialsImporter.cs +59 -59
- package/Editor/Modules/Account/EditorAuthService.cs +244 -244
- package/Editor/Modules/Account/PortalCommand.cs +37 -37
- package/Editor/Modules/Content/CalendarWindow.cs +185 -185
- package/Editor/Modules/Content/ContentObjectPropertyDrawer.cs +26 -26
- package/Editor/Modules/Content/ContentPropertyDrawer.cs +372 -372
- package/Editor/Modules/Content/ContentValidationPropertyDrawer.cs +307 -307
- package/Editor/Modules/Content/DatePropertyDrawer.cs +355 -355
- package/Editor/Modules/Content/OptionalPropertyDrawer.cs +80 -80
- package/Editor/Modules/Content/PropertyDrawerHelper.cs +44 -44
- package/Editor/Modules/Content/ScheduleDefinitionPropertyDrawer.cs +554 -554
- package/Editor/Modules/Content/SerializedContentObject.cs +12 -12
- package/Editor/Modules/Content/UI/ContentObjectEditor.cs +395 -390
- package/Editor/Modules/Content/UI/DisplayableListPropertyDrawer.cs +47 -47
- package/Editor/Modules/Content/UI/EditorValidationContext.cs +7 -7
- package/Editor/Modules/Content/UI/SerializedDictionaryEditor.cs +208 -208
- package/Editor/Modules/ContentTypes/ContentTypesCreator.cs +58 -58
- package/Editor/Modules/EditorConfig/EditorConfiguration.cs +209 -209
- package/Editor/Modules/Input/InputActionPropertyDrawer.cs +138 -138
- package/Editor/Modules/Player/ObservableReadonlyListPropertyDrawer.cs +21 -21
- package/Editor/Modules/Purchasing/BeamablePurchaserImporter.cs +74 -74
- package/Editor/Modules/Sessions/DeviceOptionPropertyDrawer.cs +56 -56
- package/Editor/Modules/Sessions/SessionParameterProviderCreator.cs +111 -111
- package/Editor/Modules/Sessions/SessionParameterProviderEditor.cs +25 -25
- package/Editor/Modules/Stats/StatEditor.cs +18 -18
- package/Editor/Modules/Theme/ButtonStyleObject.cs +9 -9
- package/Editor/Modules/Theme/CanHideDrawer.cs +34 -34
- package/Editor/Modules/Theme/ColorStyleObject.cs +9 -9
- package/Editor/Modules/Theme/FilterSelection.cs +41 -41
- package/Editor/Modules/Theme/FontStyleObject.cs +9 -9
- package/Editor/Modules/Theme/GradientStyleObject.cs +9 -9
- package/Editor/Modules/Theme/ImageStyleObject.cs +9 -9
- package/Editor/Modules/Theme/LayoutStyleObject.cs +9 -9
- package/Editor/Modules/Theme/PaletteStyleObject.cs +30 -30
- package/Editor/Modules/Theme/SelectableStyleObject.cs +9 -9
- package/Editor/Modules/Theme/SoundStyleObject.cs +9 -9
- package/Editor/Modules/Theme/StringStyleObject.cs +9 -9
- package/Editor/Modules/Theme/Style/ButtonStyleObjectPropertyDrawer.cs +61 -61
- package/Editor/Modules/Theme/Style/GeneralPaletteBindingOptionDrawer.cs +25 -25
- package/Editor/Modules/Theme/Style/ThemeSelectorEditor.cs +79 -79
- package/Editor/Modules/Theme/TextStyleObject.cs +9 -9
- package/Editor/Modules/Theme/ThemeConfigurationPropertyDrawer.cs +64 -64
- package/Editor/Modules/Theme/TransformStyleObject.cs +9 -9
- package/Editor/Modules/Theme/WindowStyleObject.cs +9 -9
- package/Editor/NoOpAnalyticsTracker.cs +22 -22
- package/Editor/ReflectionCache/ReflectionCacheAssetPostProcessor.cs +68 -68
- package/Editor/ResetPlayerAccessTokenEditor.cs +63 -63
- package/Editor/Server/AssemblyDefinitionHelper.cs +237 -237
- package/Editor/Server/CommonAreaService.cs +198 -189
- package/Editor/Server/DependencyResolver.cs +177 -177
- package/Editor/Server/ExtensionMethods.cs +40 -40
- package/Editor/Server/MicroserviceConfiguration.cs +87 -87
- package/Editor/Server/RegisterDependencies.cs +33 -33
- package/Editor/Server/UI/Configs/BeamFederationSetting.cs +160 -160
- package/Editor/Server/UI/Configs/BeamStorageDependencySetting.cs +55 -55
- package/Editor/Server/UI/Configs/BeamableMicroservicesSettings.cs +180 -180
- package/Editor/Server/UI/Configs/BeamableStorageSettings.cs +83 -83
- package/Editor/Server/UI/FederationPropertyDrawer.cs +209 -209
- package/Editor/Server/UI/PublishWindow/UsamPublishWindow.cs +442 -442
- package/Editor/Server/UI/PublishWindow/UsamPublishWindow_FatalError.cs +39 -39
- package/Editor/Server/UI/PublishWindow/UsamPublishWindow_Plan.cs +125 -125
- package/Editor/Server/UI/PublishWindow/UsamPublishWindow_Review.cs +247 -247
- package/Editor/Server/UI/UsamWindow/ServicePickerWindow.cs +308 -308
- package/Editor/Server/UI/UsamWindow/UsamWindow.cs +94 -94
- package/Editor/Server/UI/UsamWindow/UsamWindow_Badges.cs +55 -55
- package/Editor/Server/UI/UsamWindow/UsamWindow_Create.cs +325 -325
- package/Editor/Server/UI/UsamWindow/UsamWindow_Docker.cs +111 -111
- package/Editor/Server/UI/UsamWindow/UsamWindow_Main.cs +321 -321
- package/Editor/Server/UI/UsamWindow/UsamWindow_Service.cs +313 -313
- package/Editor/Server/UI/UsamWindow/UsamWindow_Settings.cs +405 -405
- package/Editor/Server/UI/UsamWindow/UsamWindow_Storage.cs +237 -237
- package/Editor/Server/Usam/AssemblyUtil.cs +136 -136
- package/Editor/Server/Usam/CsProjUtil.cs +12 -12
- package/Editor/Server/Usam/CsharpProjectUtil.cs +325 -325
- package/Editor/Server/Usam/ServiceRoutingStrategy.cs +81 -81
- package/Editor/Server/Usam/UsamLogger.cs +46 -46
- package/Editor/Server/Usam/UsamService.cs +1152 -1150
- package/Editor/Server/Usam/UsamService_GenerateClient.cs +243 -243
- package/Editor/Server/Usam/UsamService_Reload.cs +119 -119
- package/Editor/Server/WebhookContentEditor/RouteParametersPropertyDrawer.cs +309 -309
- package/Editor/Server/WebhookContentEditor/RouteVariablesPropertyDrawer.cs +56 -56
- package/Editor/Server/WebhookContentEditor/ServiceRoutePropertyDrawer.cs +137 -137
- package/Editor/ServiceStorage.cs +128 -128
- package/Editor/SessionStorageLayer.cs +29 -29
- package/Editor/TextMeshProImporter.cs +101 -101
- package/Editor/Toolbar/BeamableToolbarAssetPostProcessor.cs +30 -32
- package/Editor/Toolbar/BeamableToolbarButton.cs +45 -45
- package/Editor/Toolbar/BeamableToolbarCallbacks.cs +153 -153
- package/Editor/Toolbar/BeamableToolbarExtender.cs +165 -137
- package/Editor/Toolbar/BeamableToolbarMenuItem.cs +40 -40
- package/Editor/Toolbar/MenuItems/AccountMenuItem.cs +51 -51
- package/Editor/Toolbar/MenuItems/BeamableConfigurationManagerMenuItem.cs +21 -21
- package/Editor/Toolbar/MenuItems/BeamableContentManagerMenuItem.cs +20 -20
- package/Editor/Toolbar/MenuItems/BeamableMicroserviceManagerMenuItem.cs +20 -20
- package/Editor/Toolbar/MenuItems/BeamablePortalMenuItem.cs +18 -18
- package/Editor/Toolbar/MenuItems/BeamableRealmMenuItem.cs +113 -100
- package/Editor/Toolbar/MenuItems/BeamableToolbarMenuItemSeparator.cs +17 -17
- package/Editor/Toolbar/MenuItems/BeamableToolboxWindowMenuItem.cs +20 -20
- package/Editor/Toolbar/ToolbarButtons/SampleBeamableButton.cs +27 -27
- package/Editor/UI/AccountWindow/AccountWindow.cs +3 -2
- package/Editor/UI/BeamEditorWindow.cs +393 -393
- package/Editor/UI/BeamGUI/BeamGUI_Dropdowns.cs +205 -205
- package/Editor/UI/BeamGUI/BeamGUI_Enabled.cs +31 -31
- package/Editor/UI/BeamGUI/BeamGUI_Header.cs +148 -148
- package/Editor/UI/BeamGUI/BeamGUI_Icons.cs +330 -330
- package/Editor/UI/BeamGUI/BeamGUI_LoadingBars.cs +105 -105
- package/Editor/UI/BeamGUI/BeamGUI_PlaceholdTextField.cs +64 -64
- package/Editor/UI/BeamGUI/BeamGUI_PrimaryButton.cs +178 -178
- package/Editor/UI/BeamGUI/BeamGUI_Spinner.cs +30 -30
- package/Editor/UI/BeamGUI/BeamGUI_StaticConstructor.cs +17 -17
- package/Editor/UI/BeamGUI/BeamGUI_Toggle.cs +41 -41
- package/Editor/UI/BeamGUI/PropertyDrawers/HelpBoxDecoratorDrawer.cs +32 -32
- package/Editor/UI/Common/FormConstraint.cs +53 -53
- package/Editor/UI/Common/MediaQueryObjectPropertyDrawer.cs +42 -42
- package/Editor/UI/Common/ReparenterCustomEditor.cs +24 -24
- package/Editor/UI/Config/BeamableSettingsProvider.cs +222 -222
- package/Editor/UI/Config/BeamableSpewSettingsProvider.cs +163 -163
- package/Editor/UI/Config/ConfigManager.cs +207 -207
- package/Editor/UI/Config/Model/ConfigOption.cs +26 -26
- package/Editor/UI/Config/Model/ConfigQuery.cs +114 -114
- package/Editor/UI/ContentWindow/ContentWindow.cs +6 -2
- package/Editor/UI/ContentWindow/ContentWindow_ItemsPanel.cs +24 -19
- package/Editor/UI/ContentWindow/ContentWindow_SnapshotManager.cs +2 -2
- package/Editor/UI/CronExpression/Common/Extensions.cs +23 -23
- package/Editor/UI/CronExpression/DescriptionTypeEnum.cs +18 -18
- package/Editor/UI/CronExpression/ExpressionDescriptor.cs +761 -761
- package/Editor/UI/CronExpression/Localization/CronLocalizationData.cs +77 -77
- package/Editor/UI/CronExpression/Localization/CronLocalizationDatabase.cs +15 -15
- package/Editor/UI/HelpMenuItems.cs +29 -29
- package/Editor/UI/IDelayedActionWindow.cs +10 -10
- package/Editor/UI/LibraryWindow/BeamLibraryWindow.cs +71 -71
- package/Editor/UI/LibraryWindow/BeamLibraryWindow_Main.cs +35 -35
- package/Editor/UI/LibraryWindow/BeamLibraryWindow_Samples.cs +330 -330
- package/Editor/UI/Toolbox/ToolboxWindow.cs +19 -19
- package/Editor/Utility/BeamableAssetDatabase.cs +30 -30
- package/Editor/Utility/BeamableDispatcher.cs +222 -222
- package/Editor/Utility/EditorDebouncer.cs +78 -78
- package/Editor/Utility/EditorFilesystemAccessor.cs +13 -13
- package/Editor/Utility/EditorGUIExtension.cs +148 -148
- package/Editor/Utility/EditorGUIRectController.cs +72 -72
- package/Editor/Utility/FilePathSelectorDrawer.cs +81 -81
- package/Editor/Utility/FileUtils.cs +76 -76
- package/Editor/Utility/PlayerSettingsExtensions.cs +54 -54
- package/Editor/Utility/PromiseEditor.cs +22 -22
- package/Editor/Utility/PropertyDrawerFinder.cs +235 -235
- package/Editor/Utility/ReadonlyIfDrawer.cs +56 -56
- package/Editor/Utility/ShowOnlyDrawer.cs +36 -36
- package/Editor/Utility/TaskUtil.cs +58 -58
- package/Editor/Utility/UnityOtelManager.cs +8 -4
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/BuildRequests.cs +961 -961
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/CoroutineClass.cs +1396 -1396
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/ExceptionHandlers.cs +295 -295
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Helpers.cs +1337 -1337
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/IPubnubUnitTest.cs +31 -31
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/JSONSerializer.cs +62 -62
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/LoggingMethod.cs +661 -661
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/MD5.cs +723 -723
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Pubnub.cs +1164 -1164
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubCallbacks.cs +464 -464
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubCrypto.cs +77 -77
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/PubnubUnity.cs +2080 -2080
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/ReconnectState.cs +180 -180
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SafeDictionary.cs +204 -204
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SharedStringBuilder.cs +23 -23
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SharedStringBuilder.cs.meta +2 -2
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/SubscribeEnvelope.cs +226 -226
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Subscription.cs +421 -421
- package/Runtime/3rdParty/PubNub/Scripts/Pubnub/Utility.cs +350 -350
- package/Runtime/3rdParty/UnityUIExtensions/ExtentionMethods.cs +19 -19
- package/Runtime/3rdParty/UnityUIExtensions/Gradient.cs +122 -122
- package/Runtime/3rdParty/UnityUIExtensions/HorizontalScrollSnap.cs +317 -317
- package/Runtime/3rdParty/UnityUIExtensions/IScrollSnap.cs +15 -15
- package/Runtime/3rdParty/UnityUIExtensions/ScrollSnap.cs +573 -573
- package/Runtime/3rdParty/UnityUIExtensions/ScrollSnapBase.cs +615 -615
- package/Runtime/3rdParty/UnityUIExtensions/ScrollSnapScrollbarHelper.cs +56 -56
- package/Runtime/3rdParty/UnityUIExtensions/UI_InfiniteScroll.cs +175 -175
- package/Runtime/3rdParty/VirtualList/Editor/AbstractVirtualListEditor.cs +43 -43
- package/Runtime/3rdParty/VirtualList/Runtime/AbstractVirtualList.cs +388 -388
- package/Runtime/3rdParty/VirtualList/Runtime/IListSource.cs +50 -50
- package/Runtime/3rdParty/VirtualList/Runtime/SimpleSource.cs +81 -81
- package/Runtime/3rdParty/VirtualList/Runtime/VirtualGridList.cs +123 -123
- package/Runtime/3rdParty/VirtualList/Runtime/VirtualHorizontalList.cs +84 -84
- package/Runtime/3rdParty/VirtualList/Runtime/VirtualVerticalList.cs +84 -84
- package/Runtime/3rdParty/WebSocket/WebSocket.cs +866 -866
- package/Runtime/API.cs +267 -267
- package/Runtime/Beam.cs +528 -528
- package/Runtime/BeamContext.cs +1037 -1037
- package/Runtime/Commands/CommandExtensions.cs +26 -26
- package/Runtime/Commands/ICommand.cs +7 -7
- package/Runtime/Connection/BeamableSubscriptionManager.cs +38 -38
- package/Runtime/Connection/IBeamableConnection.cs +30 -30
- package/Runtime/Connection/WebSocketConnection.cs +285 -285
- package/Runtime/Connection/WebSocketConnectionException.cs +9 -9
- package/Runtime/Core/Config/ConfigConsoleCommands.cs +69 -69
- package/Runtime/Core/Config/ConfigConsoleCommands.cs.meta +2 -2
- package/Runtime/Core/Config/ConfigDatabase.cs +253 -253
- package/Runtime/Core/Config/RuntimeConfigProvider.cs +86 -86
- package/Runtime/Core/ConsoleCommands/BeamableConsole.cs +169 -169
- package/Runtime/Core/ConsoleCommands/BeamableConsole.cs.meta +2 -2
- package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandAttribute.cs +27 -27
- package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandProviderAttribute.cs +15 -15
- package/Runtime/Core/ConsoleCommands/BeamableConsoleCommandProviderAttribute.cs.meta +2 -2
- package/Runtime/Core/ConsoleCommands/DefaultConsoleCommands.cs +45 -45
- package/Runtime/Core/ConsoleCommands/DefaultConsoleCommands.cs.meta +2 -2
- package/Runtime/Core/Coroutines/CompletedYieldInstruction.cs +14 -14
- package/Runtime/Core/Coroutines/CoroutineService.cs +115 -115
- package/Runtime/Core/Coroutines/Debouncer.cs +147 -147
- package/Runtime/Core/Coroutines/Yielders.cs +40 -40
- package/Runtime/Core/Extensions/TransformExtensions.cs +118 -118
- package/Runtime/Core/Platform/SDK/AccessToken.cs +151 -151
- package/Runtime/Core/Platform/SDK/AccessTokenStorage.cs +225 -225
- package/Runtime/Core/Platform/SDK/AdvertisingIdentifier/AdvertisingIdentifier.cs +30 -30
- package/Runtime/Core/Platform/SDK/Analytics/AnalyticsTracker.cs +200 -200
- package/Runtime/Core/Platform/SDK/Analytics/Batch/BatchContainer.cs +107 -107
- package/Runtime/Core/Platform/SDK/Analytics/Batch/BatchManager.cs +207 -207
- package/Runtime/Core/Platform/SDK/Analytics/Batch/IBatchContainer.cs +66 -66
- package/Runtime/Core/Platform/SDK/Analytics/Batch/PersistentBatchManager.cs +143 -143
- package/Runtime/Core/Platform/SDK/Analytics/Batch/SerializableBatch.cs +33 -33
- package/Runtime/Core/Platform/SDK/Analytics/Models/BillerPurchaseFailedEvent.cs +16 -16
- package/Runtime/Core/Platform/SDK/Analytics/Models/LoginPanicEvent.cs +19 -19
- package/Runtime/Core/Platform/SDK/Announcements/AnnouncementsService.cs +121 -121
- package/Runtime/Core/Platform/SDK/Auth/AuthService.cs +230 -230
- package/Runtime/Core/Platform/SDK/Auth/DeviceIdResolver.cs +24 -24
- package/Runtime/Core/Platform/SDK/Auth/GCIdentity.cs +24 -24
- package/Runtime/Core/Platform/SDK/Auth/GoogleSignIn.cs +89 -89
- package/Runtime/Core/Platform/SDK/Auth/SignInWithApple.cs +263 -263
- package/Runtime/Core/Platform/SDK/Auth/SignInWithFacebookLimited.cs +112 -112
- package/Runtime/Core/Platform/SDK/Auth/SignInWithGPG.cs +109 -109
- package/Runtime/Core/Platform/SDK/Auth/SignInWithGameCenter.cs +107 -107
- package/Runtime/Core/Platform/SDK/BeamableApiRequester.cs +112 -112
- package/Runtime/Core/Platform/SDK/Caches/OfflineCache.cs +319 -319
- package/Runtime/Core/Platform/SDK/Calendars/CalendarsService.cs +123 -123
- package/Runtime/Core/Platform/SDK/Chat/ChatProvider.cs +190 -190
- package/Runtime/Core/Platform/SDK/Chat/ChatService.cs +61 -61
- package/Runtime/Core/Platform/SDK/Chat/ChatView.cs +292 -292
- package/Runtime/Core/Platform/SDK/Chat/PubNubChatProvider.cs +51 -51
- package/Runtime/Core/Platform/SDK/Chat/PubNubRoom.cs +135 -135
- package/Runtime/Core/Platform/SDK/Chat/Room.cs +121 -121
- package/Runtime/Core/Platform/SDK/CloudData/CloudDataConsoleCommands.cs +52 -52
- package/Runtime/Core/Platform/SDK/CloudData/CloudDataService.cs +24 -24
- package/Runtime/Core/Platform/SDK/CloudSaving/CloudSavingError.cs +14 -14
- package/Runtime/Core/Platform/SDK/CloudSaving/CloudSavingExtensions.cs +82 -82
- package/Runtime/Core/Platform/SDK/CometClientData.cs +44 -44
- package/Runtime/Core/Platform/SDK/CometClientData.cs.meta +2 -2
- package/Runtime/Core/Platform/SDK/Commerce/CommerceConsoleCommands.cs +45 -45
- package/Runtime/Core/Platform/SDK/Commerce/CommerceService.cs +101 -101
- package/Runtime/Core/Platform/SDK/Commerce/ICommerceConfig.cs +19 -19
- package/Runtime/Core/Platform/SDK/Connectivity/Connectivity.cs +238 -238
- package/Runtime/Core/Platform/SDK/Connectivity/IConnectivityChecker.cs +109 -109
- package/Runtime/Core/Platform/SDK/ErrorCode.cs +62 -62
- package/Runtime/Core/Platform/SDK/Events/EventsService.cs +129 -129
- package/Runtime/Core/Platform/SDK/Groups/GroupsService.cs +58 -58
- package/Runtime/Core/Platform/SDK/Gzip.cs +51 -51
- package/Runtime/Core/Platform/SDK/Inventory/InventoryConsoleCommands.cs +65 -65
- package/Runtime/Core/Platform/SDK/Inventory/InventoryService.cs +149 -149
- package/Runtime/Core/Platform/SDK/Inventory/InventoryService.cs.meta +2 -2
- package/Runtime/Core/Platform/SDK/Inventory.meta +2 -2
- package/Runtime/Core/Platform/SDK/Leaderboard/LeaderboardService.cs +31 -31
- package/Runtime/Core/Platform/SDK/Mail/MailService.cs +44 -44
- package/Runtime/Core/Platform/SDK/Matchmaking/Match.cs +46 -46
- package/Runtime/Core/Platform/SDK/Matchmaking/MatchmakingService.cs +450 -450
- package/Runtime/Core/Platform/SDK/Matchmaking/Ticket.cs +36 -36
- package/Runtime/Core/Platform/SDK/Matchmaking/TicketReservationRequest.cs +43 -43
- package/Runtime/Core/Platform/SDK/Matchmaking/TicketReservationResponse.cs +21 -21
- package/Runtime/Core/Platform/SDK/Notification/Internal/AppleLocalNotificationRelay.cs +117 -117
- package/Runtime/Core/Platform/SDK/Notification/Internal/DummyLocalNotificationRelay.cs +33 -33
- package/Runtime/Core/Platform/SDK/Notification/Internal/GoogleLocalNotificationRelay.cs +86 -86
- package/Runtime/Core/Platform/SDK/Notification/Internal/ILocalNotificationRelay.cs +40 -40
- package/Runtime/Core/Platform/SDK/Notification/Internal/IMessageHandler.cs +11 -11
- package/Runtime/Core/Platform/SDK/Notification/Internal/InGameNotification.cs +39 -39
- package/Runtime/Core/Platform/SDK/Notification/Internal/MultiChannelSubscriptionHandler.cs +90 -90
- package/Runtime/Core/Platform/SDK/Notification/NotificationService.cs +505 -505
- package/Runtime/Core/Platform/SDK/Notification/PubnubData.cs +50 -50
- package/Runtime/Core/Platform/SDK/Notification/PubnubSubscriptionManager.cs +668 -668
- package/Runtime/Core/Platform/SDK/Notification/PushProvider.cs +25 -25
- package/Runtime/Core/Platform/SDK/Notification/PushService.cs +74 -74
- package/Runtime/Core/Platform/SDK/Payments/IBeamablePurchaser.cs +62 -62
- package/Runtime/Core/Platform/SDK/Payments/IPaymentServiceOptions.cs +38 -38
- package/Runtime/Core/Platform/SDK/Payments/PaymentErrorCodes.cs +17 -17
- package/Runtime/Core/Platform/SDK/Payments/PaymentModel.cs +75 -75
- package/Runtime/Core/Platform/SDK/Payments/PaymentService.cs +445 -445
- package/Runtime/Core/Platform/SDK/Payments/PaymentTransaction.cs +138 -138
- package/Runtime/Core/Platform/SDK/Payments/TransactionManager.cs +348 -348
- package/Runtime/Core/Platform/SDK/PlatformFilesystemAccessor.cs +14 -14
- package/Runtime/Core/Platform/SDK/PlatformRequester.cs +761 -761
- package/Runtime/Core/Platform/SDK/PlatformRequesterExceptions.cs +31 -31
- package/Runtime/Core/Platform/SDK/PlatformRequesterExtensions.cs +21 -21
- package/Runtime/Core/Platform/SDK/PlatformRequesterInterfaces.cs +29 -29
- package/Runtime/Core/Platform/SDK/PlatformService.cs +81 -81
- package/Runtime/Core/Platform/SDK/PlatformSubscribable.cs +621 -621
- package/Runtime/Core/Platform/SDK/Polyfill.cs +25 -25
- package/Runtime/Core/Platform/SDK/PubnubNotificationService.cs +42 -42
- package/Runtime/Core/Platform/SDK/Session/Heartbeat.cs +127 -127
- package/Runtime/Core/Platform/SDK/Session/SessionDeviceOptions.cs +213 -213
- package/Runtime/Core/Platform/SDK/Session/SessionParameterProvider.cs +61 -61
- package/Runtime/Core/Platform/SDK/Session/SessionService.cs +292 -292
- package/Runtime/Core/Platform/SDK/Session/SessionServiceHelper.cs +192 -192
- package/Runtime/Core/Platform/SDK/Sim/GameRelayService.cs +243 -243
- package/Runtime/Core/Platform/SDK/Sim/SimBehavior.cs +73 -73
- package/Runtime/Core/Platform/SDK/Sim/SimClient.cs +427 -427
- package/Runtime/Core/Platform/SDK/Sim/SimEvent.cs +39 -39
- package/Runtime/Core/Platform/SDK/Sim/SimFaultHandler.cs +172 -172
- package/Runtime/Core/Platform/SDK/Sim/SimFrame.cs +76 -76
- package/Runtime/Core/Platform/SDK/Sim/SimLog.cs +113 -113
- package/Runtime/Core/Platform/SDK/Sim/SimNetworkInterface.cs +79 -79
- package/Runtime/Core/Platform/SDK/Sim/network/eventStream/SimNetworkEventStream.cs +186 -186
- package/Runtime/Core/Platform/SDK/Sim/network/local/SimNetworkLocal.cs +62 -62
- package/Runtime/Core/Platform/SDK/Social/SocialService.cs +22 -22
- package/Runtime/Core/Platform/SDK/Stats/StatsService.cs +96 -96
- package/Runtime/Core/Platform/SDK/TokenAnalyticsUtil.cs +65 -65
- package/Runtime/Core/Platform/SDK/Tournaments/TournamentConsoleCommands.cs +87 -87
- package/Runtime/Core/Platform/SDK/Tournaments/TournamentService.cs +26 -26
- package/Runtime/Core/Platform/SDK/UnityUserDataCache.cs +169 -169
- package/Runtime/Core/Platform/TaskLikeExtensions.cs +26 -26
- package/Runtime/Core/Pooling/DisablePool.cs +104 -104
- package/Runtime/Core/Pooling/HidePool.cs +203 -203
- package/Runtime/Core/Pooling/HidePoolObject.cs +15 -15
- package/Runtime/Core/Pooling/HidePoolService.cs +64 -64
- package/Runtime/Core/Pooling/StaticClassPool.cs +82 -82
- package/Runtime/Core/Pooling/StringBuilderPool.cs +116 -116
- package/Runtime/Dependencies/GameObjectContext.cs +36 -36
- package/Runtime/Dependencies/ILoadWithContext.cs +12 -12
- package/Runtime/Environment/BeamableEnvironment.cs +134 -134
- package/Runtime/Environment/Resources/env-default.json +1 -1
- package/Runtime/Environment/Resources/versions-default.json +1 -1
- package/Runtime/ExperimentalAPI.cs +49 -49
- package/Runtime/GlobalServices/BeamableGlobalGameObject.cs +37 -37
- package/Runtime/HelpBoxDecoratorAttribute.cs +16 -16
- package/Runtime/InventoryViewEx.cs +171 -171
- package/Runtime/Modules/AccountManagement/Scripts/AccountAvatarBehaviour.cs +51 -51
- package/Runtime/Modules/AccountManagement/Scripts/AccountCustomizationBehaviour.cs +185 -185
- package/Runtime/Modules/AccountManagement/Scripts/AccountDisplayItem.cs +245 -245
- package/Runtime/Modules/AccountManagement/Scripts/AccountEmailLogin.cs +126 -126
- package/Runtime/Modules/AccountManagement/Scripts/AccountExistsSelect.cs +27 -27
- package/Runtime/Modules/AccountManagement/Scripts/AccountForgotPassword.cs +63 -63
- package/Runtime/Modules/AccountManagement/Scripts/AccountGeneralErrorBehaviour.cs +15 -15
- package/Runtime/Modules/AccountManagement/Scripts/AccountMainMenu.cs +315 -315
- package/Runtime/Modules/AccountManagement/Scripts/AccountManagementAdapter.cs +75 -75
- package/Runtime/Modules/AccountManagement/Scripts/AccountManagementBehaviour.cs +68 -68
- package/Runtime/Modules/AccountManagement/Scripts/AccountManagementCommands.cs +50 -50
- package/Runtime/Modules/AccountManagement/Scripts/AccountManagementConfiguration.cs +172 -172
- package/Runtime/Modules/AccountManagement/Scripts/AccountManagementHelper.cs +40 -40
- package/Runtime/Modules/AccountManagement/Scripts/AccountManagementSignals.cs +716 -716
- package/Runtime/Modules/AccountManagement/Scripts/AccountPlayerDataMenu.cs +94 -94
- package/Runtime/Modules/AccountManagement/Scripts/AccountSwitch.cs +55 -55
- package/Runtime/Modules/AccountManagement/Scripts/AccountThirdPartyWaitingMenu.cs +22 -22
- package/Runtime/Modules/AccountManagement/Scripts/AppleSignInBehavior.cs +64 -64
- package/Runtime/Modules/AccountManagement/Scripts/ForgotPasswordArguments.cs +10 -10
- package/Runtime/Modules/AccountManagement/Scripts/GoogleGameServicesBehavior.cs +67 -67
- package/Runtime/Modules/AccountManagement/Scripts/GoogleSignInBehavior.cs +70 -70
- package/Runtime/Modules/AccountManagement/Scripts/LoadingPopup.cs +34 -34
- package/Runtime/Modules/AccountManagement/Scripts/LoginArguments.cs +10 -10
- package/Runtime/Modules/AccountManagement/Scripts/ThirdPartyLoginArgument.cs +10 -10
- package/Runtime/Modules/AccountManagement/Scripts/TokenReference.cs +10 -10
- package/Runtime/Modules/Announcements/Rework/AnnouncementsCollection.cs +53 -53
- package/Runtime/Modules/Announcements/Rework/AnnouncementsPresenter.cs +70 -70
- package/Runtime/Modules/Announcements/Scripts/AnnouncementBehavior.cs +22 -22
- package/Runtime/Modules/Announcements/Scripts/AnnouncementMainMenu.cs +79 -79
- package/Runtime/Modules/Announcements/Scripts/AnnouncementReadMenu.cs +47 -47
- package/Runtime/Modules/Announcements/Scripts/AnnouncementSignals.cs +39 -39
- package/Runtime/Modules/Announcements/Scripts/AnnouncementSummary.cs +19 -19
- package/Runtime/Modules/Avatars/Scripts/AvatarConfiguration.cs +33 -33
- package/Runtime/Modules/Avatars/Scripts/AvatarPickerBehaviour.cs +99 -99
- package/Runtime/Modules/BeamableDisplayModule.cs +83 -83
- package/Runtime/Modules/BeamableModule.cs +17 -17
- package/Runtime/Modules/Calendars/Scripts/CalendarBehaviour.cs +85 -85
- package/Runtime/Modules/Calendars/Scripts/CalendarFlowMainPage.cs +8 -8
- package/Runtime/Modules/Calendars/Scripts/CalendarRewardsDay.cs +32 -32
- package/Runtime/Modules/Console/ConsoleConfiguration.cs +25 -25
- package/Runtime/Modules/Console/ConsoleFlow.cs +662 -662
- package/Runtime/Modules/Content/ContentCache.cs +184 -184
- package/Runtime/Modules/Content/ContentCommands.cs +161 -161
- package/Runtime/Modules/Content/ContentConfiguration.cs +161 -161
- package/Runtime/Modules/Content/ContentParameterProvider.cs +9 -9
- package/Runtime/Modules/Content/ContentService.cs +739 -739
- package/Runtime/Modules/Content/Extensions.cs +42 -42
- package/Runtime/Modules/Content/IManifestResolver.cs +42 -42
- package/Runtime/Modules/Content/Manifest.cs +22 -22
- package/Runtime/Modules/CoreConfiguration.cs +285 -285
- package/Runtime/Modules/CurrencyHUD/CurrencyHUDFlow.cs +74 -74
- package/Runtime/Modules/Generics/CollectionPresenter.cs +9 -9
- package/Runtime/Modules/Generics/DataCollection.cs +19 -19
- package/Runtime/Modules/Generics/DataPresenter.cs +40 -40
- package/Runtime/Modules/Generics/GenericButton.cs +21 -21
- package/Runtime/Modules/Generics/Model.cs +26 -26
- package/Runtime/Modules/Generics/ModelPresenter.cs +25 -25
- package/Runtime/Modules/Input/BeamableInput.cs +45 -45
- package/Runtime/Modules/Input/InputActionArg.cs +55 -55
- package/Runtime/Modules/Inventory/Prototype/GenericComponents/GenericTextButton.cs +36 -36
- package/Runtime/Modules/Inventory/Prototype/InventoryPresenter.cs +159 -159
- package/Runtime/Modules/Inventory/Prototype/ItemPresenter.cs +29 -29
- package/Runtime/Modules/Inventory/Prototype/ItemsCollection.cs +79 -79
- package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LanguageLocalizationElement.cs +47 -47
- package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LanguageLocalizationManager.cs +43 -43
- package/Runtime/Modules/Inventory/Prototype/LanguageLocalization/LocalizationHelper.cs +15 -15
- package/Runtime/Modules/Inventory/Scripts/InventoryBehaviour.cs +59 -59
- package/Runtime/Modules/Inventory/Scripts/InventoryCommands.cs +190 -190
- package/Runtime/Modules/Inventory/Scripts/InventoryConfiguration.cs +32 -32
- package/Runtime/Modules/Inventory/Scripts/InventoryGroupUI.cs +56 -56
- package/Runtime/Modules/Inventory/Scripts/InventoryMainMenu.cs +65 -65
- package/Runtime/Modules/Inventory/Scripts/InventoryMenuBehaviour.cs +56 -56
- package/Runtime/Modules/Inventory/Scripts/InventoryObjectUI.cs +38 -38
- package/Runtime/Modules/Inventory/Scripts/InventorySignals.cs +43 -43
- package/Runtime/Modules/Inventory/Scripts/ItemImageSetter.cs +41 -41
- package/Runtime/Modules/Leaderboards/Scripts/LeaderboardBehavior.cs +32 -32
- package/Runtime/Modules/Leaderboards/Scripts/LeaderboardItem.cs +24 -24
- package/Runtime/Modules/Leaderboards/Scripts/LeaderboardMainMenu.cs +80 -80
- package/Runtime/Modules/Leaderboards/Scripts/LeaderboardSignals.cs +33 -33
- package/Runtime/Modules/ModuleConfigurationObject.cs +212 -212
- package/Runtime/Modules/PackageUtil.cs +80 -80
- package/Runtime/Modules/Purchasing/PaymentCommands.cs +55 -55
- package/Runtime/Modules/Purchasing/Steam/SteamPurchasingModule.cs +20 -20
- package/Runtime/Modules/Purchasing/Steam/SteamStore.cs +147 -147
- package/Runtime/Modules/Purchasing/UnityBeamablePurchaser.cs +514 -514
- package/Runtime/Modules/Sessions/SessionConfiguration.cs +16 -16
- package/Runtime/Modules/Shop/Scripts/Defaults/BasicListingRenderer.cs +124 -124
- package/Runtime/Modules/Shop/Scripts/Defaults/BasicStoreRenderer.cs +60 -60
- package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListCurrencyRenderer.cs +25 -25
- package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListItemRenderer.cs +23 -23
- package/Runtime/Modules/Shop/Scripts/Defaults/ObtainSummaryListRenderer.cs +37 -37
- package/Runtime/Modules/Shop/Scripts/ListingContent.cs +36 -36
- package/Runtime/Modules/Shop/Scripts/ListingRenderer.cs +10 -10
- package/Runtime/Modules/Shop/Scripts/ObtainRenderer.cs +10 -10
- package/Runtime/Modules/Shop/Scripts/ShopConfiguration.cs +24 -24
- package/Runtime/Modules/Shop/Scripts/ShopFlow.cs +124 -124
- package/Runtime/Modules/Shop/Scripts/ShopLoadingMenu.cs +5 -5
- package/Runtime/Modules/Shop/Scripts/ShopRewardRenderer.cs +26 -26
- package/Runtime/Modules/Shop/Scripts/ShopSignals.cs +45 -45
- package/Runtime/Modules/Signals/DeSignal.cs +68 -68
- package/Runtime/Modules/Signals/DeSignalTower.cs +68 -68
- package/Runtime/Modules/Sound/Scripts/SoundConfiguration.cs +52 -52
- package/Runtime/Modules/Stats/StatBehaviour.cs +181 -181
- package/Runtime/Modules/Stats/StatObject.cs +106 -106
- package/Runtime/Modules/Stats/UserExtensions.cs +89 -89
- package/Runtime/Modules/Theme/Appliers/ButtonStyleApplier.cs +59 -59
- package/Runtime/Modules/Theme/Appliers/GradientStyleApplier.cs +32 -32
- package/Runtime/Modules/Theme/Appliers/ImageStyleApplier.cs +30 -30
- package/Runtime/Modules/Theme/Appliers/LayoutStyleApplier.cs +22 -22
- package/Runtime/Modules/Theme/Appliers/SelectableStyleApplier.cs +32 -32
- package/Runtime/Modules/Theme/Appliers/SoundStyleApplier.cs +27 -27
- package/Runtime/Modules/Theme/Appliers/StringStyleApplier.cs +20 -20
- package/Runtime/Modules/Theme/Appliers/StyleApplier.cs +28 -28
- package/Runtime/Modules/Theme/Appliers/TextStyleApplier.cs +57 -57
- package/Runtime/Modules/Theme/Appliers/TransformStyleApplier.cs +21 -21
- package/Runtime/Modules/Theme/Appliers/WindowStyleApplier.cs +51 -51
- package/Runtime/Modules/Theme/CanHideAttribute.cs +12 -12
- package/Runtime/Modules/Theme/Objects/GradientStyleObject.cs +33 -33
- package/Runtime/Modules/Theme/Objects/ImageStyleObject.cs +27 -27
- package/Runtime/Modules/Theme/Objects/LayoutStyleObject.cs +20 -20
- package/Runtime/Modules/Theme/Objects/SelectableStyleObject.cs +38 -38
- package/Runtime/Modules/Theme/Objects/TextStyleObject.cs +34 -34
- package/Runtime/Modules/Theme/Palette.cs +94 -94
- package/Runtime/Modules/Theme/PaletteStyleCopier.cs +34 -34
- package/Runtime/Modules/Theme/Palettes/ButtonPalette.cs +78 -78
- package/Runtime/Modules/Theme/Palettes/ColorPalette.cs +27 -27
- package/Runtime/Modules/Theme/Palettes/FontPalette.cs +28 -28
- package/Runtime/Modules/Theme/Palettes/GradientPalette.cs +57 -57
- package/Runtime/Modules/Theme/Palettes/ImagePalette.cs +31 -31
- package/Runtime/Modules/Theme/Palettes/LayoutPalette.cs +28 -28
- package/Runtime/Modules/Theme/Palettes/SelectablePalette.cs +36 -36
- package/Runtime/Modules/Theme/Palettes/SoundPalette.cs +30 -30
- package/Runtime/Modules/Theme/Palettes/StringPalette.cs +37 -37
- package/Runtime/Modules/Theme/Palettes/TextPalette.cs +61 -61
- package/Runtime/Modules/Theme/Palettes/TransformPalette.cs +29 -29
- package/Runtime/Modules/Theme/Palettes/WindowPalette.cs +43 -43
- package/Runtime/Modules/Theme/StyleBehaviour.cs +73 -73
- package/Runtime/Modules/Theme/StyleObject.cs +46 -46
- package/Runtime/Modules/Theme/ThemeConfiguration.cs +9 -9
- package/Runtime/Modules/Theme/ThemeObject.cs +160 -160
- package/Runtime/Modules/Tournaments/Scripts/CountdownTextBehaviour.cs +65 -65
- package/Runtime/Modules/Tournaments/Scripts/FixedCharacterFitter.cs +49 -49
- package/Runtime/Modules/Tournaments/Scripts/MockTournamentService.cs +221 -221
- package/Runtime/Modules/Tournaments/Scripts/TabBehaviour.cs +97 -97
- package/Runtime/Modules/Tournaments/Scripts/TournamenClaimableRewardBehaviour.cs +37 -37
- package/Runtime/Modules/Tournaments/Scripts/TournamentColorConstraint.cs +62 -62
- package/Runtime/Modules/Tournaments/Scripts/TournamentDataSource.cs +74 -74
- package/Runtime/Modules/Tournaments/Scripts/TournamentEntryBehavior.cs +221 -221
- package/Runtime/Modules/Tournaments/Scripts/TournamentEntryPlayerBehaviour.cs +152 -152
- package/Runtime/Modules/Tournaments/Scripts/TournamentInfoBehaviour.cs +33 -33
- package/Runtime/Modules/Tournaments/Scripts/TournamentInfoDetailBehaviour.cs +8 -8
- package/Runtime/Modules/Tournaments/Scripts/TournamentInfoDetailContainerBehaviour.cs +32 -32
- package/Runtime/Modules/Tournaments/Scripts/TournamentNumbersBehaviour.cs +20 -20
- package/Runtime/Modules/Tournaments/Scripts/TournamentRewardBehaviour.cs +21 -21
- package/Runtime/Modules/Tournaments/Scripts/TournamentRewardEntryBehaviour.cs +32 -32
- package/Runtime/Modules/Tournaments/Scripts/TournamentRewardPanelBehaviour.cs +78 -78
- package/Runtime/Modules/Tournaments/Scripts/TournamentScoreUtil.cs +77 -77
- package/Runtime/Modules/Tournaments/Scripts/TournamentStageGainBehaviour.cs +25 -25
- package/Runtime/Modules/Tournaments/Scripts/TournamentsBehaviour.cs +630 -630
- package/Runtime/Modules/Tournaments/Scripts/TournamentsConfiguration.cs +32 -32
- package/Runtime/PaymentExtensions.cs +16 -16
- package/Runtime/PlatformConsoleCommands.cs +559 -559
- package/Runtime/PlatformConsoleCommands.cs.meta +2 -2
- package/Runtime/Player/ApiServices.cs +162 -162
- package/Runtime/Player/BeamableBehaviour.cs +142 -142
- package/Runtime/Player/Leaderboards/LeaderboardLists.cs +216 -216
- package/Runtime/Player/Leaderboards/Lists/FriendScoresList.cs +76 -76
- package/Runtime/Player/Leaderboards/Lists/NearbyScoresList.cs +67 -67
- package/Runtime/Player/Leaderboards/Lists/PlayerCollectionScoresList.cs +52 -52
- package/Runtime/Player/Leaderboards/Lists/TopScoresList.cs +41 -41
- package/Runtime/Player/Leaderboards/PlayerLeaderboard.cs +774 -774
- package/Runtime/Player/Leaderboards/PlayerLeaderboards.cs +95 -95
- package/Runtime/Player/MonoBehaviourExtensions.cs +17 -17
- package/Runtime/Player/ObservableAccessToken.cs +12 -12
- package/Runtime/Player/ObservableUser.cs +30 -30
- package/Runtime/Player/PlayerAccounts.cs +2132 -2132
- package/Runtime/Player/PlayerAnnouncements.cs +239 -239
- package/Runtime/Player/PlayerCurrencies.cs +157 -157
- package/Runtime/Player/PlayerFriends.cs +661 -661
- package/Runtime/Player/PlayerInventory.cs +893 -893
- package/Runtime/Player/PlayerItemGroup.cs +200 -200
- package/Runtime/Player/PlayerLobby.cs +328 -328
- package/Runtime/Player/PlayerParty.cs +601 -601
- package/Runtime/Player/PlayerStateService.cs +44 -44
- package/Runtime/Player/PlayerStats.cs +238 -238
- package/Runtime/Player/SdkEventService.cs +259 -259
- package/Runtime/PromiseExtensions.cs +304 -304
- package/Runtime/ReflectionCache/BeamReflectionCache.cs +186 -186
- package/Runtime/ReflectionCache/ReflectionSystemObject.cs +55 -55
- package/Runtime/ReflectionCache/ThirdPartyIdentityReflectionCache.cs +84 -84
- package/Runtime/Server/BeamContextExtensions.cs +13 -13
- package/Runtime/Server/Content/ApiContentExtensions.cs +88 -88
- package/Runtime/Server/LegacyCommon/Mocks/MongoDB/Bson.meta +11 -11
- package/Runtime/Server/MicroserviceClient.cs +415 -415
- package/Runtime/Server/MicroserviceIndividualization.cs +80 -80
- package/Runtime/Server/MicroservicePrefixService.cs +10 -10
- package/Runtime/Server/ThirdPartyFederatedLoginExtensions.cs +60 -60
- package/Runtime/UI/Buttons/DeButtonBehaviour.cs +33 -33
- package/Runtime/UI/Layouts/MediaQueryBehaviour.cs +74 -74
- package/Runtime/UI/Layouts/MediaQueryObject.cs +118 -118
- package/Runtime/UI/Layouts/MediaSourceBehaviour.cs +49 -49
- package/Runtime/UI/Layouts/ReparenterBehaviour.cs +86 -86
- package/Runtime/UI/Layouts/StackLayout.cs +70 -70
- package/Runtime/UI/Lightbeam/DependencyExtensions.cs +359 -359
- package/Runtime/UI/Lightbeam/LightBeam.cs +155 -155
- package/Runtime/UI/Lightbeam/UIExtensions.cs +182 -182
- package/Runtime/UI/Prompt/DePromptBehaviour.cs +38 -38
- package/Runtime/UI/Prompt/DePromptData.cs +14 -14
- package/Runtime/UI/Scripts/AddressableImageBehaviour.cs +15 -15
- package/Runtime/UI/Scripts/AddressableSpriteLoader.cs +107 -107
- package/Runtime/UI/Scripts/BackButtonBehaviour.cs +14 -14
- package/Runtime/UI/Scripts/BeamableAnimationUtil.cs +100 -100
- package/Runtime/UI/Scripts/BeamableButton.cs +33 -33
- package/Runtime/UI/Scripts/BeamableWindow.cs +15 -15
- package/Runtime/UI/Scripts/ClickOffBehaviour.cs +42 -42
- package/Runtime/UI/Scripts/CloseButtonBehaviour.cs +14 -14
- package/Runtime/UI/Scripts/EventSoundBehaviour.cs +55 -55
- package/Runtime/UI/Scripts/GameObjectToggler.cs +25 -25
- package/Runtime/UI/Scripts/InputReference.cs +24 -24
- package/Runtime/UI/Scripts/InputValidationBehaviour.cs +153 -153
- package/Runtime/UI/Scripts/LoadingDisableBehaviour.cs +87 -87
- package/Runtime/UI/Scripts/LoadingIndicator.cs +117 -117
- package/Runtime/UI/Scripts/Menu.cs +47 -47
- package/Runtime/UI/Scripts/MenuManagementBehaviour.cs +268 -268
- package/Runtime/UI/Scripts/MobileUtilities.cs +84 -84
- package/Runtime/UI/Scripts/OfflineNotificationBehaviour.cs +37 -37
- package/Runtime/UI/Scripts/OfflineObject.cs +69 -69
- package/Runtime/UI/Scripts/ScrollButton.cs +23 -23
- package/Runtime/UI/Scripts/ScrollDotsBehaviour.cs +83 -83
- package/Runtime/UI/Scripts/ScrollToAlphaBehaviour.cs +47 -47
- package/Runtime/UI/Scripts/StickyScrollElement.cs +176 -176
- package/Runtime/UI/Scripts/TextReference.cs +15 -15
- package/Runtime/UI/Scripts/TextReferenceBase.cs +14 -14
- package/Runtime/UI/Scripts/TransformOffsetBehaviour.cs +61 -61
- package/Runtime/UI/TextField/DeTextFieldBehaviour.cs +48 -48
- package/Runtime/VectorIntExtensions.cs +45 -45
- package/Samples~/LightBeamSamples/AccountManager/AccountExampleConfig.cs +15 -15
- package/Samples~/LightBeamSamples/AccountManager/AccountManager.cs +57 -57
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountDetailsBehaviour/AccountDetailsBehaviour.cs +53 -53
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountDisplayBehaviour/AccountDisplayBehaviour.cs +51 -51
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/AccountSwitchPage/AccountSwitchPage.cs +42 -42
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/AvatarDisplay/AvatarDisplayBehaviour.cs +21 -21
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/ForgotPasswordPage/ForgotPasswordPage.cs +64 -64
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/HomePage/HomePage.cs +70 -70
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/RecoverEmailPage/RecoverEmailPage.cs +131 -131
- package/Samples~/LightBeamSamples/AccountManager/Prefabs/RegisterEmailPage/RegisterEmailPage.cs +79 -79
- package/Samples~/LightBeamSamples/CurrencyHud/CurrencyHudManager.cs +40 -40
- package/Samples~/LightBeamSamples/CurrencyHud/Prefabs/CurrencyView/CurrencyViewBehaviour.cs +50 -50
- package/Samples~/LightBeamSamples/FriendsManager/FriendsExampleConfig.cs +13 -13
- package/Samples~/LightBeamSamples/FriendsManager/FriendsManager.cs +32 -32
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/BlockedDisplay/BlockedPlayersDisplayBehaviour.cs +25 -25
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/FriendDisplay/FriendDisplayBehaviour.cs +31 -31
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/HomePage/HomePage.cs +31 -31
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/PlayerFriendsDisplay/PlayerFriendsBehaviour.cs +194 -194
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/ReceivedInvitesDisplay/ReceivedInviteDisplayBehaviour.cs +31 -31
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/Selector/Editor/SelectorButtonBehaviourEditor.cs +27 -27
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/Selector/SelectorButtonBehaviour.cs +13 -13
- package/Samples~/LightBeamSamples/FriendsManager/Prefabs/SentInvitesDisplay/SentInviteDisplayBehaviour.cs +25 -25
- package/Samples~/LightBeamSamples/Inventory/InventoryExampleConfig.cs +12 -12
- package/Samples~/LightBeamSamples/Inventory/InventoryManager.cs +32 -32
- package/Samples~/LightBeamSamples/Inventory/Prefabs/CurrencyDisplay/CurrencyDisplayBehaviour.cs +48 -48
- package/Samples~/LightBeamSamples/Inventory/Prefabs/CurrencyInfoPage/CurrencyInfoBehaviour.cs +70 -70
- package/Samples~/LightBeamSamples/Inventory/Prefabs/HomePage/HomePage.cs +82 -82
- package/Samples~/LightBeamSamples/Inventory/Prefabs/ItemDisplay/ItemDisplayBehaviour.cs +51 -51
- package/Samples~/LightBeamSamples/Inventory/Prefabs/ItemInfoPage/ItemInfoPage.cs +74 -74
- package/Samples~/LightBeamSamples/Inventory/Prefabs/PropertyDisplay/PropertyDisplayBehaviour.cs +21 -21
- package/Samples~/LightBeamSamples/LobbyManager/LobbyExampleConfig.cs +14 -14
- package/Samples~/LightBeamSamples/LobbyManager/LobbyManager.cs +36 -36
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/CreateLobbyDisplay/CreateLobbyDisplayBehaviour.cs +54 -54
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/FindLobbyDisplay/FindLobbyDisplayBehaviour.cs +36 -36
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/HomePage/HomePage.cs +71 -71
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/JoinLobbyDisplay/JoinLobbyDisplayBehaviour.cs +75 -75
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/LobbyDetailsDisplay/LobbyDetailsDisplayBehaviour.cs +80 -80
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/LobbyDisplay/LobbyDisplayBehaviour.cs +27 -27
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/PlayerDisplay/PlayerIdDisplayBehaviour.cs +17 -17
- package/Samples~/LightBeamSamples/LobbyManager/Prefabs/PlayerLobby/PlayerLobbyBehaviour.cs +112 -112
- package/Samples~/LightBeamSamples/LootBox/BeamableServices~/LootBoxService/LootBoxService.cs +45 -45
- package/Samples~/LightBeamSamples/LootBox/BeamableServices~/LootBoxService/Program.cs +20 -20
- package/Samples~/LightBeamSamples/LootBox/LootBoxExampleConfig.cs +8 -8
- package/Samples~/LightBeamSamples/LootBox/LootBoxManager.cs +30 -30
- package/Samples~/LightBeamSamples/LootBox/Prefabs/LootBoxPage/LootBoxPage.cs +47 -47
- package/Samples~/LightBeamSamples/SceneLoader/Config/LightBeamSceneConfigObject_Editor.cs +37 -37
- package/Samples~/LightBeamSamples/SceneLoader/LightBeamBooter.cs +485 -485
- package/Samples~/LightBeamSamples/SceneLoader/Prefabs/SceneDisplay/SceneDisplayBehaviour.cs +25 -25
- package/Samples~/SampleProjectBase/Scripts/Editor/Beamable/Samples/SampleProjectBase/AutoOpenReadme.cs +46 -46
- package/Samples~/SampleProjectBase/Scripts/Editor/Beamable/Samples/SampleProjectBase/BeamableReadmeEditor.cs +158 -158
- package/Samples~/SampleProjectBase/Scripts/Runtime/Beamable/Samples/SampleProjectBase/Readme.cs +33 -33
- package/Template/SharedSample.cs +19 -19
- package/Tests/Editor/AliasHelperTests.cs +64 -64
- package/Tests/Editor/CLI/DataTransferTests.cs +65 -65
- package/Tests/Editor/Common/BeamUtil/SanitizeStringForPathTests.cs +18 -18
- package/Tests/Editor/Common/TrieTests.cs +253 -253
- package/Tests/Editor/Common/TryInvokeCallbackTests.cs +93 -93
- package/Tests/Editor/ContentObjectTests.cs +65 -65
- package/Tests/Editor/EditorDisruptorEngine/Content/ContentObjectFieldTests.cs +81 -81
- package/Tests/Editor/EditorDisruptorEngine/Content/ContentObjectLinkRefTests.cs +81 -81
- package/Tests/Editor/EditorDisruptorEngine/Content/ExampleContent.cs +10 -10
- package/Tests/Editor/EditorDisruptorEngine/Content/Schedules/CronTests.cs +189 -189
- package/Tests/Editor/EditorTest.cs +51 -51
- package/Tests/Editor/JsonPerfTesting.cs +117 -117
- package/Tests/Editor/JsonPerfTesting_PayloadSize.cs +96 -96
- package/Tests/Editor/JsonTestHelp.cs +82 -82
- package/Tests/Editor/MockLogProvider.cs +47 -47
- package/Tests/Editor/PreserveAttributeTests.cs +26 -26
- package/Tests/Editor/PromiseTests/ErrorTests.cs +582 -582
- package/Tests/Editor/SmallerJSON/InfinityTests.cs +61 -61
- package/Tests/Editor/SmallerJSON/JsonPathTests.cs +107 -107
- package/Tests/Editor/SmallerJSON/JsonSerializeTest.cs +135 -135
- package/Tests/Runtime/Beamable/BeamContextInitTests.cs +103 -103
- package/Tests/Runtime/Beamable/BeamContextTest.cs +72 -72
- package/Tests/Runtime/Beamable/BeamableTest.cs +46 -46
- package/Tests/Runtime/Beamable/Content/ClientManifest/ParseCSVTests.cs +102 -102
- package/Tests/Runtime/Beamable/Content/ContentRegistry/GetTypeFromIdTests.cs +164 -164
- package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/DeserializeEmptyFields.cs +114 -114
- package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/DeserializeTests.cs +1343 -1343
- package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/EscapedStringTests.cs +119 -119
- package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/GetNullStringForTypeTests.cs +104 -104
- package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/SerializeFieldSubclassSerializeTests.cs +157 -157
- package/Tests/Runtime/Beamable/Content/Serialization/ClientContentSerializer/SerializeTests.cs +1066 -1066
- package/Tests/Runtime/Beamable/Content/Serialization/TestContentRef.cs +66 -66
- package/Tests/Runtime/Beamable/Content/Serialization/VipContentSerialization/VipContentSerializationTests.cs +34 -34
- package/Tests/Runtime/Beamable/DebouncerTests.cs +110 -110
- package/Tests/Runtime/Beamable/Dependencies/ScopingTests.cs +235 -235
- package/Tests/Runtime/Beamable/Environment/PackageVersionTests/FromSemanticVersionStringTests.cs +161 -161
- package/Tests/Runtime/Beamable/Environment/PackageVersionTests/ImplicitConversionTest.cs +24 -24
- package/Tests/Runtime/Beamable/Environment/PackageVersionTests/RangeOperatorTests.cs +209 -209
- package/Tests/Runtime/Beamable/Environment/PackageVersionTests/ToStringTests.cs +64 -64
- package/Tests/Runtime/Beamable/MockAuthService.cs +218 -218
- package/Tests/Runtime/Beamable/MockBeamContext.cs +171 -171
- package/Tests/Runtime/Beamable/MockBeamableApi.cs +122 -122
- package/Tests/Runtime/Beamable/MockConfigurationHelper.cs +19 -19
- package/Tests/Runtime/Beamable/MockFileAccessor.cs +19 -19
- package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/AcceptAccountSwitchTests.cs +95 -95
- package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/CheckSignedInUserTests.cs +134 -134
- package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/LoginTests.cs +108 -108
- package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/TestHelperExtensions.cs +38 -38
- package/Tests/Runtime/Beamable/Modules/AccountManagement/AccountManagementSignalsTests/UpdateLoginEmailTests.cs +81 -81
- package/Tests/Runtime/Beamable/Modules/Leaderboards/IncrementTests.cs +88 -88
- package/Tests/Runtime/Beamable/Modules/Leaderboards/LeaderboardViewSerializeTests.cs +109 -109
- package/Tests/Runtime/Beamable/Modules/Shop/ListingContentTests/ValidateListingTests.cs +66 -66
- package/Tests/Runtime/Beamable/Modules/Stats/StatObjectTests/WriteTests.cs +42 -42
- package/Tests/Runtime/Beamable/Modules/Tournaments/TournamentScoreUtilTests/GetShortScoreTests.cs +329 -329
- package/Tests/Runtime/Beamable/Platform/AccessTokenStorageTests.cs +154 -154
- package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/AuthServiceTestBase.cs +39 -39
- package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/CustomDeviceIdTests.cs +51 -51
- package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/GetUserTests.cs +33 -33
- package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/IsEmailAvailableTests.cs +58 -58
- package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/LoginTests.cs +37 -37
- package/Tests/Runtime/Beamable/Platform/Auth/AuthServiceTests/RemoveDeviceIdTests.cs +69 -69
- package/Tests/Runtime/Beamable/Platform/Connectivity/MockConnectivityService.cs +45 -45
- package/Tests/Runtime/Beamable/Platform/Content/MockContentService.cs +140 -140
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryResponseTests/MergeViewTests.cs +245 -245
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/GetItemTests.cs +225 -225
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/InventoryServiceTestBase.cs +52 -52
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryServiceTests/UpdateTests.cs +73 -73
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryTestItem.cs +26 -26
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/AddItemTests.cs +24 -24
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/SerializationTests.cs +227 -227
- package/Tests/Runtime/Beamable/Platform/Inventory/InventoryUpdateBuilderTests/UnitySerializationTests.cs +215 -215
- package/Tests/Runtime/Beamable/Platform/Mail/MailTests.cs +67 -67
- package/Tests/Runtime/Beamable/Platform/MockConnectivityChecker.cs +24 -24
- package/Tests/Runtime/Beamable/Platform/MockPlatformAPI.cs +398 -398
- package/Tests/Runtime/Beamable/Platform/MockPlatformRequester.cs +78 -78
- package/Tests/Runtime/Beamable/Platform/MockPlatformService.cs +47 -47
- package/Tests/Runtime/Beamable/Platform/MockRequesterExtensions.cs +13 -13
- package/Tests/Runtime/Beamable/Platform/TestUtil.cs +59 -59
- package/Tests/Runtime/Beamable/Player/Accounts/ExternalIdentityQueryArgsTests.cs +132 -132
- package/Tests/Runtime/Beamable/Player/Announcements/AnnouncementGiftSerialization.cs +117 -117
- package/Tests/Runtime/Beamable/Player/Announcements/MockAnnouncementsApi.cs +45 -45
- package/Tests/Runtime/Beamable/Player/Announcements/MockNotificationService.cs +70 -70
- package/Tests/Runtime/Beamable/Player/Inventory/GetItemTests.cs +485 -485
- package/Tests/Runtime/Beamable/Player/Inventory/MockInventoryApi.cs +77 -77
- package/Tests/Runtime/Beamable/Player/Leaderboards/ResortTests.cs +236 -236
- package/Tests/Runtime/Beamable/Pooling/StringBuilderPoolTests/SpawnTests.cs +55 -55
- package/Tests/Runtime/Beamable/Promises/PromisePlayModeTests.cs +145 -145
- package/Tests/Runtime/Beamable/Promises/SequenceTests.cs +45 -45
- package/Tests/Runtime/Beamable/QueryBuilder/QueryBuilderTests.cs +94 -94
- package/Tests/Runtime/Server/Runtime/MicroserviceClient/RequestTests.cs +374 -374
- package/Tests/Runtime/Server/Runtime/MicroserviceClient/TestClient.cs +78 -78
- package/Tests/Runtime/Server/Runtime/TestRegistrations.cs +22 -22
- package/package.json +1 -1
|
@@ -1,1337 +1,1337 @@
|
|
|
1
|
-
using Beamable.Common.Dependencies;
|
|
2
|
-
using System;
|
|
3
|
-
using System.Collections;
|
|
4
|
-
using System.Collections.Generic;
|
|
5
|
-
using System.Linq;
|
|
6
|
-
using System.Net;
|
|
7
|
-
using System.Text;
|
|
8
|
-
|
|
9
|
-
namespace PubNubMessaging.Core
|
|
10
|
-
{
|
|
11
|
-
public sealed class Counter
|
|
12
|
-
{
|
|
13
|
-
private uint current = 0;
|
|
14
|
-
private object syncRoot;
|
|
15
|
-
|
|
16
|
-
public Counter()
|
|
17
|
-
{
|
|
18
|
-
syncRoot = new Object();
|
|
19
|
-
current = 0;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
public uint NextValue()
|
|
23
|
-
{
|
|
24
|
-
lock (syncRoot)
|
|
25
|
-
{
|
|
26
|
-
this.current++;
|
|
27
|
-
}
|
|
28
|
-
return this.current;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
public void Reset()
|
|
32
|
-
{
|
|
33
|
-
lock (syncRoot)
|
|
34
|
-
{
|
|
35
|
-
this.current = 0;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
internal static class Helpers
|
|
41
|
-
{
|
|
42
|
-
#region "Helpers"
|
|
43
|
-
internal static TimetokenMetadata CreateTimetokenMetadata(object timeTokenDataObject, string whichTT)
|
|
44
|
-
{
|
|
45
|
-
IDictionary<string, object> timeTokenData = (IDictionary<string, object>)timeTokenDataObject;
|
|
46
|
-
TimetokenMetadata timetokenMetadata = new TimetokenMetadata(Utility.CheckKeyAndParseLong(timeTokenData, whichTT, "t"),
|
|
47
|
-
timeTokenData["r"].ToString());
|
|
48
|
-
|
|
49
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, TimetokenMetadata: {1} \nTimetoken: {2} \nRegion: {3}",
|
|
50
|
-
DateTime.Now.ToString(), whichTT, timetokenMetadata.Timetoken, timetokenMetadata.Region),
|
|
51
|
-
LoggingMethod.LevelInfo);
|
|
52
|
-
|
|
53
|
-
return timetokenMetadata;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
internal static void AddToSubscribeMessageList(object dictObject, ref List<SubscribeMessage> subscribeMessages)
|
|
57
|
-
{
|
|
58
|
-
var dict = dictObject as IDictionary<string, object>;
|
|
59
|
-
if ((dict != null) && (dict.Count > 1))
|
|
60
|
-
{
|
|
61
|
-
string shard = (dict.ContainsKey("a")) ? dict["a"].ToString() : "";
|
|
62
|
-
string subscriptionMatch = (dict.ContainsKey("b")) ? dict["b"].ToString() : "";
|
|
63
|
-
string channel = (dict.ContainsKey("c")) ? dict["c"].ToString() : "";
|
|
64
|
-
object payload = (dict.ContainsKey("d")) ? (object)dict["d"] : null;
|
|
65
|
-
string flags = (dict.ContainsKey("f")) ? dict["f"].ToString() : "";
|
|
66
|
-
string issuingClientId = (dict.ContainsKey("i")) ? dict["i"].ToString() : "";
|
|
67
|
-
string subscribeKey = (dict.ContainsKey("k")) ? dict["k"].ToString() : "";
|
|
68
|
-
long sequenceNumber = Utility.CheckKeyAndParseLong(dict, "sequenceNumber", "s");
|
|
69
|
-
|
|
70
|
-
TimetokenMetadata originatingTimetoken = (dict.ContainsKey("o")) ? CreateTimetokenMetadata(dict["o"], "Originating TT: ") : null;
|
|
71
|
-
TimetokenMetadata publishMetadata = (dict.ContainsKey("p")) ? CreateTimetokenMetadata(dict["p"], "Publish TT: ") : null;
|
|
72
|
-
object userMetadata = (dict.ContainsKey("u")) ? (object)dict["u"] : null;
|
|
73
|
-
|
|
74
|
-
SubscribeMessage subscribeMessage = new SubscribeMessage(
|
|
75
|
-
shard,
|
|
76
|
-
subscriptionMatch,
|
|
77
|
-
channel,
|
|
78
|
-
payload,
|
|
79
|
-
flags,
|
|
80
|
-
issuingClientId,
|
|
81
|
-
subscribeKey,
|
|
82
|
-
sequenceNumber,
|
|
83
|
-
originatingTimetoken,
|
|
84
|
-
publishMetadata,
|
|
85
|
-
userMetadata
|
|
86
|
-
);
|
|
87
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, AddToSubscribeMessageList: \n" +
|
|
88
|
-
"shard : {1},\n" +
|
|
89
|
-
"subscriptionMatch: {2},\n" +
|
|
90
|
-
"channel: {3},\n" +
|
|
91
|
-
"payload: {4},\n" +
|
|
92
|
-
"flags: {5},\n" +
|
|
93
|
-
"issuingClientId: {6},\n" +
|
|
94
|
-
"subscribeKey: {7},\n" +
|
|
95
|
-
"sequenceNumber: {8},\n" +
|
|
96
|
-
"originatingTimetoken tt: {9},\n" +
|
|
97
|
-
"originatingTimetoken region: {10},\n" +
|
|
98
|
-
"publishMetadata tt: {11},\n" +
|
|
99
|
-
"publishMetadata region: {12},\n" +
|
|
100
|
-
"userMetadata {13} \n",
|
|
101
|
-
DateTime.Now.ToString(),
|
|
102
|
-
shard,
|
|
103
|
-
subscriptionMatch,
|
|
104
|
-
channel,
|
|
105
|
-
payload.ToString(),
|
|
106
|
-
flags,
|
|
107
|
-
issuingClientId,
|
|
108
|
-
subscribeKey,
|
|
109
|
-
sequenceNumber,
|
|
110
|
-
(originatingTimetoken != null) ? originatingTimetoken.Timetoken.ToString() : "",
|
|
111
|
-
(originatingTimetoken != null) ? originatingTimetoken.Region : "",
|
|
112
|
-
(publishMetadata != null) ? publishMetadata.Timetoken.ToString() : "",
|
|
113
|
-
(publishMetadata != null) ? publishMetadata.Region : "",
|
|
114
|
-
(userMetadata != null) ? userMetadata.ToString() : "null"),
|
|
115
|
-
LoggingMethod.LevelInfo);
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
subscribeMessages.Add(subscribeMessage);
|
|
119
|
-
}
|
|
120
|
-
else
|
|
121
|
-
{
|
|
122
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, AddToSubscribeMessageList: CreateListOfSubscribeMessage create " +
|
|
123
|
-
"SubscribeMessage failed. dictObject type: {1}, dict type : {2}",
|
|
124
|
-
DateTime.Now.ToString(), dictObject.ToString(), dict.ToString()), LoggingMethod.LevelInfo);
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
internal static List<SubscribeMessage> CreateListOfSubscribeMessage(object message)
|
|
130
|
-
{
|
|
131
|
-
List<SubscribeMessage> subscribeMessages = new List<SubscribeMessage>();
|
|
132
|
-
if (message != null)
|
|
133
|
-
{
|
|
134
|
-
//JSONFx
|
|
135
|
-
object[] messages = message as object[];
|
|
136
|
-
|
|
137
|
-
if (messages != null)
|
|
138
|
-
{
|
|
139
|
-
var myObjectArray = (from item in messages
|
|
140
|
-
select item as object).ToArray();
|
|
141
|
-
if ((myObjectArray != null) && (myObjectArray.Length > 0))
|
|
142
|
-
{
|
|
143
|
-
|
|
144
|
-
foreach (object dictObject in myObjectArray)
|
|
145
|
-
{
|
|
146
|
-
AddToSubscribeMessageList(dictObject, ref subscribeMessages);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
else
|
|
151
|
-
{
|
|
152
|
-
//MiniJSON
|
|
153
|
-
List<object> messageList = message as List<object>;
|
|
154
|
-
if ((messageList != null) && messageList.Count > 0)
|
|
155
|
-
{
|
|
156
|
-
foreach (object dictObject in messageList)
|
|
157
|
-
{
|
|
158
|
-
AddToSubscribeMessageList(dictObject, ref subscribeMessages);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
else
|
|
164
|
-
{
|
|
165
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateListOfSubscribeMessage: no messages ",
|
|
166
|
-
DateTime.Now.ToString()), LoggingMethod.LevelInfo);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
return subscribeMessages;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
internal static string BuildJsonUserState(IDictionary<string, object> userStateDictionary)
|
|
173
|
-
{
|
|
174
|
-
StringBuilder jsonStateBuilder = new StringBuilder();
|
|
175
|
-
|
|
176
|
-
if (userStateDictionary != null)
|
|
177
|
-
{
|
|
178
|
-
string[] userStateKeys = userStateDictionary.Keys.ToArray<string>();
|
|
179
|
-
|
|
180
|
-
for (int keyIndex = 0; keyIndex < userStateKeys.Length; keyIndex++)
|
|
181
|
-
{
|
|
182
|
-
string useStateKey = userStateKeys[keyIndex];
|
|
183
|
-
object userStateValue = userStateDictionary[useStateKey];
|
|
184
|
-
if (userStateValue == null)
|
|
185
|
-
{
|
|
186
|
-
jsonStateBuilder.AppendFormat("\"{0}\":{1}", useStateKey, string.Format("\"{0}\"", "null"));
|
|
187
|
-
}
|
|
188
|
-
else
|
|
189
|
-
{
|
|
190
|
-
jsonStateBuilder.AppendFormat("\"{0}\":{1}", useStateKey, (userStateValue.GetType().ToString() == "System.String") ? string.Format("\"{0}\"", userStateValue) : userStateValue);
|
|
191
|
-
}
|
|
192
|
-
if (keyIndex < userStateKeys.Length - 1)
|
|
193
|
-
{
|
|
194
|
-
jsonStateBuilder.Append(",");
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
return jsonStateBuilder.ToString();
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
internal static string BuildJsonUserState(List<ChannelEntity> ce)
|
|
203
|
-
{
|
|
204
|
-
string retJsonUserState = "";
|
|
205
|
-
|
|
206
|
-
StringBuilder jsonStateBuilder = new StringBuilder();
|
|
207
|
-
|
|
208
|
-
if (ce != null)
|
|
209
|
-
{
|
|
210
|
-
foreach (ChannelEntity c in ce)
|
|
211
|
-
{
|
|
212
|
-
string currentJsonState = BuildJsonUserState(c.ChannelParams.UserState);
|
|
213
|
-
if (!string.IsNullOrEmpty(currentJsonState))
|
|
214
|
-
{
|
|
215
|
-
currentJsonState = string.Format("\"{0}\":{{{1}}}", c.ChannelID.ChannelOrChannelGroupName, currentJsonState);
|
|
216
|
-
if (jsonStateBuilder.Length > 0)
|
|
217
|
-
{
|
|
218
|
-
jsonStateBuilder.Append(",");
|
|
219
|
-
}
|
|
220
|
-
jsonStateBuilder.Append(currentJsonState);
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
if (jsonStateBuilder.Length > 0)
|
|
225
|
-
{
|
|
226
|
-
retJsonUserState = string.Format("{{{0}}}", jsonStateBuilder.ToString());
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
return retJsonUserState;
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
internal static string GetNamesFromChannelEntities(List<ChannelEntity> channelEntities, bool isChannelGroup)
|
|
234
|
-
{
|
|
235
|
-
|
|
236
|
-
StringBuilder sb = new StringBuilder();
|
|
237
|
-
if (channelEntities != null)
|
|
238
|
-
{
|
|
239
|
-
int count = 0;
|
|
240
|
-
foreach (ChannelEntity c in channelEntities)
|
|
241
|
-
{
|
|
242
|
-
if (isChannelGroup && c.ChannelID.IsChannelGroup)
|
|
243
|
-
{
|
|
244
|
-
if (count > 0)
|
|
245
|
-
{
|
|
246
|
-
sb.Append(",");
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
sb.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
250
|
-
count++;
|
|
251
|
-
}
|
|
252
|
-
else if (!isChannelGroup && !c.ChannelID.IsChannelGroup)
|
|
253
|
-
{
|
|
254
|
-
if (count > 0)
|
|
255
|
-
{
|
|
256
|
-
sb.Append(",");
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
sb.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
260
|
-
count++;
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
return sb.ToString();
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
internal static string GetNamesFromChannelEntities(List<ChannelEntity> channelEntities)
|
|
268
|
-
{
|
|
269
|
-
StringBuilder sbCh = new StringBuilder();
|
|
270
|
-
StringBuilder sbChGrp = new StringBuilder();
|
|
271
|
-
if (channelEntities != null)
|
|
272
|
-
{
|
|
273
|
-
int countCh = 0;
|
|
274
|
-
int countChGrp = 0;
|
|
275
|
-
foreach (ChannelEntity c in channelEntities)
|
|
276
|
-
{
|
|
277
|
-
if (c.ChannelID.IsChannelGroup)
|
|
278
|
-
{
|
|
279
|
-
if (countChGrp > 0)
|
|
280
|
-
{
|
|
281
|
-
sbChGrp.Append(",");
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
sbChGrp.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
285
|
-
countChGrp++;
|
|
286
|
-
}
|
|
287
|
-
else
|
|
288
|
-
{
|
|
289
|
-
if (countCh > 0)
|
|
290
|
-
{
|
|
291
|
-
sbCh.Append(",");
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
sbCh.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
295
|
-
countCh++;
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
return string.Format("channel(s) = {0} and channelGroups(s) = {1}", sbCh.ToString(), sbChGrp.ToString());
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
internal static bool UpdateOrAddUserStateOfEntity<T>(string channel, bool isChannelGroup,
|
|
304
|
-
IDictionary<string, object> userState, bool edit,
|
|
305
|
-
Action<T> userCallback, Action<PubnubClientError> errorCallback,
|
|
306
|
-
PubnubErrorFilter.Level errorLevel, ref List<ChannelEntity> channelEntities, IDependencyProvider provider)
|
|
307
|
-
{
|
|
308
|
-
ChannelEntity ce = CreateChannelEntity<T>(channel, false, isChannelGroup,
|
|
309
|
-
userState, userCallback, null, errorCallback, null, null);
|
|
310
|
-
bool stateChanged = Subscription.GetSubscription(provider).UpdateOrAddUserStateOfEntity(ref ce, userState, edit);
|
|
311
|
-
if (!stateChanged)
|
|
312
|
-
{
|
|
313
|
-
string message = "No change in User State";
|
|
314
|
-
|
|
315
|
-
PubnubCallbacks.CallErrorCallback<T>(ce, message,
|
|
316
|
-
PubnubErrorCode.UserStateUnchanged, PubnubErrorSeverity.Info, errorLevel);
|
|
317
|
-
}
|
|
318
|
-
else
|
|
319
|
-
{
|
|
320
|
-
channelEntities.Add(ce);
|
|
321
|
-
}
|
|
322
|
-
return stateChanged;
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
internal static bool CheckAndAddExistingUserState<T>(string channel, string channelGroup, IDictionary<string, object> userState,
|
|
326
|
-
Action<T> userCallback, Action<PubnubClientError> errorCallback,
|
|
327
|
-
PubnubErrorFilter.Level errorLevel, bool edit,
|
|
328
|
-
out string returnUserState, out List<ChannelEntity> channelEntities, IDependencyProvider provider
|
|
329
|
-
)
|
|
330
|
-
{
|
|
331
|
-
string[] channels = channel.Trim().Split(',');
|
|
332
|
-
string[] channelGroups = channelGroup.Trim().Split(',');
|
|
333
|
-
bool stateChanged = false;
|
|
334
|
-
channelEntities = new List<ChannelEntity>();
|
|
335
|
-
|
|
336
|
-
foreach (string ch in channels)
|
|
337
|
-
{
|
|
338
|
-
if (!string.IsNullOrEmpty(ch))
|
|
339
|
-
{
|
|
340
|
-
bool changeState = UpdateOrAddUserStateOfEntity<T>(ch, false, userState, edit,
|
|
341
|
-
userCallback, errorCallback, errorLevel, ref channelEntities, provider);
|
|
342
|
-
if (changeState && !stateChanged)
|
|
343
|
-
{
|
|
344
|
-
stateChanged = true;
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
foreach (string ch in channelGroups)
|
|
350
|
-
{
|
|
351
|
-
if (!string.IsNullOrEmpty(ch))
|
|
352
|
-
{
|
|
353
|
-
bool changeState = UpdateOrAddUserStateOfEntity<T>(ch, true, userState, edit,
|
|
354
|
-
userCallback, errorCallback, errorLevel, ref channelEntities, provider);
|
|
355
|
-
if (changeState && !stateChanged)
|
|
356
|
-
{
|
|
357
|
-
stateChanged = true;
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
|
|
362
|
-
returnUserState = BuildJsonUserState(channelEntities);
|
|
363
|
-
|
|
364
|
-
return stateChanged;
|
|
365
|
-
}
|
|
366
|
-
|
|
367
|
-
internal static ChannelEntity CreateChannelEntity<T>(string channelOrChannelGroupName2,
|
|
368
|
-
bool isAwaitingConnectCallback,
|
|
369
|
-
bool isChannelGroup, IDictionary<string, object> userState,
|
|
370
|
-
Action<T> userCallback, Action<T> connectCallback,
|
|
371
|
-
Action<PubnubClientError> errorCallback, Action<T> disconnectCallback, Action<T> wildcardPresenceCallback
|
|
372
|
-
)
|
|
373
|
-
{
|
|
374
|
-
string channelOrChannelGroupName = channelOrChannelGroupName2.Trim();
|
|
375
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity: channelOrChannelGroupName {1}, {2}", DateTime.Now.ToString(),
|
|
376
|
-
channelOrChannelGroupName.ToString(), channelOrChannelGroupName2.ToString()), LoggingMethod.LevelInfo);
|
|
377
|
-
|
|
378
|
-
if (!string.IsNullOrEmpty(channelOrChannelGroupName))
|
|
379
|
-
{
|
|
380
|
-
ChannelIdentity ci = new ChannelIdentity();
|
|
381
|
-
ci.ChannelOrChannelGroupName = channelOrChannelGroupName;
|
|
382
|
-
ci.IsPresenceChannel = Utility.IsPresenceChannel(channelOrChannelGroupName);
|
|
383
|
-
ci.IsChannelGroup = isChannelGroup;
|
|
384
|
-
|
|
385
|
-
ChannelParameters cp = new ChannelParameters();
|
|
386
|
-
cp.IsAwaitingConnectCallback = isAwaitingConnectCallback;
|
|
387
|
-
cp.UserState = userState;
|
|
388
|
-
cp.TypeParameterType = typeof(T);
|
|
389
|
-
|
|
390
|
-
cp.Callbacks = PubnubCallbacks.GetPubnubChannelCallback<T>(userCallback, connectCallback, errorCallback,
|
|
391
|
-
disconnectCallback, wildcardPresenceCallback);
|
|
392
|
-
|
|
393
|
-
ChannelEntity ce = new ChannelEntity(ci, cp);
|
|
394
|
-
|
|
395
|
-
return ce;
|
|
396
|
-
}
|
|
397
|
-
else
|
|
398
|
-
{
|
|
399
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity: channelOrChannelGroupName empty, is channel group {1}", DateTime.Now.ToString(), isChannelGroup.ToString()), LoggingMethod.LevelInfo);
|
|
400
|
-
|
|
401
|
-
return null;
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
internal static List<ChannelEntity> CreateChannelEntity<T>(string[] channelOrChannelGroupNames, bool isAwaitingConnectCallback,
|
|
406
|
-
bool isChannelGroup, IDictionary<string, object> userState,
|
|
407
|
-
Action<T> userCallback, Action<T> connectCallback,
|
|
408
|
-
Action<PubnubClientError> errorCallback, Action<T> disconnectCallback, Action<T> wildcardPresenceCallback
|
|
409
|
-
)
|
|
410
|
-
{
|
|
411
|
-
List<ChannelEntity> channelEntities = null;
|
|
412
|
-
if (channelOrChannelGroupNames != null)
|
|
413
|
-
{
|
|
414
|
-
channelEntities = new List<ChannelEntity>();
|
|
415
|
-
foreach (string ch in channelOrChannelGroupNames)
|
|
416
|
-
{
|
|
417
|
-
ChannelEntity chEntity = CreateChannelEntity<T>(ch, isAwaitingConnectCallback, isChannelGroup, userState,
|
|
418
|
-
userCallback, connectCallback, errorCallback, disconnectCallback, wildcardPresenceCallback
|
|
419
|
-
);
|
|
420
|
-
if (chEntity != null)
|
|
421
|
-
{
|
|
422
|
-
channelEntities.Add(chEntity);
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity 2: channelEntities={1}", DateTime.Now.ToString(), channelEntities.Count), LoggingMethod.LevelInfo);
|
|
426
|
-
|
|
427
|
-
}
|
|
428
|
-
else
|
|
429
|
-
{
|
|
430
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity 2: channelOrChannelGroupNames null, is channel group {1}", DateTime.Now.ToString(), isChannelGroup.ToString()), LoggingMethod.LevelInfo);
|
|
431
|
-
|
|
432
|
-
}
|
|
433
|
-
|
|
434
|
-
return channelEntities;
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
internal static IEnumerable<string> GetDuplicates(string[]
|
|
438
|
-
rawChannels)
|
|
439
|
-
{
|
|
440
|
-
var results = from string a in rawChannels
|
|
441
|
-
group a by a into g
|
|
442
|
-
where g.Count() > 1
|
|
443
|
-
select g;
|
|
444
|
-
foreach (var group in results)
|
|
445
|
-
foreach (var item in group)
|
|
446
|
-
yield return item;
|
|
447
|
-
}
|
|
448
|
-
|
|
449
|
-
[System.Diagnostics.Conditional("SPEW_ALL")]
|
|
450
|
-
[System.Diagnostics.Conditional("SPEW_NOTIFICATION")]
|
|
451
|
-
internal static void LogChannelEntitiesDictionary(Subscription subscription)
|
|
452
|
-
{
|
|
453
|
-
StringBuilder sbLogs = new StringBuilder();
|
|
454
|
-
foreach (var ci in subscription.ChannelEntitiesDictionary)
|
|
455
|
-
{
|
|
456
|
-
sbLogs.AppendFormat("\nChannelEntitiesDictionary \nChannelOrChannelGroupName:{0} \nIsChannelGroup:{1} \nIsPresenceChannel:{2}\n",
|
|
457
|
-
ci.Key.ChannelOrChannelGroupName, ci.Key.IsChannelGroup.ToString(), ci.Key.IsPresenceChannel.ToString()
|
|
458
|
-
);
|
|
459
|
-
}
|
|
460
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, LogChannelEntitiesDictionary: Count: {2} \n{1}",
|
|
461
|
-
DateTime.Now.ToString(), sbLogs.ToString(), subscription.ChannelEntitiesDictionary.Count), LoggingMethod.LevelInfo);
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
internal static bool CreateChannelEntityAndAddToSubscribe<T>(ResponseType type, string[] rawChannels,
|
|
465
|
-
bool isChannelGroup,
|
|
466
|
-
Action<T> userCallback, Action<T> connectCallback, Action<PubnubClientError> errorCallback,
|
|
467
|
-
Action<T> wildcardPresenceCallback, Action<T> disconnectCallback,
|
|
468
|
-
PubnubErrorFilter.Level errorLevel, bool unsubscribeCheck, ref List<ChannelEntity> channelEntities, IDependencyProvider provider
|
|
469
|
-
)
|
|
470
|
-
{
|
|
471
|
-
bool bReturn = false;
|
|
472
|
-
for (int index = 0; index < rawChannels.Length; index++)
|
|
473
|
-
{
|
|
474
|
-
string channelName = rawChannels[index].Trim();
|
|
475
|
-
|
|
476
|
-
if (channelName.Length > 0)
|
|
477
|
-
{
|
|
478
|
-
if ((type == ResponseType.PresenceV2)
|
|
479
|
-
|| (type == ResponseType.PresenceUnsubscribe))
|
|
480
|
-
{
|
|
481
|
-
channelName = string.Format("{0}{1}", channelName, Utility.PresenceChannelSuffix);
|
|
482
|
-
}
|
|
483
|
-
|
|
484
|
-
Helpers.LogChannelEntitiesDictionary(Subscription.GetSubscription(provider));
|
|
485
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1}", DateTime.Now.ToString(), channelName), LoggingMethod.LevelInfo);
|
|
486
|
-
|
|
487
|
-
//create channelEntity
|
|
488
|
-
ChannelEntity ce = Helpers.CreateChannelEntity(channelName, true, isChannelGroup, null,
|
|
489
|
-
userCallback, connectCallback, errorCallback, disconnectCallback, wildcardPresenceCallback);
|
|
490
|
-
|
|
491
|
-
bool channelIsSubscribed = false;
|
|
492
|
-
if (Subscription.GetSubscription(provider).ChannelEntitiesDictionary.ContainsKey(ce.ChannelID))
|
|
493
|
-
{
|
|
494
|
-
channelIsSubscribed = Subscription.GetSubscription(provider).ChannelEntitiesDictionary[ce.ChannelID].IsSubscribed;
|
|
495
|
-
}
|
|
496
|
-
|
|
497
|
-
if (unsubscribeCheck)
|
|
498
|
-
{
|
|
499
|
-
if (!channelIsSubscribed)
|
|
500
|
-
{
|
|
501
|
-
string message = string.Format("{0}Channel Not Subscribed", (ce.ChannelID.IsPresenceChannel) ? "Presence " : "");
|
|
502
|
-
PubnubErrorCode errorType = (ce.ChannelID.IsPresenceChannel) ? PubnubErrorCode.NotPresenceSubscribed : PubnubErrorCode.NotSubscribed;
|
|
503
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1} response={2}", DateTime.Now.ToString(), channelName, message), LoggingMethod.LevelInfo);
|
|
504
|
-
PubnubCallbacks.CallErrorCallback<T>(ce, message,
|
|
505
|
-
errorType, PubnubErrorSeverity.Info, errorLevel);
|
|
506
|
-
}
|
|
507
|
-
else
|
|
508
|
-
{
|
|
509
|
-
channelEntities.Add(ce);
|
|
510
|
-
bReturn = true;
|
|
511
|
-
}
|
|
512
|
-
}
|
|
513
|
-
else
|
|
514
|
-
{
|
|
515
|
-
if (channelIsSubscribed)
|
|
516
|
-
{
|
|
517
|
-
string message = string.Format("{0}Already subscribed", (ce.ChannelID.IsPresenceChannel) ? "Presence " : "");
|
|
518
|
-
PubnubErrorCode errorType = (ce.ChannelID.IsPresenceChannel) ? PubnubErrorCode.AlreadyPresenceSubscribed : PubnubErrorCode.AlreadySubscribed;
|
|
519
|
-
PubnubCallbacks.CallErrorCallback<T>(ce, message,
|
|
520
|
-
errorType, PubnubErrorSeverity.Info, errorLevel);
|
|
521
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1} response={2}", DateTime.Now.ToString(), channelName, message), LoggingMethod.LevelInfo);
|
|
522
|
-
|
|
523
|
-
}
|
|
524
|
-
else
|
|
525
|
-
{
|
|
526
|
-
channelEntities.Add(ce);
|
|
527
|
-
bReturn = true;
|
|
528
|
-
}
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
else
|
|
532
|
-
{
|
|
533
|
-
string message = "Invalid Channel Name";
|
|
534
|
-
if (isChannelGroup)
|
|
535
|
-
{
|
|
536
|
-
message = "Invalid Channel Group Name";
|
|
537
|
-
}
|
|
538
|
-
|
|
539
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1} response={2}", DateTime.Now.ToString(), channelName, message),
|
|
540
|
-
LoggingMethod.LevelInfo);
|
|
541
|
-
|
|
542
|
-
}
|
|
543
|
-
}
|
|
544
|
-
return bReturn;
|
|
545
|
-
}
|
|
546
|
-
|
|
547
|
-
internal static bool RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon<T>(ResponseType type,
|
|
548
|
-
Action<T> userCallback, Action<T> connectCallback, Action<PubnubClientError> errorCallback,
|
|
549
|
-
Action<T> wildcardPresenceCallback, Action<T> disconnectCallback,
|
|
550
|
-
string[] channelsOrChannelGroups, bool isChannelGroup,
|
|
551
|
-
PubnubErrorFilter.Level errorLevel, bool unsubscribeCheck, ref List<ChannelEntity> channelEntities,
|
|
552
|
-
IDependencyProvider provider)
|
|
553
|
-
{
|
|
554
|
-
bool bReturn = false;
|
|
555
|
-
if (channelsOrChannelGroups.Length > 0)
|
|
556
|
-
{
|
|
557
|
-
|
|
558
|
-
channelsOrChannelGroups = channelsOrChannelGroups.Where(x => !string.IsNullOrEmpty(x)).ToArray();
|
|
559
|
-
|
|
560
|
-
if (channelsOrChannelGroups.Length != channelsOrChannelGroups.Distinct().Count())
|
|
561
|
-
{
|
|
562
|
-
channelsOrChannelGroups = channelsOrChannelGroups.Distinct().ToArray();
|
|
563
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: distinct channelsOrChannelGroups len={1}, channelsOrChannelGroups = {2}",
|
|
564
|
-
DateTime.Now.ToString(), channelsOrChannelGroups.Length, string.Join(",", channelsOrChannelGroups)),
|
|
565
|
-
LoggingMethod.LevelInfo);
|
|
566
|
-
|
|
567
|
-
string channel = string.Join(",", GetDuplicates(channelsOrChannelGroups).Distinct<string>().ToArray<string>());
|
|
568
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: duplicates channelsOrChannelGroups {1}",
|
|
569
|
-
DateTime.Now.ToString(), channel),
|
|
570
|
-
LoggingMethod.LevelInfo);
|
|
571
|
-
|
|
572
|
-
string message = string.Format("Detected and removed duplicate channels {0}", channel);
|
|
573
|
-
|
|
574
|
-
PubnubCallbacks.CallErrorCallback<T>(message, errorCallback, PubnubErrorCode.DuplicateChannel,
|
|
575
|
-
PubnubErrorSeverity.Info, errorLevel);
|
|
576
|
-
}
|
|
577
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: channelsOrChannelGroups len={1}, channelsOrChannelGroups = {2}",
|
|
578
|
-
DateTime.Now.ToString(), channelsOrChannelGroups.Length, string.Join(",", channelsOrChannelGroups)),
|
|
579
|
-
LoggingMethod.LevelInfo);
|
|
580
|
-
|
|
581
|
-
bReturn = CreateChannelEntityAndAddToSubscribe<T>(type, channelsOrChannelGroups, isChannelGroup,
|
|
582
|
-
userCallback, connectCallback, errorCallback, wildcardPresenceCallback, disconnectCallback, errorLevel, unsubscribeCheck, ref channelEntities, provider);
|
|
583
|
-
}
|
|
584
|
-
else
|
|
585
|
-
{
|
|
586
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: channelsOrChannelGroups len <=0",
|
|
587
|
-
DateTime.Now.ToString()),
|
|
588
|
-
LoggingMethod.LevelInfo);
|
|
589
|
-
|
|
590
|
-
}
|
|
591
|
-
return bReturn;
|
|
592
|
-
}
|
|
593
|
-
|
|
594
|
-
internal static bool RemoveDuplicatesCheckAlreadySubscribedAndGetChannels<T>(ResponseType type,
|
|
595
|
-
Action<T> userCallback, Action<T> connectCallback, Action<PubnubClientError> errorCallback,
|
|
596
|
-
Action<T> wildcardPresenceCallback, Action<T> disconnectCallback,
|
|
597
|
-
string[] rawChannels, string[] rawChannelGroups,
|
|
598
|
-
PubnubErrorFilter.Level errorLevel, bool unsubscribeCheck, out List<ChannelEntity> channelEntities,
|
|
599
|
-
IDependencyProvider provider)
|
|
600
|
-
{
|
|
601
|
-
bool bReturn = false;
|
|
602
|
-
bool channelAdded = false;
|
|
603
|
-
bool channelGroupAdded = false;
|
|
604
|
-
channelEntities = new List<ChannelEntity>();
|
|
605
|
-
if (rawChannels != null && rawChannels.Length > 0)
|
|
606
|
-
{
|
|
607
|
-
channelAdded = RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon<T>(type, userCallback, connectCallback, errorCallback,
|
|
608
|
-
wildcardPresenceCallback, disconnectCallback, rawChannels, false, errorLevel, unsubscribeCheck, ref channelEntities, provider
|
|
609
|
-
);
|
|
610
|
-
}
|
|
611
|
-
|
|
612
|
-
if (rawChannelGroups != null && rawChannelGroups.Length > 0)
|
|
613
|
-
{
|
|
614
|
-
channelGroupAdded = RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon<T>(type, userCallback, connectCallback, errorCallback,
|
|
615
|
-
wildcardPresenceCallback, disconnectCallback, rawChannelGroups, true, errorLevel, unsubscribeCheck, ref channelEntities, provider
|
|
616
|
-
);
|
|
617
|
-
}
|
|
618
|
-
|
|
619
|
-
bReturn = channelAdded | channelGroupAdded;
|
|
620
|
-
|
|
621
|
-
return bReturn;
|
|
622
|
-
}
|
|
623
|
-
|
|
624
|
-
internal static void ProcessResponseCallbacksV2<T>(ref SubscribeEnvelope resultSubscribeEnvelope, RequestState<T> asynchRequestState,
|
|
625
|
-
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary, IDependencyProvider provider)
|
|
626
|
-
{
|
|
627
|
-
|
|
628
|
-
if (resultSubscribeEnvelope != null)
|
|
629
|
-
{
|
|
630
|
-
Helpers.ResponseToConnectCallback<T>(asynchRequestState, jsonPluggableLibrary, provider);
|
|
631
|
-
if (resultSubscribeEnvelope.Messages != null)
|
|
632
|
-
{
|
|
633
|
-
ResponseToUserCallbackForSubscribeV2<T>(resultSubscribeEnvelope.Messages, asynchRequestState.ChannelEntities,
|
|
634
|
-
cipherKey, jsonPluggableLibrary);
|
|
635
|
-
}
|
|
636
|
-
else
|
|
637
|
-
{
|
|
638
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, ProcessResponseCallbacksV2: resultSubscribeEnvelope.Messages null",
|
|
639
|
-
DateTime.Now.ToString()), LoggingMethod.LevelError);
|
|
640
|
-
}
|
|
641
|
-
|
|
642
|
-
}
|
|
643
|
-
}
|
|
644
|
-
|
|
645
|
-
internal static void ProcessResponseCallbacks<T>(ref List<object> result, RequestState<T> asynchRequestState,
|
|
646
|
-
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
647
|
-
{
|
|
648
|
-
if (result != null && result.Count >= 1)
|
|
649
|
-
{
|
|
650
|
-
Helpers.ResponseToUserCallback<T>(result, asynchRequestState, cipherKey, jsonPluggableLibrary);
|
|
651
|
-
}
|
|
652
|
-
}
|
|
653
|
-
#endregion
|
|
654
|
-
|
|
655
|
-
#region "Encoding and Crypto"
|
|
656
|
-
|
|
657
|
-
internal static string JsonEncodePublishMsg(object originalMessage, string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
658
|
-
{
|
|
659
|
-
string message = jsonPluggableLibrary.SerializeToJsonString(originalMessage);
|
|
660
|
-
|
|
661
|
-
if (cipherKey.Length > 0)
|
|
662
|
-
{
|
|
663
|
-
PubnubCrypto aes = new PubnubCrypto(cipherKey);
|
|
664
|
-
string encryptMessage = aes.Encrypt(message);
|
|
665
|
-
message = jsonPluggableLibrary.SerializeToJsonString(encryptMessage);
|
|
666
|
-
}
|
|
667
|
-
|
|
668
|
-
return message;
|
|
669
|
-
}
|
|
670
|
-
|
|
671
|
-
internal static object DecodeMessage(PubnubCrypto aes, object element, List<ChannelEntity> channelEntities,
|
|
672
|
-
IJsonPluggableLibrary jsonPluggableLibrary,
|
|
673
|
-
PubnubErrorFilter.Level errorLevel)
|
|
674
|
-
{
|
|
675
|
-
string decryptMessage = "";
|
|
676
|
-
try
|
|
677
|
-
{
|
|
678
|
-
decryptMessage = aes.Decrypt(element.ToString());
|
|
679
|
-
}
|
|
680
|
-
catch (Exception ex)
|
|
681
|
-
{
|
|
682
|
-
decryptMessage = "**DECRYPT ERROR**";
|
|
683
|
-
PubnubCallbacks.CallErrorCallback<object>(ex, channelEntities, PubnubErrorCode.None,
|
|
684
|
-
PubnubErrorSeverity.Critical, errorLevel);
|
|
685
|
-
}
|
|
686
|
-
object decodeMessage = (decryptMessage == "**DECRYPT ERROR**") ? decryptMessage : jsonPluggableLibrary.DeserializeToObject(decryptMessage);
|
|
687
|
-
return decodeMessage;
|
|
688
|
-
}
|
|
689
|
-
|
|
690
|
-
internal static List<object> DecryptCipheredMessage(List<object> message, List<ChannelEntity> channelEntities,
|
|
691
|
-
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary,
|
|
692
|
-
PubnubErrorFilter.Level errorLevel)
|
|
693
|
-
{
|
|
694
|
-
List<object> returnMessage = new List<object>();
|
|
695
|
-
|
|
696
|
-
PubnubCrypto aes = new PubnubCrypto(cipherKey);
|
|
697
|
-
var myObjectArray = (from item in message
|
|
698
|
-
select item as object).ToArray();
|
|
699
|
-
IEnumerable enumerable = myObjectArray[0] as IEnumerable;
|
|
700
|
-
|
|
701
|
-
if (enumerable != null)
|
|
702
|
-
{
|
|
703
|
-
List<object> receivedMsg = new List<object>();
|
|
704
|
-
foreach (object element in enumerable)
|
|
705
|
-
{
|
|
706
|
-
receivedMsg.Add(DecodeMessage(aes, element, channelEntities, jsonPluggableLibrary, errorLevel));
|
|
707
|
-
}
|
|
708
|
-
returnMessage.Add(receivedMsg);
|
|
709
|
-
}
|
|
710
|
-
for (int index = 1; index < myObjectArray.Length; index++)
|
|
711
|
-
{
|
|
712
|
-
returnMessage.Add(myObjectArray[index]);
|
|
713
|
-
}
|
|
714
|
-
return returnMessage;
|
|
715
|
-
}
|
|
716
|
-
|
|
717
|
-
internal static List<object> DecryptNonCipheredMessage(List<object> message)
|
|
718
|
-
{
|
|
719
|
-
List<object> returnMessage = new List<object>();
|
|
720
|
-
var myObjectArray = (from item in message
|
|
721
|
-
select item as object).ToArray();
|
|
722
|
-
IEnumerable enumerable = myObjectArray[0] as IEnumerable;
|
|
723
|
-
if (enumerable != null)
|
|
724
|
-
{
|
|
725
|
-
List<object> receivedMessage = new List<object>();
|
|
726
|
-
foreach (object element in enumerable)
|
|
727
|
-
{
|
|
728
|
-
receivedMessage.Add(element);
|
|
729
|
-
}
|
|
730
|
-
returnMessage.Add(receivedMessage);
|
|
731
|
-
}
|
|
732
|
-
for (int index = 1; index < myObjectArray.Length; index++)
|
|
733
|
-
{
|
|
734
|
-
returnMessage.Add(myObjectArray[index]);
|
|
735
|
-
}
|
|
736
|
-
return returnMessage;
|
|
737
|
-
}
|
|
738
|
-
|
|
739
|
-
internal static List<object> DecodeDecryptLoop(List<object> message, List<ChannelEntity> channelEntities,
|
|
740
|
-
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary,
|
|
741
|
-
PubnubErrorFilter.Level errorLevel)
|
|
742
|
-
{
|
|
743
|
-
if (cipherKey.Length > 0)
|
|
744
|
-
{
|
|
745
|
-
return DecryptCipheredMessage(message, channelEntities, cipherKey, jsonPluggableLibrary, errorLevel);
|
|
746
|
-
}
|
|
747
|
-
else
|
|
748
|
-
{
|
|
749
|
-
return DecryptNonCipheredMessage(message);
|
|
750
|
-
}
|
|
751
|
-
}
|
|
752
|
-
|
|
753
|
-
#endregion
|
|
754
|
-
|
|
755
|
-
#region "Other Methods"
|
|
756
|
-
|
|
757
|
-
internal static void CheckSubscribedChannelsAndSendCallbacks<T>(List<ChannelEntity> channelEntities,
|
|
758
|
-
ResponseType type, int pubnubNetworkCheckRetries, PubnubErrorFilter.Level errorLevel)
|
|
759
|
-
{
|
|
760
|
-
if (channelEntities != null && channelEntities.Count > 0)
|
|
761
|
-
{
|
|
762
|
-
foreach (ChannelEntity channelEntity in channelEntities)
|
|
763
|
-
{
|
|
764
|
-
string message = string.Format("Unsubscribed after {0} failed retries", pubnubNetworkCheckRetries); ;
|
|
765
|
-
PubnubErrorCode pnErrorCode = PubnubErrorCode.UnsubscribedAfterMaxRetries;
|
|
766
|
-
|
|
767
|
-
if (channelEntity.ChannelID.IsPresenceChannel)
|
|
768
|
-
{
|
|
769
|
-
message = string.Format("Presence Unsubscribed after {0} failed retries", pubnubNetworkCheckRetries);
|
|
770
|
-
pnErrorCode = PubnubErrorCode.PresenceUnsubscribedAfterMaxRetries;
|
|
771
|
-
}
|
|
772
|
-
|
|
773
|
-
//TODO: Recheck
|
|
774
|
-
PubnubClientError error = Helpers.CreatePubnubClientError<T>(message, null, channelEntities, pnErrorCode,
|
|
775
|
-
PubnubErrorSeverity.Critical);
|
|
776
|
-
|
|
777
|
-
PubnubCallbacks.FireErrorCallback<T>(channelEntity,
|
|
778
|
-
errorLevel, error);
|
|
779
|
-
|
|
780
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CheckSubscribedChannelsAndSendCallbacks: {1} Subscribe JSON network error response={2}",
|
|
781
|
-
DateTime.Now.ToString(), (channelEntity.ChannelID.IsPresenceChannel) ? "Presence" : "", message), LoggingMethod.LevelInfo);
|
|
782
|
-
|
|
783
|
-
}
|
|
784
|
-
}
|
|
785
|
-
}
|
|
786
|
-
|
|
787
|
-
public static void WrapResultBasedOnResponseType<T>(RequestState<T> pubnubRequestState, string jsonString,
|
|
788
|
-
IJsonPluggableLibrary jsonPluggableLibrary, PubnubErrorFilter.Level errorLevel, string cipherKey, ref List<object> result)
|
|
789
|
-
{
|
|
790
|
-
try
|
|
791
|
-
{
|
|
792
|
-
string multiChannel = Helpers.GetNamesFromChannelEntities(pubnubRequestState.ChannelEntities, false);
|
|
793
|
-
string multiChannelGroup = Helpers.GetNamesFromChannelEntities(pubnubRequestState.ChannelEntities, true);
|
|
794
|
-
if (!string.IsNullOrEmpty(jsonString))
|
|
795
|
-
{
|
|
796
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, WrapResultBasedOnResponseType: jsonString = {1}", DateTime.Now.ToString(), jsonString), LoggingMethod.LevelInfo);
|
|
797
|
-
object deSerializedResult = jsonPluggableLibrary.DeserializeToObject(jsonString);
|
|
798
|
-
List<object> result1 = ((IEnumerable)deSerializedResult).Cast<object>().ToList();
|
|
799
|
-
|
|
800
|
-
if (result1 != null && result1.Count > 0)
|
|
801
|
-
{
|
|
802
|
-
result = result1;
|
|
803
|
-
}
|
|
804
|
-
|
|
805
|
-
switch (pubnubRequestState.RespType)
|
|
806
|
-
{
|
|
807
|
-
case ResponseType.DetailedHistory:
|
|
808
|
-
result = DecodeDecryptLoop(result, pubnubRequestState.ChannelEntities, cipherKey, jsonPluggableLibrary, errorLevel);
|
|
809
|
-
result.Add(multiChannel);
|
|
810
|
-
break;
|
|
811
|
-
case ResponseType.Time:
|
|
812
|
-
Int64[] c = deSerializedResult as Int64[];
|
|
813
|
-
if ((c != null) && (c.Length > 0))
|
|
814
|
-
{
|
|
815
|
-
result = new List<object>();
|
|
816
|
-
result.Add(c[0]);
|
|
817
|
-
}
|
|
818
|
-
break;
|
|
819
|
-
case ResponseType.Leave:
|
|
820
|
-
if (!string.IsNullOrEmpty(multiChannelGroup))
|
|
821
|
-
{
|
|
822
|
-
result.Add(multiChannelGroup);
|
|
823
|
-
}
|
|
824
|
-
if (!string.IsNullOrEmpty(multiChannel))
|
|
825
|
-
{
|
|
826
|
-
result.Add(multiChannel);
|
|
827
|
-
}
|
|
828
|
-
break;
|
|
829
|
-
case ResponseType.SubscribeV2:
|
|
830
|
-
case ResponseType.PresenceV2:
|
|
831
|
-
break;
|
|
832
|
-
case ResponseType.Publish:
|
|
833
|
-
case ResponseType.PushRegister:
|
|
834
|
-
case ResponseType.PushRemove:
|
|
835
|
-
case ResponseType.PushGet:
|
|
836
|
-
case ResponseType.PushUnregister:
|
|
837
|
-
result.Add(multiChannel);
|
|
838
|
-
break;
|
|
839
|
-
case ResponseType.GrantAccess:
|
|
840
|
-
case ResponseType.AuditAccess:
|
|
841
|
-
case ResponseType.RevokeAccess:
|
|
842
|
-
case ResponseType.GetUserState:
|
|
843
|
-
case ResponseType.SetUserState:
|
|
844
|
-
case ResponseType.WhereNow:
|
|
845
|
-
case ResponseType.HereNow:
|
|
846
|
-
result = DeserializeAndAddToResult(jsonString, multiChannel, jsonPluggableLibrary, true);
|
|
847
|
-
break;
|
|
848
|
-
case ResponseType.GlobalHereNow:
|
|
849
|
-
result = DeserializeAndAddToResult(jsonString, multiChannel, jsonPluggableLibrary, false);
|
|
850
|
-
break;
|
|
851
|
-
case ResponseType.ChannelGroupAdd:
|
|
852
|
-
case ResponseType.ChannelGroupRemove:
|
|
853
|
-
case ResponseType.ChannelGroupGet:
|
|
854
|
-
result = DeserializeAndAddToResult(jsonString, multiChannel, jsonPluggableLibrary, false);
|
|
855
|
-
|
|
856
|
-
break;
|
|
857
|
-
case ResponseType.ChannelGroupGrantAccess:
|
|
858
|
-
case ResponseType.ChannelGroupAuditAccess:
|
|
859
|
-
case ResponseType.ChannelGroupRevokeAccess:
|
|
860
|
-
result = DeserializeAndAddToResult(jsonString, "", jsonPluggableLibrary, false);
|
|
861
|
-
result.Add(multiChannelGroup);
|
|
862
|
-
break;
|
|
863
|
-
|
|
864
|
-
default:
|
|
865
|
-
break;
|
|
866
|
-
}
|
|
867
|
-
}
|
|
868
|
-
else
|
|
869
|
-
{
|
|
870
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, WrapResultBasedOnResponseType: json string null ", DateTime.Now.ToString()), LoggingMethod.LevelInfo);
|
|
871
|
-
}
|
|
872
|
-
}
|
|
873
|
-
catch (Exception ex)
|
|
874
|
-
{
|
|
875
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, WrapResultBasedOnResponseType: exception: {1} ", DateTime.Now.ToString(), ex.ToString()), LoggingMethod.LevelError);
|
|
876
|
-
ProcessWrapResultBasedOnResponseTypeException<T>(pubnubRequestState, errorLevel, ex);
|
|
877
|
-
}
|
|
878
|
-
}
|
|
879
|
-
|
|
880
|
-
internal static List<object> DeserializeAndAddToResult(string jsonString, string multiChannel,
|
|
881
|
-
IJsonPluggableLibrary jsonPluggableLibrary, bool addChannel)
|
|
882
|
-
{
|
|
883
|
-
IDictionary<string, object> dictionary = jsonPluggableLibrary.DeserializeToDictionaryOfObject(jsonString);
|
|
884
|
-
List<object> result = new List<object>();
|
|
885
|
-
result.Add(dictionary);
|
|
886
|
-
if (addChannel)
|
|
887
|
-
{
|
|
888
|
-
result.Add(multiChannel);
|
|
889
|
-
}
|
|
890
|
-
return result;
|
|
891
|
-
}
|
|
892
|
-
|
|
893
|
-
internal static void ProcessWrapResultBasedOnResponseTypeException<T>(RequestState<T> pubnubRequestState,
|
|
894
|
-
PubnubErrorFilter.Level errorLevel, Exception ex)
|
|
895
|
-
{
|
|
896
|
-
if (pubnubRequestState.ChannelEntities != null)
|
|
897
|
-
{
|
|
898
|
-
if (pubnubRequestState.RespType.Equals(ResponseType.SubscribeV2) || pubnubRequestState.RespType.Equals(ResponseType.PresenceV2)
|
|
899
|
-
)
|
|
900
|
-
{
|
|
901
|
-
PubnubCallbacks.FireErrorCallbacksForAllChannels<T>(ex, pubnubRequestState, PubnubErrorSeverity.Critical,
|
|
902
|
-
PubnubErrorCode.None, errorLevel);
|
|
903
|
-
}
|
|
904
|
-
else
|
|
905
|
-
{
|
|
906
|
-
PubnubCallbacks.FireErrorCallbacksForAllChannels<T>(ex, pubnubRequestState, PubnubErrorSeverity.Critical,
|
|
907
|
-
PubnubErrorCode.None, errorLevel);
|
|
908
|
-
}
|
|
909
|
-
}
|
|
910
|
-
}
|
|
911
|
-
|
|
912
|
-
internal static void CreatePNMessageResult(SubscribeMessage subscribeMessage, out PNMessageResult messageResult)
|
|
913
|
-
{
|
|
914
|
-
long timetoken = (subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Timetoken : 0;
|
|
915
|
-
messageResult = new PNMessageResult(
|
|
916
|
-
subscribeMessage.SubscriptionMatch,
|
|
917
|
-
subscribeMessage.Channel,
|
|
918
|
-
subscribeMessage.Payload,
|
|
919
|
-
timetoken,
|
|
920
|
-
subscribeMessage.UserMetadata);
|
|
921
|
-
}
|
|
922
|
-
|
|
923
|
-
internal static void AddMessageToListV2(string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary,
|
|
924
|
-
SubscribeMessage subscribeMessage, ChannelEntity ce, out List<object> itemMessage)
|
|
925
|
-
{
|
|
926
|
-
itemMessage = new List<object>();
|
|
927
|
-
if (ce.ChannelID.IsPresenceChannel)
|
|
928
|
-
{
|
|
929
|
-
itemMessage.Add(subscribeMessage.Payload);
|
|
930
|
-
}
|
|
931
|
-
else
|
|
932
|
-
{
|
|
933
|
-
//decrypt the subscriber message if cipherkey is available
|
|
934
|
-
if (cipherKey.Length > 0)
|
|
935
|
-
{
|
|
936
|
-
object decodeMessage;
|
|
937
|
-
try
|
|
938
|
-
{
|
|
939
|
-
PubnubCrypto aes = new PubnubCrypto(cipherKey);
|
|
940
|
-
string decryptMessage = aes.Decrypt(subscribeMessage.Payload.ToString());
|
|
941
|
-
decodeMessage = (decryptMessage == "**DECRYPT ERROR**") ? decryptMessage : jsonPluggableLibrary.DeserializeToObject(decryptMessage);
|
|
942
|
-
}
|
|
943
|
-
catch (Exception decryptEx)
|
|
944
|
-
{
|
|
945
|
-
decodeMessage = subscribeMessage.Payload;
|
|
946
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, AddMessageToListV2: decodeMessage Exception: {1}", DateTime.Now.ToString(), decryptEx.ToString()), LoggingMethod.LevelError);
|
|
947
|
-
|
|
948
|
-
}
|
|
949
|
-
itemMessage.Add(decodeMessage);
|
|
950
|
-
}
|
|
951
|
-
else
|
|
952
|
-
{
|
|
953
|
-
itemMessage.Add(subscribeMessage.Payload);
|
|
954
|
-
}
|
|
955
|
-
}
|
|
956
|
-
itemMessage.Add((subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Timetoken.ToString() : "");
|
|
957
|
-
if (ce.ChannelID.IsChannelGroup)
|
|
958
|
-
{
|
|
959
|
-
itemMessage.Add(ce.ChannelID.ChannelOrChannelGroupName.Replace(Utility.PresenceChannelSuffix, ""));
|
|
960
|
-
}
|
|
961
|
-
|
|
962
|
-
itemMessage.Add(subscribeMessage.Channel.Replace(Utility.PresenceChannelSuffix, ""));
|
|
963
|
-
}
|
|
964
|
-
|
|
965
|
-
internal static void FindChannelEntityAndCallback<T>(SubscribeMessage subscribeMessage, List<ChannelEntity> channelEntities,
|
|
966
|
-
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary, ChannelIdentity ci)
|
|
967
|
-
{
|
|
968
|
-
ChannelEntity ce = channelEntities.Find(x => x.ChannelID.Equals(ci));
|
|
969
|
-
if (ce != null)
|
|
970
|
-
{
|
|
971
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, FindChannelEntityAndCallback: \n ChannelEntity : {1} cg?={2} ispres?={3}", DateTime.Now.ToString(),
|
|
972
|
-
ce.ChannelID.ChannelOrChannelGroupName, ce.ChannelID.IsChannelGroup.ToString(),
|
|
973
|
-
ce.ChannelID.IsPresenceChannel.ToString()
|
|
974
|
-
), LoggingMethod.LevelInfo);
|
|
975
|
-
|
|
976
|
-
List<object> itemMessage;
|
|
977
|
-
AddMessageToListV2(cipherKey, jsonPluggableLibrary, subscribeMessage, ce, out itemMessage);
|
|
978
|
-
PubnubChannelCallback<T> channelCallbacks = ce.ChannelParams.Callbacks as PubnubChannelCallback<T>;
|
|
979
|
-
|
|
980
|
-
if ((subscribeMessage.SubscriptionMatch.Contains(".*")) && Utility.IsPresenceChannel(subscribeMessage.Channel))
|
|
981
|
-
{
|
|
982
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, FindChannelEntityAndCallback: Wildcard match ChannelEntity : {1} ", DateTime.Now.ToString(),
|
|
983
|
-
ce.ChannelID.ChannelOrChannelGroupName
|
|
984
|
-
), LoggingMethod.LevelInfo);
|
|
985
|
-
|
|
986
|
-
PubnubCallbacks.GoToCallback<T>(itemMessage, channelCallbacks.WildcardPresenceCallback, jsonPluggableLibrary);
|
|
987
|
-
}
|
|
988
|
-
else
|
|
989
|
-
{
|
|
990
|
-
PubnubCallbacks.GoToCallback<T>(itemMessage, channelCallbacks.SuccessCallback, jsonPluggableLibrary);
|
|
991
|
-
}
|
|
992
|
-
}
|
|
993
|
-
#if (ENABLE_PUBNUB_LOGGING)
|
|
994
|
-
else {
|
|
995
|
-
StringBuilder sbChannelEntity = new StringBuilder();
|
|
996
|
-
foreach( ChannelEntity channelEntity in channelEntities){
|
|
997
|
-
sbChannelEntity.AppendFormat("ChannelEntity : {0} cg?={1} ispres?={2}", channelEntity.ChannelID.ChannelOrChannelGroupName,
|
|
998
|
-
channelEntity.ChannelID.IsChannelGroup.ToString(),
|
|
999
|
-
channelEntity.ChannelID.IsPresenceChannel.ToString()
|
|
1000
|
-
);
|
|
1001
|
-
}
|
|
1002
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, FindChannelEntityAndCallback: ChannelEntity : null ci.name {1} \nChannelEntities: \n {2}", DateTime.Now.ToString(),
|
|
1003
|
-
ci.ChannelOrChannelGroupName, sbChannelEntity.ToString()), LoggingMethod.LevelInfo);
|
|
1004
|
-
}
|
|
1005
|
-
#endif
|
|
1006
|
-
|
|
1007
|
-
}
|
|
1008
|
-
|
|
1009
|
-
internal static void ResponseToUserCallbackForSubscribeV2<T>(List<SubscribeMessage> subscribeMessages, List<ChannelEntity> channelEntities,
|
|
1010
|
-
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
1011
|
-
{
|
|
1012
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, In ResponseToUserCallbackForSubscribeV2", DateTime.Now.ToString()
|
|
1013
|
-
), LoggingMethod.LevelInfo);
|
|
1014
|
-
|
|
1015
|
-
foreach (SubscribeMessage subscribeMessage in subscribeMessages)
|
|
1016
|
-
{
|
|
1017
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, ResponseToUserCallbackForSubscribeV2:\n SubscribeMessage:\n" +
|
|
1018
|
-
"shard : {1},\n" +
|
|
1019
|
-
"subscriptionMatch: {2},\n" +
|
|
1020
|
-
"channel: {3},\n" +
|
|
1021
|
-
"payload: {4},\n" +
|
|
1022
|
-
"flags: {5},\n" +
|
|
1023
|
-
"issuingClientId: {6},\n" +
|
|
1024
|
-
"subscribeKey: {7},\n" +
|
|
1025
|
-
"sequenceNumber: {8},\n" +
|
|
1026
|
-
"originatingTimetoken tt: {9},\n" +
|
|
1027
|
-
"originatingTimetoken region: {10},\n" +
|
|
1028
|
-
"publishMetadata tt: {11},\n" +
|
|
1029
|
-
"publishMetadata region: {12},\n" +
|
|
1030
|
-
"userMetadata {13} \n",
|
|
1031
|
-
DateTime.Now.ToString(),
|
|
1032
|
-
subscribeMessage.Shard,
|
|
1033
|
-
subscribeMessage.SubscriptionMatch,
|
|
1034
|
-
subscribeMessage.Channel,
|
|
1035
|
-
subscribeMessage.Payload.ToString(),
|
|
1036
|
-
subscribeMessage.Flags,
|
|
1037
|
-
subscribeMessage.IssuingClientId,
|
|
1038
|
-
subscribeMessage.SubscribeKey,
|
|
1039
|
-
subscribeMessage.SequenceNumber,
|
|
1040
|
-
(subscribeMessage.OriginatingTimetoken != null) ? subscribeMessage.OriginatingTimetoken.Timetoken.ToString() : "",
|
|
1041
|
-
(subscribeMessage.OriginatingTimetoken != null) ? subscribeMessage.OriginatingTimetoken.Region : "",
|
|
1042
|
-
(subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Timetoken.ToString() : "",
|
|
1043
|
-
(subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Region : "",
|
|
1044
|
-
(subscribeMessage.UserMetadata != null) ? subscribeMessage.UserMetadata.ToString() : "null"),
|
|
1045
|
-
LoggingMethod.LevelInfo);
|
|
1046
|
-
|
|
1047
|
-
bool isPresenceChannel = Utility.IsPresenceChannel(subscribeMessage.Channel);
|
|
1048
|
-
if (string.IsNullOrEmpty(subscribeMessage.SubscriptionMatch) || subscribeMessage.Channel.Equals(subscribeMessage.SubscriptionMatch))
|
|
1049
|
-
{
|
|
1050
|
-
//channel
|
|
1051
|
-
|
|
1052
|
-
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.Channel, false, isPresenceChannel);
|
|
1053
|
-
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1054
|
-
}
|
|
1055
|
-
else if (subscribeMessage.SubscriptionMatch.Contains(".*") && isPresenceChannel)
|
|
1056
|
-
{
|
|
1057
|
-
//wildcard presence channel
|
|
1058
|
-
|
|
1059
|
-
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.SubscriptionMatch, false, false);
|
|
1060
|
-
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1061
|
-
}
|
|
1062
|
-
else if (subscribeMessage.SubscriptionMatch.Contains(".*"))
|
|
1063
|
-
{
|
|
1064
|
-
//wildcard channel
|
|
1065
|
-
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.SubscriptionMatch, false, isPresenceChannel);
|
|
1066
|
-
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1067
|
-
|
|
1068
|
-
}
|
|
1069
|
-
else
|
|
1070
|
-
{
|
|
1071
|
-
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.SubscriptionMatch, true, isPresenceChannel);
|
|
1072
|
-
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1073
|
-
|
|
1074
|
-
//ce will be the cg and subscriptionMatch will have the cg name
|
|
1075
|
-
}
|
|
1076
|
-
|
|
1077
|
-
}
|
|
1078
|
-
}
|
|
1079
|
-
|
|
1080
|
-
internal static void ResponseToUserCallback<T>(List<object> result, RequestState<T> asynchRequestState, string cipherKey,
|
|
1081
|
-
IJsonPluggableLibrary jsonPluggableLibrary)
|
|
1082
|
-
{
|
|
1083
|
-
switch (asynchRequestState.RespType)
|
|
1084
|
-
{
|
|
1085
|
-
case ResponseType.Leave:
|
|
1086
|
-
//No response to callback
|
|
1087
|
-
break;
|
|
1088
|
-
case ResponseType.Publish:
|
|
1089
|
-
case ResponseType.DetailedHistory:
|
|
1090
|
-
case ResponseType.HereNow:
|
|
1091
|
-
case ResponseType.GlobalHereNow:
|
|
1092
|
-
case ResponseType.WhereNow:
|
|
1093
|
-
case ResponseType.GrantAccess:
|
|
1094
|
-
case ResponseType.AuditAccess:
|
|
1095
|
-
case ResponseType.RevokeAccess:
|
|
1096
|
-
case ResponseType.GetUserState:
|
|
1097
|
-
case ResponseType.SetUserState:
|
|
1098
|
-
case ResponseType.Time:
|
|
1099
|
-
case ResponseType.PushRegister:
|
|
1100
|
-
case ResponseType.PushRemove:
|
|
1101
|
-
case ResponseType.PushGet:
|
|
1102
|
-
case ResponseType.PushUnregister:
|
|
1103
|
-
case ResponseType.ChannelGroupAdd:
|
|
1104
|
-
case ResponseType.ChannelGroupRemove:
|
|
1105
|
-
case ResponseType.ChannelGroupGet:
|
|
1106
|
-
case ResponseType.ChannelGroupGrantAccess:
|
|
1107
|
-
case ResponseType.ChannelGroupAuditAccess:
|
|
1108
|
-
case ResponseType.ChannelGroupRevokeAccess:
|
|
1109
|
-
|
|
1110
|
-
PubnubCallbacks.SendCallbacks<T>(jsonPluggableLibrary, asynchRequestState, result, CallbackType.Success, false);
|
|
1111
|
-
break;
|
|
1112
|
-
default:
|
|
1113
|
-
break;
|
|
1114
|
-
}
|
|
1115
|
-
}
|
|
1116
|
-
|
|
1117
|
-
internal static void ResponseToConnectCallback<T>(RequestState<T> asynchRequestState,
|
|
1118
|
-
IJsonPluggableLibrary jsonPluggableLibrary, IDependencyProvider provider)
|
|
1119
|
-
{
|
|
1120
|
-
//Check callback exists and make sure previous timetoken = 0
|
|
1121
|
-
if (asynchRequestState.ChannelEntities != null)
|
|
1122
|
-
{
|
|
1123
|
-
bool updateIsAwaitingConnectCallback = false;
|
|
1124
|
-
for (int i = 0; i < asynchRequestState.ChannelEntities.Count; i++)
|
|
1125
|
-
{
|
|
1126
|
-
ChannelEntity channelEntity = asynchRequestState.ChannelEntities[i];
|
|
1127
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, Check ResponseToConnectCallback {1}",
|
|
1128
|
-
DateTime.Now.ToString(), channelEntity.ChannelID.ChannelOrChannelGroupName), LoggingMethod.LevelInfo);
|
|
1129
|
-
|
|
1130
|
-
if (channelEntity.ChannelParams.IsAwaitingConnectCallback)
|
|
1131
|
-
{
|
|
1132
|
-
updateIsAwaitingConnectCallback = true;
|
|
1133
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, ResponseToConnectCallback IsAwaitingConnectCallback {1}",
|
|
1134
|
-
DateTime.Now.ToString(), channelEntity.ChannelID.ChannelOrChannelGroupName), LoggingMethod.LevelInfo);
|
|
1135
|
-
|
|
1136
|
-
switch (asynchRequestState.RespType)
|
|
1137
|
-
{
|
|
1138
|
-
case ResponseType.SubscribeV2:
|
|
1139
|
-
var connectResult = Helpers.CreateJsonResponse("Connected", channelEntity.ChannelID.ChannelOrChannelGroupName, jsonPluggableLibrary);
|
|
1140
|
-
PubnubCallbacks.SendCallbacks<T>(jsonPluggableLibrary, channelEntity, connectResult,
|
|
1141
|
-
CallbackType.Connect, false);
|
|
1142
|
-
|
|
1143
|
-
break;
|
|
1144
|
-
case ResponseType.PresenceV2:
|
|
1145
|
-
var connectResult2 = Helpers.CreateJsonResponse("Presence Connected",
|
|
1146
|
-
channelEntity.ChannelID.ChannelOrChannelGroupName.Replace(Utility.PresenceChannelSuffix, ""), jsonPluggableLibrary);
|
|
1147
|
-
PubnubCallbacks.SendCallbacks<T>(jsonPluggableLibrary, channelEntity, connectResult2,
|
|
1148
|
-
CallbackType.Connect, false);
|
|
1149
|
-
break;
|
|
1150
|
-
default:
|
|
1151
|
-
break;
|
|
1152
|
-
}
|
|
1153
|
-
}
|
|
1154
|
-
}
|
|
1155
|
-
if (updateIsAwaitingConnectCallback)
|
|
1156
|
-
{
|
|
1157
|
-
Subscription.GetSubscription(provider).UpdateIsAwaitingConnectCallbacksOfEntity(asynchRequestState.ChannelEntities, false);
|
|
1158
|
-
}
|
|
1159
|
-
}
|
|
1160
|
-
|
|
1161
|
-
}
|
|
1162
|
-
|
|
1163
|
-
internal static List<object> CreateJsonResponse(string message, string channel, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
1164
|
-
{
|
|
1165
|
-
string jsonString = "";
|
|
1166
|
-
List<object> connectResult = new List<object>();
|
|
1167
|
-
jsonString = string.Format("[1, \"{0}\"]", message);
|
|
1168
|
-
connectResult = jsonPluggableLibrary.DeserializeToListOfObject(jsonString);
|
|
1169
|
-
connectResult.Add(channel);
|
|
1170
|
-
|
|
1171
|
-
return connectResult;
|
|
1172
|
-
}
|
|
1173
|
-
|
|
1174
|
-
internal static PubnubErrorCode GetTimeOutErrorCode(ResponseType responseType)
|
|
1175
|
-
{
|
|
1176
|
-
switch (responseType)
|
|
1177
|
-
{
|
|
1178
|
-
case ResponseType.AuditAccess:
|
|
1179
|
-
case ResponseType.GrantAccess:
|
|
1180
|
-
case ResponseType.RevokeAccess:
|
|
1181
|
-
case ResponseType.ChannelGroupGrantAccess:
|
|
1182
|
-
case ResponseType.ChannelGroupAuditAccess:
|
|
1183
|
-
case ResponseType.ChannelGroupRevokeAccess:
|
|
1184
|
-
return PubnubErrorCode.PAMAccessOperationTimeout;
|
|
1185
|
-
case ResponseType.DetailedHistory:
|
|
1186
|
-
case ResponseType.History:
|
|
1187
|
-
return PubnubErrorCode.DetailedHistoryOperationTimeout;
|
|
1188
|
-
case ResponseType.GetUserState:
|
|
1189
|
-
return PubnubErrorCode.GetUserStateTimeout;
|
|
1190
|
-
case ResponseType.GlobalHereNow:
|
|
1191
|
-
return PubnubErrorCode.GlobalHereNowOperationTimeout;
|
|
1192
|
-
case ResponseType.SetUserState:
|
|
1193
|
-
return PubnubErrorCode.SetUserStateTimeout;
|
|
1194
|
-
case ResponseType.HereNow:
|
|
1195
|
-
return PubnubErrorCode.HereNowOperationTimeout;
|
|
1196
|
-
case ResponseType.Publish:
|
|
1197
|
-
return PubnubErrorCode.PublishOperationTimeout;
|
|
1198
|
-
case ResponseType.Time:
|
|
1199
|
-
return PubnubErrorCode.TimeOperationTimeout;
|
|
1200
|
-
case ResponseType.WhereNow:
|
|
1201
|
-
return PubnubErrorCode.WhereNowOperationTimeout;
|
|
1202
|
-
default:
|
|
1203
|
-
/*
|
|
1204
|
-
* ResponseType.Presence:
|
|
1205
|
-
* ResponseType.PresenceUnsubscribe:
|
|
1206
|
-
* ResponseType.Leave:
|
|
1207
|
-
* ResponseType.Subscribe:
|
|
1208
|
-
* ResponseType.Unsubscribe:
|
|
1209
|
-
* ResponseType.Heartbeat:
|
|
1210
|
-
* ResponseType.PresenceHeartbeat:
|
|
1211
|
-
* ResponseType.ChannelGroupAdd
|
|
1212
|
-
* ResponseType.ChannelGroupRemove
|
|
1213
|
-
* ResponseType.ChannelGroupGet
|
|
1214
|
-
*/
|
|
1215
|
-
return PubnubErrorCode.OperationTimeout;
|
|
1216
|
-
}
|
|
1217
|
-
}
|
|
1218
|
-
|
|
1219
|
-
internal static PubnubClientError CreatePubnubClientError<T>(Exception ex,
|
|
1220
|
-
RequestState<T> requestState, List<ChannelEntity> channelEntities, PubnubErrorCode errorCode, PubnubErrorSeverity severity)
|
|
1221
|
-
{
|
|
1222
|
-
|
|
1223
|
-
if (errorCode.Equals(PubnubErrorCode.None))
|
|
1224
|
-
{
|
|
1225
|
-
errorCode = PubnubErrorCodeHelper.GetErrorType(ex);
|
|
1226
|
-
}
|
|
1227
|
-
|
|
1228
|
-
int statusCode = (int)errorCode;
|
|
1229
|
-
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1230
|
-
PubnubWebRequest request = null;
|
|
1231
|
-
PubnubWebResponse response = null;
|
|
1232
|
-
|
|
1233
|
-
if (requestState != null)
|
|
1234
|
-
{
|
|
1235
|
-
request = requestState.Request;
|
|
1236
|
-
response = requestState.Response;
|
|
1237
|
-
if (channelEntities == null && requestState.ChannelEntities != null)
|
|
1238
|
-
{
|
|
1239
|
-
channelEntities = requestState.ChannelEntities;
|
|
1240
|
-
}
|
|
1241
|
-
}
|
|
1242
|
-
|
|
1243
|
-
PubnubClientError error = new PubnubClientError(statusCode, severity, true, ex.Message, ex,
|
|
1244
|
-
PubnubMessageSource.Client, request, response, errorDescription,
|
|
1245
|
-
channelEntities);
|
|
1246
|
-
|
|
1247
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1248
|
-
return error;
|
|
1249
|
-
}
|
|
1250
|
-
|
|
1251
|
-
internal static PubnubClientError CreatePubnubClientError<T>(string message,
|
|
1252
|
-
RequestState<T> requestState, PubnubErrorCode errorCode, PubnubErrorSeverity severity, string channels, string channelGroups)
|
|
1253
|
-
{
|
|
1254
|
-
|
|
1255
|
-
int statusCode = (int)errorCode;
|
|
1256
|
-
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1257
|
-
|
|
1258
|
-
PubnubWebRequest request = null;
|
|
1259
|
-
PubnubWebResponse response = null;
|
|
1260
|
-
|
|
1261
|
-
if (requestState != null)
|
|
1262
|
-
{
|
|
1263
|
-
request = requestState.Request;
|
|
1264
|
-
response = requestState.Response;
|
|
1265
|
-
}
|
|
1266
|
-
|
|
1267
|
-
PubnubClientError error = new PubnubClientError(statusCode, severity, message, PubnubMessageSource.Client,
|
|
1268
|
-
request, response, errorDescription,
|
|
1269
|
-
channels, channelGroups
|
|
1270
|
-
);
|
|
1271
|
-
|
|
1272
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError 2 = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1273
|
-
return error;
|
|
1274
|
-
}
|
|
1275
|
-
|
|
1276
|
-
internal static PubnubClientError CreatePubnubClientError<T>(Exception ex,
|
|
1277
|
-
RequestState<T> requestState, PubnubErrorCode errorCode, PubnubErrorSeverity severity, string channels, string channelGroups)
|
|
1278
|
-
{
|
|
1279
|
-
|
|
1280
|
-
int statusCode = (int)errorCode;
|
|
1281
|
-
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1282
|
-
|
|
1283
|
-
PubnubWebRequest request = null;
|
|
1284
|
-
PubnubWebResponse response = null;
|
|
1285
|
-
|
|
1286
|
-
if (requestState != null)
|
|
1287
|
-
{
|
|
1288
|
-
request = requestState.Request;
|
|
1289
|
-
response = requestState.Response;
|
|
1290
|
-
}
|
|
1291
|
-
|
|
1292
|
-
PubnubClientError error = new PubnubClientError(statusCode, severity, ex.Message, PubnubMessageSource.Client,
|
|
1293
|
-
request, response, errorDescription,
|
|
1294
|
-
channels, channelGroups
|
|
1295
|
-
);
|
|
1296
|
-
|
|
1297
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError 3 = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1298
|
-
return error;
|
|
1299
|
-
}
|
|
1300
|
-
|
|
1301
|
-
internal static PubnubClientError CreatePubnubClientError<T>(string message,
|
|
1302
|
-
RequestState<T> requestState, List<ChannelEntity> channelEntities, PubnubErrorCode errorCode, PubnubErrorSeverity severity)
|
|
1303
|
-
{
|
|
1304
|
-
|
|
1305
|
-
int statusCode = (int)errorCode;
|
|
1306
|
-
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1307
|
-
|
|
1308
|
-
PubnubWebRequest request = null;
|
|
1309
|
-
PubnubWebResponse response = null;
|
|
1310
|
-
|
|
1311
|
-
if (requestState != null)
|
|
1312
|
-
{
|
|
1313
|
-
request = requestState.Request;
|
|
1314
|
-
response = requestState.Response;
|
|
1315
|
-
}
|
|
1316
|
-
|
|
1317
|
-
PubnubClientError error = new PubnubClientError(statusCode, severity, message, PubnubMessageSource.Client,
|
|
1318
|
-
request, response, errorDescription,
|
|
1319
|
-
channelEntities
|
|
1320
|
-
);
|
|
1321
|
-
|
|
1322
|
-
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError 4 = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1323
|
-
return error;
|
|
1324
|
-
}
|
|
1325
|
-
|
|
1326
|
-
internal static PubnubClientError CreatePubnubClientError<T>(WebException ex,
|
|
1327
|
-
RequestState<T> requestState, string channel, PubnubErrorSeverity severity)
|
|
1328
|
-
{
|
|
1329
|
-
|
|
1330
|
-
PubnubErrorCode errorCode = PubnubErrorCodeHelper.GetErrorType(ex.Status, ex.Message);
|
|
1331
|
-
return CreatePubnubClientError<T>(ex, requestState, null, errorCode, severity);
|
|
1332
|
-
}
|
|
1333
|
-
|
|
1334
|
-
#endregion
|
|
1335
|
-
|
|
1336
|
-
}
|
|
1337
|
-
}
|
|
1
|
+
using Beamable.Common.Dependencies;
|
|
2
|
+
using System;
|
|
3
|
+
using System.Collections;
|
|
4
|
+
using System.Collections.Generic;
|
|
5
|
+
using System.Linq;
|
|
6
|
+
using System.Net;
|
|
7
|
+
using System.Text;
|
|
8
|
+
|
|
9
|
+
namespace PubNubMessaging.Core
|
|
10
|
+
{
|
|
11
|
+
public sealed class Counter
|
|
12
|
+
{
|
|
13
|
+
private uint current = 0;
|
|
14
|
+
private object syncRoot;
|
|
15
|
+
|
|
16
|
+
public Counter()
|
|
17
|
+
{
|
|
18
|
+
syncRoot = new Object();
|
|
19
|
+
current = 0;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
public uint NextValue()
|
|
23
|
+
{
|
|
24
|
+
lock (syncRoot)
|
|
25
|
+
{
|
|
26
|
+
this.current++;
|
|
27
|
+
}
|
|
28
|
+
return this.current;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
public void Reset()
|
|
32
|
+
{
|
|
33
|
+
lock (syncRoot)
|
|
34
|
+
{
|
|
35
|
+
this.current = 0;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
internal static class Helpers
|
|
41
|
+
{
|
|
42
|
+
#region "Helpers"
|
|
43
|
+
internal static TimetokenMetadata CreateTimetokenMetadata(object timeTokenDataObject, string whichTT)
|
|
44
|
+
{
|
|
45
|
+
IDictionary<string, object> timeTokenData = (IDictionary<string, object>)timeTokenDataObject;
|
|
46
|
+
TimetokenMetadata timetokenMetadata = new TimetokenMetadata(Utility.CheckKeyAndParseLong(timeTokenData, whichTT, "t"),
|
|
47
|
+
timeTokenData["r"].ToString());
|
|
48
|
+
|
|
49
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, TimetokenMetadata: {1} \nTimetoken: {2} \nRegion: {3}",
|
|
50
|
+
DateTime.Now.ToString(), whichTT, timetokenMetadata.Timetoken, timetokenMetadata.Region),
|
|
51
|
+
LoggingMethod.LevelInfo);
|
|
52
|
+
|
|
53
|
+
return timetokenMetadata;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
internal static void AddToSubscribeMessageList(object dictObject, ref List<SubscribeMessage> subscribeMessages)
|
|
57
|
+
{
|
|
58
|
+
var dict = dictObject as IDictionary<string, object>;
|
|
59
|
+
if ((dict != null) && (dict.Count > 1))
|
|
60
|
+
{
|
|
61
|
+
string shard = (dict.ContainsKey("a")) ? dict["a"].ToString() : "";
|
|
62
|
+
string subscriptionMatch = (dict.ContainsKey("b")) ? dict["b"].ToString() : "";
|
|
63
|
+
string channel = (dict.ContainsKey("c")) ? dict["c"].ToString() : "";
|
|
64
|
+
object payload = (dict.ContainsKey("d")) ? (object)dict["d"] : null;
|
|
65
|
+
string flags = (dict.ContainsKey("f")) ? dict["f"].ToString() : "";
|
|
66
|
+
string issuingClientId = (dict.ContainsKey("i")) ? dict["i"].ToString() : "";
|
|
67
|
+
string subscribeKey = (dict.ContainsKey("k")) ? dict["k"].ToString() : "";
|
|
68
|
+
long sequenceNumber = Utility.CheckKeyAndParseLong(dict, "sequenceNumber", "s");
|
|
69
|
+
|
|
70
|
+
TimetokenMetadata originatingTimetoken = (dict.ContainsKey("o")) ? CreateTimetokenMetadata(dict["o"], "Originating TT: ") : null;
|
|
71
|
+
TimetokenMetadata publishMetadata = (dict.ContainsKey("p")) ? CreateTimetokenMetadata(dict["p"], "Publish TT: ") : null;
|
|
72
|
+
object userMetadata = (dict.ContainsKey("u")) ? (object)dict["u"] : null;
|
|
73
|
+
|
|
74
|
+
SubscribeMessage subscribeMessage = new SubscribeMessage(
|
|
75
|
+
shard,
|
|
76
|
+
subscriptionMatch,
|
|
77
|
+
channel,
|
|
78
|
+
payload,
|
|
79
|
+
flags,
|
|
80
|
+
issuingClientId,
|
|
81
|
+
subscribeKey,
|
|
82
|
+
sequenceNumber,
|
|
83
|
+
originatingTimetoken,
|
|
84
|
+
publishMetadata,
|
|
85
|
+
userMetadata
|
|
86
|
+
);
|
|
87
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, AddToSubscribeMessageList: \n" +
|
|
88
|
+
"shard : {1},\n" +
|
|
89
|
+
"subscriptionMatch: {2},\n" +
|
|
90
|
+
"channel: {3},\n" +
|
|
91
|
+
"payload: {4},\n" +
|
|
92
|
+
"flags: {5},\n" +
|
|
93
|
+
"issuingClientId: {6},\n" +
|
|
94
|
+
"subscribeKey: {7},\n" +
|
|
95
|
+
"sequenceNumber: {8},\n" +
|
|
96
|
+
"originatingTimetoken tt: {9},\n" +
|
|
97
|
+
"originatingTimetoken region: {10},\n" +
|
|
98
|
+
"publishMetadata tt: {11},\n" +
|
|
99
|
+
"publishMetadata region: {12},\n" +
|
|
100
|
+
"userMetadata {13} \n",
|
|
101
|
+
DateTime.Now.ToString(),
|
|
102
|
+
shard,
|
|
103
|
+
subscriptionMatch,
|
|
104
|
+
channel,
|
|
105
|
+
payload.ToString(),
|
|
106
|
+
flags,
|
|
107
|
+
issuingClientId,
|
|
108
|
+
subscribeKey,
|
|
109
|
+
sequenceNumber,
|
|
110
|
+
(originatingTimetoken != null) ? originatingTimetoken.Timetoken.ToString() : "",
|
|
111
|
+
(originatingTimetoken != null) ? originatingTimetoken.Region : "",
|
|
112
|
+
(publishMetadata != null) ? publishMetadata.Timetoken.ToString() : "",
|
|
113
|
+
(publishMetadata != null) ? publishMetadata.Region : "",
|
|
114
|
+
(userMetadata != null) ? userMetadata.ToString() : "null"),
|
|
115
|
+
LoggingMethod.LevelInfo);
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
subscribeMessages.Add(subscribeMessage);
|
|
119
|
+
}
|
|
120
|
+
else
|
|
121
|
+
{
|
|
122
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, AddToSubscribeMessageList: CreateListOfSubscribeMessage create " +
|
|
123
|
+
"SubscribeMessage failed. dictObject type: {1}, dict type : {2}",
|
|
124
|
+
DateTime.Now.ToString(), dictObject.ToString(), dict.ToString()), LoggingMethod.LevelInfo);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
internal static List<SubscribeMessage> CreateListOfSubscribeMessage(object message)
|
|
130
|
+
{
|
|
131
|
+
List<SubscribeMessage> subscribeMessages = new List<SubscribeMessage>();
|
|
132
|
+
if (message != null)
|
|
133
|
+
{
|
|
134
|
+
//JSONFx
|
|
135
|
+
object[] messages = message as object[];
|
|
136
|
+
|
|
137
|
+
if (messages != null)
|
|
138
|
+
{
|
|
139
|
+
var myObjectArray = (from item in messages
|
|
140
|
+
select item as object).ToArray();
|
|
141
|
+
if ((myObjectArray != null) && (myObjectArray.Length > 0))
|
|
142
|
+
{
|
|
143
|
+
|
|
144
|
+
foreach (object dictObject in myObjectArray)
|
|
145
|
+
{
|
|
146
|
+
AddToSubscribeMessageList(dictObject, ref subscribeMessages);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
else
|
|
151
|
+
{
|
|
152
|
+
//MiniJSON
|
|
153
|
+
List<object> messageList = message as List<object>;
|
|
154
|
+
if ((messageList != null) && messageList.Count > 0)
|
|
155
|
+
{
|
|
156
|
+
foreach (object dictObject in messageList)
|
|
157
|
+
{
|
|
158
|
+
AddToSubscribeMessageList(dictObject, ref subscribeMessages);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
else
|
|
164
|
+
{
|
|
165
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateListOfSubscribeMessage: no messages ",
|
|
166
|
+
DateTime.Now.ToString()), LoggingMethod.LevelInfo);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return subscribeMessages;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
internal static string BuildJsonUserState(IDictionary<string, object> userStateDictionary)
|
|
173
|
+
{
|
|
174
|
+
StringBuilder jsonStateBuilder = new StringBuilder();
|
|
175
|
+
|
|
176
|
+
if (userStateDictionary != null)
|
|
177
|
+
{
|
|
178
|
+
string[] userStateKeys = userStateDictionary.Keys.ToArray<string>();
|
|
179
|
+
|
|
180
|
+
for (int keyIndex = 0; keyIndex < userStateKeys.Length; keyIndex++)
|
|
181
|
+
{
|
|
182
|
+
string useStateKey = userStateKeys[keyIndex];
|
|
183
|
+
object userStateValue = userStateDictionary[useStateKey];
|
|
184
|
+
if (userStateValue == null)
|
|
185
|
+
{
|
|
186
|
+
jsonStateBuilder.AppendFormat("\"{0}\":{1}", useStateKey, string.Format("\"{0}\"", "null"));
|
|
187
|
+
}
|
|
188
|
+
else
|
|
189
|
+
{
|
|
190
|
+
jsonStateBuilder.AppendFormat("\"{0}\":{1}", useStateKey, (userStateValue.GetType().ToString() == "System.String") ? string.Format("\"{0}\"", userStateValue) : userStateValue);
|
|
191
|
+
}
|
|
192
|
+
if (keyIndex < userStateKeys.Length - 1)
|
|
193
|
+
{
|
|
194
|
+
jsonStateBuilder.Append(",");
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
return jsonStateBuilder.ToString();
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
internal static string BuildJsonUserState(List<ChannelEntity> ce)
|
|
203
|
+
{
|
|
204
|
+
string retJsonUserState = "";
|
|
205
|
+
|
|
206
|
+
StringBuilder jsonStateBuilder = new StringBuilder();
|
|
207
|
+
|
|
208
|
+
if (ce != null)
|
|
209
|
+
{
|
|
210
|
+
foreach (ChannelEntity c in ce)
|
|
211
|
+
{
|
|
212
|
+
string currentJsonState = BuildJsonUserState(c.ChannelParams.UserState);
|
|
213
|
+
if (!string.IsNullOrEmpty(currentJsonState))
|
|
214
|
+
{
|
|
215
|
+
currentJsonState = string.Format("\"{0}\":{{{1}}}", c.ChannelID.ChannelOrChannelGroupName, currentJsonState);
|
|
216
|
+
if (jsonStateBuilder.Length > 0)
|
|
217
|
+
{
|
|
218
|
+
jsonStateBuilder.Append(",");
|
|
219
|
+
}
|
|
220
|
+
jsonStateBuilder.Append(currentJsonState);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
if (jsonStateBuilder.Length > 0)
|
|
225
|
+
{
|
|
226
|
+
retJsonUserState = string.Format("{{{0}}}", jsonStateBuilder.ToString());
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
return retJsonUserState;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
internal static string GetNamesFromChannelEntities(List<ChannelEntity> channelEntities, bool isChannelGroup)
|
|
234
|
+
{
|
|
235
|
+
|
|
236
|
+
StringBuilder sb = new StringBuilder();
|
|
237
|
+
if (channelEntities != null)
|
|
238
|
+
{
|
|
239
|
+
int count = 0;
|
|
240
|
+
foreach (ChannelEntity c in channelEntities)
|
|
241
|
+
{
|
|
242
|
+
if (isChannelGroup && c.ChannelID.IsChannelGroup)
|
|
243
|
+
{
|
|
244
|
+
if (count > 0)
|
|
245
|
+
{
|
|
246
|
+
sb.Append(",");
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
sb.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
250
|
+
count++;
|
|
251
|
+
}
|
|
252
|
+
else if (!isChannelGroup && !c.ChannelID.IsChannelGroup)
|
|
253
|
+
{
|
|
254
|
+
if (count > 0)
|
|
255
|
+
{
|
|
256
|
+
sb.Append(",");
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
sb.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
260
|
+
count++;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return sb.ToString();
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
internal static string GetNamesFromChannelEntities(List<ChannelEntity> channelEntities)
|
|
268
|
+
{
|
|
269
|
+
StringBuilder sbCh = new StringBuilder();
|
|
270
|
+
StringBuilder sbChGrp = new StringBuilder();
|
|
271
|
+
if (channelEntities != null)
|
|
272
|
+
{
|
|
273
|
+
int countCh = 0;
|
|
274
|
+
int countChGrp = 0;
|
|
275
|
+
foreach (ChannelEntity c in channelEntities)
|
|
276
|
+
{
|
|
277
|
+
if (c.ChannelID.IsChannelGroup)
|
|
278
|
+
{
|
|
279
|
+
if (countChGrp > 0)
|
|
280
|
+
{
|
|
281
|
+
sbChGrp.Append(",");
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
sbChGrp.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
285
|
+
countChGrp++;
|
|
286
|
+
}
|
|
287
|
+
else
|
|
288
|
+
{
|
|
289
|
+
if (countCh > 0)
|
|
290
|
+
{
|
|
291
|
+
sbCh.Append(",");
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
sbCh.Append(c.ChannelID.ChannelOrChannelGroupName);
|
|
295
|
+
countCh++;
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
return string.Format("channel(s) = {0} and channelGroups(s) = {1}", sbCh.ToString(), sbChGrp.ToString());
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
internal static bool UpdateOrAddUserStateOfEntity<T>(string channel, bool isChannelGroup,
|
|
304
|
+
IDictionary<string, object> userState, bool edit,
|
|
305
|
+
Action<T> userCallback, Action<PubnubClientError> errorCallback,
|
|
306
|
+
PubnubErrorFilter.Level errorLevel, ref List<ChannelEntity> channelEntities, IDependencyProvider provider)
|
|
307
|
+
{
|
|
308
|
+
ChannelEntity ce = CreateChannelEntity<T>(channel, false, isChannelGroup,
|
|
309
|
+
userState, userCallback, null, errorCallback, null, null);
|
|
310
|
+
bool stateChanged = Subscription.GetSubscription(provider).UpdateOrAddUserStateOfEntity(ref ce, userState, edit);
|
|
311
|
+
if (!stateChanged)
|
|
312
|
+
{
|
|
313
|
+
string message = "No change in User State";
|
|
314
|
+
|
|
315
|
+
PubnubCallbacks.CallErrorCallback<T>(ce, message,
|
|
316
|
+
PubnubErrorCode.UserStateUnchanged, PubnubErrorSeverity.Info, errorLevel);
|
|
317
|
+
}
|
|
318
|
+
else
|
|
319
|
+
{
|
|
320
|
+
channelEntities.Add(ce);
|
|
321
|
+
}
|
|
322
|
+
return stateChanged;
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
internal static bool CheckAndAddExistingUserState<T>(string channel, string channelGroup, IDictionary<string, object> userState,
|
|
326
|
+
Action<T> userCallback, Action<PubnubClientError> errorCallback,
|
|
327
|
+
PubnubErrorFilter.Level errorLevel, bool edit,
|
|
328
|
+
out string returnUserState, out List<ChannelEntity> channelEntities, IDependencyProvider provider
|
|
329
|
+
)
|
|
330
|
+
{
|
|
331
|
+
string[] channels = channel.Trim().Split(',');
|
|
332
|
+
string[] channelGroups = channelGroup.Trim().Split(',');
|
|
333
|
+
bool stateChanged = false;
|
|
334
|
+
channelEntities = new List<ChannelEntity>();
|
|
335
|
+
|
|
336
|
+
foreach (string ch in channels)
|
|
337
|
+
{
|
|
338
|
+
if (!string.IsNullOrEmpty(ch))
|
|
339
|
+
{
|
|
340
|
+
bool changeState = UpdateOrAddUserStateOfEntity<T>(ch, false, userState, edit,
|
|
341
|
+
userCallback, errorCallback, errorLevel, ref channelEntities, provider);
|
|
342
|
+
if (changeState && !stateChanged)
|
|
343
|
+
{
|
|
344
|
+
stateChanged = true;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
foreach (string ch in channelGroups)
|
|
350
|
+
{
|
|
351
|
+
if (!string.IsNullOrEmpty(ch))
|
|
352
|
+
{
|
|
353
|
+
bool changeState = UpdateOrAddUserStateOfEntity<T>(ch, true, userState, edit,
|
|
354
|
+
userCallback, errorCallback, errorLevel, ref channelEntities, provider);
|
|
355
|
+
if (changeState && !stateChanged)
|
|
356
|
+
{
|
|
357
|
+
stateChanged = true;
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
returnUserState = BuildJsonUserState(channelEntities);
|
|
363
|
+
|
|
364
|
+
return stateChanged;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
internal static ChannelEntity CreateChannelEntity<T>(string channelOrChannelGroupName2,
|
|
368
|
+
bool isAwaitingConnectCallback,
|
|
369
|
+
bool isChannelGroup, IDictionary<string, object> userState,
|
|
370
|
+
Action<T> userCallback, Action<T> connectCallback,
|
|
371
|
+
Action<PubnubClientError> errorCallback, Action<T> disconnectCallback, Action<T> wildcardPresenceCallback
|
|
372
|
+
)
|
|
373
|
+
{
|
|
374
|
+
string channelOrChannelGroupName = channelOrChannelGroupName2.Trim();
|
|
375
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity: channelOrChannelGroupName {1}, {2}", DateTime.Now.ToString(),
|
|
376
|
+
channelOrChannelGroupName.ToString(), channelOrChannelGroupName2.ToString()), LoggingMethod.LevelInfo);
|
|
377
|
+
|
|
378
|
+
if (!string.IsNullOrEmpty(channelOrChannelGroupName))
|
|
379
|
+
{
|
|
380
|
+
ChannelIdentity ci = new ChannelIdentity();
|
|
381
|
+
ci.ChannelOrChannelGroupName = channelOrChannelGroupName;
|
|
382
|
+
ci.IsPresenceChannel = Utility.IsPresenceChannel(channelOrChannelGroupName);
|
|
383
|
+
ci.IsChannelGroup = isChannelGroup;
|
|
384
|
+
|
|
385
|
+
ChannelParameters cp = new ChannelParameters();
|
|
386
|
+
cp.IsAwaitingConnectCallback = isAwaitingConnectCallback;
|
|
387
|
+
cp.UserState = userState;
|
|
388
|
+
cp.TypeParameterType = typeof(T);
|
|
389
|
+
|
|
390
|
+
cp.Callbacks = PubnubCallbacks.GetPubnubChannelCallback<T>(userCallback, connectCallback, errorCallback,
|
|
391
|
+
disconnectCallback, wildcardPresenceCallback);
|
|
392
|
+
|
|
393
|
+
ChannelEntity ce = new ChannelEntity(ci, cp);
|
|
394
|
+
|
|
395
|
+
return ce;
|
|
396
|
+
}
|
|
397
|
+
else
|
|
398
|
+
{
|
|
399
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity: channelOrChannelGroupName empty, is channel group {1}", DateTime.Now.ToString(), isChannelGroup.ToString()), LoggingMethod.LevelInfo);
|
|
400
|
+
|
|
401
|
+
return null;
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
internal static List<ChannelEntity> CreateChannelEntity<T>(string[] channelOrChannelGroupNames, bool isAwaitingConnectCallback,
|
|
406
|
+
bool isChannelGroup, IDictionary<string, object> userState,
|
|
407
|
+
Action<T> userCallback, Action<T> connectCallback,
|
|
408
|
+
Action<PubnubClientError> errorCallback, Action<T> disconnectCallback, Action<T> wildcardPresenceCallback
|
|
409
|
+
)
|
|
410
|
+
{
|
|
411
|
+
List<ChannelEntity> channelEntities = null;
|
|
412
|
+
if (channelOrChannelGroupNames != null)
|
|
413
|
+
{
|
|
414
|
+
channelEntities = new List<ChannelEntity>();
|
|
415
|
+
foreach (string ch in channelOrChannelGroupNames)
|
|
416
|
+
{
|
|
417
|
+
ChannelEntity chEntity = CreateChannelEntity<T>(ch, isAwaitingConnectCallback, isChannelGroup, userState,
|
|
418
|
+
userCallback, connectCallback, errorCallback, disconnectCallback, wildcardPresenceCallback
|
|
419
|
+
);
|
|
420
|
+
if (chEntity != null)
|
|
421
|
+
{
|
|
422
|
+
channelEntities.Add(chEntity);
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity 2: channelEntities={1}", DateTime.Now.ToString(), channelEntities.Count), LoggingMethod.LevelInfo);
|
|
426
|
+
|
|
427
|
+
}
|
|
428
|
+
else
|
|
429
|
+
{
|
|
430
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntity 2: channelOrChannelGroupNames null, is channel group {1}", DateTime.Now.ToString(), isChannelGroup.ToString()), LoggingMethod.LevelInfo);
|
|
431
|
+
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
return channelEntities;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
internal static IEnumerable<string> GetDuplicates(string[]
|
|
438
|
+
rawChannels)
|
|
439
|
+
{
|
|
440
|
+
var results = from string a in rawChannels
|
|
441
|
+
group a by a into g
|
|
442
|
+
where g.Count() > 1
|
|
443
|
+
select g;
|
|
444
|
+
foreach (var group in results)
|
|
445
|
+
foreach (var item in group)
|
|
446
|
+
yield return item;
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
[System.Diagnostics.Conditional("SPEW_ALL")]
|
|
450
|
+
[System.Diagnostics.Conditional("SPEW_NOTIFICATION")]
|
|
451
|
+
internal static void LogChannelEntitiesDictionary(Subscription subscription)
|
|
452
|
+
{
|
|
453
|
+
StringBuilder sbLogs = new StringBuilder();
|
|
454
|
+
foreach (var ci in subscription.ChannelEntitiesDictionary)
|
|
455
|
+
{
|
|
456
|
+
sbLogs.AppendFormat("\nChannelEntitiesDictionary \nChannelOrChannelGroupName:{0} \nIsChannelGroup:{1} \nIsPresenceChannel:{2}\n",
|
|
457
|
+
ci.Key.ChannelOrChannelGroupName, ci.Key.IsChannelGroup.ToString(), ci.Key.IsPresenceChannel.ToString()
|
|
458
|
+
);
|
|
459
|
+
}
|
|
460
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, LogChannelEntitiesDictionary: Count: {2} \n{1}",
|
|
461
|
+
DateTime.Now.ToString(), sbLogs.ToString(), subscription.ChannelEntitiesDictionary.Count), LoggingMethod.LevelInfo);
|
|
462
|
+
}
|
|
463
|
+
|
|
464
|
+
internal static bool CreateChannelEntityAndAddToSubscribe<T>(ResponseType type, string[] rawChannels,
|
|
465
|
+
bool isChannelGroup,
|
|
466
|
+
Action<T> userCallback, Action<T> connectCallback, Action<PubnubClientError> errorCallback,
|
|
467
|
+
Action<T> wildcardPresenceCallback, Action<T> disconnectCallback,
|
|
468
|
+
PubnubErrorFilter.Level errorLevel, bool unsubscribeCheck, ref List<ChannelEntity> channelEntities, IDependencyProvider provider
|
|
469
|
+
)
|
|
470
|
+
{
|
|
471
|
+
bool bReturn = false;
|
|
472
|
+
for (int index = 0; index < rawChannels.Length; index++)
|
|
473
|
+
{
|
|
474
|
+
string channelName = rawChannels[index].Trim();
|
|
475
|
+
|
|
476
|
+
if (channelName.Length > 0)
|
|
477
|
+
{
|
|
478
|
+
if ((type == ResponseType.PresenceV2)
|
|
479
|
+
|| (type == ResponseType.PresenceUnsubscribe))
|
|
480
|
+
{
|
|
481
|
+
channelName = string.Format("{0}{1}", channelName, Utility.PresenceChannelSuffix);
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
Helpers.LogChannelEntitiesDictionary(Subscription.GetSubscription(provider));
|
|
485
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1}", DateTime.Now.ToString(), channelName), LoggingMethod.LevelInfo);
|
|
486
|
+
|
|
487
|
+
//create channelEntity
|
|
488
|
+
ChannelEntity ce = Helpers.CreateChannelEntity(channelName, true, isChannelGroup, null,
|
|
489
|
+
userCallback, connectCallback, errorCallback, disconnectCallback, wildcardPresenceCallback);
|
|
490
|
+
|
|
491
|
+
bool channelIsSubscribed = false;
|
|
492
|
+
if (Subscription.GetSubscription(provider).ChannelEntitiesDictionary.ContainsKey(ce.ChannelID))
|
|
493
|
+
{
|
|
494
|
+
channelIsSubscribed = Subscription.GetSubscription(provider).ChannelEntitiesDictionary[ce.ChannelID].IsSubscribed;
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
if (unsubscribeCheck)
|
|
498
|
+
{
|
|
499
|
+
if (!channelIsSubscribed)
|
|
500
|
+
{
|
|
501
|
+
string message = string.Format("{0}Channel Not Subscribed", (ce.ChannelID.IsPresenceChannel) ? "Presence " : "");
|
|
502
|
+
PubnubErrorCode errorType = (ce.ChannelID.IsPresenceChannel) ? PubnubErrorCode.NotPresenceSubscribed : PubnubErrorCode.NotSubscribed;
|
|
503
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1} response={2}", DateTime.Now.ToString(), channelName, message), LoggingMethod.LevelInfo);
|
|
504
|
+
PubnubCallbacks.CallErrorCallback<T>(ce, message,
|
|
505
|
+
errorType, PubnubErrorSeverity.Info, errorLevel);
|
|
506
|
+
}
|
|
507
|
+
else
|
|
508
|
+
{
|
|
509
|
+
channelEntities.Add(ce);
|
|
510
|
+
bReturn = true;
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
else
|
|
514
|
+
{
|
|
515
|
+
if (channelIsSubscribed)
|
|
516
|
+
{
|
|
517
|
+
string message = string.Format("{0}Already subscribed", (ce.ChannelID.IsPresenceChannel) ? "Presence " : "");
|
|
518
|
+
PubnubErrorCode errorType = (ce.ChannelID.IsPresenceChannel) ? PubnubErrorCode.AlreadyPresenceSubscribed : PubnubErrorCode.AlreadySubscribed;
|
|
519
|
+
PubnubCallbacks.CallErrorCallback<T>(ce, message,
|
|
520
|
+
errorType, PubnubErrorSeverity.Info, errorLevel);
|
|
521
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1} response={2}", DateTime.Now.ToString(), channelName, message), LoggingMethod.LevelInfo);
|
|
522
|
+
|
|
523
|
+
}
|
|
524
|
+
else
|
|
525
|
+
{
|
|
526
|
+
channelEntities.Add(ce);
|
|
527
|
+
bReturn = true;
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
else
|
|
532
|
+
{
|
|
533
|
+
string message = "Invalid Channel Name";
|
|
534
|
+
if (isChannelGroup)
|
|
535
|
+
{
|
|
536
|
+
message = "Invalid Channel Group Name";
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CreateChannelEntityAndAddToSubscribe: channel={1} response={2}", DateTime.Now.ToString(), channelName, message),
|
|
540
|
+
LoggingMethod.LevelInfo);
|
|
541
|
+
|
|
542
|
+
}
|
|
543
|
+
}
|
|
544
|
+
return bReturn;
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
internal static bool RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon<T>(ResponseType type,
|
|
548
|
+
Action<T> userCallback, Action<T> connectCallback, Action<PubnubClientError> errorCallback,
|
|
549
|
+
Action<T> wildcardPresenceCallback, Action<T> disconnectCallback,
|
|
550
|
+
string[] channelsOrChannelGroups, bool isChannelGroup,
|
|
551
|
+
PubnubErrorFilter.Level errorLevel, bool unsubscribeCheck, ref List<ChannelEntity> channelEntities,
|
|
552
|
+
IDependencyProvider provider)
|
|
553
|
+
{
|
|
554
|
+
bool bReturn = false;
|
|
555
|
+
if (channelsOrChannelGroups.Length > 0)
|
|
556
|
+
{
|
|
557
|
+
|
|
558
|
+
channelsOrChannelGroups = channelsOrChannelGroups.Where(x => !string.IsNullOrEmpty(x)).ToArray();
|
|
559
|
+
|
|
560
|
+
if (channelsOrChannelGroups.Length != channelsOrChannelGroups.Distinct().Count())
|
|
561
|
+
{
|
|
562
|
+
channelsOrChannelGroups = channelsOrChannelGroups.Distinct().ToArray();
|
|
563
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: distinct channelsOrChannelGroups len={1}, channelsOrChannelGroups = {2}",
|
|
564
|
+
DateTime.Now.ToString(), channelsOrChannelGroups.Length, string.Join(",", channelsOrChannelGroups)),
|
|
565
|
+
LoggingMethod.LevelInfo);
|
|
566
|
+
|
|
567
|
+
string channel = string.Join(",", GetDuplicates(channelsOrChannelGroups).Distinct<string>().ToArray<string>());
|
|
568
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: duplicates channelsOrChannelGroups {1}",
|
|
569
|
+
DateTime.Now.ToString(), channel),
|
|
570
|
+
LoggingMethod.LevelInfo);
|
|
571
|
+
|
|
572
|
+
string message = string.Format("Detected and removed duplicate channels {0}", channel);
|
|
573
|
+
|
|
574
|
+
PubnubCallbacks.CallErrorCallback<T>(message, errorCallback, PubnubErrorCode.DuplicateChannel,
|
|
575
|
+
PubnubErrorSeverity.Info, errorLevel);
|
|
576
|
+
}
|
|
577
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: channelsOrChannelGroups len={1}, channelsOrChannelGroups = {2}",
|
|
578
|
+
DateTime.Now.ToString(), channelsOrChannelGroups.Length, string.Join(",", channelsOrChannelGroups)),
|
|
579
|
+
LoggingMethod.LevelInfo);
|
|
580
|
+
|
|
581
|
+
bReturn = CreateChannelEntityAndAddToSubscribe<T>(type, channelsOrChannelGroups, isChannelGroup,
|
|
582
|
+
userCallback, connectCallback, errorCallback, wildcardPresenceCallback, disconnectCallback, errorLevel, unsubscribeCheck, ref channelEntities, provider);
|
|
583
|
+
}
|
|
584
|
+
else
|
|
585
|
+
{
|
|
586
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon: channelsOrChannelGroups len <=0",
|
|
587
|
+
DateTime.Now.ToString()),
|
|
588
|
+
LoggingMethod.LevelInfo);
|
|
589
|
+
|
|
590
|
+
}
|
|
591
|
+
return bReturn;
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
internal static bool RemoveDuplicatesCheckAlreadySubscribedAndGetChannels<T>(ResponseType type,
|
|
595
|
+
Action<T> userCallback, Action<T> connectCallback, Action<PubnubClientError> errorCallback,
|
|
596
|
+
Action<T> wildcardPresenceCallback, Action<T> disconnectCallback,
|
|
597
|
+
string[] rawChannels, string[] rawChannelGroups,
|
|
598
|
+
PubnubErrorFilter.Level errorLevel, bool unsubscribeCheck, out List<ChannelEntity> channelEntities,
|
|
599
|
+
IDependencyProvider provider)
|
|
600
|
+
{
|
|
601
|
+
bool bReturn = false;
|
|
602
|
+
bool channelAdded = false;
|
|
603
|
+
bool channelGroupAdded = false;
|
|
604
|
+
channelEntities = new List<ChannelEntity>();
|
|
605
|
+
if (rawChannels != null && rawChannels.Length > 0)
|
|
606
|
+
{
|
|
607
|
+
channelAdded = RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon<T>(type, userCallback, connectCallback, errorCallback,
|
|
608
|
+
wildcardPresenceCallback, disconnectCallback, rawChannels, false, errorLevel, unsubscribeCheck, ref channelEntities, provider
|
|
609
|
+
);
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
if (rawChannelGroups != null && rawChannelGroups.Length > 0)
|
|
613
|
+
{
|
|
614
|
+
channelGroupAdded = RemoveDuplicatesCheckAlreadySubscribedAndGetChannelsCommon<T>(type, userCallback, connectCallback, errorCallback,
|
|
615
|
+
wildcardPresenceCallback, disconnectCallback, rawChannelGroups, true, errorLevel, unsubscribeCheck, ref channelEntities, provider
|
|
616
|
+
);
|
|
617
|
+
}
|
|
618
|
+
|
|
619
|
+
bReturn = channelAdded | channelGroupAdded;
|
|
620
|
+
|
|
621
|
+
return bReturn;
|
|
622
|
+
}
|
|
623
|
+
|
|
624
|
+
internal static void ProcessResponseCallbacksV2<T>(ref SubscribeEnvelope resultSubscribeEnvelope, RequestState<T> asynchRequestState,
|
|
625
|
+
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary, IDependencyProvider provider)
|
|
626
|
+
{
|
|
627
|
+
|
|
628
|
+
if (resultSubscribeEnvelope != null)
|
|
629
|
+
{
|
|
630
|
+
Helpers.ResponseToConnectCallback<T>(asynchRequestState, jsonPluggableLibrary, provider);
|
|
631
|
+
if (resultSubscribeEnvelope.Messages != null)
|
|
632
|
+
{
|
|
633
|
+
ResponseToUserCallbackForSubscribeV2<T>(resultSubscribeEnvelope.Messages, asynchRequestState.ChannelEntities,
|
|
634
|
+
cipherKey, jsonPluggableLibrary);
|
|
635
|
+
}
|
|
636
|
+
else
|
|
637
|
+
{
|
|
638
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, ProcessResponseCallbacksV2: resultSubscribeEnvelope.Messages null",
|
|
639
|
+
DateTime.Now.ToString()), LoggingMethod.LevelError);
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
}
|
|
643
|
+
}
|
|
644
|
+
|
|
645
|
+
internal static void ProcessResponseCallbacks<T>(ref List<object> result, RequestState<T> asynchRequestState,
|
|
646
|
+
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
647
|
+
{
|
|
648
|
+
if (result != null && result.Count >= 1)
|
|
649
|
+
{
|
|
650
|
+
Helpers.ResponseToUserCallback<T>(result, asynchRequestState, cipherKey, jsonPluggableLibrary);
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
#endregion
|
|
654
|
+
|
|
655
|
+
#region "Encoding and Crypto"
|
|
656
|
+
|
|
657
|
+
internal static string JsonEncodePublishMsg(object originalMessage, string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
658
|
+
{
|
|
659
|
+
string message = jsonPluggableLibrary.SerializeToJsonString(originalMessage);
|
|
660
|
+
|
|
661
|
+
if (cipherKey.Length > 0)
|
|
662
|
+
{
|
|
663
|
+
PubnubCrypto aes = new PubnubCrypto(cipherKey);
|
|
664
|
+
string encryptMessage = aes.Encrypt(message);
|
|
665
|
+
message = jsonPluggableLibrary.SerializeToJsonString(encryptMessage);
|
|
666
|
+
}
|
|
667
|
+
|
|
668
|
+
return message;
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
internal static object DecodeMessage(PubnubCrypto aes, object element, List<ChannelEntity> channelEntities,
|
|
672
|
+
IJsonPluggableLibrary jsonPluggableLibrary,
|
|
673
|
+
PubnubErrorFilter.Level errorLevel)
|
|
674
|
+
{
|
|
675
|
+
string decryptMessage = "";
|
|
676
|
+
try
|
|
677
|
+
{
|
|
678
|
+
decryptMessage = aes.Decrypt(element.ToString());
|
|
679
|
+
}
|
|
680
|
+
catch (Exception ex)
|
|
681
|
+
{
|
|
682
|
+
decryptMessage = "**DECRYPT ERROR**";
|
|
683
|
+
PubnubCallbacks.CallErrorCallback<object>(ex, channelEntities, PubnubErrorCode.None,
|
|
684
|
+
PubnubErrorSeverity.Critical, errorLevel);
|
|
685
|
+
}
|
|
686
|
+
object decodeMessage = (decryptMessage == "**DECRYPT ERROR**") ? decryptMessage : jsonPluggableLibrary.DeserializeToObject(decryptMessage);
|
|
687
|
+
return decodeMessage;
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
internal static List<object> DecryptCipheredMessage(List<object> message, List<ChannelEntity> channelEntities,
|
|
691
|
+
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary,
|
|
692
|
+
PubnubErrorFilter.Level errorLevel)
|
|
693
|
+
{
|
|
694
|
+
List<object> returnMessage = new List<object>();
|
|
695
|
+
|
|
696
|
+
PubnubCrypto aes = new PubnubCrypto(cipherKey);
|
|
697
|
+
var myObjectArray = (from item in message
|
|
698
|
+
select item as object).ToArray();
|
|
699
|
+
IEnumerable enumerable = myObjectArray[0] as IEnumerable;
|
|
700
|
+
|
|
701
|
+
if (enumerable != null)
|
|
702
|
+
{
|
|
703
|
+
List<object> receivedMsg = new List<object>();
|
|
704
|
+
foreach (object element in enumerable)
|
|
705
|
+
{
|
|
706
|
+
receivedMsg.Add(DecodeMessage(aes, element, channelEntities, jsonPluggableLibrary, errorLevel));
|
|
707
|
+
}
|
|
708
|
+
returnMessage.Add(receivedMsg);
|
|
709
|
+
}
|
|
710
|
+
for (int index = 1; index < myObjectArray.Length; index++)
|
|
711
|
+
{
|
|
712
|
+
returnMessage.Add(myObjectArray[index]);
|
|
713
|
+
}
|
|
714
|
+
return returnMessage;
|
|
715
|
+
}
|
|
716
|
+
|
|
717
|
+
internal static List<object> DecryptNonCipheredMessage(List<object> message)
|
|
718
|
+
{
|
|
719
|
+
List<object> returnMessage = new List<object>();
|
|
720
|
+
var myObjectArray = (from item in message
|
|
721
|
+
select item as object).ToArray();
|
|
722
|
+
IEnumerable enumerable = myObjectArray[0] as IEnumerable;
|
|
723
|
+
if (enumerable != null)
|
|
724
|
+
{
|
|
725
|
+
List<object> receivedMessage = new List<object>();
|
|
726
|
+
foreach (object element in enumerable)
|
|
727
|
+
{
|
|
728
|
+
receivedMessage.Add(element);
|
|
729
|
+
}
|
|
730
|
+
returnMessage.Add(receivedMessage);
|
|
731
|
+
}
|
|
732
|
+
for (int index = 1; index < myObjectArray.Length; index++)
|
|
733
|
+
{
|
|
734
|
+
returnMessage.Add(myObjectArray[index]);
|
|
735
|
+
}
|
|
736
|
+
return returnMessage;
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
internal static List<object> DecodeDecryptLoop(List<object> message, List<ChannelEntity> channelEntities,
|
|
740
|
+
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary,
|
|
741
|
+
PubnubErrorFilter.Level errorLevel)
|
|
742
|
+
{
|
|
743
|
+
if (cipherKey.Length > 0)
|
|
744
|
+
{
|
|
745
|
+
return DecryptCipheredMessage(message, channelEntities, cipherKey, jsonPluggableLibrary, errorLevel);
|
|
746
|
+
}
|
|
747
|
+
else
|
|
748
|
+
{
|
|
749
|
+
return DecryptNonCipheredMessage(message);
|
|
750
|
+
}
|
|
751
|
+
}
|
|
752
|
+
|
|
753
|
+
#endregion
|
|
754
|
+
|
|
755
|
+
#region "Other Methods"
|
|
756
|
+
|
|
757
|
+
internal static void CheckSubscribedChannelsAndSendCallbacks<T>(List<ChannelEntity> channelEntities,
|
|
758
|
+
ResponseType type, int pubnubNetworkCheckRetries, PubnubErrorFilter.Level errorLevel)
|
|
759
|
+
{
|
|
760
|
+
if (channelEntities != null && channelEntities.Count > 0)
|
|
761
|
+
{
|
|
762
|
+
foreach (ChannelEntity channelEntity in channelEntities)
|
|
763
|
+
{
|
|
764
|
+
string message = string.Format("Unsubscribed after {0} failed retries", pubnubNetworkCheckRetries); ;
|
|
765
|
+
PubnubErrorCode pnErrorCode = PubnubErrorCode.UnsubscribedAfterMaxRetries;
|
|
766
|
+
|
|
767
|
+
if (channelEntity.ChannelID.IsPresenceChannel)
|
|
768
|
+
{
|
|
769
|
+
message = string.Format("Presence Unsubscribed after {0} failed retries", pubnubNetworkCheckRetries);
|
|
770
|
+
pnErrorCode = PubnubErrorCode.PresenceUnsubscribedAfterMaxRetries;
|
|
771
|
+
}
|
|
772
|
+
|
|
773
|
+
//TODO: Recheck
|
|
774
|
+
PubnubClientError error = Helpers.CreatePubnubClientError<T>(message, null, channelEntities, pnErrorCode,
|
|
775
|
+
PubnubErrorSeverity.Critical);
|
|
776
|
+
|
|
777
|
+
PubnubCallbacks.FireErrorCallback<T>(channelEntity,
|
|
778
|
+
errorLevel, error);
|
|
779
|
+
|
|
780
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, CheckSubscribedChannelsAndSendCallbacks: {1} Subscribe JSON network error response={2}",
|
|
781
|
+
DateTime.Now.ToString(), (channelEntity.ChannelID.IsPresenceChannel) ? "Presence" : "", message), LoggingMethod.LevelInfo);
|
|
782
|
+
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
|
|
787
|
+
public static void WrapResultBasedOnResponseType<T>(RequestState<T> pubnubRequestState, string jsonString,
|
|
788
|
+
IJsonPluggableLibrary jsonPluggableLibrary, PubnubErrorFilter.Level errorLevel, string cipherKey, ref List<object> result)
|
|
789
|
+
{
|
|
790
|
+
try
|
|
791
|
+
{
|
|
792
|
+
string multiChannel = Helpers.GetNamesFromChannelEntities(pubnubRequestState.ChannelEntities, false);
|
|
793
|
+
string multiChannelGroup = Helpers.GetNamesFromChannelEntities(pubnubRequestState.ChannelEntities, true);
|
|
794
|
+
if (!string.IsNullOrEmpty(jsonString))
|
|
795
|
+
{
|
|
796
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, WrapResultBasedOnResponseType: jsonString = {1}", DateTime.Now.ToString(), jsonString), LoggingMethod.LevelInfo);
|
|
797
|
+
object deSerializedResult = jsonPluggableLibrary.DeserializeToObject(jsonString);
|
|
798
|
+
List<object> result1 = ((IEnumerable)deSerializedResult).Cast<object>().ToList();
|
|
799
|
+
|
|
800
|
+
if (result1 != null && result1.Count > 0)
|
|
801
|
+
{
|
|
802
|
+
result = result1;
|
|
803
|
+
}
|
|
804
|
+
|
|
805
|
+
switch (pubnubRequestState.RespType)
|
|
806
|
+
{
|
|
807
|
+
case ResponseType.DetailedHistory:
|
|
808
|
+
result = DecodeDecryptLoop(result, pubnubRequestState.ChannelEntities, cipherKey, jsonPluggableLibrary, errorLevel);
|
|
809
|
+
result.Add(multiChannel);
|
|
810
|
+
break;
|
|
811
|
+
case ResponseType.Time:
|
|
812
|
+
Int64[] c = deSerializedResult as Int64[];
|
|
813
|
+
if ((c != null) && (c.Length > 0))
|
|
814
|
+
{
|
|
815
|
+
result = new List<object>();
|
|
816
|
+
result.Add(c[0]);
|
|
817
|
+
}
|
|
818
|
+
break;
|
|
819
|
+
case ResponseType.Leave:
|
|
820
|
+
if (!string.IsNullOrEmpty(multiChannelGroup))
|
|
821
|
+
{
|
|
822
|
+
result.Add(multiChannelGroup);
|
|
823
|
+
}
|
|
824
|
+
if (!string.IsNullOrEmpty(multiChannel))
|
|
825
|
+
{
|
|
826
|
+
result.Add(multiChannel);
|
|
827
|
+
}
|
|
828
|
+
break;
|
|
829
|
+
case ResponseType.SubscribeV2:
|
|
830
|
+
case ResponseType.PresenceV2:
|
|
831
|
+
break;
|
|
832
|
+
case ResponseType.Publish:
|
|
833
|
+
case ResponseType.PushRegister:
|
|
834
|
+
case ResponseType.PushRemove:
|
|
835
|
+
case ResponseType.PushGet:
|
|
836
|
+
case ResponseType.PushUnregister:
|
|
837
|
+
result.Add(multiChannel);
|
|
838
|
+
break;
|
|
839
|
+
case ResponseType.GrantAccess:
|
|
840
|
+
case ResponseType.AuditAccess:
|
|
841
|
+
case ResponseType.RevokeAccess:
|
|
842
|
+
case ResponseType.GetUserState:
|
|
843
|
+
case ResponseType.SetUserState:
|
|
844
|
+
case ResponseType.WhereNow:
|
|
845
|
+
case ResponseType.HereNow:
|
|
846
|
+
result = DeserializeAndAddToResult(jsonString, multiChannel, jsonPluggableLibrary, true);
|
|
847
|
+
break;
|
|
848
|
+
case ResponseType.GlobalHereNow:
|
|
849
|
+
result = DeserializeAndAddToResult(jsonString, multiChannel, jsonPluggableLibrary, false);
|
|
850
|
+
break;
|
|
851
|
+
case ResponseType.ChannelGroupAdd:
|
|
852
|
+
case ResponseType.ChannelGroupRemove:
|
|
853
|
+
case ResponseType.ChannelGroupGet:
|
|
854
|
+
result = DeserializeAndAddToResult(jsonString, multiChannel, jsonPluggableLibrary, false);
|
|
855
|
+
|
|
856
|
+
break;
|
|
857
|
+
case ResponseType.ChannelGroupGrantAccess:
|
|
858
|
+
case ResponseType.ChannelGroupAuditAccess:
|
|
859
|
+
case ResponseType.ChannelGroupRevokeAccess:
|
|
860
|
+
result = DeserializeAndAddToResult(jsonString, "", jsonPluggableLibrary, false);
|
|
861
|
+
result.Add(multiChannelGroup);
|
|
862
|
+
break;
|
|
863
|
+
|
|
864
|
+
default:
|
|
865
|
+
break;
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
else
|
|
869
|
+
{
|
|
870
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, WrapResultBasedOnResponseType: json string null ", DateTime.Now.ToString()), LoggingMethod.LevelInfo);
|
|
871
|
+
}
|
|
872
|
+
}
|
|
873
|
+
catch (Exception ex)
|
|
874
|
+
{
|
|
875
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, WrapResultBasedOnResponseType: exception: {1} ", DateTime.Now.ToString(), ex.ToString()), LoggingMethod.LevelError);
|
|
876
|
+
ProcessWrapResultBasedOnResponseTypeException<T>(pubnubRequestState, errorLevel, ex);
|
|
877
|
+
}
|
|
878
|
+
}
|
|
879
|
+
|
|
880
|
+
internal static List<object> DeserializeAndAddToResult(string jsonString, string multiChannel,
|
|
881
|
+
IJsonPluggableLibrary jsonPluggableLibrary, bool addChannel)
|
|
882
|
+
{
|
|
883
|
+
IDictionary<string, object> dictionary = jsonPluggableLibrary.DeserializeToDictionaryOfObject(jsonString);
|
|
884
|
+
List<object> result = new List<object>();
|
|
885
|
+
result.Add(dictionary);
|
|
886
|
+
if (addChannel)
|
|
887
|
+
{
|
|
888
|
+
result.Add(multiChannel);
|
|
889
|
+
}
|
|
890
|
+
return result;
|
|
891
|
+
}
|
|
892
|
+
|
|
893
|
+
internal static void ProcessWrapResultBasedOnResponseTypeException<T>(RequestState<T> pubnubRequestState,
|
|
894
|
+
PubnubErrorFilter.Level errorLevel, Exception ex)
|
|
895
|
+
{
|
|
896
|
+
if (pubnubRequestState.ChannelEntities != null)
|
|
897
|
+
{
|
|
898
|
+
if (pubnubRequestState.RespType.Equals(ResponseType.SubscribeV2) || pubnubRequestState.RespType.Equals(ResponseType.PresenceV2)
|
|
899
|
+
)
|
|
900
|
+
{
|
|
901
|
+
PubnubCallbacks.FireErrorCallbacksForAllChannels<T>(ex, pubnubRequestState, PubnubErrorSeverity.Critical,
|
|
902
|
+
PubnubErrorCode.None, errorLevel);
|
|
903
|
+
}
|
|
904
|
+
else
|
|
905
|
+
{
|
|
906
|
+
PubnubCallbacks.FireErrorCallbacksForAllChannels<T>(ex, pubnubRequestState, PubnubErrorSeverity.Critical,
|
|
907
|
+
PubnubErrorCode.None, errorLevel);
|
|
908
|
+
}
|
|
909
|
+
}
|
|
910
|
+
}
|
|
911
|
+
|
|
912
|
+
internal static void CreatePNMessageResult(SubscribeMessage subscribeMessage, out PNMessageResult messageResult)
|
|
913
|
+
{
|
|
914
|
+
long timetoken = (subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Timetoken : 0;
|
|
915
|
+
messageResult = new PNMessageResult(
|
|
916
|
+
subscribeMessage.SubscriptionMatch,
|
|
917
|
+
subscribeMessage.Channel,
|
|
918
|
+
subscribeMessage.Payload,
|
|
919
|
+
timetoken,
|
|
920
|
+
subscribeMessage.UserMetadata);
|
|
921
|
+
}
|
|
922
|
+
|
|
923
|
+
internal static void AddMessageToListV2(string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary,
|
|
924
|
+
SubscribeMessage subscribeMessage, ChannelEntity ce, out List<object> itemMessage)
|
|
925
|
+
{
|
|
926
|
+
itemMessage = new List<object>();
|
|
927
|
+
if (ce.ChannelID.IsPresenceChannel)
|
|
928
|
+
{
|
|
929
|
+
itemMessage.Add(subscribeMessage.Payload);
|
|
930
|
+
}
|
|
931
|
+
else
|
|
932
|
+
{
|
|
933
|
+
//decrypt the subscriber message if cipherkey is available
|
|
934
|
+
if (cipherKey.Length > 0)
|
|
935
|
+
{
|
|
936
|
+
object decodeMessage;
|
|
937
|
+
try
|
|
938
|
+
{
|
|
939
|
+
PubnubCrypto aes = new PubnubCrypto(cipherKey);
|
|
940
|
+
string decryptMessage = aes.Decrypt(subscribeMessage.Payload.ToString());
|
|
941
|
+
decodeMessage = (decryptMessage == "**DECRYPT ERROR**") ? decryptMessage : jsonPluggableLibrary.DeserializeToObject(decryptMessage);
|
|
942
|
+
}
|
|
943
|
+
catch (Exception decryptEx)
|
|
944
|
+
{
|
|
945
|
+
decodeMessage = subscribeMessage.Payload;
|
|
946
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, AddMessageToListV2: decodeMessage Exception: {1}", DateTime.Now.ToString(), decryptEx.ToString()), LoggingMethod.LevelError);
|
|
947
|
+
|
|
948
|
+
}
|
|
949
|
+
itemMessage.Add(decodeMessage);
|
|
950
|
+
}
|
|
951
|
+
else
|
|
952
|
+
{
|
|
953
|
+
itemMessage.Add(subscribeMessage.Payload);
|
|
954
|
+
}
|
|
955
|
+
}
|
|
956
|
+
itemMessage.Add((subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Timetoken.ToString() : "");
|
|
957
|
+
if (ce.ChannelID.IsChannelGroup)
|
|
958
|
+
{
|
|
959
|
+
itemMessage.Add(ce.ChannelID.ChannelOrChannelGroupName.Replace(Utility.PresenceChannelSuffix, ""));
|
|
960
|
+
}
|
|
961
|
+
|
|
962
|
+
itemMessage.Add(subscribeMessage.Channel.Replace(Utility.PresenceChannelSuffix, ""));
|
|
963
|
+
}
|
|
964
|
+
|
|
965
|
+
internal static void FindChannelEntityAndCallback<T>(SubscribeMessage subscribeMessage, List<ChannelEntity> channelEntities,
|
|
966
|
+
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary, ChannelIdentity ci)
|
|
967
|
+
{
|
|
968
|
+
ChannelEntity ce = channelEntities.Find(x => x.ChannelID.Equals(ci));
|
|
969
|
+
if (ce != null)
|
|
970
|
+
{
|
|
971
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, FindChannelEntityAndCallback: \n ChannelEntity : {1} cg?={2} ispres?={3}", DateTime.Now.ToString(),
|
|
972
|
+
ce.ChannelID.ChannelOrChannelGroupName, ce.ChannelID.IsChannelGroup.ToString(),
|
|
973
|
+
ce.ChannelID.IsPresenceChannel.ToString()
|
|
974
|
+
), LoggingMethod.LevelInfo);
|
|
975
|
+
|
|
976
|
+
List<object> itemMessage;
|
|
977
|
+
AddMessageToListV2(cipherKey, jsonPluggableLibrary, subscribeMessage, ce, out itemMessage);
|
|
978
|
+
PubnubChannelCallback<T> channelCallbacks = ce.ChannelParams.Callbacks as PubnubChannelCallback<T>;
|
|
979
|
+
|
|
980
|
+
if ((subscribeMessage.SubscriptionMatch.Contains(".*")) && Utility.IsPresenceChannel(subscribeMessage.Channel))
|
|
981
|
+
{
|
|
982
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, FindChannelEntityAndCallback: Wildcard match ChannelEntity : {1} ", DateTime.Now.ToString(),
|
|
983
|
+
ce.ChannelID.ChannelOrChannelGroupName
|
|
984
|
+
), LoggingMethod.LevelInfo);
|
|
985
|
+
|
|
986
|
+
PubnubCallbacks.GoToCallback<T>(itemMessage, channelCallbacks.WildcardPresenceCallback, jsonPluggableLibrary);
|
|
987
|
+
}
|
|
988
|
+
else
|
|
989
|
+
{
|
|
990
|
+
PubnubCallbacks.GoToCallback<T>(itemMessage, channelCallbacks.SuccessCallback, jsonPluggableLibrary);
|
|
991
|
+
}
|
|
992
|
+
}
|
|
993
|
+
#if (ENABLE_PUBNUB_LOGGING)
|
|
994
|
+
else {
|
|
995
|
+
StringBuilder sbChannelEntity = new StringBuilder();
|
|
996
|
+
foreach( ChannelEntity channelEntity in channelEntities){
|
|
997
|
+
sbChannelEntity.AppendFormat("ChannelEntity : {0} cg?={1} ispres?={2}", channelEntity.ChannelID.ChannelOrChannelGroupName,
|
|
998
|
+
channelEntity.ChannelID.IsChannelGroup.ToString(),
|
|
999
|
+
channelEntity.ChannelID.IsPresenceChannel.ToString()
|
|
1000
|
+
);
|
|
1001
|
+
}
|
|
1002
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, FindChannelEntityAndCallback: ChannelEntity : null ci.name {1} \nChannelEntities: \n {2}", DateTime.Now.ToString(),
|
|
1003
|
+
ci.ChannelOrChannelGroupName, sbChannelEntity.ToString()), LoggingMethod.LevelInfo);
|
|
1004
|
+
}
|
|
1005
|
+
#endif
|
|
1006
|
+
|
|
1007
|
+
}
|
|
1008
|
+
|
|
1009
|
+
internal static void ResponseToUserCallbackForSubscribeV2<T>(List<SubscribeMessage> subscribeMessages, List<ChannelEntity> channelEntities,
|
|
1010
|
+
string cipherKey, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
1011
|
+
{
|
|
1012
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, In ResponseToUserCallbackForSubscribeV2", DateTime.Now.ToString()
|
|
1013
|
+
), LoggingMethod.LevelInfo);
|
|
1014
|
+
|
|
1015
|
+
foreach (SubscribeMessage subscribeMessage in subscribeMessages)
|
|
1016
|
+
{
|
|
1017
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, ResponseToUserCallbackForSubscribeV2:\n SubscribeMessage:\n" +
|
|
1018
|
+
"shard : {1},\n" +
|
|
1019
|
+
"subscriptionMatch: {2},\n" +
|
|
1020
|
+
"channel: {3},\n" +
|
|
1021
|
+
"payload: {4},\n" +
|
|
1022
|
+
"flags: {5},\n" +
|
|
1023
|
+
"issuingClientId: {6},\n" +
|
|
1024
|
+
"subscribeKey: {7},\n" +
|
|
1025
|
+
"sequenceNumber: {8},\n" +
|
|
1026
|
+
"originatingTimetoken tt: {9},\n" +
|
|
1027
|
+
"originatingTimetoken region: {10},\n" +
|
|
1028
|
+
"publishMetadata tt: {11},\n" +
|
|
1029
|
+
"publishMetadata region: {12},\n" +
|
|
1030
|
+
"userMetadata {13} \n",
|
|
1031
|
+
DateTime.Now.ToString(),
|
|
1032
|
+
subscribeMessage.Shard,
|
|
1033
|
+
subscribeMessage.SubscriptionMatch,
|
|
1034
|
+
subscribeMessage.Channel,
|
|
1035
|
+
subscribeMessage.Payload.ToString(),
|
|
1036
|
+
subscribeMessage.Flags,
|
|
1037
|
+
subscribeMessage.IssuingClientId,
|
|
1038
|
+
subscribeMessage.SubscribeKey,
|
|
1039
|
+
subscribeMessage.SequenceNumber,
|
|
1040
|
+
(subscribeMessage.OriginatingTimetoken != null) ? subscribeMessage.OriginatingTimetoken.Timetoken.ToString() : "",
|
|
1041
|
+
(subscribeMessage.OriginatingTimetoken != null) ? subscribeMessage.OriginatingTimetoken.Region : "",
|
|
1042
|
+
(subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Timetoken.ToString() : "",
|
|
1043
|
+
(subscribeMessage.PublishTimetokenMetadata != null) ? subscribeMessage.PublishTimetokenMetadata.Region : "",
|
|
1044
|
+
(subscribeMessage.UserMetadata != null) ? subscribeMessage.UserMetadata.ToString() : "null"),
|
|
1045
|
+
LoggingMethod.LevelInfo);
|
|
1046
|
+
|
|
1047
|
+
bool isPresenceChannel = Utility.IsPresenceChannel(subscribeMessage.Channel);
|
|
1048
|
+
if (string.IsNullOrEmpty(subscribeMessage.SubscriptionMatch) || subscribeMessage.Channel.Equals(subscribeMessage.SubscriptionMatch))
|
|
1049
|
+
{
|
|
1050
|
+
//channel
|
|
1051
|
+
|
|
1052
|
+
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.Channel, false, isPresenceChannel);
|
|
1053
|
+
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1054
|
+
}
|
|
1055
|
+
else if (subscribeMessage.SubscriptionMatch.Contains(".*") && isPresenceChannel)
|
|
1056
|
+
{
|
|
1057
|
+
//wildcard presence channel
|
|
1058
|
+
|
|
1059
|
+
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.SubscriptionMatch, false, false);
|
|
1060
|
+
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1061
|
+
}
|
|
1062
|
+
else if (subscribeMessage.SubscriptionMatch.Contains(".*"))
|
|
1063
|
+
{
|
|
1064
|
+
//wildcard channel
|
|
1065
|
+
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.SubscriptionMatch, false, isPresenceChannel);
|
|
1066
|
+
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1067
|
+
|
|
1068
|
+
}
|
|
1069
|
+
else
|
|
1070
|
+
{
|
|
1071
|
+
ChannelIdentity ci = new ChannelIdentity(subscribeMessage.SubscriptionMatch, true, isPresenceChannel);
|
|
1072
|
+
FindChannelEntityAndCallback<T>(subscribeMessage, channelEntities, cipherKey, jsonPluggableLibrary, ci);
|
|
1073
|
+
|
|
1074
|
+
//ce will be the cg and subscriptionMatch will have the cg name
|
|
1075
|
+
}
|
|
1076
|
+
|
|
1077
|
+
}
|
|
1078
|
+
}
|
|
1079
|
+
|
|
1080
|
+
internal static void ResponseToUserCallback<T>(List<object> result, RequestState<T> asynchRequestState, string cipherKey,
|
|
1081
|
+
IJsonPluggableLibrary jsonPluggableLibrary)
|
|
1082
|
+
{
|
|
1083
|
+
switch (asynchRequestState.RespType)
|
|
1084
|
+
{
|
|
1085
|
+
case ResponseType.Leave:
|
|
1086
|
+
//No response to callback
|
|
1087
|
+
break;
|
|
1088
|
+
case ResponseType.Publish:
|
|
1089
|
+
case ResponseType.DetailedHistory:
|
|
1090
|
+
case ResponseType.HereNow:
|
|
1091
|
+
case ResponseType.GlobalHereNow:
|
|
1092
|
+
case ResponseType.WhereNow:
|
|
1093
|
+
case ResponseType.GrantAccess:
|
|
1094
|
+
case ResponseType.AuditAccess:
|
|
1095
|
+
case ResponseType.RevokeAccess:
|
|
1096
|
+
case ResponseType.GetUserState:
|
|
1097
|
+
case ResponseType.SetUserState:
|
|
1098
|
+
case ResponseType.Time:
|
|
1099
|
+
case ResponseType.PushRegister:
|
|
1100
|
+
case ResponseType.PushRemove:
|
|
1101
|
+
case ResponseType.PushGet:
|
|
1102
|
+
case ResponseType.PushUnregister:
|
|
1103
|
+
case ResponseType.ChannelGroupAdd:
|
|
1104
|
+
case ResponseType.ChannelGroupRemove:
|
|
1105
|
+
case ResponseType.ChannelGroupGet:
|
|
1106
|
+
case ResponseType.ChannelGroupGrantAccess:
|
|
1107
|
+
case ResponseType.ChannelGroupAuditAccess:
|
|
1108
|
+
case ResponseType.ChannelGroupRevokeAccess:
|
|
1109
|
+
|
|
1110
|
+
PubnubCallbacks.SendCallbacks<T>(jsonPluggableLibrary, asynchRequestState, result, CallbackType.Success, false);
|
|
1111
|
+
break;
|
|
1112
|
+
default:
|
|
1113
|
+
break;
|
|
1114
|
+
}
|
|
1115
|
+
}
|
|
1116
|
+
|
|
1117
|
+
internal static void ResponseToConnectCallback<T>(RequestState<T> asynchRequestState,
|
|
1118
|
+
IJsonPluggableLibrary jsonPluggableLibrary, IDependencyProvider provider)
|
|
1119
|
+
{
|
|
1120
|
+
//Check callback exists and make sure previous timetoken = 0
|
|
1121
|
+
if (asynchRequestState.ChannelEntities != null)
|
|
1122
|
+
{
|
|
1123
|
+
bool updateIsAwaitingConnectCallback = false;
|
|
1124
|
+
for (int i = 0; i < asynchRequestState.ChannelEntities.Count; i++)
|
|
1125
|
+
{
|
|
1126
|
+
ChannelEntity channelEntity = asynchRequestState.ChannelEntities[i];
|
|
1127
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, Check ResponseToConnectCallback {1}",
|
|
1128
|
+
DateTime.Now.ToString(), channelEntity.ChannelID.ChannelOrChannelGroupName), LoggingMethod.LevelInfo);
|
|
1129
|
+
|
|
1130
|
+
if (channelEntity.ChannelParams.IsAwaitingConnectCallback)
|
|
1131
|
+
{
|
|
1132
|
+
updateIsAwaitingConnectCallback = true;
|
|
1133
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, ResponseToConnectCallback IsAwaitingConnectCallback {1}",
|
|
1134
|
+
DateTime.Now.ToString(), channelEntity.ChannelID.ChannelOrChannelGroupName), LoggingMethod.LevelInfo);
|
|
1135
|
+
|
|
1136
|
+
switch (asynchRequestState.RespType)
|
|
1137
|
+
{
|
|
1138
|
+
case ResponseType.SubscribeV2:
|
|
1139
|
+
var connectResult = Helpers.CreateJsonResponse("Connected", channelEntity.ChannelID.ChannelOrChannelGroupName, jsonPluggableLibrary);
|
|
1140
|
+
PubnubCallbacks.SendCallbacks<T>(jsonPluggableLibrary, channelEntity, connectResult,
|
|
1141
|
+
CallbackType.Connect, false);
|
|
1142
|
+
|
|
1143
|
+
break;
|
|
1144
|
+
case ResponseType.PresenceV2:
|
|
1145
|
+
var connectResult2 = Helpers.CreateJsonResponse("Presence Connected",
|
|
1146
|
+
channelEntity.ChannelID.ChannelOrChannelGroupName.Replace(Utility.PresenceChannelSuffix, ""), jsonPluggableLibrary);
|
|
1147
|
+
PubnubCallbacks.SendCallbacks<T>(jsonPluggableLibrary, channelEntity, connectResult2,
|
|
1148
|
+
CallbackType.Connect, false);
|
|
1149
|
+
break;
|
|
1150
|
+
default:
|
|
1151
|
+
break;
|
|
1152
|
+
}
|
|
1153
|
+
}
|
|
1154
|
+
}
|
|
1155
|
+
if (updateIsAwaitingConnectCallback)
|
|
1156
|
+
{
|
|
1157
|
+
Subscription.GetSubscription(provider).UpdateIsAwaitingConnectCallbacksOfEntity(asynchRequestState.ChannelEntities, false);
|
|
1158
|
+
}
|
|
1159
|
+
}
|
|
1160
|
+
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1163
|
+
internal static List<object> CreateJsonResponse(string message, string channel, IJsonPluggableLibrary jsonPluggableLibrary)
|
|
1164
|
+
{
|
|
1165
|
+
string jsonString = "";
|
|
1166
|
+
List<object> connectResult = new List<object>();
|
|
1167
|
+
jsonString = string.Format("[1, \"{0}\"]", message);
|
|
1168
|
+
connectResult = jsonPluggableLibrary.DeserializeToListOfObject(jsonString);
|
|
1169
|
+
connectResult.Add(channel);
|
|
1170
|
+
|
|
1171
|
+
return connectResult;
|
|
1172
|
+
}
|
|
1173
|
+
|
|
1174
|
+
internal static PubnubErrorCode GetTimeOutErrorCode(ResponseType responseType)
|
|
1175
|
+
{
|
|
1176
|
+
switch (responseType)
|
|
1177
|
+
{
|
|
1178
|
+
case ResponseType.AuditAccess:
|
|
1179
|
+
case ResponseType.GrantAccess:
|
|
1180
|
+
case ResponseType.RevokeAccess:
|
|
1181
|
+
case ResponseType.ChannelGroupGrantAccess:
|
|
1182
|
+
case ResponseType.ChannelGroupAuditAccess:
|
|
1183
|
+
case ResponseType.ChannelGroupRevokeAccess:
|
|
1184
|
+
return PubnubErrorCode.PAMAccessOperationTimeout;
|
|
1185
|
+
case ResponseType.DetailedHistory:
|
|
1186
|
+
case ResponseType.History:
|
|
1187
|
+
return PubnubErrorCode.DetailedHistoryOperationTimeout;
|
|
1188
|
+
case ResponseType.GetUserState:
|
|
1189
|
+
return PubnubErrorCode.GetUserStateTimeout;
|
|
1190
|
+
case ResponseType.GlobalHereNow:
|
|
1191
|
+
return PubnubErrorCode.GlobalHereNowOperationTimeout;
|
|
1192
|
+
case ResponseType.SetUserState:
|
|
1193
|
+
return PubnubErrorCode.SetUserStateTimeout;
|
|
1194
|
+
case ResponseType.HereNow:
|
|
1195
|
+
return PubnubErrorCode.HereNowOperationTimeout;
|
|
1196
|
+
case ResponseType.Publish:
|
|
1197
|
+
return PubnubErrorCode.PublishOperationTimeout;
|
|
1198
|
+
case ResponseType.Time:
|
|
1199
|
+
return PubnubErrorCode.TimeOperationTimeout;
|
|
1200
|
+
case ResponseType.WhereNow:
|
|
1201
|
+
return PubnubErrorCode.WhereNowOperationTimeout;
|
|
1202
|
+
default:
|
|
1203
|
+
/*
|
|
1204
|
+
* ResponseType.Presence:
|
|
1205
|
+
* ResponseType.PresenceUnsubscribe:
|
|
1206
|
+
* ResponseType.Leave:
|
|
1207
|
+
* ResponseType.Subscribe:
|
|
1208
|
+
* ResponseType.Unsubscribe:
|
|
1209
|
+
* ResponseType.Heartbeat:
|
|
1210
|
+
* ResponseType.PresenceHeartbeat:
|
|
1211
|
+
* ResponseType.ChannelGroupAdd
|
|
1212
|
+
* ResponseType.ChannelGroupRemove
|
|
1213
|
+
* ResponseType.ChannelGroupGet
|
|
1214
|
+
*/
|
|
1215
|
+
return PubnubErrorCode.OperationTimeout;
|
|
1216
|
+
}
|
|
1217
|
+
}
|
|
1218
|
+
|
|
1219
|
+
internal static PubnubClientError CreatePubnubClientError<T>(Exception ex,
|
|
1220
|
+
RequestState<T> requestState, List<ChannelEntity> channelEntities, PubnubErrorCode errorCode, PubnubErrorSeverity severity)
|
|
1221
|
+
{
|
|
1222
|
+
|
|
1223
|
+
if (errorCode.Equals(PubnubErrorCode.None))
|
|
1224
|
+
{
|
|
1225
|
+
errorCode = PubnubErrorCodeHelper.GetErrorType(ex);
|
|
1226
|
+
}
|
|
1227
|
+
|
|
1228
|
+
int statusCode = (int)errorCode;
|
|
1229
|
+
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1230
|
+
PubnubWebRequest request = null;
|
|
1231
|
+
PubnubWebResponse response = null;
|
|
1232
|
+
|
|
1233
|
+
if (requestState != null)
|
|
1234
|
+
{
|
|
1235
|
+
request = requestState.Request;
|
|
1236
|
+
response = requestState.Response;
|
|
1237
|
+
if (channelEntities == null && requestState.ChannelEntities != null)
|
|
1238
|
+
{
|
|
1239
|
+
channelEntities = requestState.ChannelEntities;
|
|
1240
|
+
}
|
|
1241
|
+
}
|
|
1242
|
+
|
|
1243
|
+
PubnubClientError error = new PubnubClientError(statusCode, severity, true, ex.Message, ex,
|
|
1244
|
+
PubnubMessageSource.Client, request, response, errorDescription,
|
|
1245
|
+
channelEntities);
|
|
1246
|
+
|
|
1247
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1248
|
+
return error;
|
|
1249
|
+
}
|
|
1250
|
+
|
|
1251
|
+
internal static PubnubClientError CreatePubnubClientError<T>(string message,
|
|
1252
|
+
RequestState<T> requestState, PubnubErrorCode errorCode, PubnubErrorSeverity severity, string channels, string channelGroups)
|
|
1253
|
+
{
|
|
1254
|
+
|
|
1255
|
+
int statusCode = (int)errorCode;
|
|
1256
|
+
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1257
|
+
|
|
1258
|
+
PubnubWebRequest request = null;
|
|
1259
|
+
PubnubWebResponse response = null;
|
|
1260
|
+
|
|
1261
|
+
if (requestState != null)
|
|
1262
|
+
{
|
|
1263
|
+
request = requestState.Request;
|
|
1264
|
+
response = requestState.Response;
|
|
1265
|
+
}
|
|
1266
|
+
|
|
1267
|
+
PubnubClientError error = new PubnubClientError(statusCode, severity, message, PubnubMessageSource.Client,
|
|
1268
|
+
request, response, errorDescription,
|
|
1269
|
+
channels, channelGroups
|
|
1270
|
+
);
|
|
1271
|
+
|
|
1272
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError 2 = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1273
|
+
return error;
|
|
1274
|
+
}
|
|
1275
|
+
|
|
1276
|
+
internal static PubnubClientError CreatePubnubClientError<T>(Exception ex,
|
|
1277
|
+
RequestState<T> requestState, PubnubErrorCode errorCode, PubnubErrorSeverity severity, string channels, string channelGroups)
|
|
1278
|
+
{
|
|
1279
|
+
|
|
1280
|
+
int statusCode = (int)errorCode;
|
|
1281
|
+
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1282
|
+
|
|
1283
|
+
PubnubWebRequest request = null;
|
|
1284
|
+
PubnubWebResponse response = null;
|
|
1285
|
+
|
|
1286
|
+
if (requestState != null)
|
|
1287
|
+
{
|
|
1288
|
+
request = requestState.Request;
|
|
1289
|
+
response = requestState.Response;
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
PubnubClientError error = new PubnubClientError(statusCode, severity, ex.Message, PubnubMessageSource.Client,
|
|
1293
|
+
request, response, errorDescription,
|
|
1294
|
+
channels, channelGroups
|
|
1295
|
+
);
|
|
1296
|
+
|
|
1297
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError 3 = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1298
|
+
return error;
|
|
1299
|
+
}
|
|
1300
|
+
|
|
1301
|
+
internal static PubnubClientError CreatePubnubClientError<T>(string message,
|
|
1302
|
+
RequestState<T> requestState, List<ChannelEntity> channelEntities, PubnubErrorCode errorCode, PubnubErrorSeverity severity)
|
|
1303
|
+
{
|
|
1304
|
+
|
|
1305
|
+
int statusCode = (int)errorCode;
|
|
1306
|
+
string errorDescription = PubnubErrorCodeDescription.GetStatusCodeDescription(errorCode);
|
|
1307
|
+
|
|
1308
|
+
PubnubWebRequest request = null;
|
|
1309
|
+
PubnubWebResponse response = null;
|
|
1310
|
+
|
|
1311
|
+
if (requestState != null)
|
|
1312
|
+
{
|
|
1313
|
+
request = requestState.Request;
|
|
1314
|
+
response = requestState.Response;
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1317
|
+
PubnubClientError error = new PubnubClientError(statusCode, severity, message, PubnubMessageSource.Client,
|
|
1318
|
+
request, response, errorDescription,
|
|
1319
|
+
channelEntities
|
|
1320
|
+
);
|
|
1321
|
+
|
|
1322
|
+
LoggingMethod.WriteToLog(string.Format("DateTime {0}, PubnubClientError 4 = {1}", DateTime.Now.ToString(), error.ToString()), LoggingMethod.LevelInfo);
|
|
1323
|
+
return error;
|
|
1324
|
+
}
|
|
1325
|
+
|
|
1326
|
+
internal static PubnubClientError CreatePubnubClientError<T>(WebException ex,
|
|
1327
|
+
RequestState<T> requestState, string channel, PubnubErrorSeverity severity)
|
|
1328
|
+
{
|
|
1329
|
+
|
|
1330
|
+
PubnubErrorCode errorCode = PubnubErrorCodeHelper.GetErrorType(ex.Status, ex.Message);
|
|
1331
|
+
return CreatePubnubClientError<T>(ex, requestState, null, errorCode, severity);
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
#endregion
|
|
1335
|
+
|
|
1336
|
+
}
|
|
1337
|
+
}
|