public class TopologyUUID extends UUID
UUID
which adds 3 strings (siteId, rackId and machineId)as payload.
An instance of this can be fed to JChannel.setAddressGenerator(org.jgroups.stack.AddressGenerator)
,
with the address generator creating TopologyUUIDs.
Mainly used by TopologyAwareConsistentHash in Infinispan (www.infinispan.org).Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
machine_id |
protected java.lang.String |
rack_id |
protected java.lang.String |
site_id |
additional_data, cache, leastSigBits, mostSigBits, numberGenerator, print_function, print_uuids, SIZE
Modifier | Constructor and Description |
---|---|
|
TopologyUUID() |
protected |
TopologyUUID(byte[] data,
java.lang.String site_id,
java.lang.String rack_id,
java.lang.String machine_id) |
Modifier and Type | Method and Description |
---|---|
protected static byte[] |
generateRandomBytes() |
java.lang.String |
getMachineId() |
java.lang.String |
getRackId() |
java.lang.String |
getSiteId() |
boolean |
isSameMachine(TopologyUUID addr) |
boolean |
isSameRack(TopologyUUID addr) |
boolean |
isSameSite(TopologyUUID addr) |
protected java.lang.String |
printDetails() |
static TopologyUUID |
randomUUID(java.lang.String site_id,
java.lang.String rack_id,
java.lang.String machine_id) |
static TopologyUUID |
randomUUID(java.lang.String logical_name,
java.lang.String site_id,
java.lang.String rack_id,
java.lang.String machine_id) |
void |
readExternal(java.io.ObjectInput in) |
void |
readFrom(java.io.DataInputStream in)
Read the state of the current object (including superclasses) from instream
Note that the input stream must not be closed
|
void |
setMachineId(java.lang.String machine_id) |
void |
setRackId(java.lang.String rack_id) |
void |
setSiteId(java.lang.String site_id) |
int |
size()
Returns serialized size of this address
|
java.lang.String |
toString() |
java.lang.String |
toStringDetailed() |
void |
writeExternal(java.io.ObjectOutput out) |
void |
writeTo(java.io.DataOutputStream out)
Write the entire state of the current object (including superclasses) to outstream.
|
add, add, clone, compareTo, digits, equals, get, getAdditionalData, getContents, getLeastSignificantBits, getMostSignificantBits, hashCode, isMulticastAddress, printCache, randomUUID, remove, removeAll, retainAll, setAdditionalData, toStringLong
protected java.lang.String site_id
protected java.lang.String rack_id
protected java.lang.String machine_id
public TopologyUUID()
protected TopologyUUID(byte[] data, java.lang.String site_id, java.lang.String rack_id, java.lang.String machine_id)
public static TopologyUUID randomUUID(java.lang.String site_id, java.lang.String rack_id, java.lang.String machine_id)
public static TopologyUUID randomUUID(java.lang.String logical_name, java.lang.String site_id, java.lang.String rack_id, java.lang.String machine_id)
public java.lang.String getSiteId()
public void setSiteId(java.lang.String site_id)
public java.lang.String getRackId()
public void setRackId(java.lang.String rack_id)
public java.lang.String getMachineId()
public void setMachineId(java.lang.String machine_id)
public boolean isSameSite(TopologyUUID addr)
public boolean isSameRack(TopologyUUID addr)
public boolean isSameMachine(TopologyUUID addr)
public int size()
Address
public void writeTo(java.io.DataOutputStream out) throws java.io.IOException
Streamable
writeTo
in interface Streamable
writeTo
in class UUID
java.io.IOException
public void readFrom(java.io.DataInputStream in) throws java.io.IOException, java.lang.IllegalAccessException, java.lang.InstantiationException
Streamable
readFrom
in interface Streamable
readFrom
in class UUID
java.io.IOException
java.lang.IllegalAccessException
java.lang.InstantiationException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
readExternal
in class UUID
java.io.IOException
java.lang.ClassNotFoundException
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
writeExternal
in class UUID
java.io.IOException
public java.lang.String toStringDetailed()
protected static byte[] generateRandomBytes()
protected java.lang.String printDetails()
Copyright ? 1998-2009 Bela Ban / Red Hat. All Rights Reserved.