Skip to content

Commit 457b745

Browse files
committed
Update detekt baselines for identity verification changes
Add KDoc to public JWT API functions, update detekt baseline
1 parent ccd95cb commit 457b745

6 files changed

Lines changed: 96 additions & 36 deletions

File tree

OneSignalSDK/detekt/detekt-baseline-core.xml

Lines changed: 33 additions & 15 deletions
Large diffs are not rendered by default.

OneSignalSDK/detekt/detekt-baseline-in-app-messages.xml

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
<?xml version="1.0" ?>
1+
<?xml version='1.0' encoding='UTF-8'?>
22
<SmellBaseline>
3-
<ManuallySuppressedIssues></ManuallySuppressedIssues>
3+
<ManuallySuppressedIssues/>
44
<CurrentIssues>
55
<ID>ComplexCondition:InAppMessagesManager.kt$InAppMessagesManager$!message.isTriggerChanged &amp;&amp; isMessageDisplayed &amp;&amp; (isTriggerOnMessage || isNewTriggerAdded &amp;&amp; isOnlyDynamicTriggers)</ID>
6-
<ID>ComplexMethod:TriggerController.kt$TriggerController$private fun evaluateTrigger(trigger: Trigger): Boolean</ID>
6+
<ID>ComplexMethod:InAppMessagesManager.kt$InAppMessagesManager$private suspend fun fetchMessages(rywData: RywData)</ID>
77
<ID>ConstructorParameterNaming:DynamicTriggerController.kt$DynamicTriggerController$private val _session: ISessionService</ID>
88
<ID>ConstructorParameterNaming:DynamicTriggerController.kt$DynamicTriggerController$private val _state: InAppStateService</ID>
99
<ID>ConstructorParameterNaming:DynamicTriggerController.kt$DynamicTriggerController$private val _time: ITime</ID>
@@ -39,6 +39,7 @@
3939
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _displayer: IInAppDisplayer</ID>
4040
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _identityModelStore: IdentityModelStore</ID>
4141
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _influenceManager: IInfluenceManager</ID>
42+
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _jwtTokenStore: JwtTokenStore</ID>
4243
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _languageContext: ILanguageContext</ID>
4344
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _lifecycle: IInAppLifecycleService</ID>
4445
<ID>ConstructorParameterNaming:InAppMessagesManager.kt$InAppMessagesManager$private val _outcomeEventsController: IOutcomeEventsController</ID>
@@ -65,10 +66,12 @@
6566
<ID>ForbiddenComment:InAppMessagesManager.kt$InAppMessagesManager$// TODO until we don't fix the activity going forward or back dismissing the IAM, we need to auto dismiss</ID>
6667
<ID>ForbiddenComment:InAppMessagesManager.kt$InAppMessagesManager$// TODO: Add more action payload preview logs here in future</ID>
6768
<ID>LongMethod:DynamicTriggerController.kt$DynamicTriggerController$fun dynamicTriggerShouldFire(trigger: Trigger): Boolean</ID>
69+
<ID>LongMethod:InAppMessagesManager.kt$InAppMessagesManager$private suspend fun fetchMessages(rywData: RywData)</ID>
6870
<ID>LongMethod:InAppRepository.kt$InAppRepository$override suspend fun cleanCachedInAppMessages()</ID>
71+
<ID>LongParameterList:IInAppBackendService.kt$IInAppBackendService$( appId: String, aliasLabel: String, aliasValue: String, subscriptionId: String, rywData: RywData, sessionDurationProvider: () -> Long, jwt: String? = null, )</ID>
6972
<ID>LongParameterList:IInAppBackendService.kt$IInAppBackendService$( appId: String, subscriptionId: String, variantId: String?, messageId: String, clickId: String?, isFirstClick: Boolean, )</ID>
7073
<ID>LongParameterList:InAppDisplayer.kt$InAppDisplayer$( private val _applicationService: IApplicationService, private val _lifecycle: IInAppLifecycleService, private val _promptFactory: IInAppMessagePromptFactory, private val _backend: IInAppBackendService, private val _influenceManager: IInfluenceManager, private val _configModelStore: ConfigModelStore, private val _languageContext: ILanguageContext, private val _time: ITime, )</ID>
71-
<ID>LongParameterList:InAppMessagesManager.kt$InAppMessagesManager$( private val _applicationService: IApplicationService, private val _sessionService: ISessionService, private val _influenceManager: IInfluenceManager, private val _configModelStore: ConfigModelStore, private val _userManager: IUserManager, private val _identityModelStore: IdentityModelStore, private val _subscriptionManager: ISubscriptionManager, private val _outcomeEventsController: IOutcomeEventsController, private val _state: InAppStateService, private val _prefs: IInAppPreferencesController, private val _repository: IInAppRepository, private val _backend: IInAppBackendService, private val _triggerController: ITriggerController, private val _triggerModelStore: TriggerModelStore, private val _displayer: IInAppDisplayer, private val _lifecycle: IInAppLifecycleService, private val _languageContext: ILanguageContext, private val _time: ITime, private val _consistencyManager: IConsistencyManager, )</ID>
74+
<ID>LongParameterList:InAppMessagesManager.kt$InAppMessagesManager$( private val _applicationService: IApplicationService, private val _sessionService: ISessionService, private val _influenceManager: IInfluenceManager, private val _configModelStore: ConfigModelStore, private val _userManager: IUserManager, private val _identityModelStore: IdentityModelStore, private val _subscriptionManager: ISubscriptionManager, private val _outcomeEventsController: IOutcomeEventsController, private val _state: InAppStateService, private val _prefs: IInAppPreferencesController, private val _repository: IInAppRepository, private val _backend: IInAppBackendService, private val _triggerController: ITriggerController, private val _triggerModelStore: TriggerModelStore, private val _displayer: IInAppDisplayer, private val _lifecycle: IInAppLifecycleService, private val _languageContext: ILanguageContext, private val _time: ITime, private val _consistencyManager: IConsistencyManager, private val _jwtTokenStore: JwtTokenStore, )</ID>
7275
<ID>LongParameterList:OneSignalAnimate.kt$OneSignalAnimate$( view: View, deltaFromY: Float, deltaToY: Float, duration: Int, interpolator: Interpolator?, animCallback: Animation.AnimationListener?, )</ID>
7376
<ID>MagicNumber:DraggableRelativeLayout.kt$DraggableRelativeLayout$3</ID>
7477
<ID>MagicNumber:DraggableRelativeLayout.kt$DraggableRelativeLayout$3000</ID>
@@ -85,12 +88,12 @@
8588
<ID>MagicNumber:InAppMessageView.kt$InAppMessageView$5</ID>
8689
<ID>MagicNumber:InAppMessageView.kt$InAppMessageView$8</ID>
8790
<ID>MagicNumber:InAppMessageView.kt$InAppMessageView$8.0</ID>
88-
<ID>MagicNumber:InAppMessageView.kt$InAppMessageView.&lt;no name provided&gt;$5</ID>
91+
<ID>MagicNumber:InAppMessageView.kt$InAppMessageView.&lt;no name provided>$5</ID>
8992
<ID>MagicNumber:InAppMessagesManager.kt$InAppMessagesManager$1000</ID>
9093
<ID>MagicNumber:InAppRepository.kt$InAppRepository$1000L</ID>
9194
<ID>MagicNumber:OneSignalAnimate.kt$OneSignalAnimate$0.5f</ID>
9295
<ID>MagicNumber:WebViewManager.kt$WebViewManager$3</ID>
93-
<ID>NestedBlockDepth:TriggerController.kt$TriggerController$override fun isTriggerOnMessage( message: InAppMessage, triggersKeys: Collection&lt;String&gt;, ): Boolean</ID>
96+
<ID>NestedBlockDepth:TriggerController.kt$TriggerController$override fun isTriggerOnMessage( message: InAppMessage, triggersKeys: Collection&lt;String>, ): Boolean</ID>
9497
<ID>PrintStackTrace:InAppMessage.kt$InAppMessage$e</ID>
9598
<ID>PrintStackTrace:InAppMessage.kt$InAppMessage$exception</ID>
9699
<ID>PrintStackTrace:InAppMessageClickResult.kt$InAppMessageClickResult$e</ID>
@@ -100,17 +103,17 @@
100103
<ID>PrintStackTrace:InAppMessageTag.kt$InAppMessageTag$e</ID>
101104
<ID>PrintStackTrace:Trigger.kt$Trigger$exception</ID>
102105
<ID>PrintStackTrace:WebViewManager.kt$WebViewManager.OSJavaScriptInterface$e</ID>
103-
<ID>ReturnCount:DraggableRelativeLayout.kt$DraggableRelativeLayout.&lt;no name provided&gt;$override fun clampViewPositionVertical( child: View, top: Int, dy: Int, ): Int</ID>
106+
<ID>ReturnCount:DraggableRelativeLayout.kt$DraggableRelativeLayout.&lt;no name provided>$override fun clampViewPositionVertical( child: View, top: Int, dy: Int, ): Int</ID>
104107
<ID>ReturnCount:DynamicTriggerController.kt$DynamicTriggerController$fun dynamicTriggerShouldFire(trigger: Trigger): Boolean</ID>
105108
<ID>ReturnCount:InAppBackendService.kt$InAppBackendService$override suspend fun getIAMData( appId: String, messageId: String, variantId: String?, ): GetIAMDataResponse</ID>
106-
<ID>ReturnCount:InAppBackendService.kt$InAppBackendService$private suspend fun attemptFetchWithRetries( baseUrl: String, rywData: RywData, sessionDurationProvider: () -&gt; Long, ): List&lt;InAppMessage&gt;?</ID>
109+
<ID>ReturnCount:InAppBackendService.kt$InAppBackendService$private suspend fun attemptFetchWithRetries( baseUrl: String, rywData: RywData, sessionDurationProvider: () -> Long, jwt: String? = null, ): List&lt;InAppMessage>?</ID>
107110
<ID>ReturnCount:InAppHydrator.kt$InAppHydrator$fun hydrateIAMMessageContent(jsonObject: JSONObject): InAppMessageContent?</ID>
108111
<ID>ReturnCount:InAppMessage.kt$InAppMessage$private fun parseEndTimeJson(json: JSONObject): Date?</ID>
109112
<ID>ReturnCount:InAppMessagePreviewHandler.kt$InAppMessagePreviewHandler$private fun inAppPreviewPushUUID(payload: JSONObject): String?</ID>
110113
<ID>ReturnCount:InAppMessagesManager.kt$InAppMessagesManager$override fun onMessageWasDisplayed(message: InAppMessage)</ID>
111114
<ID>ReturnCount:InAppMessagesManager.kt$InAppMessagesManager$private suspend fun fetchMessages(rywData: RywData)</ID>
112115
<ID>ReturnCount:TriggerController.kt$TriggerController$override fun evaluateMessageTriggers(message: InAppMessage): Boolean</ID>
113-
<ID>ReturnCount:TriggerController.kt$TriggerController$override fun isTriggerOnMessage( message: InAppMessage, triggersKeys: Collection&lt;String&gt;, ): Boolean</ID>
116+
<ID>ReturnCount:TriggerController.kt$TriggerController$override fun isTriggerOnMessage( message: InAppMessage, triggersKeys: Collection&lt;String>, ): Boolean</ID>
114117
<ID>ReturnCount:TriggerController.kt$TriggerController$override fun messageHasOnlyDynamicTriggers(message: InAppMessage): Boolean</ID>
115118
<ID>ReturnCount:TriggerController.kt$TriggerController$private fun evaluateTrigger(trigger: Trigger): Boolean</ID>
116119
<ID>ReturnCount:TriggerController.kt$TriggerController$private fun triggerMatchesFlex( triggerValue: Any?, deviceValue: Any, operator: Trigger.OSTriggerOperator, ): Boolean</ID>

