Package de.gebit.integrity.scoping.importer

## Class DSLImportedNamespaceAwareLocalScopeProvider

- java.lang.Object
- - org.eclipse.xtext.scoping.impl.AbstractScopeProvider
  - - org.eclipse.xtext.scoping.impl.AbstractGlobalScopeDelegatingScopeProvider
    - - org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider
      - - de.gebit.integrity.scoping.importer.DSLImportedNamespaceAwareLocalScopeProvider

- All Implemented Interfaces:
    `org.eclipse.xtext.scoping.IScopeProvider`

      public class DSLImportedNamespaceAwareLocalScopeProvider
      extends org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider

  This namespace-aware local scope provider modifies the default scope provider from XText just slightly: it sorts the `ImportNormalizer` list to be returned such that normalizers with more segments are placed first. XText always uses the first match when normalizing an imported resource reference, thus if a package is imported by one less and one more specific import statement, the more specific one will be used regardless of the order of import statements, which results in the shortest possible normalized resource reference.
  Author:
    Rene Schneider - initial API and implementation

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DSLImportedNamespaceAwareLocalScopeProvider()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected List<org.eclipse.xtext.scoping.impl.ImportNormalizer>` | `internalGetImportedNamespaceResolvers​(org.eclipse.emf.ecore.EObject aContext, boolean anIgnoreCaseFlag)` |

    - ### Methods inherited from class org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider

      `createImportedNamespaceResolver, createImportScope, doCreateImportNormalizer, getAllDescriptions, getImplicitImports, getImportedNamespace, getImportedNamespaceResolvers, getKey, getLocalElementsScope, getQualifiedNameConverter, getQualifiedNameOfLocalElement, getQualifiedNameProvider, getResourceScope, getResourceScope, getScope, getWildCard, internalGetAllDescriptions, isRelativeImport`

    - ### Methods inherited from class org.eclipse.xtext.scoping.impl.AbstractGlobalScopeDelegatingScopeProvider

      `getGlobalScope, getGlobalScope, isIgnoreCase, setWrapper, wrap`

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

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

- - ### Constructor Detail

    - #### DSLImportedNamespaceAwareLocalScopeProvider

          public DSLImportedNamespaceAwareLocalScopeProvider()

  - ### Method Detail

    - #### internalGetImportedNamespaceResolvers

          protected List<org.eclipse.xtext.scoping.impl.ImportNormalizer> internalGetImportedNamespaceResolvers​(org.eclipse.emf.ecore.EObject aContext,
                                                                                                                boolean anIgnoreCaseFlag)

      Overrides:
        `internalGetImportedNamespaceResolvers` in class `org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider`