Are you sure you want to provide two different ways of achieving the very same thing? Don't you prefer to just have the current approach + the IllegalStateException?