I think Daniel, i think having !location.equals(new Location()) here is pointless, is it meant to check that location.name is not empty?