Stream publishing refactor to clean up