What if you provide the '$requested' vendor ('upstream' by default) and callback to origin when its none existent?
That would make it more reusable.