/**
   * Deletes the book from the database. Also notifies the appropriate model listeners.
   *
   * @param book the book
   * @throws SystemException if a system exception occurred
   */
  public void deleteBook(Book book) throws SystemException {
    bookPersistence.remove(book);

    Indexer indexer = IndexerRegistryUtil.getIndexer(getModelClassName());

    if (indexer != null) {
      try {
        indexer.delete(book);
      } catch (SearchException se) {
        if (_log.isWarnEnabled()) {
          _log.warn(se, se);
        }
      }
    }
  }