public ServerLocation adviseServerLocation(int bucketId) {
    if (bucketServerLocationsMap.containsKey(bucketId)) {
      List<BucketServerLocation66> locations = bucketServerLocationsMap.get(bucketId);
      List<BucketServerLocation66> locationsCopy = new ArrayList<>(locations);

      if (locationsCopy.isEmpty()) {
        return null;
      }
      if (locationsCopy.size() == 1) {
        return locationsCopy.get(0);
      }
      int index = random.nextInt(locationsCopy.size());
      return locationsCopy.get(index);
    }
    return null;
  }
Stores the information such as partition attributes and meta data details


@since GemFire 6.5
geode-core/src/main/java/org/apache/geode/cache/client/internal/ClientPartitionAdvisor.java