The Conjurer object is a runnable object. It adds events to the queue in it's run method. As such, I placed it in a separate thread so that it would keep adding events to the queue while the ConjurerFirehoseFactory would remove items from the queue