Package-level declarations

Types

Link copied to clipboard
internal interface ApplicationMessageHandler
Link copied to clipboard
internal class ApplicationMessageHandlerImpl(userRepository: UserRepository, messageDAO: MessageDAO, assetMessageHandler: AssetMessageHandler, persistMessage: PersistMessageUseCase, persistReaction: PersistReactionUseCase, editTextHandler: MessageTextEditHandler, editMultipartHandler: MessageMultipartEditHandler, lastReadContentHandler: LastReadContentHandler, clearConversationContentHandler: ClearConversationContentHandler, deleteForMeHandler: DeleteForMeHandler, deleteMessageHandler: DeleteMessageHandler, messageEncoder: MessageContentEncoder, receiptMessageHandler: ReceiptMessageHandler, buttonActionConfirmationHandler: ButtonActionConfirmationHandler, dataTransferEventHandler: DataTransferEventHandler, inCallReactionsRepository: InCallReactionsRepository, callRepository: CallRepository, buttonActionHandler: ButtonActionHandler, messageCompositeEditHandler: MessageCompositeEditHandler, callingMessageHandler: CallingMessageHandler, resolveLinkPreviewImages: LinkPreviewImagesResolver, pollVoteHandler: PollVoteHandler, selfUserId: UserId, baseLogger: KaliumLogger = kaliumLogger) : ApplicationMessageHandler
Link copied to clipboard
internal class AppMLSReceiveRecovery(recovery: MLSReceiveRecovery, conversations: ConversationRepository, mlsConversations: MLSConversationRepository, persistMessage: PersistMessageUseCase, selfUserId: UserId, selfTeamId: SelfTeamIdProvider) : EventBatchRecovery

Main-app effects for the recovery coordinator shared with the notification extension.

Link copied to clipboard
internal class BufferedMLSMessageRecoveryTracker(recoveryThreshold: Duration = DEFAULT_RECOVERY_THRESHOLD)

Tracks prolonged CoreCrypto MLS message buffering so the client can initiate stale epoch recovery.

Link copied to clipboard
internal class DurableMLSReceiveContext(context: CryptoTransactionContext, val effectsAlreadyPersisted: Boolean = false) : CryptoTransactionContext

Only the durable queue worker can guarantee receipt writes and atomic acknowledgement.

Link copied to clipboard
internal object MLSMessageFailureHandler
Link copied to clipboard
internal sealed class MLSMessageFailureResolution
Link copied to clipboard
internal interface MLSMessageUnpacker
Link copied to clipboard
internal class MLSMessageUnpackerImpl(conversationRepository: ConversationRepository, subconversationRepository: SubconversationRepository, mlsConversationRepository: MLSConversationRepository, pendingProposalScheduler: PendingProposalScheduler, selfUserId: UserId, protoContentMapper: ProtoContentMapper = MapperProvider.protoContentMapper(selfUserId = selfUserId)) : MLSMessageUnpacker
Link copied to clipboard
internal typealias MLSReceiveRecoveryHandler = suspend (CryptoTransactionContext, Event.Conversation.NewMLSMessage, Boolean) -> Boolean

Returns true when a durable receipt or recovery has handled this MLS payload.

Link copied to clipboard
internal interface NewMessageEventHandler
Link copied to clipboard
internal class NewMessageEventHandlerImpl(proteusMessageUnpacker: ProteusMessageUnpacker, mlsMessageUnpacker: MLSMessageUnpacker, applicationMessageHandler: ApplicationMessageHandler, legalHoldHandler: LegalHoldHandler, enqueueSelfDeletion: (ConversationId, messageId: String) -> Unit, enqueueConfirmationDelivery: suspend (ConversationId, messageId: String) -> Unit, selfUserId: UserId, staleEpochVerifier: StaleEpochVerifier, resetMLSConversation: ResetMLSConversationUseCase, receiveRecovery: MLSReceiveRecoveryHandler? = null, bufferedMLSMessageRecoveryTracker: BufferedMLSMessageRecoveryTracker = BufferedMLSMessageRecoveryTracker()) : NewMessageEventHandler

Functions

Link copied to clipboard
internal fun <T> Either<CoreFailure, T>.recoveryOrThrow(): T