Search in sources :

Example 51 with URI

use of org.eclipse.emf.common.util.URI in project xtext-core by eclipse.

the class LanguageServerImpl method definition.

protected List<? extends Location> definition(final CancelIndicator cancelIndicator, final TextDocumentPositionParams params) {
    final URI uri = this._uriExtensions.toUri(params.getTextDocument().getUri());
    final IResourceServiceProvider resourceServiceProvider = this.languagesRegistry.getResourceServiceProvider(uri);
    DocumentSymbolService _get = null;
    if (resourceServiceProvider != null) {
        _get = resourceServiceProvider.<DocumentSymbolService>get(DocumentSymbolService.class);
    }
    final DocumentSymbolService documentSymbolService = _get;
    if ((documentSymbolService == null)) {
        return CollectionLiterals.<Location>emptyList();
    }
    final Function2<Document, XtextResource, List<? extends Location>> _function = (Document document, XtextResource resource) -> {
        return documentSymbolService.getDefinitions(document, resource, params, this.resourceAccess, cancelIndicator);
    };
    return this.workspaceManager.<List<? extends Location>>doRead(uri, _function);
}
Also used : IResourceServiceProvider(org.eclipse.xtext.resource.IResourceServiceProvider) DocumentSymbolService(org.eclipse.xtext.ide.server.symbol.DocumentSymbolService) XtextResource(org.eclipse.xtext.resource.XtextResource) ArrayList(java.util.ArrayList) List(java.util.List) CompletionList(org.eclipse.lsp4j.CompletionList) Document(org.eclipse.xtext.ide.server.Document) URI(org.eclipse.emf.common.util.URI) Location(org.eclipse.lsp4j.Location)

Example 52 with URI

use of org.eclipse.emf.common.util.URI in project xtext-core by eclipse.

the class LanguageServerImpl method completion.

protected Either<List<CompletionItem>, CompletionList> completion(final CancelIndicator origialCancelIndicator, final TextDocumentPositionParams params) {
    final LanguageServerImpl.BufferedCancelIndicator cancelIndicator = new LanguageServerImpl.BufferedCancelIndicator(origialCancelIndicator);
    final URI uri = this._uriExtensions.toUri(params.getTextDocument().getUri());
    final IResourceServiceProvider resourceServiceProvider = this.languagesRegistry.getResourceServiceProvider(uri);
    ContentAssistService _get = null;
    if (resourceServiceProvider != null) {
        _get = resourceServiceProvider.<ContentAssistService>get(ContentAssistService.class);
    }
    final ContentAssistService contentAssistService = _get;
    if ((contentAssistService == null)) {
        CompletionList _completionList = new CompletionList();
        return Either.<List<CompletionItem>, CompletionList>forRight(_completionList);
    }
    final Function2<Document, XtextResource, CompletionList> _function = (Document document, XtextResource resource) -> {
        return contentAssistService.createCompletionList(document, resource, params, cancelIndicator);
    };
    final CompletionList completionList = this.workspaceManager.<CompletionList>doRead(uri, _function);
    return Either.<List<CompletionItem>, CompletionList>forRight(completionList);
}
Also used : CompletionList(org.eclipse.lsp4j.CompletionList) IResourceServiceProvider(org.eclipse.xtext.resource.IResourceServiceProvider) ContentAssistService(org.eclipse.xtext.ide.server.contentassist.ContentAssistService) ArrayList(java.util.ArrayList) List(java.util.List) CompletionList(org.eclipse.lsp4j.CompletionList) XtextResource(org.eclipse.xtext.resource.XtextResource) Document(org.eclipse.xtext.ide.server.Document) URI(org.eclipse.emf.common.util.URI)

Example 53 with URI

use of org.eclipse.emf.common.util.URI in project xtext-core by eclipse.

the class ProjectManager method newBuildRequest.

