Refactoring so that we can have the IStreamP implementation control what to return when an underlying consumption occurs.