Ejemplo n.º 1
0
  public static Key nextChapter(Key key) {
    Verse verse;
    // Get verse to work with
    if (Utils.isVerse(key)) {
      verse = (Verse) key;
    } else if (Utils.isVerseRange(key)) {
      verse = ((VerseRange) key).getEnd();
    } else {
      throw new RuntimeException("Unsupported Type for next chapter key");
    }

    // Check if end of Bible
    if (verse.getLastVerseInBook().equals(verse.getLastVerseInChapter())
        && verse.getBook().equals(BibleBook.REV)) {
      return key;
    } else {
      return new VerseRange(
          verse.getLastVerseInChapter().add(1).getFirstVerseInChapter(),
          verse.getLastVerseInChapter().add(1).getLastVerseInChapter());
    }

    //		if(TextUtility.isVerse((key))){
    //			//Does not return next but simply returns current chapter
    //			return new VerseRange(((Verse) key).getFirstVerseInChapter(), ((Verse)
    // key).getLastVerseInChapter());
    //		} else if (TextUtility.isVerseRange((key))) {
    //			//Else just the chapter reference
    //			if (((VerseRange) key).getEnd().getLastVerseInBook().equals(((VerseRange) key).getEnd())
    // && ((VerseRange) key).getEnd().getBook().equals(BibleBook.REV)){
    //				return key;
    //			}
    //			return new VerseRange(((VerseRange)
    // key).getEnd().getLastVerseInChapter().add(1),((VerseRange)
    // key).getEnd().getLastVerseInChapter().add(1).getLastVerseInChapter());
    //		} else {
    //			throw new RuntimeException("Unsupported Type for next chapter key");
    //		}
  }