protected BuildRequest newBuildRequest(final List<URI> changedFiles, final List<URI> deletedFiles, final List<IResourceDescription.Delta> externalDeltas, final CancelIndicator cancelIndicator) {
    BuildRequest _buildRequest = new BuildRequest();
    final Procedure1<BuildRequest> _function = (BuildRequest it) -> {
        it.setBaseDir(this.baseDir);
        ResourceDescriptionsData _copy = this.indexState.getResourceDescriptions().copy();
        Source2GeneratedMapping _copy_1 = this.indexState.getFileMappings().copy();
        IndexState _indexState = new IndexState(_copy, _copy_1);
        it.setState(_indexState);
        it.setResourceSet(this.createFreshResourceSet(it.getState().getResourceDescriptions()));
        it.setDirtyFiles(changedFiles);
        it.setDeletedFiles(deletedFiles);
        it.setExternalDeltas(externalDeltas);
        final BuildRequest.IPostValidationCallback _function_1 = (URI uri, Iterable<Issue> issues) -> {
            this.issueAcceptor.apply(uri, issues);
            return true;
        };
        it.setAfterValidate(_function_1);
        it.setCancelIndicator(cancelIndicator);
    };
    return ObjectExtensions.<BuildRequest>operator_doubleArrow(_buildRequest, _function);
}
Also used : ResourceDescriptionsData(org.eclipse.xtext.resource.impl.ResourceDescriptionsData) Source2GeneratedMapping(org.eclipse.xtext.build.Source2GeneratedMapping) BuildRequest(org.eclipse.xtext.build.BuildRequest) URI(org.eclipse.emf.common.util.URI) IndexState(org.eclipse.xtext.build.IndexState)

Example 54 with URI

use of org.eclipse.emf.common.util.URI in project xtext-core by eclipse.

the class WorkspaceManager method didChange.

public BuildManager.Buildable didChange(final URI uri, final int version, final Iterable<TextEdit> changes) {
    boolean _containsKey = this.openDocuments.containsKey(uri);
    boolean _not = (!_containsKey);
    if (_not) {
        WorkspaceManager.LOG.error((("The document " + uri) + " has not been opened."));
        final BuildManager.Buildable _function = (CancelIndicator it) -> {
            return null;
        };
        return _function;
    }
    final Document contents = this.openDocuments.get(uri);
    this.openDocuments.put(uri, contents.applyChanges(changes));
    return this.didChangeFiles(Collections.<URI>unmodifiableList(CollectionLiterals.<URI>newArrayList(uri)), CollectionLiterals.<URI>newArrayList());
}
Also used : BuildManager(org.eclipse.xtext.ide.server.BuildManager) CancelIndicator(org.eclipse.xtext.util.CancelIndicator) Document(org.eclipse.xtext.ide.server.Document) URI(org.eclipse.emf.common.util.URI)

Example 55 with URI

use of org.eclipse.emf.common.util.URI in project xtext-core by eclipse.

the class WorkspaceManager method didOpen.

public BuildManager.Buildable didOpen(final URI uri, final int version, final String contents) {
    Document _document = new Document(version, contents);
    this.openDocuments.put(uri, _document);
    return this.didChangeFiles(Collections.<URI>unmodifiableList(CollectionLiterals.<URI>newArrayList(uri)), CollectionLiterals.<URI>newArrayList());
}
Also used : Document(org.eclipse.xtext.ide.server.Document) URI(org.eclipse.emf.common.util.URI)

Aggregations

URI (org.eclipse.emf.common.util.URI)305 Resource (org.eclipse.emf.ecore.resource.Resource)85 Test (org.junit.Test)79 EObject (org.eclipse.emf.ecore.EObject)55 StringConcatenation (org.eclipse.xtend2.lib.StringConcatenation)37 ResourceSet (org.eclipse.emf.ecore.resource.ResourceSet)33 XtextResource (org.eclipse.xtext.resource.XtextResource)32 XtextResourceSet (org.eclipse.xtext.resource.XtextResourceSet)26 BuildRequest (org.eclipse.xtext.build.BuildRequest)23 File (java.io.File)20 AbstractIncrementalBuilderTest (org.eclipse.xtext.testing.builder.AbstractIncrementalBuilderTest)20 ResourceSetImpl (org.eclipse.emf.ecore.resource.impl.ResourceSetImpl)19 IOException (java.io.IOException)18 InternalEObject (org.eclipse.emf.ecore.InternalEObject)18 EPackage (org.eclipse.emf.ecore.EPackage)15 IResourceDescription (org.eclipse.xtext.resource.IResourceDescription)15 InputStream (java.io.InputStream)14 ByteArrayInputStream (java.io.ByteArrayInputStream)13 ArrayList (java.util.ArrayList)13 NullProgressMonitor (org.eclipse.core.runtime.NullProgressMonitor)13