Boot LS native functional
This commit is contained in:
@@ -77,7 +77,7 @@ public class Lsp4jReflectConfigGenerator {
|
||||
});
|
||||
}
|
||||
|
||||
private static JsonArray noArgsConstructorOnly() {
|
||||
static JsonArray noArgsConstructorOnly() {
|
||||
JsonObject constr = new JsonObject();
|
||||
constr.addProperty("name", "<init>");
|
||||
constr.add("parameterTypes", new JsonArray());
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2023 VMware, Inc.
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v1.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-v10.html
|
||||
*
|
||||
* Contributors:
|
||||
* VMware, Inc. - initial API and implementation
|
||||
*******************************************************************************/
|
||||
package org.springframework.ide.vscode.commons.languageserver.nativeimage;
|
||||
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonIOException;
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import io.github.classgraph.ClassGraph;
|
||||
import io.github.classgraph.ScanResult;
|
||||
|
||||
public class LspExtensionsReflectConfigGenerator {
|
||||
|
||||
public static final void main(String[] args) throws JsonIOException, IOException {
|
||||
|
||||
Gson gson = new GsonBuilder().setPrettyPrinting().create();
|
||||
|
||||
JsonArray array = new JsonArray();
|
||||
|
||||
generateLspExtensionsInterfacesJson().forEach(array::add);
|
||||
generateLspExtensionsPojoJson().forEach(array::add);
|
||||
|
||||
if (args.length > 0) {
|
||||
System.out.println("ARG: " + args[0] + " array size = " + array.size());
|
||||
FileWriter fileWriter = new FileWriter(args[0]);
|
||||
gson.toJson(array, fileWriter);
|
||||
fileWriter.flush();
|
||||
fileWriter.close();
|
||||
} else {
|
||||
System.out.println(gson.toJson(array));
|
||||
}
|
||||
}
|
||||
|
||||
private static Stream<JsonObject> generateLspExtensionsPojoJson() {
|
||||
ScanResult res = new ClassGraph().ignoreParentClassLoaders().enableMethodInfo().acceptPackages("org.springframework.ide.vscode.commons.protocol").scan();
|
||||
return res.getAllStandardClasses().stream().map(ci -> {
|
||||
JsonObject obj = new JsonObject();
|
||||
obj.addProperty("name", ci.getName());
|
||||
obj.addProperty("allDeclaredFields", true);
|
||||
obj.addProperty("allPublicConstructors", true);
|
||||
return obj;
|
||||
});
|
||||
}
|
||||
|
||||
private static Stream<JsonObject> generateLspExtensionsInterfacesJson() {
|
||||
ScanResult res = new ClassGraph().ignoreParentClassLoaders().enableMethodInfo().acceptPackages("org.springframework.ide.vscode.commons.protocol").scan();
|
||||
return res.getAllInterfaces().stream().map(ci -> {
|
||||
JsonObject obj = new JsonObject();
|
||||
obj.addProperty("name", ci.getName());
|
||||
obj.addProperty("queryAllDeclaredMethods", true);
|
||||
obj.addProperty("queryAllPublicMethods", true);
|
||||
return obj;
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
@@ -16,7 +16,6 @@ public class SearchMatch<T> {
|
||||
private double score;
|
||||
|
||||
public SearchMatch(T element, double score) {
|
||||
super();
|
||||
this.element = element;
|
||||
this.score = score;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,173 @@
|
||||
[
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.STS4LanguageClient",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.SpringIndex",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.SpringIndexLanguageClient",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.SpringIndexLanguageServer",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.CursorMovement",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.HighlightParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.LiveProcessSummary",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.ProgressParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.TypeHierarchyResponseAdapter",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.Classpath",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.Classpath$CPE",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.ClasspathListenerParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaCodeCompleteData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaCodeCompleteParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaDataParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaElementData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaSearchParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaSearchParams$SearchType",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaTypeData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaTypeData$JavaTypeKind",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaTypeHierarchyParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.MemberData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.ProjectBuild",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.SearchMatch",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$AnnotationData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$ClasspathEntryData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$FieldData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$MethodData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeDescriptorData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.Bean",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.BeansParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.DefaultValues",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.InjectionPoint",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.MatchingBeansParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,173 @@
|
||||
[
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.STS4LanguageClient",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.SpringIndex",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.SpringIndexLanguageClient",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.SpringIndexLanguageServer",
|
||||
"queryAllDeclaredMethods": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.CursorMovement",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.HighlightParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.LiveProcessSummary",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.ProgressParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.TypeHierarchyResponseAdapter",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.Classpath",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.Classpath$CPE",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.ClasspathListenerParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaCodeCompleteData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaCodeCompleteParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaDataParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaElementData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaSearchParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaSearchParams$SearchType",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaTypeData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaTypeData$JavaTypeKind",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.JavaTypeHierarchyParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.MemberData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.ProjectBuild",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.SearchMatch",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$AnnotationData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$ClasspathEntryData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$FieldData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeData$MethodData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.java.TypeDescriptorData",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.Bean",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.BeansParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.DefaultValues",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.InjectionPoint",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.commons.protocol.spring.MatchingBeansParams",
|
||||
"allDeclaredFields": true,
|
||||
"allPublicConstructors": true
|
||||
}
|
||||
]
|
||||
@@ -3884,66 +3884,6 @@
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.VersionValidator",
|
||||
"queryAllPublicMethods":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.Generation",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllDeclaredConstructors":true,
|
||||
"methods":[
|
||||
{"name":"<init>","parameterTypes":[] },
|
||||
{"name":"setCommercialSupportEndDate","parameterTypes":["java.lang.String"] },
|
||||
{"name":"setInitialReleaseDate","parameterTypes":["java.lang.String"] },
|
||||
{"name":"setName","parameterTypes":["java.lang.String"] },
|
||||
{"name":"setOssSupportEndDate","parameterTypes":["java.lang.String"] }
|
||||
]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.Generations",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllDeclaredConstructors":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.JsonHalLinks",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"methods":[{"name":"set_links","parameterTypes":["org.springframework.ide.vscode.boot.validation.generations.json.Links"] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.Link",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllDeclaredConstructors":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.Links",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllDeclaredConstructors":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.SpringProject",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllDeclaredConstructors":true,
|
||||
"methods":[
|
||||
{"name":"<init>","parameterTypes":[] },
|
||||
{"name":"setName","parameterTypes":["java.lang.String"] },
|
||||
{"name":"setRepositoryUrl","parameterTypes":["java.lang.String"] },
|
||||
{"name":"setSlug","parameterTypes":["java.lang.String"] },
|
||||
{"name":"setStatus","parameterTypes":["java.lang.String"] }
|
||||
]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.validation.generations.json.SpringProjects",
|
||||
"allDeclaredFields":true,
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllDeclaredConstructors":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.boot.xml.SpringXMLCompletionEngine",
|
||||
"allDeclaredFields":true,
|
||||
@@ -4123,114 +4063,6 @@
|
||||
"name":"org.springframework.ide.vscode.commons.languageserver.util.SimpleWorkspaceService",
|
||||
"queryAllDeclaredMethods":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.HighlightParams",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.LiveProcessSummary",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.STS4LanguageClient",
|
||||
"queryAllDeclaredMethods":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.TypeHierarchyResponseAdapter",
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.Classpath",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.Classpath$CPE",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.ClasspathListenerParams",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.JavaDataParams",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.JavaElementData",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.JavaTypeData",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.JavaTypeData$JavaTypeKind",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.MemberData",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.ProjectBuild",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.TypeData",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.TypeData$AnnotationData",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.TypeData$ClasspathEntryData",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.TypeData$FieldData",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.TypeData$MethodData",
|
||||
"allDeclaredFields":true,
|
||||
"methods":[{"name":"<init>","parameterTypes":[] }]
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.java.TypeDescriptorData",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.spring.Bean",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.spring.InjectionPoint",
|
||||
"allDeclaredFields":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.spring.SpringIndex",
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllPublicMethods":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.spring.SpringIndexLanguageClient",
|
||||
"queryAllDeclaredMethods":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.protocol.spring.SpringIndexLanguageServer",
|
||||
"queryAllDeclaredMethods":true,
|
||||
"queryAllPublicMethods":true
|
||||
},
|
||||
{
|
||||
"name":"org.springframework.ide.vscode.commons.rewrite.config.RecipeScope",
|
||||
"allDeclaredFields":true
|
||||
@@ -4510,5 +4342,87 @@
|
||||
{
|
||||
"name":"sun.security.x509.SubjectKeyIdentifierExtension",
|
||||
"methods":[{"name":"<init>","parameterTypes":["java.lang.Boolean","java.lang.Object"] }]
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Generation",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Generations",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.JsonHalLinks",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Link",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Links",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Release",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Release$Status",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.Releases",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.SpringProject",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
},
|
||||
{
|
||||
"name": "org.springframework.ide.vscode.boot.validation.generations.json.SpringProjects",
|
||||
"allDeclaredFields": true,
|
||||
"allDeclaredMethods": true,
|
||||
"allPublicConstructors": true,
|
||||
"queryAllDeclaredMethods": true,
|
||||
"queryAllDeclaredConstructors": true
|
||||
}
|
||||
|
||||
]
|
||||
|
||||
@@ -12,4 +12,7 @@ logging.level.org.springframework.ide.vscode.boot.java.livehover.v2.SpringProces
|
||||
#logging.level.org.springframework.ide.vscode.commons.languageserver.util.SimpleLanguageServer=debug
|
||||
#logging.level.org.springframework.ide.vscode.boot.java.utils.SpringIndexerJava=debug
|
||||
#logging.level.org.springframework.ide.vscode.boot.app.SpringSymbolIndex=debug
|
||||
#logging.level.org.springframework.ide.vscode.commons.boot.app.cli.SpringBootApp=off
|
||||
#logging.level.org.springframework.ide.vscode.commons.boot.app.cli.SpringBootApp=off
|
||||
|
||||
languageserver.standalone=true
|
||||
languageserver.standalone-port=5007
|
||||
@@ -0,0 +1,61 @@
|
||||
/*******************************************************************************
|
||||
* Copyright (c) 2023 VMware, Inc.
|
||||
* All rights reserved. This program and the accompanying materials
|
||||
* are made available under the terms of the Eclipse Public License v1.0
|
||||
* which accompanies this distribution, and is available at
|
||||
* https://www.eclipse.org/legal/epl-v10.html
|
||||
*
|
||||
* Contributors:
|
||||
* VMware, Inc. - initial API and implementation
|
||||
*******************************************************************************/
|
||||
package org.springframework.ide.vscode.boot.nativegen;
|
||||
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.JsonArray;
|
||||
import com.google.gson.JsonIOException;
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import io.github.classgraph.ClassGraph;
|
||||
import io.github.classgraph.ScanResult;
|
||||
|
||||
public class SerializationReflectConfigGenerator {
|
||||
|
||||
public static final void main(String[] args) throws JsonIOException, IOException {
|
||||
|
||||
Gson gson = new GsonBuilder().setPrettyPrinting().create();
|
||||
|
||||
JsonArray array = new JsonArray();
|
||||
|
||||
generateGenerationsPojoJson().forEach(array::add);
|
||||
|
||||
if (args.length > 0) {
|
||||
System.out.println("ARG: " + args[0] + " array size = " + array.size());
|
||||
FileWriter fileWriter = new FileWriter(args[0]);
|
||||
gson.toJson(array, fileWriter);
|
||||
fileWriter.flush();
|
||||
fileWriter.close();
|
||||
} else {
|
||||
System.out.println(gson.toJson(array));
|
||||
}
|
||||
}
|
||||
|
||||
private static Stream<JsonObject> generateGenerationsPojoJson() {
|
||||
ScanResult res = new ClassGraph().ignoreParentClassLoaders().enableMethodInfo().acceptPackagesNonRecursive("org.springframework.ide.vscode.boot.validation.generations.json").scan();
|
||||
return res.getAllStandardClasses().stream().filter(ci -> !ci.getSimpleName().equals("ResolvedSpringProject")).map(ci -> {
|
||||
JsonObject obj = new JsonObject();
|
||||
obj.addProperty("name", ci.getName());
|
||||
obj.addProperty("allDeclaredFields", true);
|
||||
obj.addProperty("allDeclaredMethods", true);
|
||||
obj.addProperty("allPublicConstructors", true);
|
||||
obj.addProperty("queryAllDeclaredMethods", true);
|
||||
obj.addProperty("queryAllDeclaredConstructors", true);
|
||||
return obj;
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
@@ -28,7 +28,7 @@ export function activate(context: VSCode.ExtensionContext): Thenable<ExtensionAP
|
||||
// registerPipelineGenerator(context);
|
||||
let options : commons.ActivatorOptions = {
|
||||
DEBUG: false,
|
||||
CONNECT_TO_LS: false,
|
||||
CONNECT_TO_LS: true,
|
||||
extensionId: 'vscode-spring-boot',
|
||||
preferJdk: true,
|
||||
jvmHeap: '1024m',
|
||||
|
||||
Reference in New Issue
Block a user