org.crosswire.jsword.passage

## Class VerseFactory

- java.lang.Object
- - org.crosswire.jsword.passage.VerseFactory

-     public final class VerseFactory
      extends Object

  A factory to create a Verse from user input.
  Author:
    Joe Walker
  See Also:
    `The GNU Lesser General Public License for details.`

- - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `private` | `VerseFactory()` Prevent a VerseFactory from being created.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Verse` | `fromString(Versification v11n, String original)` Construct a Verse from a String - something like "Gen 1:1".
    `static Verse` | `fromString(Versification v11n, String original, VerseRange verseRangeBasis)` Construct a Verse from a String and a VerseRange.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### VerseFactory

          private VerseFactory()

      Prevent a VerseFactory from being created.

  - ### Method Detail

    - #### fromString

          public static Verse fromString(Versification v11n,
                         String original)
                                  throws NoSuchVerseException

      Construct a Verse from a String - something like "Gen 1:1". in case the user does not want to have their typing 'fixed' by a meddling patronizing computer. The following initial letters can not be matched at all - 'bfquvwx'.
      Parameters:
        `v11n` - the versification to which this reference pertains
        `original` - The text string to be converted
      Returns:
        the Verse representation of the string
      Throws:
        `NoSuchVerseException` - If the text can not be understood

    - #### fromString

          public static Verse fromString(Versification v11n,
                         String original,
                         VerseRange verseRangeBasis)
                                  throws NoSuchVerseException

      Construct a Verse from a String and a VerseRange. For example given "2:2" and a basis of Gen 1:1 - 12 the result would be Gen 2:2
      Parameters:
        `v11n` - the versification to which this reference pertains
        `original` - The string describing the verse e.g "2:2"
        `verseRangeBasis` - The basis by which to understand the desc.
      Returns:
        the verse representation of the string
      Throws:
        `NoSuchVerseException` - If the reference is illegal