Confused about implementing Single Responsibility Principle@Vector yes it does, the items generator contains each service type logic in the same place explicitly, it's absolutely too much things in one method, this breaks open closed principle right away in addition that can never be unit tested. Could you elaborate on the last point?