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.basic
Class AbstractBookMetaData

    java.lang.Object
      org.crosswire.jsword.book.basic.AbstractBookMetaData

All Implemented Interfaces:
  Comparable<BookMetaData>, BookMetaData

Direct Known Subclasses:
  DefaultBookMetaData, SwordBookMetaData

    public abstract class AbstractBookMetaData

extends Object
implements BookMetaData

Author:
  DM Smith
See Also:
  `The GNU Lesser General Public License for details.
  The copyright to this program is held by its authors.`

Field Summary
`private BookDriver` | `driver`
`private IndexStatus` | `indexStatus`
`private Language` | `language`
`private URI` | `library`
`private URI` | `location`

Fields inherited from interface org.crosswire.jsword.book.BookMetaData
`KEY_BOOK, KEY_BOOKLIST, KEY_CATEGORY, KEY_DRIVER, KEY_FONT, KEY_LANG, KEY_LANGUAGE, KEY_NAME, KEY_SCOPE, KEY_VERSIFICATION`

Constructor Summary
`AbstractBookMetaData()`

Method Summary
`int` | `compareTo(BookMetaData obj)`
`boolean` | `equals(Object obj)`
`BookDriver` | `getDriver()` Accessor for the driver that runs this Book.
`String` | `getDriverName()` Calculated field: The name of the name, which could be helpful to distinguish similar Books available through 2 BookDrivers.
`IndexStatus` | `getIndexStatus()` Has anyone generated a search index for this Book?
`KeyType` | `getKeyType()` How this Book organizes it's keys.
`Language` | `getLanguage()` The language of the book.
`URI` | `getLibrary()` Get the base URI for library of this module.
`URI` | `getLocation()` Get the base URI for relative URIs in the document.
`String` | `getOsisID()` Calculated field: Get an OSIS identifier for the OsisText.setOsisIDWork() and the Work.setOsisWork() methods.
`String` | `getUnlockKey()` Gets the unlock key for the module.
`boolean` | `hasFeature(FeatureType feature)` Return whether the feature is supported by the book.
`int` | `hashCode()`
`boolean` | `isEnciphered()` Indicate whether this book is enciphered.
`boolean` | `isLocked()` Indicate whether this book is enciphered and without a key.
`boolean` | `isQuestionable()` Indicate whether this book is questionable.
`boolean` | `isSupported()` Indicate whether this book is supported by JSword.
`void` | `putProperty(String key, String value)` Save to shared storage.
`void` | `setDriver(BookDriver driver)`
`void` | `setIndexStatus(IndexStatus newValue)` This method does not alter the index status, however it is for Indexers that are responsible for indexing and have changed the status themselves.
`void` | `setLanguage(Language language)` Set the language for this book.
`void` | `setLibrary(URI library)` Set the base URI for library of this module.
`void` | `setLocation(URI location)` Set the base URI for relative URIs in the document.
`org.jdom2.Document` | `toOSIS()` Get an OSIS representation of information concerning this Book.
`String` | `toString()`
`boolean` | `unlock(String unlockKey)` Unlocks a book with the given key.

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

Methods inherited from interface org.crosswire.jsword.book.BookMetaData
`getAbbreviation, getBookCategory, getInitials, getName, getProperty, getPropertyKeys, isLeftToRight, putProperty, setProperty`

Field Detail

### driver

    private BookDriver driver

### indexStatus

    private IndexStatus indexStatus

### language

    private Language language

### library

    private URI library

### location

    private URI location

Constructor Detail

### AbstractBookMetaData

    public AbstractBookMetaData()

Method Detail

### getKeyType

    public KeyType getKeyType()

  Description copied from interface: `BookMetaData`
  How this Book organizes it's keys.

  Specified by:
    `getKeyType` in interface `BookMetaData`
  Returns:
    the organization of keys of this Book

### getDriver

    public BookDriver getDriver()

  Description copied from interface: `BookMetaData`
  Accessor for the driver that runs this Book. Note this method should only be used to delete() Books. Everything else you should want to do to a Book should be available in other ways.

  Specified by:
    `getDriver` in interface `BookMetaData`
  Returns:
    the driver for the book.

### getDriverName

    public String getDriverName()

  Description copied from interface: `BookMetaData`
  Calculated field: The name of the name, which could be helpful to distinguish similar Books available through 2 BookDrivers.

  Specified by:
    `getDriverName` in interface `BookMetaData`
  Returns:
    The driver name

### hasFeature

    public boolean hasFeature(FeatureType feature)

  Description copied from interface: `BookMetaData`
  Return whether the feature is supported by the book.

  Specified by:
    `hasFeature` in interface `BookMetaData`
  Parameters:
    `feature` - the feature in question
  Returns:
    true if the book supports the feature

### getOsisID

    public String getOsisID()

  Description copied from interface: `BookMetaData`
  Calculated field: Get an OSIS identifier for the OsisText.setOsisIDWork() and the Work.setOsisWork() methods. The response will generally be of the form [Bible][Dict..].getInitials

  Specified by:
    `getOsisID` in interface `BookMetaData`
  Returns:
    The osis id of this book

