tooling/RIB.xctemplate/Default/___FILEBASENAME___Interactor.swift (19 lines of code) (raw):
//___FILEHEADER___
import RIBs
import RxSwift
protocol ___VARIABLE_productName___Routing: Routing {
func cleanupViews()
// TODO: Declare methods the interactor can invoke to manage sub-tree via the router.
}
protocol ___VARIABLE_productName___Listener: AnyObject {
// TODO: Declare methods the interactor can invoke to communicate with other RIBs.
}
final class ___VARIABLE_productName___Interactor: Interactor, ___VARIABLE_productName___Interactable {
weak var router: ___VARIABLE_productName___Routing?
weak var listener: ___VARIABLE_productName___Listener?
// TODO: Add additional dependencies to constructor. Do not perform any logic
// in constructor.
override init() {}
override func didBecomeActive() {
super.didBecomeActive()
// TODO: Implement business logic here.
}
override func willResignActive() {
super.willResignActive()
router?.cleanupViews()
// TODO: Pause any business logic.
}
}