本文整理汇总了Java中org.eclipse.lsp4j.CompletionList类的典型用法代码示例。如果您正苦于以下问题:Java CompletionList类的具体用法?Java CompletionList怎么用?Java CompletionList使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
CompletionList类属于org.eclipse.lsp4j包,在下文中一共展示了CompletionList类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: testChangeEventUpdatesStoredText
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testChangeEventUpdatesStoredText() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer("<to uri=\"\" xmlns=\"http://camel.apache.org/schema/blueprint\"></to>\n");
DidChangeTextDocumentParams changeEvent = new DidChangeTextDocumentParams();
VersionedTextDocumentIdentifier textDocument = new VersionedTextDocumentIdentifier();
textDocument.setUri(DUMMY_URI);
changeEvent.setTextDocument(textDocument);
TextDocumentContentChangeEvent contentChange = new TextDocumentContentChangeEvent("<to xmlns=\"http://camel.apache.org/schema/blueprint\" uri=\"\"></to>\n");
changeEvent.setContentChanges(Collections.singletonList(contentChange));
camelLanguageServer.getTextDocumentService().didChange(changeEvent);
//check old position doesn't provide completion
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completionsAtOldPosition = getCompletionFor(camelLanguageServer, new Position(0, 11));
assertThat(completionsAtOldPosition.get().getLeft()).isEmpty();
//check new position provides completion
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completionsAtNewPosition = getCompletionFor(camelLanguageServer, new Position(0, 58));
assertThat(completionsAtNewPosition.get().getLeft()).isNotEmpty();
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:22,代码来源:CamelTextDocumentServiceTest.java
示例2: completion
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
Either<List<CompletionItem>, CompletionList> completion(TextDocumentPositionParams position,
IProgressMonitor monitor) {
List<CompletionItem> completionItems = null;
try {
ICompilationUnit unit = JDTUtils.resolveCompilationUnit(position.getTextDocument().getUri());
completionItems = this.computeContentAssist(unit,
position.getPosition().getLine(),
position.getPosition().getCharacter(), monitor);
} catch (OperationCanceledException ignorable) {
// No need to pollute logs when query is cancelled
monitor.setCanceled(true);
} catch (Exception e) {
JavaLanguageServerPlugin.logException("Problem with codeComplete for " + position.getTextDocument().getUri(), e);
monitor.setCanceled(true);
}
CompletionList $ = new CompletionList();
if (monitor.isCanceled()) {
$.setIsIncomplete(true);
completionItems = null;
JavaLanguageServerPlugin.logInfo("Completion request cancelled");
} else {
JavaLanguageServerPlugin.logInfo("Completion request completed");
}
$.setItems(completionItems == null ? Collections.emptyList() : completionItems);
return Either.forRight($);
}
开发者ID:eclipse,项目名称:eclipse.jdt.ls,代码行数:27,代码来源:CompletionHandler.java
示例3: completion
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Override
public CompletableFuture<Either<List<CompletionItem>, CompletionList>> completion(TextDocumentPositionParams position) {
logInfo(">> document/completion");
CompletionHandler handler = new CompletionHandler();
final IProgressMonitor[] monitors = new IProgressMonitor[1];
CompletableFuture<Either<List<CompletionItem>, CompletionList>> result = computeAsync((cc) -> {
monitors[0] = toMonitor(cc);
if (Boolean.getBoolean(JAVA_LSP_JOIN_ON_COMPLETION)) {
try {
Job.getJobManager().join(DocumentLifeCycleHandler.DOCUMENT_LIFE_CYCLE_JOBS, monitors[0]);
} catch (OperationCanceledException ignorable) {
// No need to pollute logs when query is cancelled
} catch (InterruptedException e) {
JavaLanguageServerPlugin.logException(e.getMessage(), e);
}
}
return handler.completion(position, monitors[0]);
});
result.join();
if (monitors[0].isCanceled()) {
result.cancel(true);
}
return result;
}
开发者ID:eclipse,项目名称:eclipse.jdt.ls,代码行数:25,代码来源:JDTLanguageServer.java
示例4: testCompletion_import_package
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testCompletion_import_package() throws JavaModelException{
ICompilationUnit unit = getWorkingCopy(
"src/java/Foo.java",
"import java.sq \n" +
"public class Foo {\n"+
" void foo() {\n"+
" }\n"+
"}\n");
int[] loc = findCompletionLocation(unit, "java.sq");
CompletionList list = server.completion(JsonMessageHelper.getParams(createCompletionRequest(unit, loc[0], loc[1]))).join().getRight();
assertNotNull(list);
assertEquals(1, list.getItems().size());
CompletionItem item = list.getItems().get(0);
// Check completion item
assertNull(item.getInsertText());
assertEquals("java.sql",item.getLabel());
assertEquals(CompletionItemKind.Module, item.getKind() );
assertEquals("999999215", item.getSortText());
assertNull(item.getTextEdit());
CompletionItem resolvedItem = server.resolveCompletionItem(item).join();
assertNotNull(resolvedItem);
TextEdit te = item.getTextEdit();
assertNotNull(te);
assertEquals("java.sql.*;",te.getNewText());
assertNotNull(te.getRange());
Range range = te.getRange();
assertEquals(0, range.getStart().getLine());
assertEquals(7, range.getStart().getCharacter());
assertEquals(0, range.getEnd().getLine());
//Not checking the range end character
}
开发者ID:eclipse,项目名称:eclipse.jdt.ls,代码行数:38,代码来源:CompletionHandlerTest.java
示例5: testCompletion_plainTextDoc
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
public void testCompletion_plainTextDoc() throws Exception{
ICompilationUnit unit = getWorkingCopy(
//@formatter:off
"src/java/Foo.java",
"import java.sq \n" +
"public class Foo {\n"+
" void foo() {\n"+
" zz\n"+
" }\n\" }\\n\"+"+
"\n"+
"/** This should be <bold>plain</bold>.*/\n" +
" void zzz() {}\n"+
"}\n");
//@formatter:off
int[] loc = findCompletionLocation(unit, " zz");
CompletionList list = server.completion(JsonMessageHelper.getParams(createCompletionRequest(unit, loc[0], loc[1]))).join().getRight();
assertNotNull(list);
assertFalse("No proposals were found", list.getItems().isEmpty());
CompletionItem item = list.getItems().get(0);
assertEquals("zzz() : void", item.getLabel());
CompletionItem resolvedItem = server.resolveCompletionItem(item).join();
assertEquals("This should be plain.", resolvedItem.getDocumentation());
}
开发者ID:eclipse,项目名称:eclipse.jdt.ls,代码行数:25,代码来源:CompletionHandlerTest.java
示例6: completion
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
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);
}
开发者ID:eclipse,项目名称:xtext-core,代码行数:20,代码来源:LanguageServerImpl.java
示例7: testRequest
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test public void testRequest() throws Exception {
TextDocumentPositionParams p = new TextDocumentPositionParams();
p.setPosition(new Position(1,1));
p.setTextDocument(new TextDocumentIdentifier("test/foo.txt"));
CompletionList result = new CompletionList();
result.setIsIncomplete(true);
result.setItems(new ArrayList<>());
CompletionItem item = new CompletionItem();
item.setDetail("test");
item.setDocumentation("doc");
item.setFilterText("filter");
item.setInsertText("insert");
item.setKind(CompletionItemKind.Field);
result.getItems().add(item);
server.expectedRequests.put("textDocument/completion", new Pair<>(p, result));
CompletableFuture<Either<List<CompletionItem>, CompletionList>> future = clientLauncher.getRemoteProxy().getTextDocumentService().completion(p);
Assert.assertEquals(Either.forRight(result).toString(), future.get(TIMEOUT, TimeUnit.MILLISECONDS).toString());
client.joinOnEmpty();
}
开发者ID:eclipse,项目名称:lsp4j,代码行数:24,代码来源:LauncherTest.java
示例8: testProvideCompletionForCamelBlueprintNamespace
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testProvideCompletionForCamelBlueprintNamespace() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer("<from uri=\"\" xmlns=\"http://camel.apache.org/schema/blueprint\"></from>\n");
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(0, 11));
assertThat(completions.get().getLeft()).contains(expectedAhcCompletioncompletionItem);
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:9,代码来源:CamelLanguageServerTest.java
示例9: testProvideCompletionForToCamelBlueprintNamespace
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testProvideCompletionForToCamelBlueprintNamespace() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer("<to uri=\"\" xmlns=\"http://camel.apache.org/schema/blueprint\"></to>\n");
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(0, 9));
assertThat(completions.get().getLeft()).contains(expectedAhcCompletioncompletionItem);
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:9,代码来源:CamelLanguageServerTest.java
示例10: testProvideCompletionForCamelSpringNamespace
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testProvideCompletionForCamelSpringNamespace() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer("<from uri=\"\" xmlns=\"http://camel.apache.org/schema/spring\"></from>\n");
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(0, 11));
assertThat(completions.get().getLeft()).contains(expectedAhcCompletioncompletionItem);
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:9,代码来源:CamelLanguageServerTest.java
示例11: testProvideCompletionforMultiline
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testProvideCompletionforMultiline() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer(
"<camelContext xmlns=\"http://camel.apache.org/schema/spring\">\n" +
"<to uri=\"\" ></to>\n" +
"</camelContext>");
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(1, 9));
assertThat(completions.get().getLeft()).contains(expectedAhcCompletioncompletionItem);
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:12,代码来源:CamelLanguageServerTest.java
示例12: testDONTProvideCompletionForNotCamelnamespace
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testDONTProvideCompletionForNotCamelnamespace() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer("<from uri=\"\"></from>\n");
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(0, 11));
assertThat(completions.get().getLeft()).isEmpty();
assertThat(completions.get().getRight()).isNull();
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:10,代码来源:CamelLanguageServerTest.java
示例13: testDONTProvideCompletionWhenNotAfterURIEqualQuote
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testDONTProvideCompletionWhenNotAfterURIEqualQuote() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer("<from uri=\"\" xmlns=\"http://camel.apache.org/schema/spring\"></from>\n");
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(0, 6));
assertThat(completions.get().getLeft()).isEmpty();
assertThat(completions.get().getRight()).isNull();
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:10,代码来源:CamelLanguageServerTest.java
示例14: testProvideCamelOptions
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
private void testProvideCamelOptions(String textTotest, int line, int character) throws URISyntaxException, InterruptedException, ExecutionException {
CamelLanguageServer camelLanguageServer = initializeLanguageServer(textTotest);
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(line, character));
assertThat(completions.get().getLeft()).contains(
new CompletionItem("true"),
new CompletionItem("false"));
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:10,代码来源:CamelComponentOptionBooleanValuesTest.java
示例15: testProvideCompletionForCamelBlueprintNamespace
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testProvideCompletionForCamelBlueprintNamespace() throws Exception {
CamelLanguageServer camelLanguageServer = initializeLanguageServer(textToTest);
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(line, character));
if(shouldHaveCompletion) {
assertThat(completions.get().getLeft()).contains(expectedAhcCompletioncompletionItem);
} else {
assertThat(completions.get().getLeft()).doesNotContain(expectedAhcCompletioncompletionItem);
assertThat(completions.get().getRight()).isNull();
}
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:14,代码来源:CamelLanguageServerCompletionPositionTest.java
示例16: testProvideCamelOptions
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
private void testProvideCamelOptions(String textTotest, int line, int character) throws URISyntaxException, InterruptedException, ExecutionException {
CamelLanguageServer camelLanguageServer = initializeLanguageServer(textTotest);
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = getCompletionFor(camelLanguageServer, new Position(line, character));
assertThat(completions.get().getLeft()).contains(
new CompletionItem("InOnly"),
new CompletionItem("RobustInOnly"),
new CompletionItem("InOut"),
new CompletionItem("InOptionalOut"),
new CompletionItem("OutOnly"),
new CompletionItem("RobustOutOnly"),
new CompletionItem("OutIn"),
new CompletionItem("OutOptionalIn"));
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:16,代码来源:CamelComponentOptionEnumerationValuesTest.java
示例17: getCompletionFor
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
protected CompletableFuture<Either<List<CompletionItem>, CompletionList>> getCompletionFor(CamelLanguageServer camelLanguageServer, Position position) {
TextDocumentService textDocumentService = camelLanguageServer.getTextDocumentService();
TextDocumentPositionParams dummyCompletionPositionRequest = new TextDocumentPositionParams(new TextDocumentIdentifier(DUMMY_URI), position);
CompletableFuture<Either<List<CompletionItem>, CompletionList>> completions = textDocumentService.completion(dummyCompletionPositionRequest);
return completions;
}
开发者ID:lhein,项目名称:camel-language-server,代码行数:8,代码来源:AbstractCamelLanguageServerTest.java
示例18: completion
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Override
public CompletableFuture<Either<List<CompletionItem>, CompletionList>> completion(
final TextDocumentPositionParams position) {
CompletionList result = som.getCompletions(
position.getTextDocument().getUri(), position.getPosition().getLine(),
position.getPosition().getCharacter());
return CompletableFuture.completedFuture(Either.forRight(result));
}
开发者ID:smarr,项目名称:SOMns-vscode,代码行数:9,代码来源:SomLanguageServer.java
示例19: getCompletions
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
public CompletionList getCompletions(final String docUri, final int line,
final int character) {
CompletionList result = new CompletionList();
result.setIsIncomplete(true);
SomStructures probe = getProbe(docUri);
if (probe == null) {
return result;
}
// TODO: this expects that this can be parsed without issues...
// +1 to get to one based index, - 1 to get back into the element
ExpressionNode node = probe.getElementAt(line + 1, Math.max(character - 1, 0));
if (node == null) {
return result;
}
SSymbol sym = null;
if (node instanceof Send) {
sym = ((Send) node).getSelector();
} else {
if (ServerLauncher.DEBUG) {
reportError("GET COMPLETIONS, unsupported node: " + node.getClass().getSimpleName());
}
}
if (sym != null) {
Set<CompletionItem> completion = new HashSet<>();
Collection<SomStructures> probes = getProbes();
for (SomStructures s : probes) {
s.getCompletions(sym, completion);
}
result.setItems(new ArrayList<>(completion));
}
return result;
}
开发者ID:smarr,项目名称:SOMns-vscode,代码行数:39,代码来源:SomAdapter.java
示例20: testCompletion_javadoc
import org.eclipse.lsp4j.CompletionList; //导入依赖的package包/类
@Test
public void testCompletion_javadoc() throws Exception {
IJavaProject javaProject = JavaCore.create(project);
ICompilationUnit unit = (ICompilationUnit) javaProject.findElement(new Path("org/sample/TestJavadoc.java"));
unit.becomeWorkingCopy(null);
String joinOnCompletion = System.getProperty(JDTLanguageServer.JAVA_LSP_JOIN_ON_COMPLETION);
try {
System.setProperty(JDTLanguageServer.JAVA_LSP_JOIN_ON_COMPLETION, "true");
int[] loc = findCompletionLocation(unit, "inner.");
TextDocumentPositionParams position = JsonMessageHelper.getParams(createCompletionRequest(unit, loc[0], loc[1]));
String source = unit.getSource();
changeDocument(unit, source, 3);
Job.getJobManager().join(DocumentLifeCycleHandler.DOCUMENT_LIFE_CYCLE_JOBS, new NullProgressMonitor());
changeDocument(unit, source, 4);
CompletionList list = server.completion(position).join().getRight();
for (CompletionItem item : list.getItems()) {
server.resolveCompletionItem(item);
}
CompletionItem resolved = list.getItems().get(0);
assertEquals("Test ", resolved.getDocumentation());
} finally {
unit.discardWorkingCopy();
if (joinOnCompletion == null) {
System.clearProperty(JDTLanguageServer.JAVA_LSP_JOIN_ON_COMPLETION);
} else {
System.setProperty(JDTLanguageServer.JAVA_LSP_JOIN_ON_COMPLETION, joinOnCompletion);
}
}
}
开发者ID:eclipse,项目名称:eclipse.jdt.ls,代码行数:30,代码来源:CompletionHandlerTest.java
注:本文中的org.eclipse.lsp4j.CompletionList类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论