private void purgeIndex(TransactionContext transactionContext, Class<?> entityType) {
   transactionContext =
       transactionContext == null ? makeTransactionalEventContext() : transactionContext;
   if (clusterRegistry.get(entityType) && searchFactoryHandler.isIndexed(entityType)) {
     performSearchWorks(
         searchWorkCreator.createPerEntityTypeWorks(
             (Class<Object>) entityType, WorkType.PURGE_ALL),
         transactionContext);
   }
 }
 private void purgeAllIndexes(TransactionContext transactionContext) {
   transactionContext =
       transactionContext == null ? makeTransactionalEventContext() : transactionContext;
   for (Class c : clusterRegistry.keys()) {
     if (searchFactoryHandler.isIndexed(c)) {
       //noinspection unchecked
       performSearchWorks(
           searchWorkCreator.createPerEntityTypeWorks(c, WorkType.PURGE_ALL), transactionContext);
     }
   }
 }
 public boolean updateKnownTypesIfNeeded(Object value) {
   return searchFactoryHandler.updateKnownTypesIfNeeded(value);
 }
 public void enableClasses(Class[] classes) {
   searchFactoryHandler.enableClasses(classes);
 }
 public boolean isIndexed(final Class<?> c) {
   return searchFactoryHandler.isIndexed(c);
 }