package be.nikiroo.fanfix.data; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * A chapter in the story (or the resume/description). * * @author niki */ public class Chapter implements Iterable { private String name; private int number; private List paragraphs = new ArrayList(); private List empty = new ArrayList(); /** * Create a new {@link Chapter} with the given information. * * @param number * the chapter number, or 0 for the description/resume. * @param name * the chapter name */ public Chapter(int number, String name) { this.number = number; this.name = name; } /** * The chapter name. * * @return the name */ public String getName() { return name; } /** * The chapter name. * * @param name * the name to set */ public void setName(String name) { this.name = name; } /** * The chapter number, or 0 for the description/resume. * * @return the number */ public int getNumber() { return number; } /** * The chapter number, or 0 for the description/resume. * * @param number * the number to set */ public void setNumber(int number) { this.number = number; } /** * The included paragraphs. * * @return the paragraphs */ public List getParagraphs() { return paragraphs; } /** * The included paragraphs. * * @param paragraphes * the paragraphs to set */ public void setParagraphs(List paragraphs) { this.paragraphs = paragraphs; } /** * Get an iterator on the {@link Paragraph}s. */ public Iterator iterator() { return paragraphs == null ? empty.iterator() : paragraphs.iterator(); } /** * Display a DEBUG {@link String} representation of this object. */ @Override public String toString() { return "Chapter " + number + ": " + name; } }