in amazon-chime-sdk/src/main/java/com/amazonaws/services/chime/sdk/meetings/internal/video/DefaultVideoClientObserver.kt [286:300]
override fun onRemoteVideoSourceUnavailable(sourcesInternal: Array<RemoteVideoSourceInternal>?) {
if (sourcesInternal == null) return
val sources = sourcesInternal.map { internalSource ->
// Find the cached source if exists (see comment above cachedRemoveVideoSources)
for (cachedSource in cachedRemoveVideoSources) {
if (cachedSource.attendeeId == internalSource.attendeeId) {
cachedRemoveVideoSources.remove((cachedSource))
return@map cachedSource
}
}
this.logger.error(TAG, "Could not find cached source to remove")
RemoteVideoSource(internalSource.attendeeId) // This is likely not useful
}
forEachVideoClientStateObserver { observer -> observer.onRemoteVideoSourceUnavailable(sources) }
}