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.book.sword
Class SwordBook

    java.lang.Object
      org.crosswire.jsword.book.basic.AbstractBook
          org.crosswire.jsword.book.basic.AbstractPassageBook
              org.crosswire.jsword.book.sword.SwordBook

All Implemented Interfaces:
  Comparable, Activatable, Book, KeyFactory

    public class SwordBook

extends AbstractPassageBook

SwordBook is a base class for all sword type books.

Author:
  Joe Walker [joe at eireneh dot com]
See Also:
  `for license details. The copyright to this program is held by it's authors.`

Field Summary
`private AbstractBackend` | `backend` To read the data from the disk
`private SwordBookMetaData` | `sbmd` The Sword configuration file

Constructor Summary
`SwordBook(SwordBookMetaData sbmd, AbstractBackend backend)` Simple ctor

Method Summary
`void` | `activate(Lock lock)` Called to indicate that the Book should initialize itself, and consume whatever system resources it needs to be able to respond to other queries.
`void` | `addOSIS(Key key, org.jdom.Element div, List osisContent)` Add the OSIS elements to the div element.
`void` | `addOSIS(Key key, List contentList, List osisContent)` Add the OSIS elements to the div element.
`void` | `deactivate(Lock lock)` Called to indicate that the Book should release whatever system resources it can to make way for other uses.
`protected Filter` | `getFilter()` What filter should be used to filter data in the format produced by this Book?.
`String` | `getRawText(Key key)` Returns the raw text that getData(Key key) builds into OSIS.
`boolean` | `isWritable()` A Book is writable if the file system allows the underlying files to be opened for writing and if the driver for the book allows writing.
`void` | `setAliasKey(Key alias, Key source)` Store an alias of one key to another.
`void` | `setRawText(Key key, String rawData)` Store the raw text for the given key.

Methods inherited from class org.crosswire.jsword.book.basic.AbstractPassageBook
`createEmptyKeyList, getGlobalKeyList, getKey, getOsisIterator, getValidKey, setDocument`

Methods inherited from class org.crosswire.jsword.book.basic.AbstractBook
`addIndexStatusListener, compareTo, equals, find, find, firePropertyChange, getBook, getBookCategory, getBookMetaData, getDriver, getDriverName, getIndexStatus, getInitials, getLanguage, getName, getOsisID, getProperties, getProperty, getUnlockKey, hasFeature, hashCode, isEnciphered, isLeftToRight, isLocked, isQuestionable, isSupported, match, putProperty, removeIndexStatusListener, setBookMetaData, setIndexStatus, toOSIS, toString, unlock`

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

Field Detail

### backend

    private AbstractBackend backend

  To read the data from the disk

### sbmd

    private SwordBookMetaData sbmd

  The Sword configuration file

Constructor Detail

### SwordBook

    public SwordBook(SwordBookMetaData sbmd,
                     AbstractBackend backend)

  Simple ctor

Method Detail

### activate

    public final void activate(Lock lock)

  Description copied from interface: `Activatable`
  Called to indicate that the Book should initialize itself, and consume whatever system resources it needs to be able to respond to other queries.

  Specified by:
    `activate` in interface `Activatable`
  Overrides:
    `activate` in class `AbstractBook`
  Parameters:
    `lock` - An attempt to ensure that only the Activator calls this method

### deactivate

    public final void deactivate(Lock lock)

  Description copied from interface: `Activatable`
  Called to indicate that the Book should release whatever system resources it can to make way for other uses.

  Specified by:
    `deactivate` in interface `Activatable`
  Overrides:
    `deactivate` in class `AbstractBook`
  Parameters:
    `lock` - An attempt to ensure that only the Activator calls this method

### getRawText

    public String getRawText(Key key)
                      throws BookException

  Description copied from interface: `Book`
  Returns the raw text that getData(Key key) builds into OSIS.

  Parameters:
    `key` - The item to locate
  Returns:
    The found Book data
  Throws:
    `BookException` - If anything goes wrong with this method

### addOSIS

    public void addOSIS(Key key,
                        org.jdom.Element div,
                        List osisContent)

  Description copied from class: `AbstractPassageBook`
  Add the OSIS elements to the div element. Note, this assumes that the data is fully marked up.

  Overrides:
    `addOSIS` in class `AbstractPassageBook`
  Parameters:
    `key` - The key being added
    `div` - The div element to which the key's OSIS representation is being added
    `osisContent` - The OSIS representation of the key being added.

### addOSIS

    public void addOSIS(Key key,
                        List contentList,
                        List osisContent)

  Description copied from class: `AbstractPassageBook`
  Add the OSIS elements to the div element. Note, this assumes that the data is fully marked up.

  Overrides:
    `addOSIS` in class `AbstractPassageBook`
  Parameters:
    `key` - The key being added
    `contentList` - The list to which the key's OSIS representation is being added
    `osisContent` - The OSIS representation of the key being added.

### isWritable

    public boolean isWritable()

  Description copied from interface: `Book`
  A Book is writable if the file system allows the underlying files to be opened for writing and if the driver for the book allows writing. Ultimately, all drivers should allow writing. At this time writing is not supported by drivers, so abstract implementations should return false and let specific implementations return true otherwise.

  Specified by:
    `isWritable` in interface `Book`
  Overrides:
    `isWritable` in class `AbstractPassageBook`
  Returns:
    true if the book is writable

### setRawText

    public void setRawText(Key key,
                           String rawData)
                    throws BookException

  Description copied from interface: `Book`
  Store the raw text for the given key. This will replace/hide any raw text that already is present. Note: it is the responsibility of the calling program to ensure that the raw text matches the character set encoding and markup of the module.

  Parameters:
    `key` - The item to locate
    `rawData` - The text to store
  Throws:
    `BookException` - If anything goes wrong with this method

### setAliasKey

    public void setAliasKey(Key alias,
                            Key source)
                     throws BookException

  Description copied from interface: `Book`
  Store an alias of one key to another. Some Bibles do not have a verse by verse numbering system but rather meld several verses into one. Thus, any verse in the range refers to the same verse. Also it may apply to biblical commentaries that are indexed by Book, Chapter, Verse and that discuss the Bible at a verse range level. For a dictionary, it may be used for synonyms.

  It should be an exception to set an alias when that alias already has raw text. Also, it should be an exception to set an alias to an alias. However, getRawText(Key) must be able to handle alias chains.

  Parameters:
    `alias` - the key that aliases another
    `source` - the key that holds the text
  Throws:
    `BookException` - If anything goes wrong with this method

### getFilter

    protected Filter getFilter()

  Description copied from class: `AbstractPassageBook`
  What filter should be used to filter data in the format produced by this Book?. In some ways this method is more suited to BookMetaData however we do not have a specialization of BookMetaData to fit AbstractPassageBook and it doesn't like any higher in the hierachy at the moment so I will leave this here.

  Specified by:
    `getFilter` in class `AbstractPassageBook`

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