/** * An introduction is a Verse that has a verse number of 0. * * @param verse the verse to test * @return true or false ... */ public boolean isIntro(Verse verse) { int v = verse.getVerse(); return v == 0; }
/** * The start of a chapter is indicated by * a verse number of 0 or 1 * * @param verse the verse to test * @return true or false ... */ public boolean isStartOfChapter(Verse verse) { int v = verse.getVerse(); return v <= 1; }
/** * The start of a book is indicated by * a chapter number of 0 or 1 and * a verse number of 0 or 1. * * @param verse the verse to test * @return true or false ... */ public boolean isStartOfBook(Verse verse) { int v = verse.getVerse(); int c = verse.getChapter(); return v <= 1 && c <= 1; }
private void populateVerseNotesList() { mVerseNotesList.clear(); int startVerseNo = currentVerseRange.getStart().getVerse(); int endVerseNo = currentVerseRange.getEnd().getVerse(); if (mChapterNotesList!=null) { for (Note note : mChapterNotesList) { final int noteVerseNo = note.getVerseNo(); if (noteVerseNo >= startVerseNo && noteVerseNo <=endVerseNo) { mVerseNotesList.add(note); } } } }
public JSONObject getStateJson() throws JSONException { JSONObject object = new JSONObject(); object.put("versification", mainVerse.getVersification().getName()); object.put("bibleBook", mainVerse.getBook().ordinal()); object.put("chapter", mainVerse.getChapter()); object.put("verseNo", mainVerse.getVerse()); return object; }
public ChapterVerse getChapterVerse() { return new ChapterVerse(mainVerse.getChapter(), mainVerse.getVerse()); }
public MyNoteMarker(OsisToHtmlParameters parameters, VerseInfo verseInfo, HtmlTextWriter writer) { this.parameters = parameters; this.verseInfo = verseInfo; this.writer = writer; // create hashmap of verses to optimise verse note lookup myNoteVerses.clear(); if (parameters.getVersesWithNotes()!=null) { for (Key key : parameters.getVersesWithNotes()) { Verse verse = KeyUtil.getVerse(key); myNoteVerses.add(verse.getVerse()); } } }
@Override public VerseRange blur(Versification v11n, Verse verse, int blurDown, int blurUp) { BibleBook book = verse.getBook(); int chapter = verse.getChapter(); int startVerse = verse.getVerse() - blurDown; int endVerse = verse.getVerse() + blurUp; startVerse = Math.max(startVerse, 0); endVerse = Math.min(endVerse, v11n.getLastVerse(book, chapter)); Verse start = new Verse(v11n, book, chapter, startVerse); Verse end = new Verse(v11n, book, chapter, endVerse); return new VerseRange(v11n, start, end); }
/** * The end of the chapter is indicated by * the verse number matching the last in the chapter. * * @param verse the verse to test * @return true or false ... */ public boolean isEndOfChapter(Verse verse) { BibleBook b = verse.getBook(); int v = verse.getVerse(); int c = verse.getChapter(); return v == getLastVerse(b, c); }
public ConvertibleVerse(Verse verse) { this(verse.getVersification(), verse.getBook(), verse.getChapter(), verse.getVerse()); }
/** Return the verse in the required versification, mapping if necessary */ public Verse convert(Verse verse, Versification toVersification) { Verse mappedVerse = convertVerseStrictly(verse, toVersification); if (mappedVerse != null) return mappedVerse; // just try to retain information by forcing creation of a similar verse with the new v11n return new Verse(toVersification, verse.getBook(), verse.getChapter(), verse.getVerse()); }
@Test public void testGetNextVerseWrapsToNextChapter() throws Exception { assertThat(bibleTraverser.getNextVerse(testBook, TestData.KJV_PS_14_7).getVerse(), equalTo(1)); }
@Test public void testGetPreviousVerseWrapsToPreviousChapter() throws Exception { assertThat(bibleTraverser.getPrevVerse(testBook, TestData.KJV_PS_14_1).getVerse(), equalTo(6)); }
@Override public VerseRange blur(Versification v11n, VerseRange range, int blurDown, int blurUp) { Verse start = range.getStart(); BibleBook startBook = start.getBook(); int startChapter = start.getChapter(); int startVerse = start.getVerse() - blurDown; Verse end = range.getEnd(); BibleBook endBook = end.getBook(); int endChapter = end.getChapter(); int endVerse = end.getVerse() + blurUp; startVerse = Math.max(startVerse, 0); endVerse = Math.min(endVerse, v11n.getLastVerse(endBook, endChapter)); Verse newStart = new Verse(v11n, startBook, startChapter, startVerse); Verse newEnd = new Verse(v11n, endBook, endChapter, endVerse); return new VerseRange(v11n, newStart, newEnd); }
/** * The end of the book is indicated by * the chapter number matching the last chapter * in the book and the verse number matching * the last verse in the chapter. * * @param verse the verse to test * @return true or false ... */ public boolean isEndOfBook(Verse verse) { BibleBook b = verse.getBook(); int v = verse.getVerse(); int c = verse.getChapter(); return v == getLastVerse(b, c) && c == getLastChapter(b); }
private void updateBookmarkSettings(Key key, PlaybackSettings settings) { Verse v = (Verse) key; if(v.getVerse() == 0) { v = new Verse(v.getVersification(), v.getBook(), v.getChapter(), 1); } BookmarkDto bookmarkDto = getBookmarkByKey(v); if(bookmarkDto != null && bookmarkDto.getPlaybackSettings() != null) { bookmarkDto.setPlaybackSettings(settings); addOrUpdateBookmark(bookmarkDto); Log.d("SpeakBookmark", "Updated bookmark settings "+bookmarkDto + settings.getSpeed()); } }
/** Get next Scriptural Verse with same scriptural status */ public Verse getNextVerse(AbstractPassageBook document, Verse verse) { Versification v11n = verse.getVersification(); BibleBook book = verse.getBook(); int chapter = verse.getChapter(); int verseNo = verse.getVerse(); // if past last chapter of book then go to next book - algorithm not foolproof but we only move one chapter at a time like this if (verseNo<v11n.getLastVerse(book, chapter)) { return new Verse(v11n, book, chapter, verseNo+1); } else { return getNextChapter(document, verse); } }
/** Get previous Verse with same scriptural status */ public Verse getPrevVerse(AbstractPassageBook document, Verse verse) { Versification v11n = verse.getVersification(); BibleBook book = verse.getBook(); int chapter = verse.getChapter(); int verseNo = verse.getVerse(); if (verseNo>1) { verseNo -= 1; } else { Verse prevChap = getPrevChapter(document, verse); if (!v11n.isSameChapter(verse, prevChap)) { book = prevChap.getBook(); chapter = prevChap.getChapter(); verseNo = v11n.getLastVerse(book, chapter); } } return new Verse(v11n, book, chapter, verseNo); }
/** * Get the verse that is a few verses on from the one we've got. * * @param verse * The verse to use as a start * @param n * the number of verses later than the one we're one * @return The new verse */ public Verse add(Verse verse, int n) { int newVerse = verse.getVerse() + n; // Try the simple case of the verse being in the same chapter if (newVerse <= getLastVerse(verse.getBook(), verse.getChapter())) { return new Verse(verse.getVersification(), verse.getBook(), verse.getChapter(), newVerse); } return decodeOrdinal(verse.getOrdinal() + n); }
public SpeakCommandArray getSpeakCommands(SpeakSettings settings, SwordBook book, Verse verse) { VersificationConverter v11nConverter = new VersificationConverter(); Verse verse_ = v11nConverter.convert(verse, book.getVersification()); SpeakCommandArray lst = new SpeakCommandArray(); if (verse_.getVerse() == 1) { lst.addAll(getSpeakCommandsForVerse(settings, book, new Verse(book.getVersification(), verse_.getBook(), verse_.getChapter(), 0))); } lst.addAll(getSpeakCommandsForVerse(settings, book, verse_)); return lst; }