callAdapter
-
[ Android ] CallAdapter, SealedClass 를 활용한 레트로핏 응답 처리Android & Kotlin 2022. 7. 12. 01:28
📌 문제상황 레트로핏을 통한 통신시 결과 값에 대해 처리에 대한 고민이 생겼습니다.. 1. 서버로 부터 실패의 응답이 오는 경우 2. 서버로부터 잘못된 형태의 응답이 오는 경우 3. 응답 형태이긴 하지만 빈값인 경우 등등 응답에는 다양한 문제가 있을 수 있고 이를 관리할 수 있는 무언가가 필요하다는 생각을 했습니다. 응답에 대한 검증을 어디서 어떻게 할지 또한 고민이었습니다. 📌 해결 방법 1 : Network Reuslt Class (Seald Class) 첫번째 방법은 SealdClass 로 응답을 감쌈으로써 응답의 형태를 일관성 있게 추상화 하는 것입니다. sealed class NetworkResult { class Success(val data: T) : NetworkResult() class ..