use of com.hazelcast.core.Partition in project hazelcast by hazelcast.
the class HazelcastTestSupport method generateKeyOwnedBy.
/**
* Generates a key according to given reference instance by checking partition ownership for it.
*
* @param instance reference instance for key generation.
* @param generateOwnedKey {@code true} if we want a key which is owned by the given instance, otherwise
* set to {@code false} which means generated key will not be owned by the given instance.
* @return generated string.
*/
public static String generateKeyOwnedBy(HazelcastInstance instance, boolean generateOwnedKey) {
Cluster cluster = instance.getCluster();
checkMemberCount(generateOwnedKey, cluster);
checkPartitionCountGreaterOrEqualMemberCount(instance);
Member localMember = cluster.getLocalMember();
PartitionService partitionService = instance.getPartitionService();
while (true) {
String id = randomString();
Partition partition = partitionService.getPartition(id);
if (comparePartitionOwnership(generateOwnedKey, localMember, partition)) {
return id;
}
}
}
use of com.hazelcast.core.Partition in project hazelcast by hazelcast.
the class HazelcastTestSupport method randomNameOwnedBy.
public static String randomNameOwnedBy(HazelcastInstance instance, String prefix) {
Member localMember = instance.getCluster().getLocalMember();
PartitionService partitionService = instance.getPartitionService();
while (true) {
String id = prefix + randomString();
Partition partition = partitionService.getPartition(id);
if (comparePartitionOwnership(true, localMember, partition)) {
return id;
}
}
}
use of com.hazelcast.core.Partition in project hazelcast by hazelcast.
the class HazelcastTestSupport method generateKeyForPartition.
public static String generateKeyForPartition(HazelcastInstance instance, int partitionId) {
Cluster cluster = instance.getCluster();
checkPartitionCountGreaterOrEqualMemberCount(instance);
Member localMember = cluster.getLocalMember();
PartitionService partitionService = instance.getPartitionService();
while (true) {
String id = randomString();
Partition partition = partitionService.getPartition(id);
if (partition.getPartitionId() == partitionId) {
return id;
}
}
}
use of com.hazelcast.core.Partition in project hazelcast by hazelcast.
the class ClientConsoleApp method handlePartitions.
protected void handlePartitions(String[] args) {
Set<Partition> partitions = hazelcast.getPartitionService().getPartitions();
Map<Member, Integer> partitionCounts = new HashMap<Member, Integer>();
for (Partition partition : partitions) {
Member owner = partition.getOwner();
if (owner != null) {
Integer count = partitionCounts.get(owner);
int newCount = 1;
if (count != null) {
newCount = count + 1;
}
partitionCounts.put(owner, newCount);
}
println(partition);
}
Set<Entry<Member, Integer>> entries = partitionCounts.entrySet();
for (Entry<Member, Integer> entry : entries) {
println(entry.getKey() + ":" + entry.getValue());
}
}
use of com.hazelcast.core.Partition in project hazelcast by hazelcast.
the class PartitionServiceProxy method getPartitions.
@Override
public Set<Partition> getPartitions() {
final int partitionCount = partitionService.getPartitionCount();
Set<Partition> partitions = new LinkedHashSet<Partition>(partitionCount);
for (int i = 0; i < partitionCount; i++) {
final Partition partition = partitionService.getPartition(i);
partitions.add(partition);
}
return partitions;
}
Aggregations