Search in sources :

Example 1 with DefaultDeclarativeQualifiedNameProvider

use of org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider in project xtext-core by eclipse.

the class ImportedNamespaceAwareLocalScopeProviderTest method setUp.

@Override
public void setUp() throws Exception {
    super.setUp();
    with(new IndexTestLanguageStandaloneSetup());
    globalScopeProvider = new ResourceSetGlobalScopeProvider();
    nameProvider = new DefaultDeclarativeQualifiedNameProvider();
    nameConverter = new IQualifiedNameConverter.DefaultImpl();
    final DefaultResourceDescriptionStrategy strategy = new DefaultResourceDescriptionStrategy();
    strategy.setQualifiedNameProvider(nameProvider);
    final DefaultResourceDescriptionManager resourceDescMnr = new DefaultResourceDescriptionManager() {

        @Override
        public IResourceDescription getResourceDescription(Resource resource) {
            DefaultResourceDescription resourceDescription = new DefaultResourceDescription(resource, strategy);
            return resourceDescription;
        }
    };
    final DefaultResourceServiceProvider provider = new DefaultResourceServiceProvider() {

        @Override
        public Manager getResourceDescriptionManager() {
            return resourceDescMnr;
        }
    };
    globalScopeProvider.setGlobalResourceDecriptionProvider(new GlobalResourceDescriptionProvider(new ResourceServiceProviderRegistryImpl() {

        @Override
        public IResourceServiceProvider getResourceServiceProvider(URI uri, String contentType) {
            return provider;
        }
    }));
    CaseInsensitivityHelper caseInsensitivityHelper = new CaseInsensitivityHelper();
    globalScopeProvider.setCaseInsensitivityHelper(caseInsensitivityHelper);
    scopeProvider = new ImportedNamespaceAwareLocalScopeProvider(globalScopeProvider, nameProvider, nameConverter, caseInsensitivityHelper);
}
Also used : DefaultResourceServiceProvider(org.eclipse.xtext.resource.impl.DefaultResourceServiceProvider) DefaultDeclarativeQualifiedNameProvider(org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider) DefaultResourceDescription(org.eclipse.xtext.resource.impl.DefaultResourceDescription) XtextResource(org.eclipse.xtext.resource.XtextResource) Resource(org.eclipse.emf.ecore.resource.Resource) IQualifiedNameConverter(org.eclipse.xtext.naming.IQualifiedNameConverter) DefaultResourceDescriptionManager(org.eclipse.xtext.resource.impl.DefaultResourceDescriptionManager) IndexTestLanguageStandaloneSetup(org.eclipse.xtext.index.IndexTestLanguageStandaloneSetup) URI(org.eclipse.emf.common.util.URI) DefaultResourceDescriptionStrategy(org.eclipse.xtext.resource.impl.DefaultResourceDescriptionStrategy) ResourceServiceProviderRegistryImpl(org.eclipse.xtext.resource.impl.ResourceServiceProviderRegistryImpl)

Example 2 with DefaultDeclarativeQualifiedNameProvider

use of org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider in project xtext-core by eclipse.

the class PartialLinkingTest method setUp.

