Refactors Subscription logic into #enqueue method
Adds delegate to simplify code