Package org.eclipse.viatra.addon.querybasedfeatures.runtime

## Class QueryBasedFeatureSettingDelegate

- java.lang.Object
- - org.eclipse.emf.ecore.util.BasicSettingDelegate
  - - org.eclipse.emf.ecore.util.BasicSettingDelegate.Stateless
    - - org.eclipse.viatra.addon.querybasedfeatures.runtime.QueryBasedFeatureSettingDelegate

- All Implemented Interfaces:
    `org.eclipse.emf.ecore.EStructuralFeature.Internal.SettingDelegate`

      public class QueryBasedFeatureSettingDelegate
      extends org.eclipse.emf.ecore.util.BasicSettingDelegate.Stateless

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.eclipse.emf.ecore.util.BasicSettingDelegate

      `org.eclipse.emf.ecore.util.BasicSettingDelegate.Stateless`

    - ### Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.EStructuralFeature.Internal.SettingDelegate

      `org.eclipse.emf.ecore.EStructuralFeature.Internal.SettingDelegate.Factory`

  - ### Field Summary

    - ### Fields inherited from class org.eclipse.emf.ecore.util.BasicSettingDelegate

      `eStructuralFeature`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `QueryBasedFeatureSettingDelegate​(org.eclipse.emf.ecore.EStructuralFeature eStructuralFeature, QueryBasedFeatureSettingDelegateFactory factory, IQuerySpecification<?> querySpecification, boolean dynamicEMFMode)` | Constructs a new `QueryBasedFeatureSettingDelegate` instance based on the given parameters.
    `QueryBasedFeatureSettingDelegate​(org.eclipse.emf.ecore.EStructuralFeature eStructuralFeature, QueryBasedFeatureSettingDelegateFactory factory, IQuerySpecification<?> querySpecification, boolean isResourceScope, boolean dynamicEMFMode)` | Constructs a new `QueryBasedFeatureSettingDelegate` instance based on the given parameters.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected java.lang.Object` | `get​(org.eclipse.emf.ecore.InternalEObject owner, boolean resolve, boolean coreType)` |
    `void` | `initializeSettingDelegate​(org.eclipse.emf.common.notify.Notifier rootNotifier)` | Initializes the query based feature setting delegate using the given notifier as the root of the query engine base index.
    `protected boolean` | `isSet​(org.eclipse.emf.ecore.InternalEObject owner)` |

    - ### Methods inherited from class org.eclipse.emf.ecore.util.BasicSettingDelegate.Stateless

      `dynamicGet, dynamicInverseAdd, dynamicInverseRemove, dynamicIsSet, dynamicSet, dynamicSetting, dynamicUnset, inverseAdd, inverseRemove, set, setting, unset`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### QueryBasedFeatureSettingDelegate

          public QueryBasedFeatureSettingDelegate​(org.eclipse.emf.ecore.EStructuralFeature eStructuralFeature,
                                                  QueryBasedFeatureSettingDelegateFactory factory,
                                                  IQuerySpecification<?> querySpecification,
                                                  boolean dynamicEMFMode)

      Constructs a new `QueryBasedFeatureSettingDelegate` instance based on the given parameters. The scope of the VIATRA Query engine in this case will be the one provided by `QueryBasedFeatureHelper#prepareNotifierForSource(InternalEObject)`.
      Parameters:
        `eStructuralFeature` - the parent structural feature of the setting delegate
        `factory` - the factory used to create VIATRA Query engine for the setting delegate
        `querySpecification` - the query specification used for the evaluation of the setting delegate
        `dynamicEMFMode` - indicates whether the engine should be created in dynamic EMF mode

    - #### QueryBasedFeatureSettingDelegate

          public QueryBasedFeatureSettingDelegate​(org.eclipse.emf.ecore.EStructuralFeature eStructuralFeature,
                                                  QueryBasedFeatureSettingDelegateFactory factory,
                                                  IQuerySpecification<?> querySpecification,
                                                  boolean isResourceScope,
                                                  boolean dynamicEMFMode)

      Constructs a new `QueryBasedFeatureSettingDelegate` instance based on the given parameters.
      Parameters:
        `eStructuralFeature` - the parent structural feature of the setting delegate
        `factory` - the factory used to create VIATRA Query engine for the setting delegate
        `querySpecification` - the query specification used for the evaluation of the setting delegate
        `isResourceScope` - indicates whether the `Resource` of the `InternalEObject` is enough as a scope during the evaluation of the setting delegate
        `dynamicEMFMode` - indicates whether the engine should be created in dynamic EMF mode

  - ### Method Detail

    - #### get

          protected java.lang.Object get​(org.eclipse.emf.ecore.InternalEObject owner,
                                         boolean resolve,
                                         boolean coreType)

      Specified by:
        `get` in class `org.eclipse.emf.ecore.util.BasicSettingDelegate.Stateless`

    - #### initializeSettingDelegate

          public void initializeSettingDelegate​(org.eclipse.emf.common.notify.Notifier rootNotifier)

      Initializes the query based feature setting delegate using the given notifier as the root of the query engine base index. This is usually the `ResourceSet` unless you know what you are doing.
      Parameters:
        `rootNotifier` - the root of the indexing for the matcher driving the feature
      Since:
        1.3

    - #### isSet

          protected boolean isSet​(org.eclipse.emf.ecore.InternalEObject owner)

      Specified by:
        `isSet` in class `org.eclipse.emf.ecore.util.BasicSettingDelegate.Stateless`