I think the waitFor approach seems fine, and refactoring later if need be is reasonable.