I think the cleanest way to write this method is to move everything into the switch. That makes it obvious how each option is handled.