### isSupported

    public boolean isSupported()

  Description copied from interface: `BookMetaData`
  Indicate whether this book is supported by JSword. Since the expectation is that all books are supported, abstract implementations should return true and let specific implementations return false if they cannot support the book.

  Specified by:
    `isSupported` in interface `BookMetaData`
  Returns:
    true if the book is supported

### isEnciphered

    public boolean isEnciphered()

  Description copied from interface: `BookMetaData`
  Indicate whether this book is enciphered. Since the expectation is that most books are unenciphered, abstract implementations should return false and let specific implementations return true otherwise.

  Specified by:
    `isEnciphered` in interface `BookMetaData`
  Returns:
    true if the book is enciphered

### isLocked

    public boolean isLocked()

  Description copied from interface: `BookMetaData`
  Indicate whether this book is enciphered and without a key. Since the expectation is that most books are unenciphered, abstract implementations should return false and let specific implementations return true otherwise.

  Specified by:
    `isLocked` in interface `BookMetaData`
  Returns:
    true if the book is locked

### unlock

    public boolean unlock(String unlockKey)

  Description copied from interface: `BookMetaData`
  Unlocks a book with the given key.

  Specified by:
    `unlock` in interface `BookMetaData`
  Parameters:
    `unlockKey` - the key to try
  Returns:
    true if the unlock key worked.

### getUnlockKey

    public String getUnlockKey()

  Description copied from interface: `BookMetaData`
  Gets the unlock key for the module.

  Specified by:
    `getUnlockKey` in interface `BookMetaData`
  Returns:
    the unlock key, if any, null otherwise.

### isQuestionable

    public boolean isQuestionable()

  Description copied from interface: `BookMetaData`
  Indicate whether this book is questionable. A book may be deemed questionable if it's quality or content has not been confirmed. Since the expectation is that all books are not questionable, abstract implementations should return false and let specific implementations return true if the book is questionable.

  Specified by:
    `isQuestionable` in interface `BookMetaData`
  Returns:
    true if the book is questionable

### getLanguage

    public Language getLanguage()

  Description copied from interface: `BookMetaData`
  The language of the book.

  Specified by:
    `getLanguage` in interface `BookMetaData`
  Returns:
    the book's language

### setLanguage

    public void setLanguage(Language language)

  Description copied from interface: `BookMetaData`
  Set the language for this book.

  Specified by:
    `setLanguage` in interface `BookMetaData`
  Parameters:
    `language` - the book's language

### getLibrary

    public URI getLibrary()

  Description copied from interface: `BookMetaData`
  Get the base URI for library of this module.

  Specified by:
    `getLibrary` in interface `BookMetaData`
  Returns:
    the base URI or null if there is none

### setLibrary

    public void setLibrary(URI library)
                    throws BookException

  Description copied from interface: `BookMetaData`
  Set the base URI for library of this module.

  Specified by:
    `setLibrary` in interface `BookMetaData`
  Parameters:
    `library` - the base URI or null if there is none
  Throws:
    `BookException` - indicates missing data files

### setLocation

    public void setLocation(URI location)

  Description copied from interface: `BookMetaData`
  Set the base URI for relative URIs in the document.

  Specified by:
    `setLocation` in interface `BookMetaData`
  Parameters:
    `location` - the base URI or null if there is none

### getLocation

    public URI getLocation()

  Description copied from interface: `BookMetaData`
  Get the base URI for relative URIs in the document.

  Specified by:
    `getLocation` in interface `BookMetaData`
  Returns:
    the base URI or null if there is none

### getIndexStatus

    public IndexStatus getIndexStatus()

  Description copied from interface: `BookMetaData`
  Has anyone generated a search index for this Book?

  Specified by:
    `getIndexStatus` in interface `BookMetaData`
  Returns:
    the status for the index of this book.
  See Also:
    `IndexManager`

### setIndexStatus

    public void setIndexStatus(IndexStatus newValue)

  Description copied from interface: `BookMetaData`
  This method does not alter the index status, however it is for Indexers that are responsible for indexing and have changed the status themselves.

  Specified by:
    `setIndexStatus` in interface `BookMetaData`
  Parameters:
    `newValue` - the status for the index of this book
  See Also:
    `IndexManager`

### putProperty

    public void putProperty(String key,
                            String value)

  Description copied from interface: `BookMetaData`
  Save to shared storage.

  Specified by:
    `putProperty` in interface `BookMetaData`
  Parameters:
    `key` - the key of the property to set
    `value` - the value of the property

### toOSIS

    public org.jdom2.Document toOSIS()

  Description copied from interface: `BookMetaData`
  Get an OSIS representation of information concerning this Book.

  Specified by:
    `toOSIS` in interface `BookMetaData`
  Returns:
    the OSIS representation of information about this book.

### setDriver

    public void setDriver(BookDriver driver)

  Parameters:
    `driver` - The driver to set.

### equals

    public boolean equals(Object obj)

  Overrides:
    `equals` in class `Object`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `Object`

### compareTo

    public int compareTo(BookMetaData obj)

  Specified by:
    `compareTo` in interface `Comparable<BookMetaData>`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

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