Having null as a workable argument only exists for unit tests to simplify mocking and doesn't represent any actual use case.  I think since I changed the contract for that method, leaving an existing method that would result in an IllegalStateException when used in the way it was formerly allowed to be used is less blunt than I like to be.