다른 Peer에게 데이터 송신하는 플로우
내가 추가한 오브젝트를 View에 표시하는 플로우
ManageWhiteboardObjectUseCase
의 addObject
함수 호출whiteboardObjectSet
에 insert
수행addedWhiteboardSubject
에 send
→ Combine Publisher 작동→ WhiteboardViewController가 이를 구독하여 화면에 오브젝트를 렌더링.whiteboardObjectRepository
에 오브젝트를 전달 (send
호출).whiteboardObjectRepository
의 send
실행 방식:
filePersistence
를 사용하여 오브젝트 데이터를 파일로 저장 후 저장된 파일의 URL
반환.nearbyNetwork
를 통해 해당 URL
데이터를 연결된 모든 피어에게 전송.nearbyNetwork
는 내부적으로:
Peer에게 데이터 수신받는 플로우
nearbyNetwork
의 reciptURLSubject
에 해당 데이터 URL 전달 → Combine Publisher 작동 (reciptURLPublisher
발행).whiteboardObjectRepository
는 reciptURLPublisher
를 구독하여 데이터 수신.URL
로부터 데이터를 로드.didReceive
함수 호출 → 이미 존재하는 오브젝트인지 확인.