OneSignalSDK/detekt/detekt-baseline-notifications.xml

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -137,35 +137,30 @@
137137
<ID>LongParameterList:INotificationGenerationWorkManager.kt$INotificationGenerationWorkManager$( context: Context, osNotificationId: String, androidNotificationId: Int, jsonPayload: JSONObject?, timestamp: Long, isRestoring: Boolean, isHighPriority: Boolean, )</ID>
138138
<ID>LongParameterList:INotificationRepository.kt$INotificationRepository$( id: String, groupId: String?, collapseKey: String?, shouldDismissIdenticals: Boolean, isOpened: Boolean, androidId: Int, title: String?, body: String?, expireTime: Long, jsonPayload: String, )</ID>
139139
<ID>LongParameterList:NotificationLifecycleService.kt$NotificationLifecycleService$( private val _applicationService: IApplicationService, private val _time: ITime, private val _configModelStore: ConfigModelStore, private val _influenceManager: IInfluenceManager, private val _subscriptionManager: ISubscriptionManager, private val _deviceService: IDeviceService, private val _backend: INotificationBackendService, private val _receiveReceiptWorkManager: IReceiveReceiptWorkManager, private val _analyticsTracker: IAnalyticsTracker, )</ID>
140-
<ID>LoopWithTooManyJumpStatements:NotificationLifecycleService.kt$NotificationLifecycleService$for (i in 0 until data.length()) { val notificationId = NotificationFormatHelper.getOSNotificationIdFromJson(data[i] as JSONObject?) ?: continue if (postedOpenedNotifIds.contains(notificationId)) { continue } postedOpenedNotifIds.add(notificationId) suspendifyWithErrorHandling( useIO = true, // or false for CPU operations block = { _backend.updateNotificationAsOpened( appId, notificationId, subscriptionId, deviceType, ) }, onError = { ex -> if (ex is BackendException) { Logging.error("Notification opened confirmation failed with statusCode: ${ex.statusCode} response: ${ex.response}") } else { Logging.error("Unexpected error in notification opened confirmation", ex) } }, ) }</ID>
140+
<ID>LoopWithTooManyJumpStatements:NotificationLifecycleService.kt$NotificationLifecycleService$for (i in 0 until data.length()) { val notificationId = NotificationFormatHelper.getOSNotificationIdFromJson(data[i] as JSONObject?) ?: continue if (postedOpenedNotifIds.contains(notificationId)) { continue } postedOpenedNotifIds.add(notificationId) suspendifyWithErrorHandling( useIO = true, // or false for CPU operations block = { _backend.updateNotificationAsOpened( appId, notificationId, subscriptionId, deviceType, ) }, onError = { ex -> if (ex is BackendException) { Logging.info("Notification opened confirmation failed with statusCode: ${ex.statusCode} response: ${ex.response}") } else { Logging.info("Unexpected error in notification opened confirmation", ex) } }, ) }</ID>
141141
<ID>MagicNumber:FirebaseAnalyticsTracker.kt$FirebaseAnalyticsTracker$1000</ID>
142142
<ID>MagicNumber:FirebaseAnalyticsTracker.kt$FirebaseAnalyticsTracker$30</ID>
143143
<ID>MagicNumber:FirebaseAnalyticsTracker.kt$FirebaseAnalyticsTracker$60</ID>
144144
<ID>MagicNumber:Notification.kt$Notification$1000</ID>
145145
<ID>MagicNumber:NotificationBundleProcessor.kt$NotificationBundleProcessor$1000L</ID>
146-
<ID>MagicNumber:NotificationBundleProcessor.kt$NotificationBundleProcessor$9</ID>
147146
<ID>MagicNumber:NotificationChannelManager.kt$NotificationChannelManager$16</ID>
148-
<ID>MagicNumber:NotificationChannelManager.kt$NotificationChannelManager$3</ID>
149-
<ID>MagicNumber:NotificationChannelManager.kt$NotificationChannelManager$5</ID>
150147
<ID>MagicNumber:NotificationChannelManager.kt$NotificationChannelManager$6</ID>
151-
<ID>MagicNumber:NotificationChannelManager.kt$NotificationChannelManager$7</ID>
152-
<ID>MagicNumber:NotificationChannelManager.kt$NotificationChannelManager$9</ID>
153148
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$1000L</ID>
154149
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$16</ID>
155150
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$2000</ID>
156151
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$3</ID>
157-
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$4</ID>
158152
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$5000</ID>
159153
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$6</ID>
160-
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$7</ID>
161-
<ID>MagicNumber:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$9</ID>
162154
<ID>MagicNumber:NotificationDisplayer.kt$NotificationDisplayer$16</ID>
163155
<ID>MagicNumber:NotificationDisplayer.kt$NotificationDisplayer$3</ID>
164156
<ID>MagicNumber:NotificationDisplayer.kt$NotificationDisplayer$5000</ID>
165157
<ID>MagicNumber:NotificationGenerationProcessor.kt$NotificationGenerationProcessor$1000</ID>
166158
<ID>MagicNumber:NotificationGenerationProcessor.kt$NotificationGenerationProcessor$1000L</ID>
167159
<ID>MagicNumber:NotificationGenerationWorkManager.kt$NotificationGenerationWorkManager.NotificationGenerationWorker$1000L</ID>
168160
<ID>MagicNumber:NotificationHelper.kt$NotificationHelper$10</ID>
161+
<ID>MagicNumber:NotificationPriorityMapper.kt$NotificationPriorityMapper$3</ID>
162+
<ID>MagicNumber:NotificationPriorityMapper.kt$NotificationPriorityMapper$5</ID>
163+
<ID>MagicNumber:NotificationPriorityMapper.kt$NotificationPriorityMapper$7</ID>
169164
<ID>MagicNumber:NotificationQueryHelper.kt$NotificationQueryHelper$1000L</ID>
170165
<ID>MagicNumber:NotificationQueryHelper.kt$NotificationQueryHelper$604800L</ID>
171166
<ID>MagicNumber:NotificationRepository.kt$NotificationRepository$1000L</ID>
@@ -194,8 +189,6 @@
194189
<ID>ReturnCount:GenerateNotificationOpenIntent.kt$GenerateNotificationOpenIntent$private fun getIntentAppOpen(): Intent?</ID>
195190
<ID>ReturnCount:NotificationChannelManager.kt$NotificationChannelManager$override fun createNotificationChannel(notificationJob: NotificationGenerationJob): String</ID>
196191
<ID>ReturnCount:NotificationChannelManager.kt$NotificationChannelManager$override fun processChannelList(list: JSONArray?)</ID>
197-
<ID>ReturnCount:NotificationChannelManager.kt$NotificationChannelManager$private fun priorityToImportance(priority: Int): Int</ID>
198-
<ID>ReturnCount:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$private fun convertOSToAndroidPriority(priority: Int): Int</ID>
199192
<ID>ReturnCount:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$private fun getAccentColor(fcmJson: JSONObject): BigInteger?</ID>
200193
<ID>ReturnCount:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$private fun getBitmapFromAssetsOrResourceName(bitmapStr: String): Bitmap?</ID>
201194
<ID>ReturnCount:NotificationDisplayBuilder.kt$NotificationDisplayBuilder$private fun getResourceIcon(iconName: String?): Int</ID>
@@ -213,6 +206,8 @@
213206
<ID>ReturnCount:NotificationHelper.kt$NotificationHelper$fun getNotificationIdFromFCMJson(fcmJson: JSONObject?): String?</ID>
214207
<ID>ReturnCount:NotificationLifecycleService.kt$NotificationLifecycleService$private fun shouldInitDirectSessionFromNotificationOpen(context: Activity): Boolean</ID>
215208
<ID>ReturnCount:NotificationPermissionController.kt$NotificationPermissionController$override suspend fun prompt(fallbackToSettings: Boolean): Boolean</ID>
209+
<ID>ReturnCount:NotificationPriorityMapper.kt$NotificationPriorityMapper$fun toAndroidImportance(osPriority: Int): Int</ID>
210+
<ID>ReturnCount:NotificationPriorityMapper.kt$NotificationPriorityMapper$fun toAndroidPriority(osPriority: Int): Int</ID>
216211
<ID>ReturnCount:NotificationRestoreProcessor.kt$NotificationRestoreProcessor$private fun getVisibleNotifications(): List&lt;Int>?</ID>
217212
<ID>ReturnCount:NotificationRestoreWorkManager.kt$NotificationRestoreWorkManager.NotificationRestoreWorker$override suspend fun doWork(): Result</ID>
218213
<ID>ReturnCount:NotificationSummaryManager.kt$NotificationSummaryManager$private suspend fun internalUpdateSummaryNotificationAfterChildRemoved( group: String, dismissed: Boolean, )</ID>
@@ -247,6 +242,7 @@
247242
<ID>TooGenericExceptionCaught:NotificationGenerationProcessor.kt$NotificationGenerationProcessor$t: Throwable</ID>
248243
<ID>TooGenericExceptionCaught:NotificationHelper.kt$NotificationHelper$e: Throwable</ID>
249244
<ID>TooGenericExceptionCaught:NotificationHelper.kt$NotificationHelper$t: Throwable</ID>
245+
<ID>TooGenericExceptionCaught:NotificationLifecycleService.kt$NotificationLifecycleService$e: Exception</ID>
250246
<ID>TooGenericExceptionCaught:NotificationLimitManager.kt$NotificationLimitManager$t: Throwable</ID>
251247
<ID>TooGenericExceptionCaught:NotificationRepository.kt$NotificationRepository$t: Throwable</ID>
252248
<ID>TooGenericExceptionCaught:NotificationRestoreProcessor.kt$NotificationRestoreProcessor$t: Throwable</ID>
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<SmellBaseline>
3+
<ManuallySuppressedIssues/>
4+
<CurrentIssues>
5+
<ID>LongParameterList:OtelLoggingHelper.kt$OtelLoggingHelper$( telemetry: IOtelOpenTelemetryRemote, level: String, message: String, exceptionType: String? = null, exceptionMessage: String? = null, exceptionStacktrace: String? = null, )</ID>
6+
<ID>ReturnCount:OtelConfigRemoteOneSignal.kt$OtelConfigRemoteOneSignal.ExporterLoggingConfig.LoggingLogRecordExporter$@Suppress("TooGenericExceptionCaught") private fun resolveHttpFailureMessage(throwable: Throwable?): String</ID>
7+
<ID>TooGenericExceptionCaught:OtelCrashHandler.kt$OtelCrashHandler$t: Throwable</ID>
8+
<ID>UndocumentedPublicFunction:IOtelCrashReporter.kt$IOtelCrashReporter$suspend fun saveCrash(thread: Thread, throwable: Throwable)</ID>
9+
</CurrentIssues>
10+
</SmellBaseline>

0 commit comments

Comments
 (0)