public interface Name extends Cloneable, Serializable, Comparable<Object>
Strings which are
ordered from most significant to least significant. There are methods to
get the number of components. Methods to get a particular component or group
of components. Components can be added as Strings or
Names and a component can be removed from any position in the
Name.
A Name can be compared to another Name and it can
be checked if a particular Name starts or ends with the same
components as another Name. Finally Names can be
serialized and cloned.
Since Names can be empty (have no components) methods that
return a Name will never return null.
| Modifier and Type | Field and Description |
|---|---|
static long |
serialVersionUID |
| Modifier and Type | Method and Description |
|---|---|
Name |
add(int posn,
String comp)
Inserts the given
String component to this Name
at the given index. |
Name |
add(String comp)
Adds the given
String component to the end of this
Name. |
Name |
addAll(int posn,
Name n)
Inserts all the components of the given
Name to this
Name at the given index. |
Name |
addAll(Name suffix)
Adds all the components of the given
Name to the end of this
Name. |
Object |
clone()
Returns a clone of this
Name. |
int |
compareTo(Object obj)
Compares the given object to this
Name. |
boolean |
endsWith(Name name)
Returns
true if this Name ends with the
components of the given Name, false otherwise. |
String |
get(int i)
Gets the component at the given index.
|
Enumeration<String> |
getAll()
Returns a non-null (but possibly empty)
Enumeration of the
components of the Name as Strings. |
Name |
getPrefix(int posn)
Returns the components till the given index as a
Name. |
Name |
getSuffix(int posn)
Returns the components from the given index till the end as a
Name. |
boolean |
isEmpty()
Returns
true if the number of components of this
Name is zero, false otherwise. |
Object |
remove(int posn)
Removes the component at the given index from this
Name. |
int |
size()
Returns the number of components of this
Name. |
boolean |
startsWith(Name name)
Returns
true if this Name starts with the
components of the given Name, false otherwise. |
static final long serialVersionUID
int size()
Name.
The returned number can be zero.boolean isEmpty()
true if the number of components of this
Name is zero, false otherwise.Enumeration<String> getAll()
Enumeration of the
components of the Name as Strings.String get(int i)
ArrayIndexOutOfBoundsException - if the given index is smaller
then zero or greater then or equal to size().Name getPrefix(int posn)
Name.
The returned Name can be modified without changing the
original.posn - the ending position, exclusiveArrayIndexOutOfBoundsException - if the given index is smaller
then zero or greater then or equal to size().Name getSuffix(int posn)
Name.
The returned Name can be modified without changing the
original.posn - the starting position, inclusive. If it is equal to the size
of the name, the empty name is returned.ArrayIndexOutOfBoundsException - if the given index is smaller
then zero or greater then or equal to size().Name add(String comp) throws InvalidNameException
String component to the end of this
Name. The method modifies the current Name and
then returns it.InvalidNameException - if the given String is not a
valid component for this Name.Name add(int posn, String comp) throws InvalidNameException
String component to this Name
at the given index. The method modifies the current Name and
then returns it.ArrayIndexOutOfBoundsException - if the given index is smaller
then zero or greater then or equal to size().InvalidNameException - if the given String is not a
valid component for this Name.Name addAll(Name suffix) throws InvalidNameException
Name to the end of this
Name. The method modifies the current Name and
then returns it.InvalidNameException - if any of the given components is not a
valid component for this Name.Name addAll(int posn, Name n) throws InvalidNameException
Name to this
Name at the given index. Components after this index
(if any) are shifted up. The method modifies the current
Name and then returns it.ArrayIndexOutOfBoundsException - if the given index is smaller
then zero or greater then or equal to size().InvalidNameException - if any of the given components is not a
valid component for this Name.Object remove(int posn) throws InvalidNameException
Name.
The method modifies the current Name and then returns it.InvalidNameException - if the given String is not a
valid component for this Name.boolean startsWith(Name name)
true if this Name starts with the
components of the given Name, false otherwise.boolean endsWith(Name name)
true if this Name ends with the
components of the given Name, false otherwise.int compareTo(Object obj)
Name.
Returns a negative value if the given Object is smaller then
this Name, a positive value if the Object is
bigger, and zero if the are equal. If the Object is not of
a class that can be compared to the class of this Name then
a ClassCastException is thrown. Note that it is not
guaranteed that Names implemented in different classes can
be compared. The definition of smaller, bigger and equal is up to the
actual implementing class.compareTo in interface Comparable<Object>obj - the object to be compared