+str #15998 Add Source singleton, empty, failed factories

Refs #15998