@Override
public void setUp() throws Exception {
    super.setUp();
    with(ReferenceGrammarTestLanguageStandaloneSetup.class);
    IQualifiedNameConverter nameConverter = new IQualifiedNameConverter.DefaultImpl();
    IQualifiedNameProvider nameProvider = new DefaultDeclarativeQualifiedNameProvider();
    ImportUriGlobalScopeProvider globalScopeProvider = new ImportUriGlobalScopeProvider();
    globalScopeProvider.setImportResolver(new ImportUriResolver());
    globalScopeProvider.setCache(IResourceScopeCache.NullImpl.INSTANCE);
    final ResourceDescriptionsProvider provider = new ResourceDescriptionsProvider();
    provider.setResourceDescriptions(new Provider<IResourceDescriptions>() {

        @Override
        public IResourceDescriptions get() {
            return new IResourceDescriptions.NullImpl();
        }
    });
    globalScopeProvider.setResourceDescriptionsProvider(provider);
    globalScopeProvider.setLoadOnDemandDescriptions(new Provider<LoadOnDemandResourceDescriptions>() {

        @Override
        public LoadOnDemandResourceDescriptions get() {
            return PartialLinkingTest.this.get(LoadOnDemandResourceDescriptions.class);
        }
    });
    CaseInsensitivityHelper caseInsensitivityHelper = new CaseInsensitivityHelper();
    globalScopeProvider.setCaseInsensitivityHelper(caseInsensitivityHelper);
    scopeProvider = new ImportedNamespaceAwareLocalScopeProvider(globalScopeProvider, nameProvider, nameConverter, caseInsensitivityHelper);
    modelAsText = "spielplatz 1 {\n" + "  kind( Bommel1 1)\n" + "  kind( Bommel2 2)\n" + "  kind( Bommel3 3)\n" + "  erwachsener( Bob 4)\n" + "  erwachsener( Joe 5)\n" + "  familie( Familienname Bob Joe Bommel2 )\n" + "}";
    resource = getResourceFromString(modelAsText);
    assertTrue(resource.getErrors().toString(), resource.getErrors().isEmpty());
    model = resource.getParseResult().getRootASTElement();
    final Iterator<EObject> iter = model.eAllContents();
    while (iter.hasNext() && context == null) {
        final EObject candidate = iter.next();
        final String className = candidate.eClass().getName();
        if (className.endsWith("Familie"))
            context = candidate;
    }
    reference = (EReference) context.eClass().getEStructuralFeature("kinder");
}
Also used : DefaultDeclarativeQualifiedNameProvider(org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider) ImportedNamespaceAwareLocalScopeProvider(org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider) IQualifiedNameConverter(org.eclipse.xtext.naming.IQualifiedNameConverter) ImportUriResolver(org.eclipse.xtext.scoping.impl.ImportUriResolver) ResourceDescriptionsProvider(org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider) ImportUriGlobalScopeProvider(org.eclipse.xtext.scoping.impl.ImportUriGlobalScopeProvider) IQualifiedNameProvider(org.eclipse.xtext.naming.IQualifiedNameProvider) IResourceDescriptions(org.eclipse.xtext.resource.IResourceDescriptions) CaseInsensitivityHelper(org.eclipse.xtext.scoping.impl.CaseInsensitivityHelper) EObject(org.eclipse.emf.ecore.EObject) LoadOnDemandResourceDescriptions(org.eclipse.xtext.scoping.impl.LoadOnDemandResourceDescriptions)

Aggregations

DefaultDeclarativeQualifiedNameProvider (org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider)2 IQualifiedNameConverter (org.eclipse.xtext.naming.IQualifiedNameConverter)2 URI (org.eclipse.emf.common.util.URI)1 EObject (org.eclipse.emf.ecore.EObject)1 Resource (org.eclipse.emf.ecore.resource.Resource)1 IndexTestLanguageStandaloneSetup (org.eclipse.xtext.index.IndexTestLanguageStandaloneSetup)1 IQualifiedNameProvider (org.eclipse.xtext.naming.IQualifiedNameProvider)1 IResourceDescriptions (org.eclipse.xtext.resource.IResourceDescriptions)1 XtextResource (org.eclipse.xtext.resource.XtextResource)1 DefaultResourceDescription (org.eclipse.xtext.resource.impl.DefaultResourceDescription)1 DefaultResourceDescriptionManager (org.eclipse.xtext.resource.impl.DefaultResourceDescriptionManager)1 DefaultResourceDescriptionStrategy (org.eclipse.xtext.resource.impl.DefaultResourceDescriptionStrategy)1 DefaultResourceServiceProvider (org.eclipse.xtext.resource.impl.DefaultResourceServiceProvider)1 ResourceDescriptionsProvider (org.eclipse.xtext.resource.impl.ResourceDescriptionsProvider)1 ResourceServiceProviderRegistryImpl (org.eclipse.xtext.resource.impl.ResourceServiceProviderRegistryImpl)1 CaseInsensitivityHelper (org.eclipse.xtext.scoping.impl.CaseInsensitivityHelper)1 ImportUriGlobalScopeProvider (org.eclipse.xtext.scoping.impl.ImportUriGlobalScopeProvider)1 ImportUriResolver (org.eclipse.xtext.scoping.impl.ImportUriResolver)1 ImportedNamespaceAwareLocalScopeProvider (org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider)1 LoadOnDemandResourceDescriptions (org.eclipse.xtext.scoping.impl.LoadOnDemandResourceDescriptions)1