@Component(value="search_IndexConfigurationManager")
public class IndexConfigurationManager
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
protected static class |
IndexConfigurationManager.PropertyTrackingInfo |
| Modifier and Type | Field and Description |
|---|---|
protected io.jmix.search.index.mapping.IndexConfigurationManager.Registry |
registry |
| Constructor and Description |
|---|
IndexConfigurationManager(io.jmix.core.impl.scanning.JmixModulesClasspathScanner classpathScanner,
AnnotatedIndexDefinitionProcessor indexDefinitionProcessor,
io.jmix.core.InstanceNameProvider instanceNameProvider,
IndexDefinitionDetector indexDefinitionDetector,
io.jmix.core.MetadataTools metadataTools) |
| Modifier and Type | Method and Description |
|---|---|
java.util.Collection<IndexConfiguration> |
getAllIndexConfigurations()
Gets all
IndexConfiguration registered in application |
java.util.Collection<java.lang.String> |
getAllIndexedEntities() |
java.util.Map<io.jmix.core.metamodel.model.MetaClass,java.util.Set<io.jmix.core.metamodel.model.MetaPropertyPath>> |
getDependenciesMetaDataForDelete(java.lang.Class<?> deletedEntityClass)
Gets metadata of entities dependent on deleted main entity.
|
java.util.Map<io.jmix.core.metamodel.model.MetaClass,java.util.Set<io.jmix.core.metamodel.model.MetaPropertyPath>> |
getDependenciesMetaDataForUpdate(java.lang.Class<?> entityClass,
java.util.Set<java.lang.String> changedProperties)
Gets metadata of entities dependent on updated main entity and its changed properties.
|
IndexConfiguration |
getIndexConfigurationByEntityName(java.lang.String entityName)
Gets
IndexConfiguration registered for provided entity name. |
java.util.Optional<IndexConfiguration> |
getIndexConfigurationByEntityNameOpt(java.lang.String entityName)
Gets optional
IndexConfiguration registered for provided entity name. |
IndexConfiguration |
getIndexConfigurationByIndexName(java.lang.String indexName)
Gets
IndexConfiguration registered for provided index name. |
java.util.Optional<IndexConfiguration> |
getIndexConfigurationByIndexNameOpt(java.lang.String indexName)
Gets optional
IndexConfiguration registered for provided index name. |
java.util.Set<java.lang.String> |
getLocalPropertyNamesAffectedByUpdate(java.lang.Class<?> entityClass)
Gets local property names of provided entity involved into index update process
|
boolean |
isAffectedEntityClass(java.lang.Class<?> entityClass)
Checks if provided entity is involved in index process directly or as a part of another entity.
|
boolean |
isDirectlyIndexed(java.lang.String entityName)
Checks if provided entity is declared to be indexed directly (not as a part of another entity).
|
protected final io.jmix.search.index.mapping.IndexConfigurationManager.Registry registry
@Autowired
public IndexConfigurationManager(io.jmix.core.impl.scanning.JmixModulesClasspathScanner classpathScanner,
AnnotatedIndexDefinitionProcessor indexDefinitionProcessor,
io.jmix.core.InstanceNameProvider instanceNameProvider,
IndexDefinitionDetector indexDefinitionDetector,
io.jmix.core.MetadataTools metadataTools)
public java.util.Collection<IndexConfiguration> getAllIndexConfigurations()
IndexConfiguration registered in applicationIndexConfigurationpublic IndexConfiguration getIndexConfigurationByEntityName(java.lang.String entityName)
IndexConfiguration registered for provided entity name.
Throws IllegalArgumentException if there is no configuration for provided entity name.entityName - entity name.IndexConfigurationpublic java.util.Optional<IndexConfiguration> getIndexConfigurationByEntityNameOpt(java.lang.String entityName)
IndexConfiguration registered for provided entity name.entityName - entity nameIndexConfigurationpublic IndexConfiguration getIndexConfigurationByIndexName(java.lang.String indexName)
IndexConfiguration registered for provided index name.
Throws IllegalArgumentException if there is no configuration for provided index name.indexName - index nameIndexConfigurationpublic java.util.Optional<IndexConfiguration> getIndexConfigurationByIndexNameOpt(java.lang.String indexName)
IndexConfiguration registered for provided index name.indexName - index nameIndexConfigurationpublic java.util.Collection<java.lang.String> getAllIndexedEntities()
public boolean isDirectlyIndexed(java.lang.String entityName)
entityName - entity namepublic boolean isAffectedEntityClass(java.lang.Class<?> entityClass)
entityClass - entity java classpublic java.util.Set<java.lang.String> getLocalPropertyNamesAffectedByUpdate(java.lang.Class<?> entityClass)
entityClass - entity classpublic java.util.Map<io.jmix.core.metamodel.model.MetaClass,java.util.Set<io.jmix.core.metamodel.model.MetaPropertyPath>> getDependenciesMetaDataForUpdate(java.lang.Class<?> entityClass,
java.util.Set<java.lang.String> changedProperties)
entityClass - java class of main entitychangedProperties - changed property of main entityMetaClass.
For every meta class group there are set of properties representing dependency-to-main referencespublic java.util.Map<io.jmix.core.metamodel.model.MetaClass,java.util.Set<io.jmix.core.metamodel.model.MetaPropertyPath>> getDependenciesMetaDataForDelete(java.lang.Class<?> deletedEntityClass)
deletedEntityClass - java class of main entityMetaClass.
For every meta class group there are set of properties representing dependency-to-main references