public void reIndex(long companyId, ContactBook contactBook) throws SearchException {
   try {
     ContactBookIndexer.updateContactBook(companyId, contactBook);
   } catch (UnsupportedEncodingException e) {
     throw new SearchException(e);
   }
 }
 public void deleteContactBook(long companyId, ContactBook contactBook)
     throws SystemException, SearchException {
   contactBookPersistence.remove(contactBook);
   try {
     ContactBookIndexer.deleteContactBook(companyId, contactBook);
   } catch (UnsupportedEncodingException e) {
     e.printStackTrace();
   }
 }
  protected void reIndexContactBook(long companyId, int start, int end) throws SystemException {

    List<ContactBook> contactBooks = contactBookPersistence.findByCompanyid(companyId, start, end);
    for (ContactBook contactBook : contactBooks) {
      try {
        ContactBookIndexer.updateContactBook(companyId, contactBook);
      } catch (SearchException e) {
        e.printStackTrace();
      } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
      }
    }
  }