Class TopologyInfo
- java.lang.Object
-
- org.infinispan.distribution.topologyaware.TopologyInfo
-
public class TopologyInfo extends java.lang.Object
This class holds the topology hierarchy of a cache's members and estimates for owned segments.- Since:
- 5.2
- Author:
- Dan Berindei
-
-
Constructor Summary
Constructors Constructor Description TopologyInfo(int numSegments, int numOwners, java.util.Collection<Address> members, java.util.Map<Address,java.lang.Float> capacityFactors)
TopologyInfo(ConsistentHash ch)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description float
computeTotalCapacity(java.util.Collection<Address> nodes, java.util.Map<Address,java.lang.Float> capacityFactors)
boolean
duplicateLocation(TopologyLevel level, java.util.Collection<Address> addresses, Address candidate, boolean excludeCandidate)
java.lang.String
formatLocation(java.text.DecimalFormat df, org.infinispan.distribution.topologyaware.TopologyInfo.Location location, java.lang.String prefix)
java.util.Collection<java.lang.String>
getAllSites()
int
getDistinctLocationsCount(TopologyLevel level)
int
getDistinctLocationsCount(TopologyLevel level, java.util.Collection<Address> addresses)
float
getExpectedOwnedSegments(Address address)
float
getExpectedPrimarySegments(Address address)
java.lang.Object
getLocationId(TopologyLevel level, Address address)
java.util.Collection<Address>
getMachineNodes(java.lang.String site, java.lang.String rack, java.lang.String machine)
java.util.Collection<java.lang.String>
getRackMachines(java.lang.String site, java.lang.String rack)
java.util.Collection<Address>
getRackNodes(java.lang.String site, java.lang.String rack)
java.util.Collection<Address>
getSiteNodes(java.lang.String site)
java.util.Collection<java.lang.String>
getSiteRacks(java.lang.String site)
java.lang.String
toString()
-
-
-
Constructor Detail
-
TopologyInfo
public TopologyInfo(ConsistentHash ch)
-
-
Method Detail
-
getDistinctLocationsCount
public int getDistinctLocationsCount(TopologyLevel level)
-
getDistinctLocationsCount
public int getDistinctLocationsCount(TopologyLevel level, java.util.Collection<Address> addresses)
-
duplicateLocation
public boolean duplicateLocation(TopologyLevel level, java.util.Collection<Address> addresses, Address candidate, boolean excludeCandidate)
-
getLocationId
public java.lang.Object getLocationId(TopologyLevel level, Address address)
-
getSiteNodes
public java.util.Collection<Address> getSiteNodes(java.lang.String site)
-
getRackNodes
public java.util.Collection<Address> getRackNodes(java.lang.String site, java.lang.String rack)
-
getMachineNodes
public java.util.Collection<Address> getMachineNodes(java.lang.String site, java.lang.String rack, java.lang.String machine)
-
getAllSites
public java.util.Collection<java.lang.String> getAllSites()
-
getSiteRacks
public java.util.Collection<java.lang.String> getSiteRacks(java.lang.String site)
-
getRackMachines
public java.util.Collection<java.lang.String> getRackMachines(java.lang.String site, java.lang.String rack)
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
formatLocation
public java.lang.String formatLocation(java.text.DecimalFormat df, org.infinispan.distribution.topologyaware.TopologyInfo.Location location, java.lang.String prefix)
-
computeTotalCapacity
public float computeTotalCapacity(java.util.Collection<Address> nodes, java.util.Map<Address,java.lang.Float> capacityFactors)
-
getExpectedPrimarySegments
public float getExpectedPrimarySegments(Address address)
-
getExpectedOwnedSegments
public float getExpectedOwnedSegments(Address address)
-
-