colony.common
Class Moniker

java.lang.Object
  |
  +--colony.common.Moniker
All Implemented Interfaces:
java.io.Serializable

public class Moniker
extends Object
implements java.io.Serializable

An generic identifier that serves as a handle or hash key.

See Also:
Serialized Form
Specification Fields

Field Summary
static String NEUTRAL_SIDE
           
 
Constructor Summary
Moniker(String monikerString)
          Constructor which parses a string in the format output by toString(), that is, the four fields in order delimited by a colon.
Moniker(String type, String subtype, String name)
          The constructor from parameters.
Moniker(String type, String subtype, String side, String name)
          The constructor from parameters including side.
 
Method Summary
 boolean equals(Object o)
          Indicates whether some other object is "equal to" this one.
 String getName()
           
 String getSide()
           
 String getSubtype()
           
 String getType()
           
 int hashCode()
          Returns a hash code value for the object.
 String toString()
          Returns a string representation of the object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass
 

Field Detail

NEUTRAL_SIDE

public static final String NEUTRAL_SIDE
See Also:
Constant Field Values
Constructor Detail

Moniker

public Moniker(String monikerString)
Constructor which parses a string in the format output by toString(), that is, the four fields in order delimited by a colon.

Parameters:
monikerString - string representation of a moniker to parse.

Moniker

public Moniker(String type,
               String subtype,
               String name)
The constructor from parameters.

Parameters:
type - A unique string identifier for this moniker type.
subtype - A unique string identifier for subtypes within this type.
name - A unique string identifier within each subtype.
Requires:
name != null && subtype != null && type != null

Moniker

public Moniker(String type,
               String subtype,
               String side,
               String name)
The constructor from parameters including side.

Parameters:
side - map side that this moniker belongs to.
Requires:
name != null && subtype != null && side != null, type != null
Method Detail

equals

public boolean equals(Object o)
Description copied from class: Object
Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation:

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any reference values x and y, this method returns true if and only if x and y refer to the same object (x==y has the value true).

Overrides:
equals in class Object
Parameters:
o - the reference object with which to compare.
Returns:
True if the parameter is a Moniker and has the same name, type, and subtype as this. False otherwise.
See Also:
Boolean.hashCode(), Hashtable

getName

public String getName()
Returns:
name

getSide

public String getSide()
Returns:
side

getSubtype

public String getSubtype()
Returns:
subtype

getType

public String getType()
Returns:
type

hashCode

public int hashCode()
Description copied from class: Object
Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

The general contract of hashCode is:

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)

Overrides:
hashCode in class Object
Returns:
a hashcode for this, where [a.equals(b) ] ==> [ a.hashCode() == b.hashCode() ]
See Also:
Object.equals(java.lang.Object), Hashtable

toString

public String toString()
Description copied from class: Object
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Overrides:
toString in class Object
Returns:
a String representation of this in the form type:subtype:side:name.