ComplexCondition:HttpUriParser.kt$HttpUriParser$!compressionEnabled && beginSegmentsCount + endSegmentsCount == 8 || compressionEnabled && beginSegmentsCount + endSegmentsCount < 8 ComplexCondition:MessageListFragment.kt$MessageListFragment$operation == FolderOperation.MOVE && !messagingController.isMoveCapable(account) || operation == FolderOperation.COPY && !messagingController.isCopyCapable(account) ComplexCondition:MessageListFragment.kt$MessageListFragment$operation == FolderOperation.MOVE && !messagingController.isMoveCapable(message) || operation == FolderOperation.COPY && !messagingController.isCopyCapable(message) ComplexCondition:MimeHeaderParser.kt$MimeHeaderParser$!endReached() && peek().let { it.isWsp() || it == CR || it == LF } ComplexCondition:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$incomingUriTemplate != null && incomingUsernameTemplate != null && outgoingUriTemplate != null && outgoingUsernameTemplate != null ComplexCondition:RealOAuth2TokenProvider.kt$RealOAuth2TokenProvider$authException == GeneralErrors.NETWORK_ERROR || authException == GeneralErrors.SERVER_ERROR || authException == AuthorizationRequestErrors.SERVER_ERROR || authException == AuthorizationRequestErrors.TEMPORARILY_UNAVAILABLE ComplexCondition:SmtpTransport.kt$SmtpTransport$inputStream != null || outputStream != null || socket != null || responseParser != null ComplexCondition:SmtpTransport.kt$SmtpTransport$username.isNotEmpty() && (!password.isNullOrEmpty() || AuthType.EXTERNAL == authType || AuthType.XOAUTH2 == authType) ComplexCondition:StorageMigrationTo19.kt$StorageMigrationTo19$incomingServerSettings["type"] == "imap" && incomingServerSettings["host"] in setOf("imap.gmail.com", "imap.googlemail.com") && incomingServerSettings["authenticationType"] != "XOAUTH2" || outgoingServerSettings["host"] in setOf("smtp.gmail.com", "smtp.googlemail.com") && outgoingServerSettings["authenticationType"] != "XOAUTH2" ComplexCondition:TextInputLayoutExtensions.kt$text != null && before > 0 && (text.isEmpty() || text.length - count == 0) ComplexCondition:TouchInterceptView.kt$TouchInterceptView$absoluteDeltaY > touchSlop && absoluteDeltaY > absoluteDeltaX && (scrollView.canScrollVertically(deltaY.toInt()) || webView.canScrollVertically(deltaY.toInt())) ComplexCondition:build.gradle.kts$project.hasProperty("k9mail.keyAlias") && project.hasProperty("k9mail.keyPassword") && project.hasProperty("k9mail.storeFile") && project.hasProperty("k9mail.storePassword") ConstructorParameterNaming:MessageTopView.kt$MessageTopView.SavedState$`in`: Parcel CyclomaticComplexMethod:AccountSettingsDataStore.kt$AccountSettingsDataStore$override fun getBoolean(key: String, defValue: Boolean): Boolean CyclomaticComplexMethod:AccountSettingsDataStore.kt$AccountSettingsDataStore$override fun getString(key: String, defValue: String?): String? CyclomaticComplexMethod:AccountSettingsDataStore.kt$AccountSettingsDataStore$override fun putBoolean(key: String, value: Boolean) CyclomaticComplexMethod:AccountSettingsDataStore.kt$AccountSettingsDataStore$override fun putString(key: String, value: String?) CyclomaticComplexMethod:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$private fun acceptKeyDialog(msgResId: Int, exception: CertificateValidationException) CyclomaticComplexMethod:FlowedMessageUtils.kt$FlowedMessageUtils$@JvmStatic fun deflow(text: String, delSp: Boolean): String CyclomaticComplexMethod:GeneralSettingsDataStore.kt$GeneralSettingsDataStore$override fun getBoolean(key: String, defValue: Boolean): Boolean CyclomaticComplexMethod:GeneralSettingsDataStore.kt$GeneralSettingsDataStore$override fun getString(key: String, defValue: String?): String? CyclomaticComplexMethod:GeneralSettingsDataStore.kt$GeneralSettingsDataStore$override fun getStringSet(key: String, defValues: Set<String>?): Set<String>? CyclomaticComplexMethod:GeneralSettingsDataStore.kt$GeneralSettingsDataStore$override fun putBoolean(key: String, value: Boolean) CyclomaticComplexMethod:GeneralSettingsDataStore.kt$GeneralSettingsDataStore$override fun putString(key: String, value: String?) CyclomaticComplexMethod:HttpUriParser.kt$HttpUriParser$private fun tryMatchIpv6Address(text: CharSequence, startPos: Int): Int CyclomaticComplexMethod:ImapSync.kt$ImapSync$private fun synchronizeMailboxSynchronous(folder: String, syncConfig: SyncConfig, listener: SyncListener) CyclomaticComplexMethod:K9NotificationStrategy.kt$K9NotificationStrategy$override fun shouldNotifyForMessage( account: Account, localFolder: LocalFolder, message: LocalMessage, isOldMessage: Boolean, ): Boolean CyclomaticComplexMethod:MessageList.kt$MessageList$private fun decodeExtrasToLaunchData(intent: Intent): LaunchData CyclomaticComplexMethod:MessageList.kt$MessageList$private fun onCustomKeyDown(event: KeyEvent): Boolean CyclomaticComplexMethod:MessageListAdapter.kt$MessageListAdapter$private fun bindMessageViewHolder(holder: MessageViewHolder, messageListItem: MessageListItem) CyclomaticComplexMethod:MessageListFragment.kt$MessageListFragment$override fun onOptionsItemSelected(item: MenuItem): Boolean CyclomaticComplexMethod:MessagePartDatabaseHelpers.kt$MessagePartEntry$override fun equals(other: Any?): Boolean CyclomaticComplexMethod:MessagePartDatabaseHelpers.kt$MessagePartEntry$override fun hashCode(): Int CyclomaticComplexMethod:MessageViewFragment.kt$MessageViewFragment$override fun onOptionsItemSelected(item: MenuItem): Boolean CyclomaticComplexMethod:Migrations.kt$Migrations$@JvmStatic fun upgradeDatabase(db: SQLiteDatabase, migrationsHelper: MigrationsHelper) CyclomaticComplexMethod:MimeParameterDecoder.kt$MimeParameterDecoder$private fun convertToParameterSection(parameterName: String, parameterValue: ParameterValue): ParameterSection? CyclomaticComplexMethod:PushController.kt$PushController$private fun updatePushers() CyclomaticComplexMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun appendMessages(messages: List<Message>): Map<String, String>? CyclomaticComplexMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun fetch( messages: List<ImapMessage>, fetchProfile: FetchProfile, listener: FetchListener?, maxDownloadSize: Int, ) CyclomaticComplexMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) private fun handleFetchResponse(message: ImapMessage, fetchList: ImapList): Any? CyclomaticComplexMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) private fun parseBodyStructure(bs: ImapList, part: Part, id: String) CyclomaticComplexMethod:RealImapStore.kt$RealImapStore$@Throws(IOException::class, MessagingException::class) private fun listFolders(connection: ImapConnection, subscribedOnly: Boolean): List<FolderListItem> CyclomaticComplexMethod:SettingsExporter.kt$SettingsExporter$private fun writeAccount(serializer: XmlSerializer, account: Account, prefs: Map<String, Any>) CyclomaticComplexMethod:SettingsImportFragment.kt$SettingsImportFragment$private fun ViewHolder.updateUi(model: SettingsImportUiModel) CyclomaticComplexMethod:SmtpTransport.kt$SmtpTransport$@VisibleForTesting @Throws(MessagingException::class) internal fun open() CyclomaticComplexMethod:SortTypeToastProvider.kt$SortTypeToastProvider$fun getToast(sortType: SortType, ascending: Boolean): Int CyclomaticComplexMethod:StorageMigrations.kt$StorageMigrations$@JvmStatic fun upgradeDatabase(db: SQLiteDatabase, migrationsHelper: StorageMigrationsHelper) CyclomaticComplexMethod:TouchInterceptView.kt$TouchInterceptView$private fun handleOnInterceptTouchEvent(event: MotionEvent) DestructuringDeclarationWithTooManyEntries:RetrieveFolderOperationsTest.kt$RetrieveFolderOperationsTest$val (folderId1, folderId2, folderId3, folderId4) = listOf( sqliteDatabase.createFolder(name = "Folder 1", displayClass = "FIRST_CLASS"), sqliteDatabase.createFolder(name = "Folder 2", displayClass = "SECOND_CLASS"), sqliteDatabase.createFolder(name = "Folder 3", displayClass = "FIRST_CLASS"), sqliteDatabase.createFolder(name = "Folder 4", displayClass = "NO_CLASS"), ) ForbiddenComment:AccountSetupCheckSettings.kt$AccountSetupCheckSettings.CheckAccountTask$* FIXME: Don't use an AsyncTask to perform network operations. * See also discussion in https://github.com/thundernest/k-9/pull/560 ForbiddenComment:BackendFolder.kt$BackendFolder$// FIXME: add documentation ForbiddenComment:CommandSync.kt$CommandSync$// FIXME: Add sort parameter ForbiddenComment:K9BackendFolderTest.kt$K9BackendFolderTest$// FIXME: This is a hack to get Preferences into a state where it's safe to call newAccount() ForbiddenComment:K9BackendStorageTest.kt$K9BackendStorageTest$// FIXME: This is a hack to get Preferences into a state where it's safe to call newAccount() ForbiddenComment:MessageDetailsFragment.kt$MessageDetailsFragment$// FIXME: Replace this with a mechanism that survives process death ForbiddenComment:MessageListFragment.kt$MessageListFragment$// FIXME: Don't save the changes in the UI thread ForbiddenComment:RealImapConnectionTest.kt$RealImapConnectionTest$// FIXME: CertificateValidationException seems wrong ForbiddenComment:RealImapConnectionTest.kt$RealImapConnectionTest$// FIXME: improve exception message ForbiddenComment:SmtpTransportTest.kt$SmtpTransportTest$// FIXME: Make sure connection was closed FunctionOnlyReturningConstant:DisplayHtml.kt$DisplayHtml$private fun cssStyleSignature(): String FunctionOnlyReturningConstant:ExtraAccountDiscovery.kt$ExtraAccountDiscovery$@JvmStatic fun discover(email: String): ConnectionSettings? ImplicitDefaultLocale:MessageListAdapter.kt$MessageListAdapter$String.format("%d", threadCount) ImplicitDefaultLocale:MessageListItemMapper.kt$MessageListItemMapper$String.format("%d %s", dayOfMonth, month) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format( "%s 1:* %sFLAGS.SILENT (%s)", Commands.UID_STORE, if (value) "+" else "-", combinedFlags, ) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("%s %s", openCommand, escapedFolderName) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("%sFLAGS.SILENT (%s)", if (value) "+" else "-", combinedFlags) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format(";\r\n %s=%s", paramName, encodedValue) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("BODY.PEEK[%s]", partId) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("CREATE %s", escapedFolderName) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("STATUS %s (RECENT)", escapedFolderName) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("STATUS %s (UIDVALIDITY)", escapedFolderName) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("UID FETCH %s (%s)", commaSeparatedUids, spaceSeparatedFetchFields) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("UID FETCH %s (UID %s)", message.uid, fetch) ImplicitDefaultLocale:RealImapFolder.kt$RealImapFolder$String.format("UID SEARCH HEADER MESSAGE-ID %s", ImapUtility.encodeString(messageId)) ImplicitDefaultLocale:SettingsExporter.kt$SettingsExporter$String.format("%s_%s.%s", EXPORT_FILENAME_PREFIX, dateFormat.format(now.time), EXPORT_FILENAME_SUFFIX) ImplicitDefaultLocale:SmtpTransport.kt$SmtpTransport$String.format("MAIL FROM:<%s> BODY=8BITMIME", fromAddress) ImplicitDefaultLocale:SmtpTransport.kt$SmtpTransport$String.format("MAIL FROM:<%s>", fromAddress) ImplicitDefaultLocale:SmtpTransport.kt$SmtpTransport$String.format("RCPT TO:<%s>", address) LargeClass:MessageList.kt$MessageList : K9ActivityMessageListFragmentListenerMessageViewFragmentListenerMessageViewContainerListenerOnBackStackChangedListenerOnSwitchCompleteListenerPermissionUiHelper LargeClass:MessageListFragment.kt$MessageListFragment : FragmentConfirmationDialogFragmentListenerMessageListItemActionListener LargeClass:RealImapConnection.kt$RealImapConnection : ImapConnection LargeClass:RealImapConnectionTest.kt$RealImapConnectionTest LargeClass:RealImapFolder.kt$RealImapFolder : ImapFolder LargeClass:RealImapFolderTest.kt$RealImapFolderTest LargeClass:SmtpTransportTest.kt$SmtpTransportTest LongMethod:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$@Synchronized fun delete(editor: StorageEditor, storage: Storage, account: Account) LongMethod:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$@Synchronized fun loadAccount(account: Account, storage: Storage) LongMethod:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$@Synchronized fun save(editor: StorageEditor, storage: Storage, account: Account) LongMethod:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$fun loadDefaults(account: Account) LongMethod:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$private fun acceptKeyDialog(msgResId: Int, exception: CertificateValidationException) LongMethod:CopyMessageOperations.kt$CopyMessageOperations$private fun readMessageToContentValues(database: SQLiteDatabase, messageId: Long): ContentValues LongMethod:CopyMessageOperationsTest.kt$CopyMessageOperationsTest$@Test fun `copy message into an existing thread`() LongMethod:CopyMessageOperationsTest.kt$CopyMessageOperationsTest$@Test fun `copy message that is part of a thread`() LongMethod:ImapSync.kt$ImapSync$private fun downloadMessages( syncConfig: SyncConfig, remoteFolder: ImapFolder, backendFolder: BackendFolder, inputMessages: List<ImapMessage>, highestKnownUid: Long?, listener: SyncListener, ) LongMethod:ImapSync.kt$ImapSync$private fun synchronizeMailboxSynchronous(folder: String, syncConfig: SyncConfig, listener: SyncListener) LongMethod:K9NotificationStrategy.kt$K9NotificationStrategy$override fun shouldNotifyForMessage( account: Account, localFolder: LocalFolder, message: LocalMessage, isOldMessage: Boolean, ): Boolean LongMethod:MessageContainerView.kt$MessageContainerView$private fun createImageMenu(menu: ContextMenu, imageUrl: String?) LongMethod:MessageList.kt$MessageList$private fun decodeExtrasToLaunchData(intent: Intent): LaunchData LongMethod:MessageList.kt$MessageList$private fun onCustomKeyDown(event: KeyEvent): Boolean LongMethod:MessageList.kt$MessageList$public override fun onCreate(savedInstanceState: Bundle?) LongMethod:MessageListAdapter.kt$MessageListAdapter$private fun bindMessageViewHolder(holder: MessageViewHolder, messageListItem: MessageListItem) LongMethod:MessageListRepositoryTest.kt$MessageListRepositoryTest$@Test fun `getThread() should use flag values from the cache`() LongMethod:MessageTest.kt$MessageTest$@Test fun toBodyPart() LongMethod:MessageTest.kt$MessageTest$@Test fun writeTo_withNestedMessage() LongMethod:MessageViewFragment.kt$MessageViewFragment$override fun onPrepareOptionsMenu(menu: Menu) LongMethod:MoveMessageOperationsTest.kt$MoveMessageOperationsTest$@Test fun `move message when destination has empty message entry`() LongMethod:NotificationDataStore.kt$NotificationDataStore$@Synchronized fun removeNotifications( account: Account, selector: (List<MessageReference>) -> List<MessageReference>, ): RemoveNotificationsResult? LongMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun appendMessages(messages: List<Message>): Map<String, String>? LongMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun fetch( messages: List<ImapMessage>, fetchProfile: FetchProfile, listener: FetchListener?, maxDownloadSize: Int, ) LongMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) private fun handleFetchResponse(message: ImapMessage, fetchList: ImapList): Any? LongMethod:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) private fun parseBodyStructure(bs: ImapList, part: Part, id: String) LongMethod:RealImapFolderIdler.kt$RealImapFolderIdler$private fun ImapFolder.idle(): IdleResult LongMethod:RecipientNamesView.kt$RecipientNamesView$override fun onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int) LongMethod:RetrieveMessageListOperations.kt$RetrieveMessageListOperations$fun <T> getThreadedMessages( selection: String, selectionArgs: Array<String>, sortOrder: String, mapper: MessageMapper<out T?>, ): List<T> LongMethod:SaveMessageOperationsTest.kt$SaveMessageOperationsTest$@Test fun `save local message`() LongMethod:SaveMessageOperationsTest.kt$SaveMessageOperationsTest$@Test fun `save message with multipart body`() LongMethod:SaveMessageOperationsTest.kt$SaveMessageOperationsTest$@Test fun `save message with text_plain body`() LongMethod:SettingsExporter.kt$SettingsExporter$private fun writeAccount(serializer: XmlSerializer, account: Account, prefs: Map<String, Any>) LongMethod:SmtpResponseParser.kt$SmtpResponseParser$fun readHelloResponse(): SmtpHelloResponse LongMethod:SmtpTransport.kt$SmtpTransport$@Throws(MessagingException::class) fun sendMessage(message: Message) LongMethod:SmtpTransport.kt$SmtpTransport$@VisibleForTesting @Throws(MessagingException::class) internal fun open() LongMethod:SrvServiceDiscoveryTest.kt$SrvServiceDiscoveryTest$@Test fun discover_withRequiredServices_shouldCorrectlyPrioritize() LongMethod:TextBodyBuilderTest.kt$TextBodyBuilderTest.Companion$@JvmStatic @Parameterized.Parameters(name = "{index}: {0}") fun data(): Collection<TestData> LongMethod:ThreadMessageOperationsTest.kt$ThreadMessageOperationsTest$@Test fun `merge two existing threads`() LongParameterList:CopyMessageOperations.kt$DatabaseMessagePart$( val id: Long, val type: Int, val root: Long, val parent: Long, val seq: Int, val mimeType: String?, val decodedBodySize: Long?, val displayName: String?, val header: ByteArray?, val encoding: String?, val charset: String?, val dataLocation: Int, val data: ByteArray?, val preamble: ByteArray?, val epilogue: ByteArray?, val boundary: String?, val contentId: String?, val serverExtra: String?, ) LongParameterList:FolderHelpers.kt$( name: String = "irrelevant", type: String = "regular", serverId: String? = null, isLocalOnly: Boolean = true, integrate: Boolean = false, inTopGroup: Boolean = false, displayClass: String = "NO_CLASS", syncClass: String? = "INHERITED", notifyClass: String? = "INHERITED", pushClass: String? = "SECOND_CLASS", lastUpdated: Long = 0L, unreadCount: Int = 0, visibleLimit: Int = 25, status: String? = null, flaggedCount: Int = 0, moreMessages: String = "unknown", ) LongParameterList:ImapSync.kt$ImapSync$( remoteFolder: ImapFolder, backendFolder: BackendFolder, largeMessages: List<ImapMessage>, progress: AtomicInteger, downloadedMessageCount: AtomicInteger, todo: Int, highestKnownUid: Long?, listener: SyncListener, maxDownloadSize: Int, ) LongParameterList:ImapSync.kt$ImapSync$( remoteFolder: ImapFolder, backendFolder: BackendFolder, smallMessages: List<ImapMessage>, progress: AtomicInteger, downloadedMessageCount: AtomicInteger, todo: Int, highestKnownUid: Long?, listener: SyncListener, ) LongParameterList:ImapSync.kt$ImapSync$( syncConfig: SyncConfig, remoteFolder: ImapFolder, unsyncedMessages: List<ImapMessage>, smallMessages: MutableList<ImapMessage>, largeMessages: MutableList<ImapMessage>, progress: AtomicInteger, todo: Int, listener: SyncListener, ) LongParameterList:MessageDatabaseHelpers.kt$( folderId: Long, deleted: Boolean = false, uid: String? = null, subject: String = "", date: Long = 0L, flags: String = "", senderList: String = "", toList: String = "", ccList: String = "", bccList: String = "", replyToList: String = "", attachmentCount: Int = 0, internalDate: Long = 0L, messageIdHeader: String? = null, previewType: DatabasePreviewType = DatabasePreviewType.NONE, preview: String = "", mimeType: String = "text/plain", normalizedSubjectHash: Long = 0L, empty: Boolean = false, read: Boolean = false, flagged: Boolean = false, answered: Boolean = false, forwarded: Boolean = false, messagePartId: Long = 0L, encryptionType: String? = null, newMessage: Boolean = false, ) LongParameterList:MessageDatabaseHelpers.kt$( type: Int = 0, root: Int? = null, parent: Int = -1, seq: Int = 0, mimeType: String = "text/plain", decodedBodySize: Int = 0, displayName: String? = null, header: String? = null, encoding: String = "7bit", charset: String? = null, dataLocation: Int = 0, data: ByteArray? = null, preamble: String? = null, epilogue: String? = null, boundary: String? = null, contentId: String? = null, serverExtra: String? = null, directory: File? = null, ) LongParameterList:MessageDetailsViewModel.kt$MessageDetailsViewModel$( private val resources: Resources, private val messageRepository: MessageRepository, private val folderRepository: FolderRepository, private val contactSettingsProvider: ContactSettingsProvider, private val contactRepository: ContactRepository, private val contactPermissionResolver: ContactPermissionResolver, private val clipboardManager: ClipboardManager, private val accountManager: AccountManager, private val participantFormatter: MessageDetailsParticipantFormatter, private val folderNameFormatter: FolderNameFormatter, ) LongParameterList:MessageListAdapterTest.kt$MessageListAdapterTest$( account: Account = Account(SOME_ACCOUNT_UUID), subject: String? = "irrelevant", threadCount: Int = 0, messageDate: Long = 0L, internalDate: Long = 0L, displayName: CharSequence = "irrelevant", displayAddress: Address? = Address.parse("irrelevant@domain.example").first(), previewText: String = "irrelevant", isMessageEncrypted: Boolean = false, isRead: Boolean = false, isStarred: Boolean = false, isAnswered: Boolean = false, isForwarded: Boolean = false, hasAttachments: Boolean = false, uniqueId: Long = 0L, folderId: Long = 0L, messageUid: String = "irrelevant", databaseId: Long = 0L, threadRoot: Long = 0L, ) LongParameterList:MessageListAdapterTest.kt$MessageListAdapterTest$( fontSizes: FontSizes = createFontSizes(), previewLines: Int = 0, stars: Boolean = true, senderAboveSubject: Boolean = false, showContactPicture: Boolean = true, showingThreadedList: Boolean = true, backGroundAsReadIndicator: Boolean = false, showAccountChip: Boolean = false, density: UiDensity = UiDensity.Default, ) LongParameterList:MessagePartDatabaseHelpers.kt$( type: Int = MessagePartType.UNKNOWN, root: Long? = null, parent: Long = -1, seq: Int = 0, mimeType: String? = null, decodedBodySize: Int? = null, displayName: String? = null, header: String? = null, encoding: String? = null, charset: String? = null, dataLocation: Int = DataLocation.MISSING, data: ByteArray? = null, preamble: String? = null, epilogue: String? = null, boundary: String? = null, contentId: String? = null, serverExtra: String? = null, ) LongParameterList:PasswordPromptDialogFragment.kt$PasswordPromptDialogFragment.Companion$( accountUuid: String, accountName: String, inputIncomingServerPassword: Boolean, incomingServerName: String?, inputOutgoingServerPassword: Boolean, outgoingServerName: String?, targetFragment: Fragment, requestCode: Int, ) LongParameterList:PushController.kt$PushController$( private val preferences: Preferences, private val generalSettingsManager: GeneralSettingsManager, private val backendManager: BackendManager, private val pushServiceManager: PushServiceManager, private val bootCompleteManager: BootCompleteManager, private val autoSyncManager: AutoSyncManager, private val pushNotificationManager: PushNotificationManager, private val connectivityManager: ConnectivityManager, private val accountPushControllerFactory: AccountPushControllerFactory, private val coroutineScope: CoroutineScope = GlobalScope, private val coroutineDispatcher: CoroutineDispatcher = Executors.newSingleThreadExecutor().asCoroutineDispatcher(), ) LongParameterList:RecipientPresenter.kt$RecipientPresenter$( private val context: Context, loaderManager: LoaderManager, private val openPgpApiManager: OpenPgpApiManager, private val recipientMvpView: RecipientMvpView, account: Account, private val composePgpInlineDecider: ComposePgpInlineDecider, private val composePgpEnableByDefaultDecider: ComposePgpEnableByDefaultDecider, private val autocryptStatusInteractor: AutocryptStatusInteractor, private val replyToParser: ReplyToParser, private val draftStateHeaderParser: AutocryptDraftStateHeaderParser, ) LongParameterList:SaveMessageOperationsTest.kt$SaveMessageOperationsTest$( subject: String? = getSubject(), date: Long = sentDate?.time ?: System.currentTimeMillis(), internalDate: Long = date, downloadState: MessageDownloadState = getDownloadState(), attachmentCount: Int = 0, previewResult: PreviewResult = PreviewResult.none(), textForSearchIndex: String? = null, encryptionType: String? = null, ) LongParameterList:SettingsImportViewModel.kt$SavedAccountState$( val accountIndex: Int, val displayName: String, val accountUuid: String, val selected: Boolean, val importStatus: ImportStatus, val incomingServerName: String?, val outgoingServerName: String?, val incomingServerPasswordNeeded: Boolean, val outgoingServerPasswordNeeded: Boolean, ) LoopWithTooManyJumpStatements:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$for (subjectAlternativeName in subjectAlternativeNames) { val type = subjectAlternativeName[0] as Int val value: Any? = subjectAlternativeName[1] val name: String = when (type) { 0 -> { Timber.w("SubjectAltName of type OtherName not supported.") continue } 1 -> value as String 2 -> value as String 3 -> { Timber.w("unsupported SubjectAltName of type x400Address") continue } 4 -> { Timber.w("unsupported SubjectAltName of type directoryName") continue } 5 -> { Timber.w("unsupported SubjectAltName of type ediPartyName") continue } 6 -> value as String 7 -> value as String else -> { Timber.w("unsupported SubjectAltName of unknown type") continue } } // if some of the SubjectAltNames match the store or transport -host, display them if (name.equals(incomingServerHost, ignoreCase = true) || name.equals(outgoingServerHost, ignoreCase = true) ) { // TODO: localize this string altNamesText.append("Subject(alt): ").append(name).append(",...\n") } else if (name.startsWith("*.") && ( incomingServerHost.endsWith(name.substring(2)) || outgoingServerHost.endsWith(name.substring(2)) ) ) { // TODO: localize this string altNamesText.append("Subject(alt): ").append(name).append(",...\n") } } LoopWithTooManyJumpStatements:HttpUriParser.kt$HttpUriParser$while (currentPos < text.length) { val c = text[currentPos] if (isHexDigit(c)) { shouldBeHex = (shouldBeHex - 1).coerceAtLeast(0) } else if (shouldBeHex == 0) { if (c in allowedCharacters) { // Everything ok here :) } else if (c == '%') { shouldBeHex = 2 } else { break } } else { break } currentPos++ } LoopWithTooManyJumpStatements:RealImapStore.kt$RealImapStore$for (listResponse in listResponses) { val serverId = listResponse.name if (pathDelimiter == null) { pathDelimiter = listResponse.hierarchyDelimiter combinedPrefix = null } if (RealImapFolder.INBOX.equals(serverId, ignoreCase = true)) { continue } else if (listResponse.hasAttribute("\\NoSelect")) { continue } val name = getFolderDisplayName(serverId) val oldServerId = getOldServerId(serverId) val type = when { listResponse.hasAttribute("\\Archive") -> FolderType.ARCHIVE listResponse.hasAttribute("\\All") -> FolderType.ARCHIVE listResponse.hasAttribute("\\Drafts") -> FolderType.DRAFTS listResponse.hasAttribute("\\Sent") -> FolderType.SENT listResponse.hasAttribute("\\Junk") -> FolderType.SPAM listResponse.hasAttribute("\\Trash") -> FolderType.TRASH else -> FolderType.REGULAR } val existingItem = folderMap[serverId] if (existingItem == null || existingItem.type == FolderType.REGULAR) { folderMap[serverId] = FolderListItem(serverId, name, type, oldServerId) } } LoopWithTooManyJumpStatements:SettingsExporter.kt$SettingsExporter$for ((key, value) in prefs) { val valueString = value.toString() val comps = key.split(".") if (comps.size < 3) { // Skip non-identity config entries continue } val keyUuid = comps[0] val identityKey = comps[1] val identityIndex = comps[2] if (keyUuid != accountUuid || identityIndex != identity) { // Skip entries that belong to another identity continue } val versionedSetting = IdentitySettingsDescriptions.SETTINGS[identityKey] if (versionedSetting != null) { val highestVersion = versionedSetting.lastKey() val setting = versionedSetting[highestVersion] if (setting != null) { // Only write settings that have an entry in IdentitySettings.SETTINGS try { writeKeyAndPrettyValueFromSetting(serializer, identityKey, setting, valueString) } catch (e: InvalidSettingValueException) { Timber.w( "Identity setting \"%s\" has invalid value \"%s\" in preference storage. " + "This shouldn't happen!", identityKey, valueString, ) } } } } LoopWithTooManyJumpStatements:SettingsExporter.kt$SettingsExporter$for ((key, value) in prefs) { val valueString = value.toString() val comps = key.split(".", limit = 2) if (comps.size < 2) { // Skip global settings continue } val keyUuid = comps[0] val keyPart = comps[1] if (keyUuid != accountUuid) { // Setting doesn't belong to the account we're currently writing. continue } val indexOfLastDot = keyPart.lastIndexOf(".") val hasThirdPart = indexOfLastDot != -1 && indexOfLastDot < keyPart.length - 1 if (hasThirdPart) { val secondPart = keyPart.substring(0, indexOfLastDot) val thirdPart = keyPart.substring(indexOfLastDot + 1) if (secondPart == IDENTITY_EMAIL_KEY) { // This is an identity key. Save identity index for later... thirdPart.toIntOrNull()?.let { identities.add(it) } // ... but don't write it now. continue } if (FolderSettingsDescriptions.SETTINGS.containsKey(thirdPart)) { // This is a folder key. Ignore it. continue } } if (keyPart !in FOLDER_NAME_KEYS) { writeAccountSettingIfValid(serializer, keyPart, valueString, account) } } LoopWithTooManyJumpStatements:UnreadWidgetMigrations.kt$UnreadWidgetMigrations$for (widgetId in widgetIds) { val accountUuid = preferences.getString("unread_widget.$widgetId", null) ?: continue val account = accountRepository.getAccount(accountUuid) ?: continue val folderServerId = preferences.getString("unread_widget.$widgetId.folder_name", null) if (folderServerId != null) { val folderId = folderRepository.getFolderId(account, folderServerId) putString("unread_widget.$widgetId.folder_id", folderId?.toString()) } remove("unread_widget.$widgetId.folder_name") } MagicNumber:Account.kt$Account$168 MagicNumber:Account.kt$Account$2 MagicNumber:Account.kt$Account$28 MagicNumber:Account.kt$Account$3 MagicNumber:Account.kt$Account$365 MagicNumber:Account.kt$Account$56 MagicNumber:Account.kt$Account$6 MagicNumber:Account.kt$Account$84 MagicNumber:Account.kt$Account.DeletePolicy.MARK_AS_READ$3 MagicNumber:AccountCreator.kt$AccountCreator$110 MagicNumber:AccountCreator.kt$AccountCreator$143 MagicNumber:AccountCreator.kt$AccountCreator$465 MagicNumber:AccountCreator.kt$AccountCreator$587 MagicNumber:AccountCreator.kt$AccountCreator$993 MagicNumber:AccountCreator.kt$AccountCreator$995 MagicNumber:AccountItem.kt$AccountItem$200L MagicNumber:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$10 MagicNumber:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$24 MagicNumber:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$32768 MagicNumber:AccountPreferenceSerializer.kt$AccountPreferenceSerializer$5 MagicNumber:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$3 MagicNumber:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$4 MagicNumber:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$5 MagicNumber:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$6 MagicNumber:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$7 MagicNumber:AppLanguageManager.kt$AppLanguageManager$3 MagicNumber:AppLanguageManager.kt$AppLanguageManager$5 MagicNumber:AutocryptSetupTransferLiveEvent.kt$AutocryptSetupTransferLiveEvent$2000 MagicNumber:BoundaryGenerator.kt$BoundaryGenerator$36 MagicNumber:BoundaryGenerator.kt$BoundaryGenerator$4 MagicNumber:ChunkedDatabaseOperations.kt$1000 MagicNumber:CollectionExtensions.kt$0.75F MagicNumber:CollectionExtensions.kt$3 MagicNumber:ConfigurationExtensions.kt$24 MagicNumber:ConnectivityManager.kt$23 MagicNumber:ConnectivityManager.kt$24 MagicNumber:ContactLetterBitmapCreator.kt$ContactLetterBitmapCreator$0.65f MagicNumber:ContactLetterBitmapCreator.kt$ContactLetterBitmapCreator$255 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$10 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$11 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$12 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$13 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$14 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$15 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$16 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$17 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$18 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$19 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$20 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$21 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$3 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$4 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$5 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$6 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$7 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$8 MagicNumber:CopyMessageOperations.kt$CopyMessageOperations$9 MagicNumber:DecoderUtil.kt$DecoderUtil$0x1B MagicNumber:DecoderUtil.kt$DecoderUtil$0x28 MagicNumber:DecoderUtil.kt$DecoderUtil$0x42 MagicNumber:EmailTextToHtml.kt$EmailTextToHtml$3 MagicNumber:EmailTextToHtml.kt$EmailTextToHtml$4 MagicNumber:EmailTextToHtml.kt$EmailTextToHtml$5 MagicNumber:GeneralSettingsFragment.kt$GeneralSettingsFragment$28 MagicNumber:Hex.kt$Hex$4 MagicNumber:HttpUriParser.kt$HttpUriParser$10 MagicNumber:HttpUriParser.kt$HttpUriParser$255 MagicNumber:HttpUriParser.kt$HttpUriParser$4 MagicNumber:HttpUriParser.kt$HttpUriParser$5 MagicNumber:HttpUriParser.kt$HttpUriParser$6 MagicNumber:HttpUriParser.kt$HttpUriParser$65535 MagicNumber:HttpUriParser.kt$HttpUriParser$7 MagicNumber:HttpUriParser.kt$HttpUriParser$8 MagicNumber:ImapBackendPusher.kt$ImapBackendPusher$1000L MagicNumber:ImapBackendPusher.kt$ImapBackendPusher$15 MagicNumber:ImapBackendPusher.kt$ImapBackendPusher$60 MagicNumber:InMemoryBackendFolder.kt$InMemoryBackendFolder$25 MagicNumber:K9Activity.kt$K9Activity$31 MagicNumber:K9Drawer.kt$K9Drawer$0x22000000 MagicNumber:K9Drawer.kt$K9Drawer$0xffffff MagicNumber:MailSyncWorkerManager.kt$MailSyncWorkerManager$1000L MagicNumber:MailSyncWorkerManager.kt$MailSyncWorkerManager$60L MagicNumber:MessageBuilderDsl.kt$PartBuilder$1024 MagicNumber:MessageBuilderDsl.kt$PartBuilder$20 MagicNumber:MessageContainerView.kt$MessageContainerView$29 MagicNumber:MessageContainerView.kt$MessageContainerView$3 MagicNumber:MessageListItemAnimator.kt$MessageListItemAnimator$120 MagicNumber:MessageListItemMapper.kt$MessageListItemMapper$52 MagicNumber:MessageReference.kt$MessageReference.Companion$3 MagicNumber:MigrationTo76.kt$MigrationTo76$25 MagicNumber:MigrationTo84.kt$MigrationTo84$3 MagicNumber:MigrationTo84.kt$MigrationTo84$4 MagicNumber:MigrationTo84.kt$MigrationTo84$5 MagicNumber:Migrations.kt$Migrations$62 MagicNumber:Migrations.kt$Migrations$64 MagicNumber:Migrations.kt$Migrations$65 MagicNumber:Migrations.kt$Migrations$66 MagicNumber:Migrations.kt$Migrations$67 MagicNumber:Migrations.kt$Migrations$68 MagicNumber:Migrations.kt$Migrations$69 MagicNumber:Migrations.kt$Migrations$70 MagicNumber:Migrations.kt$Migrations$71 MagicNumber:Migrations.kt$Migrations$72 MagicNumber:Migrations.kt$Migrations$73 MagicNumber:Migrations.kt$Migrations$74 MagicNumber:Migrations.kt$Migrations$75 MagicNumber:Migrations.kt$Migrations$76 MagicNumber:Migrations.kt$Migrations$78 MagicNumber:Migrations.kt$Migrations$79 MagicNumber:Migrations.kt$Migrations$80 MagicNumber:Migrations.kt$Migrations$81 MagicNumber:Migrations.kt$Migrations$82 MagicNumber:Migrations.kt$Migrations$83 MagicNumber:Migrations.kt$Migrations$84 MagicNumber:MimeExtensions.kt$126 MagicNumber:MimeExtensions.kt$33 MagicNumber:MimeExtensions.kt$39 MagicNumber:MimeExtensions.kt$42 MagicNumber:MimeExtensions.kt$90 MagicNumber:MimeExtensions.kt$91 MagicNumber:MimeExtensions.kt$93 MagicNumber:MimeExtensions.kt$94 MagicNumber:MimeHeader.kt$MimeHeader$1024 MagicNumber:MimeHeaderChecker.kt$UnstructuredHeaderChecker$1000 MagicNumber:MimeHeaderChecker.kt$UnstructuredHeaderChecker$998 MagicNumber:MimeHeaderParser.kt$MimeHeaderParser$10 MagicNumber:MimeHeaderParser.kt$MimeHeaderParser$4 MagicNumber:MimeParameterDecoder.kt$MimeParameterDecoder$3 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$126 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$16 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$3 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$33 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$35 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$91 MagicNumber:MimeParameterEncoder.kt$MimeParameterEncoder$93 MagicNumber:NegativeSmtpReplyException.kt$500 MagicNumber:NegativeSmtpReplyException.kt$599 MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0x0000FF MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0x00FF00 MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0x00FFFF MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0x00FFFFFF MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0xFF0000 MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0xFF00FF MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0xFFFF00 MagicNumber:NotificationLightDecoder.kt$NotificationLightDecoder$0xFFFFFF MagicNumber:NotificationVibration.kt$VibratePattern$3 MagicNumber:NotificationVibration.kt$VibratePattern$4 MagicNumber:NotificationVibration.kt$VibratePattern$5 MagicNumber:NotificationVibration.kt$VibratePattern.Companion$3 MagicNumber:NotificationVibration.kt$VibratePattern.Companion$4 MagicNumber:NotificationVibration.kt$VibratePattern.Companion$5 MagicNumber:NotificationVibration.kt$VibratePattern.Default$200 MagicNumber:NotificationVibration.kt$VibratePattern.Default$300 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern1$100 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern1$200 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern2$100 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern2$500 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern3$200 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern4$200 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern4$500 MagicNumber:NotificationVibration.kt$VibratePattern.Pattern5$500 MagicNumber:PendingIntentCompat.kt$PendingIntentCompat$23 MagicNumber:PendingIntentCompat.kt$PendingIntentCompat$31 MagicNumber:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$143 MagicNumber:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$465 MagicNumber:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$587 MagicNumber:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$993 MagicNumber:PushService.kt$PushService$29 MagicNumber:RealImapConnection.kt$RealImapConnection$4 MagicNumber:RealImapFolder.kt$RealImapFolder$3 MagicNumber:RealImapFolder.kt$RealImapFolder$5 MagicNumber:RealImapFolder.kt$RealImapFolder$6 MagicNumber:RealImapFolder.kt$RealImapFolder$8 MagicNumber:RealImapFolder.kt$RealImapFolder$9 MagicNumber:RecipientLayoutCreator.kt$RecipientLayoutCreator$10 MagicNumber:RecipientMvpView.kt$RecipientMvpView$100.0f MagicNumber:RecipientMvpView.kt$RecipientMvpView$15 MagicNumber:RecipientNamesView.kt$RecipientNamesView$8 MagicNumber:ReplyToView.kt$ReplyToView$15 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$10 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$11 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$12 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$13 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$14 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$15 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$3 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$4 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$5 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$6 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$7 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$8 MagicNumber:RetrieveFolderOperations.kt$CursorFolderAccessor$9 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$10 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$11 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$12 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$13 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$14 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$15 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$16 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$17 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$3 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$4 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$5 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$6 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$7 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$8 MagicNumber:RetrieveMessageListOperations.kt$CursorMessageAccessor$9 MagicNumber:RetrieveMessageOperations.kt$RetrieveMessageOperations$3 MagicNumber:RetrieveMessageOperations.kt$RetrieveMessageOperations$4 MagicNumber:RetrieveMessageOperations.kt$RetrieveMessageOperations$5 MagicNumber:ServerSettingsSerializer.kt$ServerSettingsAdapter$3 MagicNumber:ServerSettingsSerializer.kt$ServerSettingsAdapter$4 MagicNumber:ServerSettingsSerializer.kt$ServerSettingsAdapter$5 MagicNumber:ServerSettingsSerializer.kt$ServerSettingsAdapter$6 MagicNumber:ServerSettingsSerializer.kt$ServerSettingsAdapter$7 MagicNumber:SettingsExporter.kt$SettingsExporter$3 MagicNumber:SettingsImportListItems.kt$ImportListItem$3 MagicNumber:SettingsImportListItems.kt$ImportListItem$4 MagicNumber:SettingsViewModel.kt$SettingsViewModel$500 MagicNumber:SimpleHighlightView.kt$SimpleHighlightView$0xFFFFFF MagicNumber:SimpleHighlightView.kt$SimpleHighlightView$100 MagicNumber:SimpleHighlightView.kt$SimpleHighlightView$128 MagicNumber:SimpleHighlightView.kt$SimpleHighlightView$80 MagicNumber:SizeFormatter.kt$SizeFormatter$1000L MagicNumber:SizeFormatter.kt$SizeFormatter$1000f MagicNumber:SizeFormatter.kt$SizeFormatter$1_000_000L MagicNumber:SizeFormatter.kt$SizeFormatter$999_950L MagicNumber:SizeFormatter.kt$SizeFormatter$999_950_000L MagicNumber:SmtpResponse.kt$SmtpResponse$400 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$10 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$100 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$126 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$250 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$32 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$33 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$4 MagicNumber:SmtpResponseParser.kt$SmtpResponseParser$5 MagicNumber:SmtpTransport.kt$SmtpTransport$1000 MagicNumber:SmtpTransport.kt$SmtpTransport$1024 MagicNumber:StatusCodeClass.kt$StatusCodeClass.PERMANENT_FAILURE$5 MagicNumber:StatusCodeClass.kt$StatusCodeClass.PERSISTENT_TRANSIENT_FAILURE$4 MagicNumber:StorageMigrationTo11.kt$StorageMigrationTo11$3 MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0x0000FF MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0x00FF00 MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0x00FFFF MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0x00FFFFFF MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0xFF0000 MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0xFF00FF MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0xFFFF00 MagicNumber:StorageMigrationTo17.kt$StorageMigrationTo17$0xFFFFFF MagicNumber:StorageMigrations.kt$StorageMigrations$10 MagicNumber:StorageMigrations.kt$StorageMigrations$11 MagicNumber:StorageMigrations.kt$StorageMigrations$12 MagicNumber:StorageMigrations.kt$StorageMigrations$13 MagicNumber:StorageMigrations.kt$StorageMigrations$14 MagicNumber:StorageMigrations.kt$StorageMigrations$15 MagicNumber:StorageMigrations.kt$StorageMigrations$16 MagicNumber:StorageMigrations.kt$StorageMigrations$17 MagicNumber:StorageMigrations.kt$StorageMigrations$18 MagicNumber:StorageMigrations.kt$StorageMigrations$19 MagicNumber:StorageMigrations.kt$StorageMigrations$20 MagicNumber:StorageMigrations.kt$StorageMigrations$3 MagicNumber:StorageMigrations.kt$StorageMigrations$4 MagicNumber:StorageMigrations.kt$StorageMigrations$5 MagicNumber:StorageMigrations.kt$StorageMigrations$6 MagicNumber:StorageMigrations.kt$StorageMigrations$7 MagicNumber:StorageMigrations.kt$StorageMigrations$8 MagicNumber:ThemeManager.kt$ThemeManager$28 MagicNumber:ThreadMessageOperations.kt$ThreadMessageOperations$3 MagicNumber:TimberLogger.kt$TimberLogger$26 MagicNumber:UidValidityResponse.kt$UidValidityResponse.Companion$0xFFFFFFFFL MagicNumber:Utf8.kt$0x010000 MagicNumber:Utf8.kt$0x10000 MagicNumber:Utf8.kt$0x3f MagicNumber:Utf8.kt$0x80 MagicNumber:Utf8.kt$0x800 MagicNumber:Utf8.kt$0xc0 MagicNumber:Utf8.kt$0xd800 MagicNumber:Utf8.kt$0xdbff MagicNumber:Utf8.kt$0xdc00 MagicNumber:Utf8.kt$0xdfff MagicNumber:Utf8.kt$0xe0 MagicNumber:Utf8.kt$0xe000 MagicNumber:Utf8.kt$0xf0 MagicNumber:Utf8.kt$10 MagicNumber:Utf8.kt$12 MagicNumber:Utf8.kt$18 MagicNumber:Utf8.kt$3 MagicNumber:Utf8.kt$4 MagicNumber:Utf8.kt$6 MatchingDeclarationName:Main.kt$HtmlCleaner : CliktCommand MaxLineLength:BoundaryGeneratorTest.kt$BoundaryGeneratorTest$0 MaxLineLength:ComposeCryptoStatus.kt$ComposeCryptoStatus$OpenPgpApiManager.OpenPgpProviderState.ERROR, OpenPgpApiManager.OpenPgpProviderState.UI_REQUIRED -> CryptoStatusDisplayType.ERROR MaxLineLength:GenericUriParserTest.kt$GenericUriParserTest$assertUriValid("xmpp:node@example.com/repulsive%20!%23%22\$%25&'()*+,-.%2F:;%3C=%3E%3F%40%5B%5C%5D%5E_%60%7B%7C%7D~resource") MaxLineLength:HtmlSanitizerTest.kt$HtmlSanitizerTest$assertThat(result.toCompactString()).isEqualTo("<html><head><style>keep this</style></head><body></body></html>") MaxLineLength:ImapSync.kt$ImapSync.<no name provided>$// TODO: This might be the source of poll count errors in the UI. Is todo always the same as ofTotal MaxLineLength:JmapBackend.kt$JmapBackend$override MaxLineLength:MessageViewFragment.kt$MessageViewFragment$// When the menu is hidden, the message associated with this fragment is no longer active. If the user returns MaxLineLength:MigrationTo70.kt$MigrationTo70$db.execSQL("CREATE TRIGGER delete_folder BEFORE DELETE ON folders BEGIN DELETE FROM messages WHERE old.id = folder_id; END;") MaxLineLength:MigrationTo84.kt$MigrationTo84$"SELECT id, to_list, cc_list, bcc_list, reply_to_list, sender_list FROM messages WHERE empty = 0 AND deleted = 0" MaxLineLength:NotificationHelper.kt$NotificationHelper$// UID 123 does not have permission to content://media/external_primary/audio/media/42?title=Coins&canonical=1 [user 0] MaxLineLength:Pop3ConnectionTest.kt$Pop3ConnectionTest$fun MaxLineLength:RealImapFolder.kt$RealImapFolder$// [MESSAGE, RFC822, [NAME, Fwd: [#HTR-517941]: update plans at 1am Friday - Memory allocation - displayware.eml], NIL, NIL, 7BIT, 5974, NIL, [INLINE, [FILENAME*0, Fwd: [#HTR-517941]: update plans at 1am Friday - Memory all, FILENAME*1, ocation - displayware.eml]], NIL] MaxLineLength:RealImapFolder.kt$RealImapFolder$val canCreateForwardedFlag = canCreateKeywords || internalImapStore.getPermanentFlagsIndex().contains(Flag.FORWARDED) MaxLineLength:RealImapStoreTest.kt$RealImapStoreTest$fun MaxLineLength:RealOAuth2TokenProvider.kt$RealOAuth2TokenProvider$authState MaxLineLength:RetrieveMessageListOperationsTest.kt$RetrieveMessageListOperationsTest$fun MayBeConst:SummaryNotificationDataCreatorTest.kt$private val TIMESTAMP = 0L MemberNameEqualsClassName:HtmlModification.kt$HtmlModification.Replace$abstract fun replace(textToHtml: TextToHtml) MemberNameEqualsClassName:ReplyToView.kt$ReplyToView$private val replyToView: RecipientSelectView = activity.findViewById(R.id.reply_to) NestedBlockDepth:HttpUriParser.kt$HttpUriParser$private fun tryMatchIpv6Address(text: CharSequence, startPos: Int): Int NestedBlockDepth:ImapSync.kt$ImapSync$private fun synchronizeMailboxSynchronous(folder: String, syncConfig: SyncConfig, listener: SyncListener) NestedBlockDepth:MessageList.kt$MessageList$override fun onBackPressed() NestedBlockDepth:MessageList.kt$MessageList$override fun onOptionsItemSelected(item: MenuItem): Boolean NestedBlockDepth:MessageList.kt$MessageList$private fun decodeExtrasToLaunchData(intent: Intent): LaunchData NestedBlockDepth:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$private fun parseProviders(xml: XmlResourceParser, domain: String): Provider? NestedBlockDepth:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun appendMessages(messages: List<Message>): Map<String, String>? NestedBlockDepth:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun fetch( messages: List<ImapMessage>, fetchProfile: FetchProfile, listener: FetchListener?, maxDownloadSize: Int, ) NestedBlockDepth:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) override fun fetchPart( message: ImapMessage, part: Part, bodyFactory: BodyFactory, maxDownloadSize: Int, ) NestedBlockDepth:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) private fun handleFetchResponse(message: ImapMessage, fetchList: ImapList): Any? NestedBlockDepth:RealImapFolder.kt$RealImapFolder$@Throws(MessagingException::class) private fun parseBodyStructure(bs: ImapList, part: Part, id: String) NestedBlockDepth:SettingsExporter.kt$SettingsExporter$private fun writeAccount(serializer: XmlSerializer, account: Account, prefs: Map<String, Any>) NestedBlockDepth:SettingsExporter.kt$SettingsExporter$private fun writeIdentity( serializer: XmlSerializer, accountUuid: String, identity: String, prefs: Map<String, Any>, ) NestedBlockDepth:SingleMessageNotificationCreator.kt$SingleMessageNotificationCreator$private fun NotificationBuilder.setWearActions(notificationData: SingleNotificationData) NestedBlockDepth:SmtpTransport.kt$SmtpTransport$@VisibleForTesting @Throws(MessagingException::class) internal fun open() NestedBlockDepth:SummaryNotificationCreator.kt$SummaryNotificationCreator$private fun NotificationBuilder.setWearActions( account: Account, notificationData: SummaryInboxNotificationData, ) ReturnCount:AccountSetupBasics.kt$AccountSetupBasics$private fun providersXmlDiscoveryDiscover(email: String): ConnectionSettings? ReturnCount:AccountSetupBasics.kt$private fun DiscoveredServerSettings.toServerSettings(): ServerSettings? ReturnCount:AccountSetupCheckSettings.kt$AccountSetupCheckSettings.CheckAccountTask$private fun isCanceled(): Boolean ReturnCount:AutocryptDraftStateHeaderParser.kt$AutocryptDraftStateHeaderParser$fun parseAutocryptDraftStateHeader(headerValue: String): AutocryptDraftStateHeader? ReturnCount:ChooseFolderActivity.kt$ChooseFolderActivity$private fun decodeArguments(savedInstanceState: Bundle?): Boolean ReturnCount:CommandSetFlag.kt$CommandSetFlag$fun setFlag(folderServerId: String, messageServerIds: List<String>, flag: Flag, newState: Boolean) ReturnCount:DecoderUtil.kt$DecoderUtil$@JvmStatic fun decodeEncodedWords(body: String, message: Message?): String ReturnCount:DecoderUtil.kt$DecoderUtil$private fun extractEncodedWord(body: String, begin: Int, end: Int, message: Message?): EncodedWord? ReturnCount:EditIdentity.kt$EditIdentity$override fun onOptionsItemSelected(item: MenuItem): Boolean ReturnCount:EmailSection.kt$EmailSection$override fun subSequence(startIndex: Int, endIndex: Int): CharSequence ReturnCount:FormatFlowedHelper.kt$FormatFlowedHelper$@JvmStatic fun checkFormatFlowed(contentTypeHeaderValue: String?): FormatFlowedResult ReturnCount:HtmlSignatureRemover.kt$HtmlSignatureRemover.StripSignatureFilter$override fun head(node: Node, depth: Int): HeadFilterDecision ReturnCount:HtmlSignatureRemover.kt$HtmlSignatureRemover.StripSignatureFilter$private fun Node.findPrecedingLineBreak(): Node? ReturnCount:HtmlSignatureRemover.kt$HtmlSignatureRemover.StripSignatureFilter$private fun Node.isFollowedByLineBreak(): Boolean ReturnCount:HttpUriParser.kt$HttpUriParser$override fun parseUri(text: CharSequence, startPos: Int): UriMatch? ReturnCount:HttpUriParser.kt$HttpUriParser$private fun tryMatchAuthority(text: CharSequence, startPos: Int): Int ReturnCount:HttpUriParser.kt$HttpUriParser$private fun tryMatchDomainName(text: CharSequence, startPos: Int): Int ReturnCount:HttpUriParser.kt$HttpUriParser$private fun tryMatchIpv4Address(text: CharSequence, startPos: Int, portAllowed: Boolean): Int ReturnCount:HttpUriParser.kt$HttpUriParser$private fun tryMatchIpv6Address(text: CharSequence, startPos: Int): Int ReturnCount:ImapSync.kt$ImapSync$private fun isOldMessage(messageServerId: String, highestKnownUid: Long?): Boolean ReturnCount:ImapSync.kt$ImapSync$private fun syncFlags(syncConfig: SyncConfig, backendFolder: BackendFolder, remoteMessage: ImapMessage): Boolean ReturnCount:JmapAccountDiscovery.kt$JmapAccountDiscovery$fun discover(emailAddress: String, password: String): JmapDiscoveryResult ReturnCount:K9NotificationStrategy.kt$K9NotificationStrategy$override fun shouldNotifyForMessage( account: Account, localFolder: LocalFolder, message: LocalMessage, isOldMessage: Boolean, ): Boolean ReturnCount:ListUnsubscribeHelper.kt$ListUnsubscribeHelper$fun getPreferredListUnsubscribeUri(message: Message): UnsubscribeUri? ReturnCount:ListUnsubscribeHelper.kt$ListUnsubscribeHelper$private fun extractUri(headerValue: String?): Uri? ReturnCount:MailSyncWorker.kt$MailSyncWorker$override fun doWork(): Result ReturnCount:MessageHelper.kt$MessageHelper.Companion$@JvmStatic fun toFriendly( address: Address, contactRepository: ContactRepository?, showCorrespondentNames: Boolean, changeContactNameColor: Boolean, contactNameColor: Int, ): CharSequence ReturnCount:MessageList.kt$MessageList$private fun decodeExtrasToLaunchData(intent: Intent): LaunchData ReturnCount:MessageList.kt$MessageList$private fun onCustomKeyDown(event: KeyEvent): Boolean ReturnCount:MessageList.kt$MessageList$public override fun onCreate(savedInstanceState: Bundle?) ReturnCount:MessageList.kt$MessageList$public override fun onNewIntent(intent: Intent) ReturnCount:MessageListAdapter.kt$MessageListAdapter$private fun buildStatusHolder(forwarded: Boolean, answered: Boolean): Drawable? ReturnCount:MessageListAdapter.kt$MessageListAdapter$private fun calculateSelectionCount(): Int ReturnCount:MessageListFragment.kt$MessageListFragment$override fun onFooterClicked() ReturnCount:MessageListFragment.kt$MessageListFragment$private fun checkCopyOrMovePossible(messages: List<MessageReference>, operation: FolderOperation): Boolean ReturnCount:MessageListFragment.kt$MessageListFragment$private fun isSpecialFolder(specialFolderId: Long?): Boolean ReturnCount:MessageListFragment.kt$MessageListFragment$private fun rememberSortOverride(messageReference: MessageReference?) ReturnCount:MessageListFragment.kt$MessageListFragment$private fun scrollToMessage(messageReference: MessageReference) ReturnCount:MessageListSwipeCallback.kt$MessageListSwipeCallback$override fun getMovementFlags(recyclerView: RecyclerView, viewHolder: ViewHolder): Int ReturnCount:MessageReference.kt$MessageReference.Companion$@JvmStatic fun parse(identity: String?): MessageReference? ReturnCount:MessageRepository.kt$MessageRepository$private fun List<Header>.parseDate(headerName: String): MessageDate ReturnCount:MessageTopView.kt$MessageTopView$private fun shouldShowPicturesFromSender(showPicturesSetting: ShowPictures, message: Message): Boolean ReturnCount:MessageViewFragment.kt$MessageViewFragment$override fun onOptionsItemSelected(item: MenuItem): Boolean ReturnCount:MimeParameterDecoder.kt$MimeParameterDecoder$private fun areParameterSectionsValid(parameterSections: MutableList<ParameterSection>): Boolean ReturnCount:MimeParameterDecoder.kt$MimeParameterDecoder$private fun convertToParameterSection(parameterName: String, parameterValue: ParameterValue): ParameterSection? ReturnCount:NotificationContentCreator.kt$NotificationContentCreator$private fun getMessageSender(account: Account, message: Message): String? ReturnCount:NotificationDataStore.kt$NotificationDataStore$@Synchronized fun removeNotifications( account: Account, selector: (List<MessageReference>) -> List<MessageReference>, ): RemoveNotificationsResult? ReturnCount:PreviewTextExtractor.kt$PreviewTextExtractor$private fun extractUnquotedText(text: String): String ReturnCount:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$override fun discover(email: String): DiscoveryResults? ReturnCount:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$private fun Provider.toIncomingServerSettings(email: String): DiscoveredServerSettings? ReturnCount:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$private fun Provider.toOutgoingServerSettings(email: String): DiscoveredServerSettings? ReturnCount:RealImapFolder.kt$RealImapFolder$@Throws(IOException::class, MessagingException::class) override fun areMoreMessagesAvailable(indexOfOldestMessage: Int, earliestDate: Date?): Boolean ReturnCount:RealImapFolderIdler.kt$RealImapFolderIdler$private fun ImapFolder.idle(): IdleResult ReturnCount:RealImapStore.kt$RealImapStore$private fun removePrefixFromFolderName(folderName: String): String? ReturnCount:RecipientLayoutCreator.kt$RecipientLayoutCreator$fun createRecipientLayout( recipientNames: List<CharSequence>, totalNumberOfRecipients: Int, availableWidth: Int, ): RecipientLayoutData ReturnCount:RecipientLayoutCreator.kt$RecipientLayoutCreator$private fun doesTextFitAvailableWidth( displayRecipients: CharSequence, additionalRecipients: CharSequence, availableWidth: Int, ): Boolean ReturnCount:RecipientPresenter.kt$RecipientPresenter$fun checkRecipientsOkForSending(): Boolean ReturnCount:RecipientPresenter.kt$RecipientPresenter$private fun toggleEncryptionState(showGotIt: Boolean) ReturnCount:SaveMessageOperationsTest.kt$SaveMessageOperationsTest$private fun Message.getDownloadState(): MessageDownloadState ReturnCount:ShareIntentBuilder.kt$ShareIntentBuilder$private fun extractBodyText(message: LocalMessage): String ReturnCount:SmtpResponseParser.kt$SmtpResponseParser$fun readHelloResponse(): SmtpHelloResponse ReturnCount:StorageMigrationTo19.kt$StorageMigrationTo19$private fun markIfGmailAccount(accountUuid: String) ReturnCount:TextPartFinder.kt$TextPartFinder$private fun findTextPartInMultipart(multipart: Multipart): Part? ReturnCount:TextPartFinder.kt$TextPartFinder$private fun findTextPartInMultipartAlternative(multipart: Multipart): Part? ReturnCount:TouchInterceptView.kt$TouchInterceptView$private fun handleOnInterceptTouchEvent(event: MotionEvent) ReturnCount:UidReverseComparator.kt$UidReverseComparator$override fun compare(messageLeft: Message, messageRight: Message): Int ReturnCount:UidValidityResponse.kt$UidValidityResponse.Companion$@JvmStatic fun parse(response: ImapResponse): UidValidityResponse? ReturnCount:UnreadWidgetConfigurationFragment.kt$UnreadWidgetConfigurationFragment$private fun validateWidget(): Boolean ReturnCount:UnreadWidgetDataProvider.kt$UnreadWidgetDataProvider$private fun loadFolderData(configuration: UnreadWidgetConfiguration): UnreadWidgetData? SpreadOperator:ConfigurationExtensions.kt$(*locales.toTypedArray()) SpreadOperator:K9Drawer.kt$K9Drawer$(*accountItems) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*Address.parse(trustId)) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*bccAddresses) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*ccAddresses) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*mailTo.bcc) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*mailTo.cc) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*mailTo.to) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*message.getRecipients(RecipientType.BCC)) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*message.getRecipients(RecipientType.CC)) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*message.getRecipients(RecipientType.TO)) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*replyToAddresses.cc) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*replyToAddresses.to) SpreadOperator:RecipientPresenter.kt$RecipientPresenter$(*toAddresses) SpreadOperator:RecipientPresenter.kt$RecipientPresenter.<no name provided>$(*recipientArray) SpreadOperator:RecipientPresenter.kt$RecipientPresenter.<no name provided>$(context, account.openPgpProvider, *alwaysBccAddresses) SpreadOperator:RecipientPresenter.kt$RecipientPresenter.<no name provided>$(recipientType, *recipientArray) SpreadOperator:ReplyToView.kt$ReplyToView$(*recipients) SwallowedException:AboutFragment.kt$e: ActivityNotFoundException SwallowedException:AuthViewModel.kt$AuthViewModel$e: ActivityNotFoundException SwallowedException:ContactPictureLoader.kt$ContactPictureLoader$e: Exception SwallowedException:DecoderUtil.kt$DecoderUtil$e: IOException SwallowedException:DecoderUtil.kt$DecoderUtil$e: MessagingException SwallowedException:JmapAccountDiscovery.kt$JmapAccountDiscovery$e: EndpointNotFoundException SwallowedException:JmapAccountDiscovery.kt$JmapAccountDiscovery$e: UnauthorizedException SwallowedException:JmapAccountDiscovery.kt$JmapAccountDiscovery$e: UnknownHostException SwallowedException:LocalKeyStore.kt$LocalKeyStore$e: FileNotFoundException SwallowedException:LocalKeyStore.kt$LocalKeyStore$e: KeyStoreException SwallowedException:MessageContainerView.kt$MessageContainerView$e: ActivityNotFoundException SwallowedException:MessageDetailsViewModel.kt$MessageDetailsViewModel$e: Exception SwallowedException:MessageListFragment.kt$MessageListFragment$e: ClassCastException SwallowedException:MessageListFragment.kt$MessageListFragment$e: MessagingException SwallowedException:MessageRepository.kt$MessageRepository$e: Exception SwallowedException:MessageViewContainerFragment.kt$MessageViewContainerFragment$e: ClassCastException SwallowedException:MessageViewFragment.kt$MessageViewFragment$e: ActivityNotFoundException SwallowedException:MessageViewFragment.kt$MessageViewFragment$e: ClassCastException SwallowedException:MimeParameterDecoder.kt$MimeParameterDecoder$e: IllegalCharsetNameException SwallowedException:MimeParameterDecoder.kt$MimeParameterDecoder$e: MimeHeaderParserException SwallowedException:MimeType.kt$MimeType.Companion$e: IllegalArgumentException SwallowedException:PushInfoFragment.kt$PushInfoFragment$e: ActivityNotFoundException SwallowedException:QuoteDateFormatter.kt$QuoteDateFormatter$e: Exception SwallowedException:RealImapConnection.kt$RealImapConnection$e: NegativeImapResponseException SwallowedException:RealImapFolder.kt$RealImapFolder$e: NegativeImapResponseException SwallowedException:RealImapStore.kt$RealImapStore$e: CharacterCodingException SwallowedException:RealImapStore.kt$RealImapStore$ioe: IOException SwallowedException:SaveMessageOperations.kt$SaveMessageOperations$e: IOException SwallowedException:SettingsExporter.kt$SettingsExporter$e: InvalidSettingValueException SwallowedException:SettingsListFragment.kt$SettingsListFragment$e: ActivityNotFoundException SwallowedException:SmtpTransport.kt$SmtpTransport$e: NegativeSmtpReplyException SwallowedException:SmtpTransport.kt$SmtpTransport$exception: NegativeSmtpReplyException ThrowingExceptionsWithoutMessageOrCause:RealImapConnection.kt$RealImapConnection$Exception() ThrowingExceptionsWithoutMessageOrCause:SmtpTransport.kt$SmtpTransport$RuntimeException() ThrowingExceptionsWithoutMessageOrCause:TimberLogger.kt$TimberLogger$Throwable() ThrowsCount:CommandRefreshFolderList.kt$CommandRefreshFolderList$fun refreshFolderList() ThrowsCount:LocalKeyStore.kt$LocalKeyStore$private fun writeCertificateFile() ThrowsCount:MimeHeaderChecker.kt$UnstructuredHeaderChecker$fun checkHeaderValue() ThrowsCount:RealImapConnection.kt$RealImapConnection$private fun authenticate(): List<ImapResponse> ThrowsCount:SmtpTransport.kt$SmtpTransport$@Throws(MessagingException::class) fun sendMessage(message: Message) ThrowsCount:SmtpTransport.kt$SmtpTransport$@VisibleForTesting @Throws(MessagingException::class) internal fun open() ThrowsCount:SmtpTransport.kt$SmtpTransport$private fun saslAuthCramMD5() TooGenericExceptionCaught:AccountRemover.kt$AccountRemover$e: Exception TooGenericExceptionCaught:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$e: Exception TooGenericExceptionCaught:AccountSetupCheckSettings.kt$AccountSetupCheckSettings.CheckAccountTask$e: Exception TooGenericExceptionCaught:AuthViewModel.kt$AuthViewModel$e: Exception TooGenericExceptionCaught:AutocryptSetupTransferLiveEvent.kt$AutocryptSetupTransferLiveEvent$e: Exception TooGenericExceptionCaught:BootCompleteReceiver.kt$BootCompleteManager$e: Exception TooGenericExceptionCaught:CommandRefreshFolderList.kt$CommandRefreshFolderList$e: Exception TooGenericExceptionCaught:CommandSync.kt$CommandSync$e: Exception TooGenericExceptionCaught:ContactPhotoLoader.kt$ContactPhotoLoader$e: Exception TooGenericExceptionCaught:ContactPictureLoader.kt$ContactPictureLoader$e: Exception TooGenericExceptionCaught:GeneralSettingsViewModel.kt$GeneralSettingsViewModel$e: Exception TooGenericExceptionCaught:ImapFolderPusher.kt$ImapFolderPusher$e: Exception TooGenericExceptionCaught:ImapSync.kt$ImapSync$e: Exception TooGenericExceptionCaught:ImapSync.kt$ImapSync.<no name provided>$e: Exception TooGenericExceptionCaught:JmapAccountDiscovery.kt$JmapAccountDiscovery$e: Exception TooGenericExceptionCaught:K9.kt$K9$e: Exception TooGenericExceptionCaught:LiveDataLoader.kt$e: Exception TooGenericExceptionCaught:LocalKeyStore.kt$LocalKeyStore$e: Exception TooGenericExceptionCaught:MessageCountsProvider.kt$DefaultMessageCountsProvider$e: Exception TooGenericExceptionCaught:MessageDetailsViewModel.kt$MessageDetailsViewModel$e: Exception TooGenericExceptionCaught:MessageListFragment.kt$MessageListFragment$e: Exception TooGenericExceptionCaught:MessageListLoader.kt$MessageListLoader$e: Exception TooGenericExceptionCaught:MessageListWidgetManager.kt$MessageListWidgetManager$e: RuntimeException TooGenericExceptionCaught:MessageRepository.kt$MessageRepository$e: Exception TooGenericExceptionCaught:ProvidersXmlDiscovery.kt$ProvidersXmlDiscovery$e: Exception TooGenericExceptionCaught:PushServiceManager.kt$PushServiceManager$e: Exception TooGenericExceptionCaught:QuoteDateFormatter.kt$QuoteDateFormatter$e: Exception TooGenericExceptionCaught:RealGeneralSettingsManager.kt$e: Exception TooGenericExceptionCaught:RealImapConnection.kt$RealImapConnection$e: Exception TooGenericExceptionCaught:SettingsExportViewModel.kt$SettingsExportViewModel$e: Exception TooGenericExceptionCaught:SettingsExporter.kt$SettingsExporter$e: Exception TooGenericExceptionCaught:SettingsImportViewModel.kt$SettingsImportViewModel$e: Exception TooGenericExceptionCaught:SmtpTransport.kt$SmtpTransport$e: Exception TooGenericExceptionCaught:SystemLocaleManager.kt$SystemLocaleManager$e: Exception TooGenericExceptionCaught:UnreadWidgetProvider.kt$UnreadWidgetProvider$e: Exception TooGenericExceptionCaught:UnreadWidgetUpdateListener.kt$UnreadWidgetUpdateListener$e: Exception TooGenericExceptionThrown:AccountSettingsActivity.kt$AccountSettingsActivity$throw RuntimeException("getSupportActionBar() == null") TooGenericExceptionThrown:AccountSetupCheckSettings.kt$AccountSetupCheckSettings$throw RuntimeException("Called showDialog(int) with unknown dialog id.") TooGenericExceptionThrown:GeneralSettingsActivity.kt$GeneralSettingsActivity$throw RuntimeException("getSupportActionBar() == null") TooGenericExceptionThrown:ImapSync.kt$ImapSync$throw Exception("Message count $remoteMessageCount for folder $folder") TooGenericExceptionThrown:MessageListFragment.kt$MessageListFragment$throw RuntimeException("Called showDialog(int) with unknown dialog id.") TooGenericExceptionThrown:MessageViewFragment.kt$MessageViewFragment$throw RuntimeException("Called showDialog(int) with unknown dialog id.") TooManyFunctions:Account.kt$Account : BaseAccount TooManyFunctions:AccountSettingsDataStore.kt$AccountSettingsDataStore : PreferenceDataStore TooManyFunctions:AccountSettingsFragment.kt$AccountSettingsFragment : PreferenceFragmentCompatConfirmationDialogFragmentListener TooManyFunctions:AccountSetupBasics.kt$AccountSetupBasics : K9Activity TooManyFunctions:AccountSetupCheckSettings.kt$AccountSetupCheckSettings : K9ActivityConfirmationDialogFragmentListener TooManyFunctions:AuthViewModel.kt$AuthViewModel : AndroidViewModel TooManyFunctions:AutocryptKeyTransferActivity.kt$AutocryptKeyTransferActivity : K9Activity TooManyFunctions:Backend.kt$Backend TooManyFunctions:BackendFolder.kt$BackendFolder TooManyFunctions:ChooseFolderActivity.kt$ChooseFolderActivity : K9Activity TooManyFunctions:CommandSync.kt$CommandSync TooManyFunctions:CoreResourceProvider.kt$CoreResourceProvider TooManyFunctions:DeleteMessageOperations.kt$DeleteMessageOperations TooManyFunctions:DemoBackend.kt$DemoBackend : Backend TooManyFunctions:FolderRepository.kt$FolderRepository TooManyFunctions:FolderSettingsFragment.kt$FolderSettingsFragment : PreferenceFragmentCompatConfirmationDialogFragmentListener TooManyFunctions:GeneralSettingsDataStore.kt$GeneralSettingsDataStore : PreferenceDataStore TooManyFunctions:GeneralSettingsFragment.kt$GeneralSettingsFragment : PreferenceFragmentCompat TooManyFunctions:HttpUriParser.kt$HttpUriParser : UriParser TooManyFunctions:ImapBackend.kt$ImapBackend : Backend TooManyFunctions:ImapBackendPusher.kt$ImapBackendPusher : BackendPusherImapPusherCallback TooManyFunctions:ImapConnection.kt$ImapConnection TooManyFunctions:ImapFolder.kt$ImapFolder TooManyFunctions:ImapSync.kt$ImapSync TooManyFunctions:InMemoryBackendFolder.kt$InMemoryBackendFolder : BackendFolder TooManyFunctions:JmapBackend.kt$JmapBackend : Backend TooManyFunctions:K9.kt$K9 : EarlyInit TooManyFunctions:K9BackendFolder.kt$K9BackendFolder : BackendFolder TooManyFunctions:K9CoreResourceProvider.kt$K9CoreResourceProvider : CoreResourceProvider TooManyFunctions:K9Drawer.kt$K9Drawer : KoinComponent TooManyFunctions:K9MessageStore.kt$K9MessageStore : MessageStore TooManyFunctions:K9NotificationActionCreator.kt$K9NotificationActionCreator : NotificationActionCreator TooManyFunctions:K9NotificationResourceProvider.kt$K9NotificationResourceProvider : NotificationResourceProvider TooManyFunctions:ListenableMessageStore.kt$ListenableMessageStore : MessageStore TooManyFunctions:Logger.kt$Logger TooManyFunctions:ManageFoldersFragment.kt$ManageFoldersFragment : Fragment TooManyFunctions:MessageContainerView.kt$MessageContainerView : LinearLayoutOnCreateContextMenuListenerKoinComponent TooManyFunctions:MessageDetailsFragment.kt$MessageDetailsFragment : ToolbarBottomSheetDialogFragment TooManyFunctions:MessageIdParser.kt$MessageIdParser TooManyFunctions:MessageList.kt$MessageList : K9ActivityMessageListFragmentListenerMessageViewFragmentListenerMessageViewContainerListenerOnBackStackChangedListenerOnSwitchCompleteListenerPermissionUiHelper TooManyFunctions:MessageList.kt$MessageList$Companion : KoinComponent TooManyFunctions:MessageListAdapter.kt$MessageListAdapter : Adapter TooManyFunctions:MessageListCache.kt$MessageListCache TooManyFunctions:MessageListFragment.kt$MessageListFragment : FragmentConfirmationDialogFragmentListenerMessageListItemActionListener TooManyFunctions:MessageListFragment.kt$MessageListFragment$MessageListActivityListener : SimpleMessagingListener TooManyFunctions:MessageListRemoteViewFactory.kt$MessageListRemoteViewFactory : RemoteViewsFactoryKoinComponent TooManyFunctions:MessageListSwipeCallback.kt$MessageListSwipeCallback : Callback TooManyFunctions:MessageStore.kt$MessageStore TooManyFunctions:MessageTopView.kt$MessageTopView : LinearLayoutKoinComponent TooManyFunctions:MessageViewContainerFragment.kt$MessageViewContainerFragment : Fragment TooManyFunctions:MessageViewFragment.kt$MessageViewFragment : FragmentConfirmationDialogFragmentListenerAttachmentViewCallback TooManyFunctions:MigrationTo73.kt$MigrationTo73 TooManyFunctions:MimeExtensions.kt$com.fsck.k9.mail.internet.MimeExtensions.kt TooManyFunctions:MimeHeader.kt$MimeHeader TooManyFunctions:MimeHeaderChecker.kt$UnstructuredHeaderChecker TooManyFunctions:MimeHeaderParser.kt$MimeHeaderParser TooManyFunctions:MimeParameterDecoder.kt$MimeParameterDecoder TooManyFunctions:MimeParameterEncoder.kt$MimeParameterEncoder TooManyFunctions:NoOpLogger.kt$NoOpLogger : Logger TooManyFunctions:NotificationActionCreator.kt$NotificationActionCreator TooManyFunctions:NotificationChannelManager.kt$NotificationChannelManager TooManyFunctions:NotificationController.kt$NotificationController TooManyFunctions:NotificationResourceProvider.kt$NotificationResourceProvider TooManyFunctions:NotifierMessageStore.kt$NotifierMessageStore : MessageStore TooManyFunctions:Pop3Backend.kt$Pop3Backend : Backend TooManyFunctions:Preferences.kt$Preferences : AccountManager TooManyFunctions:PushController.kt$PushController TooManyFunctions:RealGeneralSettingsManager.kt$RealGeneralSettingsManager : GeneralSettingsManager TooManyFunctions:RealImapConnection.kt$RealImapConnection : ImapConnection TooManyFunctions:RealImapFolder.kt$RealImapFolder : ImapFolder TooManyFunctions:RealImapStore.kt$RealImapStore : ImapStoreImapConnectionManagerInternalImapStore TooManyFunctions:RecipientMvpView.kt$RecipientMvpView : OnFocusChangeListenerOnClickListener TooManyFunctions:RecipientPresenter.kt$RecipientPresenter TooManyFunctions:ReplyToView.kt$ReplyToView TooManyFunctions:RetrieveFolderOperations.kt$RetrieveFolderOperations TooManyFunctions:SaveMessageOperations.kt$SaveMessageOperations TooManyFunctions:SettingsExportViewModel.kt$SettingsExportViewModel : ViewModel TooManyFunctions:SettingsExporter.kt$SettingsExporter TooManyFunctions:SettingsImportFragment.kt$SettingsImportFragment : Fragment TooManyFunctions:SettingsImportUiModel.kt$SettingsImportUiModel TooManyFunctions:SettingsImportViewModel.kt$SettingsImportViewModel : ViewModel TooManyFunctions:SettingsListFragment.kt$SettingsListFragment : FragmentItemTouchCallback TooManyFunctions:SimpleHighlightView.kt$SimpleHighlightView : FrameLayout TooManyFunctions:SimpleSyncListener.kt$SimpleSyncListener : SyncListener TooManyFunctions:SingleMessageNotificationCreator.kt$SingleMessageNotificationCreator TooManyFunctions:SmtpResponseParser.kt$SmtpResponseParser TooManyFunctions:SmtpTransport.kt$SmtpTransport TooManyFunctions:SummaryNotificationCreator.kt$SummaryNotificationCreator TooManyFunctions:SyncListener.kt$SyncListener TooManyFunctions:SystemOutLogger.kt$SystemOutLogger : Logger TooManyFunctions:ThreadMessageOperations.kt$ThreadMessageOperations TooManyFunctions:Timber.kt$Timber TooManyFunctions:TimberLogger.kt$TimberLogger : Logger TooManyFunctions:ToolbarBottomSheetDialog.kt$ToolbarBottomSheetDialog : AppCompatDialog TooManyFunctions:UnreadWidgetConfigurationFragment.kt$UnreadWidgetConfigurationFragment : PreferenceFragmentCompat TooManyFunctions:UpdateFolderOperations.kt$UpdateFolderOperations TooManyFunctions:VibrationDialogFragment.kt$VibrationDialogFragment$VibrationPatternAdapter : BaseAdapter UnnecessaryAbstractClass:AppRobolectricTest.kt$AppRobolectricTest$AppRobolectricTest UnnecessaryAbstractClass:HtmlModification.kt$HtmlModification$HtmlModification UnnecessaryAbstractClass:K9RobolectricTest.kt$K9RobolectricTest$K9RobolectricTest UnnecessaryAbstractClass:RobolectricTest.kt$RobolectricTest$RobolectricTest UnusedPrivateMember:Contacts.kt$Contacts$addresses: Array<Address?>? UnusedPrivateMember:ExtraAccountDiscovery.kt$ExtraAccountDiscovery$email: String UnusedPrivateMember:HttpUriParser.kt$HttpUriParser$i UnusedPrivateMember:MessageListLoader.kt$MessageListLoader$account: Account UnusedPrivateMember:MessageViewFragment.kt$MessageViewFragment$requestKey: String UseCheckOrError:OutboxStateRepository.kt$OutboxStateRepository$throw IllegalStateException("No outbox_state entry for message with id $messageId") UseCheckOrError:ThemeExtensions.kt$throw IllegalStateException("Couldn't resolve attribute ($attrId)") UseRequire:MimeParameterEncoder.kt$MimeParameterEncoder$throw IllegalArgumentException("Unsupported character: $c") VariableNaming:AutocryptGossipHeaderParserTest.kt$AutocryptGossipHeaderParserTest$// Example from Autocrypt 1.0 appendix val GOSSIP_PART = """ |Autocrypt-Gossip: $GOSSIP_HEADER_BOB |Autocrypt-Gossip: addr=carol@autocrypt.example; keydata= | mQGNBFoBt8oBDADGqfZ6PqW05hUEO1dkKm+ixJXnbVriPz2tRkAqT7lTF4KBGitxo4IPv9RPIjJR | UMUo89ddyqQfiwKxdFCMDqFDnVRWlDaM+r8sauNJoIFwtTFuvUpkFeCI5gYvneEIIbf1r3Xx1pf5 | Iy9qsd5eg/4Vvc2AezUv+A6p2DUNHgFMX2FfDus+EPO0wgeWbNaV601aE7UhyugB |Content-Type: text/plain | |Hi Bob and Carol, | |I wanted to introduce the two of you to each other. | |I hope you are both doing well! You can now both "reply all" here, |and the thread will remain encrypted. | |Regards, |Alice """.trimMargin().crlf() VariableNaming:AutocryptGossipHeaderParserTest.kt$AutocryptGossipHeaderParserTest$val GOSSIP_DATA_BOB = Base64.decodeBase64( """ mQGNBFoBt74BDAC8AMsjPY17kxodbfmHah38ZQipY0yfuo97WUBs2jeiFYlQdunPANi5VMgbAX+H Mq1XoBRs6qW+WpX8Uj11mu22c57BTUXJRbRr4TnTuuOQmT0egwFDe3x8vHSFmcf9OzG8iKR9ftUE +F2ewrzzmm3XY8hy7QeUgBfClZVA6A3rsX4gGawjDo6ZRBbYwckINgGX/vQk6rGs """.trimIndent().toByteArray(), ) VariableNaming:AutocryptGossipHeaderParserTest.kt$AutocryptGossipHeaderParserTest$val GOSSIP_HEADER_BOB = """ |addr=bob@autocrypt.example; keydata= | mQGNBFoBt74BDAC8AMsjPY17kxodbfmHah38ZQipY0yfuo97WUBs2jeiFYlQdunPANi5VMgbAX+H | Mq1XoBRs6qW+WpX8Uj11mu22c57BTUXJRbRr4TnTuuOQmT0egwFDe3x8vHSFmcf9OzG8iKR9ftUE | +F2ewrzzmm3XY8hy7QeUgBfClZVA6A3rsX4gGawjDo6ZRBbYwckINgGX/vQk6rGs """.trimMargin() VariableNaming:AutocryptGossipHeaderParserTest.kt$AutocryptGossipHeaderParserTest$val GOSSIP_RAW_HEADER_BOB = "Autocrypt-Gossip: $GOSSIP_HEADER_BOB".crlf()