com.pubnub.internal.eventengine.QueueSinkSource.kt Maven / Gradle / Ivy
package com.pubnub.internal.eventengine
import java.util.concurrent.BlockingQueue
import java.util.concurrent.LinkedBlockingQueue
internal interface SinkSource : Sink, Source
internal class QueueSinkSource(private val queue: BlockingQueue = LinkedBlockingQueue()) : SinkSource {
override fun take(): T {
return queue.take()
}
override fun add(item: T) {
queue.add(item)
}
}