@Immutable
public class SegmentStates
extends Object
The SegmentStates contains the candidate instances for each segment, and the unavailable segments for routing
purpose.
For old segments, the instance candidates should always have online flag set to true.
For old segments without any enabled instance candidates, we report them as unavailable segments.
For new segments, the online flag within the instance candidates indicates whether the instance is online or not.
We don't report new segments as unavailable segments because it is valid for new segments to be offline.