aaa

aaa
Anonymous
swift
02/19/2021 8:45 AM
856 B
15
Indexable
    func getGames() -> Observable<[Game]> {
        return localData.getGames()
            .map { GameMapping.gameEntityToDomain(gameEntity: $0) }
            .filter { !$0.isEmpty }
            .ifEmpty(switchTo: remoteData.getGames()
                        .map { GameMapping.gameResponseToEntity(gameResult: $0) }
                        .flatMap { self.localData.saveGames(gameEntity: $0) }
                        .filter { $0 }
                        .flatMap { _ in self.localData.getGames()
                            .map { GameMapping.gameEntityToDomain(gameEntity: $0) }
                        }
            )
        
    }
Editor is loading...