Github user vrozov commented on the pull request:
https://github.com/apache/incubator-apex-core/pull/301#issuecomment-208715497
There is no benefit of AbstractReservoir implementing BlockingQueue other
than reusing already defined interface currently. As CircularBuffer implements
BlockingQueue and DefaultReservoir extended CircularBuffer, I made
AbstractReservoir implement BlockingQueue interface as well. As
AbstractReservoir implementations delegate BlockingQueue implementation to
CircularBuffer, SpscArrayQueue or ArrayBlockingQueue, and both CircularBuffer
and ArrayBlockingQueue implement BlockingQueue, if SpscArrayQueue adds support
for BlockingQueue, it may be possible to use other methods from BlockingQueue
in AbstractReservoirs.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---