Это обычно слой между репозиторием и презентером.
В нем ты пишешь что ты хочешь получить, в виде кейсов
список функций по получению добавлению , и никакой логики.
class Interactor (repo:Repository) {
getEvent(id :String): Event
{ return repo.getEvent(id)}
}
в репозитории логика по обработке и получению данных из раличных источников
class Repositrory(api:ApiInterface,db:Database){
getEvent(id:String): Event{
val resp = api.getEventFromInternet()
return resp
}
}
и когда ты хочешь что то получить просто говоришь интерактор дай мне событие с таким то id
понял, мне задали не давно такой вопрос на собесе, аля если ты получаешь какие то данные из вне например решение для 2 + 2 и ты знаешь что всегда к этому выражению ты должен плюсовать ещё 2, то где ты будешь это реализовывать, в моделе или в презентере.
Я так понял что это какая никакая бизнес логика, поэтому и ответил что в презентере, видимо не верно?)