Implement per-service middleware (let's see how that works out)