public class BaseIndexOptions
extends java.lang.Object
One of the options is to build indices in wildcard mode, meaning that all EClasses, EDataTypes, EReferences and EAttributes are indexed. This is convenient, but comes at a high memory cost. To save memory, one can disable wildcard mode and manually register those EClasses, EDataTypes, EReferences and EAttributes that should be indexed.
Another choice is whether to build indices in dynamic EMF mode, meaning that types are identified by the String IDs that are ultimately derived from the nsURI of the EPackage. Multiple types with the same ID are treated as the same. This is useful if dynamic EMF is used, where there can be multiple copies (instantiations) of the same EPackage, representing essentially the same metamodel. If one disables dynamic EMF mode, an error is logged if duplicate EPackages with the same nsURI are encountered.
Modifier and Type | Field and Description |
---|---|
protected static boolean |
DANGLING_FREE_ASSUMPTION_DEFAULT
By default, the scope will make the assumption that it is free from dangling edges.
|
protected boolean |
danglingFreeAssumption |
protected static boolean |
DYNAMIC_EMF_MODE_DEFAULT
By default, base indices will be constructed with dynamic EMF mode set as false.
|
protected boolean |
dynamicEMFMode |
protected IBaseIndexFeatureFilter |
featureFilterConfiguration |
protected IBaseIndexObjectFilter |
notifierFilterConfiguration |
protected IBaseIndexResourceFilter |
resourceFilterConfiguration |
protected static boolean |
STRICT_NOTIFICATION_MODE_DEFAULT
By default, duplicate notifications are only logged.
|
protected boolean |
strictNotificationMode
If strict notification mode is turned on, errors related to inconsistent notifications, e.g.
|
protected boolean |
traverseOnlyWellBehavingDerivedFeatures |
protected static IndexingLevel |
WILDCARD_MODE_DEFAULT
By default, base indices will be constructed with wildcard mode set as false.
|
protected IndexingLevel |
wildcardMode |
Constructor and Description |
---|
BaseIndexOptions()
Creates a base index options with the default values.
|
BaseIndexOptions(boolean dynamicEMFMode,
boolean wildcardMode)
Deprecated.
use
BaseIndexOptions(boolean, IndexingLevel) instead. Use IndexLevel.FULL for wildcardMode equivalent to true. |
BaseIndexOptions(boolean dynamicEMFMode,
IndexingLevel wildcardMode)
Creates a base index options using the provided values for dynamic EMF mode and wildcard mode.
|
protected static final IndexingLevel WILDCARD_MODE_DEFAULT
protected static final boolean DYNAMIC_EMF_MODE_DEFAULT
protected static final boolean DANGLING_FREE_ASSUMPTION_DEFAULT
protected static final boolean STRICT_NOTIFICATION_MODE_DEFAULT
protected boolean danglingFreeAssumption
protected boolean dynamicEMFMode
protected boolean traverseOnlyWellBehavingDerivedFeatures
protected IndexingLevel wildcardMode
protected IBaseIndexObjectFilter notifierFilterConfiguration
protected IBaseIndexResourceFilter resourceFilterConfiguration
protected IBaseIndexFeatureFilter featureFilterConfiguration
protected boolean strictNotificationMode
public BaseIndexOptions()
@Deprecated public BaseIndexOptions(boolean dynamicEMFMode, boolean wildcardMode)
BaseIndexOptions(boolean, IndexingLevel)
instead. Use IndexLevel.FULL
for wildcardMode equivalent to true.public BaseIndexOptions(boolean dynamicEMFMode, IndexingLevel wildcardMode)
public BaseIndexOptions withDynamicEMFMode(boolean dynamicEMFMode)
dynamicEMFMode
- public BaseIndexOptions withDanglingFreeAssumption(boolean danglingFreeAssumption)
danglingFreeAssumption
- if true,
the base index will assume that there are no dangling references
(pointing out of scope or to proxies)public BaseIndexOptions withObjectFilterConfiguration(IBaseIndexObjectFilter filter)
withResourceFilterConfiguration(IBaseIndexResourceFilter)
instead.filter
- public IBaseIndexObjectFilter getObjectFilterConfiguration()
public BaseIndexOptions withResourceFilterConfiguration(IBaseIndexResourceFilter filter)
filter
- public IBaseIndexResourceFilter getResourceFilterConfiguration()
public BaseIndexOptions withFeatureFilterConfiguration(IBaseIndexFeatureFilter filter)
filter
- public IBaseIndexFeatureFilter getFeatureFilterConfiguration()
public boolean isDynamicEMFMode()
public boolean isDanglingFreeAssumption()
public boolean isTraverseOnlyWellBehavingDerivedFeatures()
public BaseIndexOptions withWildcardMode(boolean wildcardMode)
withWildcardLevel(IndexingLevel)
instead.wildcardMode
- public BaseIndexOptions withWildcardLevel(IndexingLevel wildcardLevel)
wildcardMode
- public BaseIndexOptions withStrictNotificationMode(boolean strictNotificationMode)
public boolean isWildcardMode()
public IndexingLevel getWildcardLevel()
public boolean isStrictNotificationMode()
public BaseIndexOptions copy()
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object