Назад к задачамПолучайте помощь с лайвкодингом в реальном времени с Sobes Copilot
Junior — Senior
6
Переписывание методов репозитория – задача 4
Условие задачи
В проекте имеется репозиторий с плохо названными методами, неинформативными параметрами и избыточными функциями. Требуется провести рефакторинг интерфейса, сделав имена методов и их аргументов более понятными, сохранив при этом оригинальную сигнатуру и поведение.
interface ConferenceRepository {
suspend fun startConference(
conferenceId: String?,
participantId: Long,
legacyEnabled: Int,
authToken: String
)
suspend fun retrieveAllData(
conferenceId: String,
flags: Map<String, String>,
expansionDepth: Int
): Any?
suspend fun obtainSchedule(
conferenceCode: Int,
includePartial: Boolean
): List<Any>
suspend fun validateTicket(
email: String,
seatsRequested: Int,
conferenceId: Long,
forceCheck: Boolean
): Boolean?
suspend fun loadChatMessages(
conferenceId: String,
startOffset: Int,
pageSize: Int,
includeRead: Int,
fromHistory: Boolean
): Map<String, Any?>
suspend fun sendChatMessage(
text: String,
conferenceSlug: String,
userAuthToken: String,
attachmentUrls: List<String>?
): Any
suspend fun modifySpeaker(
speakerId: Int,
updatedFields: Map<String, Any>,
silentMode: Boolean
): Int
suspend fun changeUserPassword(oldPassword: String, newPassword: String, username: String)
suspend fun reloadAllData(): Unit
suspend fun supportLegacyMode(
conferenceId: Int,
operationMode: String,
optionalParam: String?,
quantity: Int
): Long
}