Class EntityIndexingManagementFacade

java.lang.Object
io.jmix.search.index.EntityIndexingManagementFacade

@ManagedResource(description="Manages entity indexing for full text search", objectName="jmix.search:type=EntityIndexing") @Component("search_EntityIndexingManagementFacade") public class EntityIndexingManagementFacade extends Object
  • Field Details

  • Constructor Details

    • EntityIndexingManagementFacade

      public EntityIndexingManagementFacade()
  • Method Details

    • getIndexSchemaManagementStrategy

      @ManagedAttribute(description="Strategy of index synchronization") public String getIndexSchemaManagementStrategy()
    • getEntityNamesOfAsyncEnqueueingSessions

      @ManagedAttribute(description="List of entities to be asynchronously enqueued") public List<String> getEntityNamesOfAsyncEnqueueingSessions()
    • enqueueIndexAll

      @ManagedOperation(description="Synchronously enqueues all instances of all indexed entities. Don\'t use it on a huge amount of data") public String enqueueIndexAll()
    • enqueueIndexAll

      @ManagedOperation(description="Synchronously enqueues all instances of provided indexed entity. Don\'t use it on a huge amount of data") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String enqueueIndexAll(String entityName)
    • initAsyncEnqueueing

      @ManagedOperation(description="Init async enqueueing process for all indexed entities") public String initAsyncEnqueueing()
    • initAsyncEnqueueing

      @ManagedOperation(description="Init async enqueueing process for provided entity") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String initAsyncEnqueueing(String entityName)
    • suspendAsyncEnqueueing

      @ManagedOperation(description="Suspend async enqueueing process") public String suspendAsyncEnqueueing()
    • suspendAsyncEnqueueing

      @ManagedOperation(description="Suspend async enqueueing process for provided entity") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String suspendAsyncEnqueueing(String entityName)
    • resumeAsyncEnqueueing

      @ManagedOperation(description="Resume all previously suspended async enqueueing processes") public String resumeAsyncEnqueueing()
    • resumeAsyncEnqueueing

      @ManagedOperation(description="Resume previously suspended async enqueueing process for provided entity") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String resumeAsyncEnqueueing(String entityName)
    • terminateAsyncEnqueueing

      @ManagedOperation(description="Terminate async enqueueing process") public String terminateAsyncEnqueueing()
    • terminateAsyncEnqueueing

      @ManagedOperation(description="Terminate async enqueueing process for provided entity") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String terminateAsyncEnqueueing(String entityName)
    • enqueueNextBatch

      @ManagedOperation(description="Async enqueue next batch") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String enqueueNextBatch(String entityName)
    • enqueueNextBatch

      @ManagedOperation(description="Async enqueue next batch of next available session") public String enqueueNextBatch()
    • indexEntityInstance

      @ManagedOperation(description="Index specific entity instance by its id") @ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order") @ManagedOperationParameter(name="id",description="Id of target entity instance") public String indexEntityInstance(String entityName, String id)
    • enqueueIndexEntityInstance

      @ManagedOperation(description="Enqueue indexing of specific entity instance by its id") @ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order") @ManagedOperationParameter(name="id",description="Id of target entity instance") public String enqueueIndexEntityInstance(String entityName, String id)
    • deleteEntityInstanceFromIndex

      @ManagedOperation(description="Delete index document related to specific entity instance by its id") @ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order") @ManagedOperationParameter(name="id",description="Idd of target entity instance") public String deleteEntityInstanceFromIndex(String entityName, String id)
    • enqueueDeleteEntityInstanceFromIndex

      @ManagedOperation(description="Enqueue deletion of index document related to specific entity instance by its id") @ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order") @ManagedOperationParameter(name="id",description="Id of target entity instance") public String enqueueDeleteEntityInstanceFromIndex(String entityName, String id)
    • validateIndexes

      @ManagedOperation(description="Validates schemas of all search indexes defined in application.") public String validateIndexes()
    • validateIndex

      @ManagedOperation(description="Validates schema of search index related to provided entity.") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String validateIndex(String entityName)
    • synchronizeIndexSchemas

      @ManagedOperation(description="Synchronizes schemas of all search indexes defined in application. This may cause deletion of indexes with all their data - depends on schema management strategy") public String synchronizeIndexSchemas()
    • synchronizeIndexSchema

      @ManagedOperation(description="Synchronizes schema of index related to provided entity. This may cause deletion of this index with all data - depends on schema management strategy") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String synchronizeIndexSchema(String entityName)
    • recreateIndexes

      @ManagedOperation(description="Drops and creates all search indexes defined in application. All data will be lost.") public String recreateIndexes()
    • recreateIndex

      @ManagedOperation(description="Drops and creates index related to provided entity. All data will be lost.") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String recreateIndex(String entityName)
    • processEntireIndexingQueue

      @ManagedOperation(description="Processes all items in Indexing Queue") public String processEntireIndexingQueue()
    • processIndexingQueueNextBatch

      @ManagedOperation(description="Processes next batch of items in Indexing Queue") public String processIndexingQueueNextBatch()
    • emptyIndexingQueue

      @ManagedOperation(description="Removes all items from Indexing Queue") public String emptyIndexingQueue()
    • emptyIndexingQueue

      @ManagedOperation(description="Removes all items related to provided entity from Indexing Queue") @ManagedOperationParameters(@ManagedOperationParameter(name="entityName",description="Name of entity configured for indexing, e.g. demo_Order")) public String emptyIndexingQueue(String entityName)
    • formatSingleStatusString

      protected String formatSingleStatusString(String entityName, String indexName, String status)
    • validateInputEntity

      protected io.jmix.search.index.EntityIndexingManagementFacade.InputValidationResult validateInputEntity(String entityName)