Another quick point:
I would explicitly
test for the boolean "true": if ( isCurrent() == true ).
Then, you don't really need "else if" because you've already done the test. The else-if can be reduced to a simple else{} block.
Give a man a fish, he'll eat for one day. Teach a man to fish, he'll drink all your beer.
Cheers, Jeff (SCJP 1.4 all those years ago...)