Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.crosswire.jsword.passage
Class AbstractKeyList

    java.lang.Object
      org.crosswire.jsword.passage.AbstractKeyList

All Implemented Interfaces:
  Serializable, Cloneable, Comparable<Key>, Iterable<Key>, Key

Direct Known Subclasses:
  DefaultKeyList, SetKeyList, TreeKey

    public abstract class AbstractKeyList

extends Object
implements Key

An implementation of some of the easier methods from Key.

Author:
  Joe Walker
See Also:
  `The GNU Lesser General Public License for details.`, Serialized Form

Nested Class Summary
`(package private) static class` | `AbstractKeyList.NameVisitor` The `NameVisitor` constructs a readable representation of the Passage.
`(package private) static class` | `AbstractKeyList.OsisIDVisitor` The `OsisRefVisitor` constructs a readable representation of the Passage, using OSIS names.
`(package private) static class` | `AbstractKeyList.OsisRefVisitor` The `OsisRefVisitor` constructs a readable representation of the Passage, using OSIS names.

Field Summary
`private String` | `name` The common user visible name for this work
`private static long` | `serialVersionUID` Serialization ID

Constructor Summary
`protected` | `AbstractKeyList(String name)` Build an AbstractKeyList with the given name.

Method Summary
`AbstractKeyList` | `clone()` This needs to be declared here so that it is visible as a method on a derived Key.
`int` | `compareTo(Key that)`
`boolean` | `contains(Key key)` Returns `true` if this set contains the specified element.
`boolean` | `equals(Object obj)` This needs to be declared here so that it is visible as a method on a derived Key.
`String` | `getName()` A Human readable version of the Key.
`String` | `getName(Key base)` Translate the Key into a human readable string, with the assumption that the specified Key has just been output, so if we are in the same region, we do not need to display the region name, and so on.
`String` | `getOsisID()` The OSIS defined id specification for this Key.
`String` | `getOsisRef()` The OSIS defined reference specification for this Key.
`String` | `getRootName()` A Human readable version of the Key's top level name.
`int` | `hashCode()` This needs to be declared here so that it is visible as a method on a derived Key.
`boolean` | `isEmpty()` Does this Key have 0 members
`protected static void` | `retain(Key alter, Key base)` Utility to remove all the keys from alter that are not in base
`void` | `retainAll(Key key)` Removes all but the specified element from this set.
`void` | `setName(String name)` Override the default name with a custom name.
`String` | `toString()`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.crosswire.jsword.passage.Key
`addAll, blur, canHaveChildren, clear, get, getCardinality, getChildCount, getParent, indexOf, removeAll`

Methods inherited from interface java.lang.Iterable
`iterator`

Field Detail

### name

    private String name

  The common user visible name for this work

### serialVersionUID

    private static final long serialVersionUID

  Serialization ID

  See Also:
    Constant Field Values

Constructor Detail

### AbstractKeyList

    protected AbstractKeyList(String name)

  Build an AbstractKeyList with the given name.

  Parameters:
    `name` -

Method Detail

### isEmpty

    public boolean isEmpty()

  Description copied from interface: `Key`
  Does this Key have 0 members

  Specified by:
    `isEmpty` in interface `Key`
  Returns:
    `true` if this set contains no elements.

### contains

    public boolean contains(Key key)

  Description copied from interface: `Key`
  Returns `true` if this set contains the specified element.

  Specified by:
    `contains` in interface `Key`
  Parameters:
    `key` - element whose presence in this set is to be tested.
  Returns:
    `true` if this set contains the specified element.

### retainAll

    public void retainAll(Key key)

  Description copied from interface: `Key`
  Removes all but the specified element from this set.

  Specified by:
    `retainAll` in interface `Key`
  Parameters:
    `key` - object to be left in this set.

### retain

    protected static void retain(Key alter,
                                 Key base)

  Utility to remove all the keys from alter that are not in base

  Parameters:
    `alter` - The key to remove keys from
    `base` - The check key

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### setName

    public void setName(String name)

  Override the default name with a custom name. If the name is null then a name will be generated by concatenating the names of all the elements of this node.

  Parameters:
    `name` -

### getName

    public String getName()

  Description copied from interface: `Key`
  A Human readable version of the Key. For Biblical passages this uses short books names, and the shortest sensible rendering, for example "Mat 3:1-4" and "Mar 1:1, 3, 5" and "3Jo, Jude"

  Specified by:
    `getName` in interface `Key`
  Returns:
    a String containing a description of the Key

### getName

    public String getName(Key base)

  Description copied from interface: `Key`
  Translate the Key into a human readable string, with the assumption that the specified Key has just been output, so if we are in the same region, we do not need to display the region name, and so on.

  Specified by:
    `getName` in interface `Key`
  Parameters:
    `base` - The key to use to cut down unnecessary output.
  Returns:
    The string representation

### getRootName

    public String getRootName()

  Description copied from interface: `Key`
  A Human readable version of the Key's top level name. For Biblical passages this uses short books names. For a dictionary it might return A-Z.

  Specified by:
    `getRootName` in interface `Key`
  Returns:
    a String containing a description of the Key

### getOsisRef

    public String getOsisRef()

  Description copied from interface: `Key`
  The OSIS defined reference specification for this Key. When the key is a single element, it is an OSIS book name with '.' separating the parts. When the key is multiple elements, it uses a range notation. Note, this will create a comma separated list of ranges, which is improper OSIS.

  Specified by:
    `getOsisRef` in interface `Key`
  Returns:
    a String containing the OSIS description of the verses

### getOsisID

    public String getOsisID()

  Description copied from interface: `Key`
  The OSIS defined id specification for this Key. When the key is a single element, it is an OSIS book name with '.' separating the parts. When the key is multiple elements, it uses a space to separate each.

  Specified by:
    `getOsisID` in interface `Key`
  Returns:
    a String containing the OSIS description of the verses

### equals

    public boolean equals(Object obj)

  Description copied from interface: `Key`
  This needs to be declared here so that it is visible as a method on a derived Key.

  Specified by:
    `equals` in interface `Key`
  Overrides:
    `equals` in class `Object`
  Returns:
    true if equal

### hashCode

    public int hashCode()

  Description copied from interface: `Key`
  This needs to be declared here so that it is visible as a method on a derived Key.

  Specified by:
    `hashCode` in interface `Key`
  Overrides:
    `hashCode` in class `Object`
  Returns:
    the hashcode

### compareTo

    public int compareTo(Key that)

  Specified by:
    `compareTo` in interface `Comparable<Key>`

### clone

    public AbstractKeyList clone()

  Description copied from interface: `Key`
  This needs to be declared here so that it is visible as a method on a derived Key.

  Specified by:
    `clone` in interface `Key`
  Overrides:
    `clone` in class `Object`
  Returns:
    A complete copy of ourselves

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Copyright ¨ 2003-2015
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD