diff --git a/headless-services/boot-java-language-server/.settings/org.eclipse.core.resources.prefs b/headless-services/boot-java-language-server/.settings/org.eclipse.core.resources.prefs index cdfe4f1b6..99f26c020 100644 --- a/headless-services/boot-java-language-server/.settings/org.eclipse.core.resources.prefs +++ b/headless-services/boot-java-language-server/.settings/org.eclipse.core.resources.prefs @@ -1,5 +1,2 @@ eclipse.preferences.version=1 -encoding//src/main/java=UTF-8 -encoding//src/test/java=UTF-8 -encoding//src/test/resources=UTF-8 encoding/=UTF-8 diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java b/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java deleted file mode 100644 index 3aebfd170..000000000 --- a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java +++ /dev/null @@ -1,141 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2016, 2017 Pivotal, 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 - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * Pivotal, Inc. - initial API and implementation - *******************************************************************************/ -package org.springframework.ide.vscode.project.harness; - -import java.io.ByteArrayInputStream; -import java.io.File; -import java.io.IOException; -import java.net.URI; -import java.net.URISyntaxException; -import java.nio.file.Path; -import java.nio.file.Paths; - -import org.apache.commons.io.FileUtils; -import org.springframework.ide.vscode.commons.java.IJavaProject; -import org.springframework.ide.vscode.commons.maven.MavenBuilder; -import org.springframework.ide.vscode.commons.maven.MavenCore; -import org.springframework.ide.vscode.commons.maven.java.MavenJavaProject; -import org.springframework.ide.vscode.commons.maven.java.classpathfile.JavaProjectWithClasspathFile; -import org.springframework.ide.vscode.commons.util.IOUtil; - -import com.google.common.cache.Cache; -import com.google.common.cache.CacheBuilder; -import com.google.common.io.Files; - -import reactor.util.function.Tuple3; -import reactor.util.function.Tuples; - -/** - * Test projects harness - * - * @author Alex Boyko - * @author Kris De Volder - */ -public class ProjectsHarness { - - public static final ProjectsHarness INSTANCE = new ProjectsHarness();; - - public Cache cache = CacheBuilder.newBuilder().concurrencyLevel(1).build(); - - /** - * A callback that is given a chance to make changes to test project contents before the test project - * is created from it. - */ - public interface ProjectCustomizer { - void customize(CustomizableProjectContent projectContent) throws Exception; - } - - /** - * Provides convenience apis to make changes to project content from a {@link ProjectCustomizer} - */ - public static class CustomizableProjectContent { - private final File projectRoot; - - public CustomizableProjectContent(File projectRoot) { - this.projectRoot = projectRoot; - } - - public void createFile(String path, String content) throws Exception { - File target = new File(projectRoot, path); - IOUtil.pipe(new ByteArrayInputStream(content.getBytes("UTF8")), target); - } - - public void createType(String fqName, String sourceCode) throws Exception { - String sourceFile = sourceFolder()+"/"+fqName.replace('.', '/')+".java"; - createFile(sourceFile, sourceCode); - } - - private String sourceFolder() { - return "src/main/java"; - } - } - - private enum ProjectType { - MAVEN, - CLASSPATH_TXT - } - - private ProjectsHarness() { - } - - public IJavaProject project(ProjectType type, String name, ProjectCustomizer customizer) throws Exception { - Tuple3 key = Tuples.of(type, name, customizer); - return cache.get(key, () -> { - Path baseProjectPath = getProjectPath(name); - File testProjectRoot = Files.createTempDir(); - FileUtils.copyDirectory(baseProjectPath.toFile(), testProjectRoot); - customizer.customize(new CustomizableProjectContent(testProjectRoot)); - return createProject(type, testProjectRoot.toPath()); - }); - } - - private IJavaProject createProject(ProjectType type, Path testProjectPath) throws Exception { - switch (type) { - case MAVEN: - MavenBuilder.newBuilder(testProjectPath).clean().pack().javadoc().skipTests().execute(); - return new MavenJavaProject(MavenCore.getDefault(), testProjectPath.resolve(MavenCore.POM_XML).toFile()); - case CLASSPATH_TXT: - MavenBuilder.newBuilder(testProjectPath).clean().pack().skipTests().execute(); - return new JavaProjectWithClasspathFile(testProjectPath.resolve(MavenCore.CLASSPATH_TXT).toFile()); - default: - throw new IllegalStateException("Bug!!! Missing case"); - } - } - - public IJavaProject project(ProjectType type, String name) throws Exception { - return cache.get(type + "/" + name, () -> { - Path testProjectPath = getProjectPath(name); - return createProject(type, testProjectPath); - }); - } - - protected Path getProjectPath(String name) throws URISyntaxException, IOException { - return getProjectPathFromClasspath(name); - } - - private Path getProjectPathFromClasspath(String name) throws URISyntaxException, IOException { - URI resource = ProjectsHarness.class.getResource("/test-projects/" + name).toURI(); - return Paths.get(resource); - } - - public MavenJavaProject mavenProject(String name, ProjectCustomizer customizer) throws Exception { - return (MavenJavaProject) project(ProjectType.MAVEN, name, customizer); - } - - public MavenJavaProject mavenProject(String name) throws Exception { - return (MavenJavaProject) project(ProjectType.MAVEN, name); - } - - public IJavaProject javaProjectWithClasspathFile(String name) throws Exception { - return project(ProjectType.CLASSPATH_TXT, name); - } - -} diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.classpath b/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.classpath deleted file mode 100644 index af1430be1..000000000 --- a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.classpath +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.project b/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.project deleted file mode 100644 index 6dfad1b9a..000000000 --- a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.project +++ /dev/null @@ -1,40 +0,0 @@ - - - test-annotation-indexing-beans - - - - - - org.eclipse.wst.common.project.facet.core.builder - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.springframework.ide.eclipse.core.springbuilder - - - - - org.springframework.ide.eclipse.boot.validation.springbootbuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.springframework.ide.eclipse.core.springnature - org.eclipse.jdt.core.javanature - org.eclipse.m2e.core.maven2Nature - org.eclipse.wst.common.project.facet.core.nature - - diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.core.resources.prefs b/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index e9441bb12..000000000 --- a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -encoding//src/main/java=UTF-8 -encoding/=UTF-8 diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.jdt.core.prefs b/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 714351aec..000000000 --- a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.m2e.core.prefs b/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f1c..000000000 --- a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.wst.common.project.facet.core.xml b/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.wst.common.project.facet.core.xml deleted file mode 100644 index d8582952f..000000000 --- a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/.settings/org.eclipse.wst.common.project.facet.core.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/Annotations.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/Annotations.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/Annotations.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/Annotations.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaConfig.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaConfig.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaConfig.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaConfig.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServer.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServer.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServer.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServer.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServerParams.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServerParams.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServerParams.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/BootJavaLanguageServerParams.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/Main.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/Main.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/Main.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/Main.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/ProjectServices.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/ProjectServices.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/ProjectServices.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/ProjectServices.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/WordHighlighter.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/WordHighlighter.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/WordHighlighter.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/WordHighlighter.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchies.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchies.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchies.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchies.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchyAwareLookup.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchyAwareLookup.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchyAwareLookup.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/annotations/AnnotationHierarchyAwareLookup.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/autowired/AutowiredHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/autowired/AutowiredHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/autowired/AutowiredHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/autowired/AutowiredHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/beans/BeansSymbolProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/beans/BeansSymbolProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/beans/BeansSymbolProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/beans/BeansSymbolProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/beans/ComponentSymbolProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/beans/ComponentSymbolProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/beans/ComponentSymbolProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/beans/ComponentSymbolProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/conditionals/ConditionalsLiveHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/conditionals/ConditionalsLiveHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/conditionals/ConditionalsLiveHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/conditionals/ConditionalsLiveHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCodeLensEngine.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCodeLensEngine.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCodeLensEngine.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCodeLensEngine.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCompletionEngine.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCompletionEngine.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCompletionEngine.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaCompletionEngine.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaDocumentSymbolHandler.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaDocumentSymbolHandler.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaDocumentSymbolHandler.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaDocumentSymbolHandler.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReconcileEngine.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReconcileEngine.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReconcileEngine.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReconcileEngine.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReferencesHandler.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReferencesHandler.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReferencesHandler.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaReferencesHandler.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaWorkspaceSymbolHandler.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaWorkspaceSymbolHandler.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaWorkspaceSymbolHandler.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/BootJavaWorkspaceSymbolHandler.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/CompletionProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/CompletionProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/CompletionProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/CompletionProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/HoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/HoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/HoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/HoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/ReferenceProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/ReferenceProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/ReferenceProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/ReferenceProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/RunningAppProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/RunningAppProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/RunningAppProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/RunningAppProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/SymbolProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/SymbolProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/handlers/SymbolProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/handlers/SymbolProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/jdt/imports/ImportRewrite.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/jdt/imports/ImportRewrite.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/jdt/imports/ImportRewrite.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/jdt/imports/ImportRewrite.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/AbstractInjectedIntoHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/AbstractInjectedIntoHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/AbstractInjectedIntoHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/AbstractInjectedIntoHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ActiveProfilesProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ActiveProfilesProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ActiveProfilesProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ActiveProfilesProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/BeanInjectedIntoHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/BeanInjectedIntoHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/BeanInjectedIntoHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/BeanInjectedIntoHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ComponentInjectionsHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ComponentInjectionsHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ComponentInjectionsHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/ComponentInjectionsHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/LiveHoverUtils.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/LiveHoverUtils.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/livehover/LiveHoverUtils.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/livehover/LiveHoverUtils.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/DefaultSpringPropertyIndexProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/DefaultSpringPropertyIndexProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/DefaultSpringPropertyIndexProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/DefaultSpringPropertyIndexProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/PropertiesLoader.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/PropertiesLoader.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/PropertiesLoader.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/PropertiesLoader.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertiesIndexManager.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertiesIndexManager.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertiesIndexManager.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertiesIndexManager.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndex.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndex.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndex.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndex.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndexProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndexProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndexProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/metadata/SpringPropertyIndexProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/LiveAppURLSymbolProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/LiveAppURLSymbolProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/LiveAppURLSymbolProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/LiveAppURLSymbolProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingCompletionProcessor.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingCompletionProcessor.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingCompletionProcessor.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingCompletionProcessor.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingSymbolProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingSymbolProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingSymbolProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/RequestMappingSymbolProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/UrlUtil.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/UrlUtil.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/UrlUtil.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/requestmapping/UrlUtil.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/Constants.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/Constants.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/Constants.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/Constants.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeCompletionProcessor.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeCompletionProcessor.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeCompletionProcessor.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeCompletionProcessor.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletion.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletion.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletion.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletion.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletionProposal.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletionProposal.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletionProposal.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/scope/ScopeNameCompletionProposal.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippet.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippet.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippet.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippet.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetBuilder.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetBuilder.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetBuilder.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetBuilder.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetCompletion.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetCompletion.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetCompletion.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetCompletion.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetContext.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetContext.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetContext.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetContext.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetManager.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetManager.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetManager.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/JavaSnippetManager.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/eclipse-templates.xml b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/eclipse-templates.xml similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/snippets/eclipse-templates.xml rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/snippets/eclipse-templates.xml diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/ASTUtils.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/ASTUtils.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/ASTUtils.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/ASTUtils.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/CompilationUnitCache.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/FunctionUtils.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/FunctionUtils.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/FunctionUtils.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/FunctionUtils.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SourceLinks.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SourceLinks.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SourceLinks.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SourceLinks.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringIndexer.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringIndexer.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringIndexer.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringIndexer.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringLiveHoverWatchdog.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringLiveHoverWatchdog.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringLiveHoverWatchdog.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringLiveHoverWatchdog.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringResource.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringResource.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringResource.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/utils/SpringResource.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/Constants.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/Constants.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/Constants.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/Constants.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueCompletionProcessor.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueCompletionProcessor.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueCompletionProcessor.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueCompletionProcessor.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueHoverProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueHoverProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueHoverProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValueHoverProvider.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyKeyProposal.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyKeyProposal.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyKeyProposal.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyKeyProposal.java diff --git a/headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyReferencesProvider.java b/headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyReferencesProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyReferencesProvider.java rename to headless-services/commons/commons-boot/src/main/java/org/springframework/ide/vscode/boot/java/value/ValuePropertyReferencesProvider.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/autowired/test/AutowiredHoverProviderTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/autowired/test/AutowiredHoverProviderTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/autowired/test/AutowiredHoverProviderTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/autowired/test/AutowiredHoverProviderTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerBeansTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerBeansTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerBeansTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerBeansTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerFunctionBeansTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerFunctionBeansTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerFunctionBeansTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerFunctionBeansTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerHarness.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerHarness.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerHarness.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/beans/test/SpringIndexerHarness.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/conditionals/test/ConditionalsLiveHoverTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/conditionals/test/ConditionalsLiveHoverTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/conditionals/test/ConditionalsLiveHoverTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/conditionals/test/ConditionalsLiveHoverTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActiveProfilesHoverTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActiveProfilesHoverTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActiveProfilesHoverTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActiveProfilesHoverTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActuatorWarningHoverTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActuatorWarningHoverTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActuatorWarningHoverTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ActuatorWarningHoverTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/BeanInjectedIntoHoverProviderTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/BeanInjectedIntoHoverProviderTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/BeanInjectedIntoHoverProviderTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/BeanInjectedIntoHoverProviderTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ComponentInjectionsHoverProviderTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ComponentInjectionsHoverProviderTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ComponentInjectionsHoverProviderTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/ComponentInjectionsHoverProviderTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/FunctionInjectionsHoverProviderTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/FunctionInjectionsHoverProviderTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/FunctionInjectionsHoverProviderTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/livehover/test/FunctionInjectionsHoverProviderTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/references/test/PropertyReferenceFinderTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/references/test/PropertyReferenceFinderTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/references/test/PropertyReferenceFinderTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/references/test/PropertyReferenceFinderTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingLiveHoverTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingLiveHoverTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingLiveHoverTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingLiveHoverTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingSymbolProviderTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingSymbolProviderTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingSymbolProviderTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/requestmapping/test/RequestMappingSymbolProviderTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/scope/test/ScopeCompletionTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/scope/test/ScopeCompletionTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/scope/test/ScopeCompletionTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/scope/test/ScopeCompletionTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/CompilationUnitCacheTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/CompilationUnitCacheTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/CompilationUnitCacheTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/CompilationUnitCacheTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringIndexerTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringIndexerTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringIndexerTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringIndexerTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringPropertyIndexTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringPropertyIndexTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringPropertyIndexTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/SpringPropertyIndexTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/VSCodeSourceLinksTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/VSCodeSourceLinksTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/VSCodeSourceLinksTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/utils/test/VSCodeSourceLinksTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueCompletionTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueCompletionTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueCompletionTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueCompletionTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueHoverTest.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueHoverTest.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueHoverTest.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/boot/java/value/test/ValueHoverTest.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/BootLanguageServerHarness.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/BootLanguageServerHarness.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/BootLanguageServerHarness.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/BootLanguageServerHarness.java diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/MockRunningAppProvider.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/MockRunningAppProvider.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/MockRunningAppProvider.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/MockRunningAppProvider.java diff --git a/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java index 9ebc9eb13..3aebfd170 100644 --- a/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java +++ b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/ProjectsHarness.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2016 Pivotal, Inc. + * Copyright (c) 2016, 2017 Pivotal, 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 @@ -10,32 +10,73 @@ *******************************************************************************/ package org.springframework.ide.vscode.project.harness; +import java.io.ByteArrayInputStream; +import java.io.File; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import java.nio.file.Path; import java.nio.file.Paths; +import org.apache.commons.io.FileUtils; import org.springframework.ide.vscode.commons.java.IJavaProject; import org.springframework.ide.vscode.commons.maven.MavenBuilder; import org.springframework.ide.vscode.commons.maven.MavenCore; import org.springframework.ide.vscode.commons.maven.java.MavenJavaProject; import org.springframework.ide.vscode.commons.maven.java.classpathfile.JavaProjectWithClasspathFile; +import org.springframework.ide.vscode.commons.util.IOUtil; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; +import com.google.common.io.Files; + +import reactor.util.function.Tuple3; +import reactor.util.function.Tuples; /** * Test projects harness * * @author Alex Boyko - * + * @author Kris De Volder */ public class ProjectsHarness { public static final ProjectsHarness INSTANCE = new ProjectsHarness();; - public Cache cache = CacheBuilder.newBuilder().concurrencyLevel(1).build(); + public Cache cache = CacheBuilder.newBuilder().concurrencyLevel(1).build(); + + /** + * A callback that is given a chance to make changes to test project contents before the test project + * is created from it. + */ + public interface ProjectCustomizer { + void customize(CustomizableProjectContent projectContent) throws Exception; + } + + /** + * Provides convenience apis to make changes to project content from a {@link ProjectCustomizer} + */ + public static class CustomizableProjectContent { + private final File projectRoot; + + public CustomizableProjectContent(File projectRoot) { + this.projectRoot = projectRoot; + } + + public void createFile(String path, String content) throws Exception { + File target = new File(projectRoot, path); + IOUtil.pipe(new ByteArrayInputStream(content.getBytes("UTF8")), target); + } + + public void createType(String fqName, String sourceCode) throws Exception { + String sourceFile = sourceFolder()+"/"+fqName.replace('.', '/')+".java"; + createFile(sourceFile, sourceCode); + } + + private String sourceFolder() { + return "src/main/java"; + } + } private enum ProjectType { MAVEN, @@ -45,116 +86,49 @@ public class ProjectsHarness { private ProjectsHarness() { } - public IJavaProject project(ProjectType type, String name) throws Exception { - return cache.get(type + "/" + name, () -> { - Path testProjectPath = getProjectPath(name); - switch (type) { - case MAVEN: - MavenBuilder.newBuilder(testProjectPath).clean().pack().javadoc().skipTests().execute(); - return new MavenJavaProject(MavenCore.getDefault(), testProjectPath.resolve(MavenCore.POM_XML).toFile()); - case CLASSPATH_TXT: - MavenBuilder.newBuilder(testProjectPath).clean().pack().skipTests().execute(); - return new JavaProjectWithClasspathFile(testProjectPath.resolve(MavenCore.CLASSPATH_TXT).toFile()); - default: - throw new IllegalStateException("Bug!!! Missing case"); - } + public IJavaProject project(ProjectType type, String name, ProjectCustomizer customizer) throws Exception { + Tuple3 key = Tuples.of(type, name, customizer); + return cache.get(key, () -> { + Path baseProjectPath = getProjectPath(name); + File testProjectRoot = Files.createTempDir(); + FileUtils.copyDirectory(baseProjectPath.toFile(), testProjectRoot); + customizer.customize(new CustomizableProjectContent(testProjectRoot)); + return createProject(type, testProjectRoot.toPath()); }); } - protected void enableSNIExtension(boolean enable) { - String enableVal = Boolean.toString(enable); - System.setProperty("jsse.enableSNIExtension", enableVal); + private IJavaProject createProject(ProjectType type, Path testProjectPath) throws Exception { + switch (type) { + case MAVEN: + MavenBuilder.newBuilder(testProjectPath).clean().pack().javadoc().skipTests().execute(); + return new MavenJavaProject(MavenCore.getDefault(), testProjectPath.resolve(MavenCore.POM_XML).toFile()); + case CLASSPATH_TXT: + MavenBuilder.newBuilder(testProjectPath).clean().pack().skipTests().execute(); + return new JavaProjectWithClasspathFile(testProjectPath.resolve(MavenCore.CLASSPATH_TXT).toFile()); + default: + throw new IllegalStateException("Bug!!! Missing case"); + } + } + + public IJavaProject project(ProjectType type, String name) throws Exception { + return cache.get(type + "/" + name, () -> { + Path testProjectPath = getProjectPath(name); + return createProject(type, testProjectPath); + }); } protected Path getProjectPath(String name) throws URISyntaxException, IOException { -// URI sourceLocation = ProjectsHarness.class.getProtectionDomain().getCodeSource().getLocation().toURI(); -// // file:/Users/aboyko/git/sts4/vscode-extensions/commons/project-test-harness/target/project-test-harness-0.0.1-SNAPSHOT.jar -// Path testProjectsPath = Paths.get(sourceLocation).getParent().getParent().resolve("test-projects").resolve(name); -// if (Files.exists(testProjectsPath)) { -// return testProjectsPath; -// } else { -// /* -// * If "test-projects" folder is not found then extract test project -// * from the jar's "test-projects" folder and copy it in the temp -// * folder -// */ - return getProjectPathFromClasspath(name); -// } + return getProjectPathFromClasspath(name); } private Path getProjectPathFromClasspath(String name) throws URISyntaxException, IOException { URI resource = ProjectsHarness.class.getResource("/test-projects/" + name).toURI(); -// if (resource.getScheme().equalsIgnoreCase("jar")) { -// return getProjectPathFromJar(resource); -// } else { - return Paths.get(resource); -// } + return Paths.get(resource); } -// private Path getProjectPathFromJar(URI jar) throws IOException { -// final String[] array = jar.toString().split("!"); -// URI firstHalf = URI.create(array[0]); -// Path tempFolderPath = Paths.get(new File(System.getProperty(MavenCore.JAVA_IO_TMPDIR)).toURI()); -// FileSystem fs = FileSystems.newFileSystem(firstHalf, Collections.emptyMap()); -// try { -// Path path = fs.getPath(array[1]); -// Path projectCopyPath = tempFolderPath.resolve(path.getFileName().toString()); -// if (Files.exists(projectCopyPath)) { -// recursiveDelete(projectCopyPath); -// } -// recursiveCopy(path, tempFolderPath, StandardCopyOption.REPLACE_EXISTING); -// System.out.println("Copied test project to: " + projectCopyPath); -// return projectCopyPath; -// } finally { -// fs.close(); -// } -// } -// -// private static void recursiveCopy(Path source, Path target, CopyOption... options) throws IOException { -// Files.walkFileTree(source, new SimpleFileVisitor() { -// -// Path destination = target; -// -// @Override -// public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException { -// destination = destination.resolve(dir.getFileName().toString()); -// Files.copy(dir, destination, options); -// return super.preVisitDirectory(dir, attrs); -// } -// -// @Override -// public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { -// Path newFile = destination.resolve(file.getFileName().toString()); -// Files.copy(file, newFile, options); -// return super.visitFile(file, attrs); -// } -// -// @Override -// public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException { -// destination = destination.getParent(); -// return super.postVisitDirectory(dir, exc); -// } -// -// }); -// } -// -// private static void recursiveDelete(Path path) throws IOException { -// Files.walkFileTree(path, new SimpleFileVisitor() { -// -// @Override -// public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { -// Files.delete(file); -// return super.visitFile(file, attrs); -// } -// -// @Override -// public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException { -// Files.delete(dir); -// return super.postVisitDirectory(dir, exc); -// } -// -// }); -// } + public MavenJavaProject mavenProject(String name, ProjectCustomizer customizer) throws Exception { + return (MavenJavaProject) project(ProjectType.MAVEN, name, customizer); + } public MavenJavaProject mavenProject(String name) throws Exception { return (MavenJavaProject) project(ProjectType.MAVEN, name); diff --git a/headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/PropertyIndexHarness.java b/headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/PropertyIndexHarness.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/java/org/springframework/ide/vscode/project/harness/PropertyIndexHarness.java rename to headless-services/commons/commons-boot/src/test/java/org/springframework/ide/vscode/project/harness/PropertyIndexHarness.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/.gitignore b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/.gitignore similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/.gitignore rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/.gitignore diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/src/main/java/com/example/EmptyBoot15WebAppApplication.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/src/main/java/com/example/EmptyBoot15WebAppApplication.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/src/main/java/com/example/EmptyBoot15WebAppApplication.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/src/main/java/com/example/EmptyBoot15WebAppApplication.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/resources/application.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/src/main/resources/application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/resources/application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/src/main/resources/application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/src/test/java/com/example/EmptyBoot15WebAppApplicationTests.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/src/test/java/com/example/EmptyBoot15WebAppApplicationTests.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/src/test/java/com/example/EmptyBoot15WebAppApplicationTests.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/empty-boot-15-web-app/src/test/java/com/example/EmptyBoot15WebAppApplicationTests.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.gitignore b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/.gitignore similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.gitignore rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/.gitignore diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.jar diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/.mvn/wrapper/maven-wrapper.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/java/com/example/NoActuatorBoot15WebAppApplication.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/java/com/example/NoActuatorBoot15WebAppApplication.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/java/com/example/NoActuatorBoot15WebAppApplication.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/java/com/example/NoActuatorBoot15WebAppApplication.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/src/main/resources/application.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/resources/application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/src/main/resources/application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/main/resources/application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/test/java/com/example/NoActuatorBoot15WebAppApplicationTests.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/test/java/com/example/NoActuatorBoot15WebAppApplicationTests.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/test/java/com/example/NoActuatorBoot15WebAppApplicationTests.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/no-actuator-boot-15-web-app/src/test/java/com/example/NoActuatorBoot15WebAppApplicationTests.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information-automatically-wired.json b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information-automatically-wired.json similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information-automatically-wired.json rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information-automatically-wired.json diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information.json b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information.json similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information.json rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/runtime-bean-information.json diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyA.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyA.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyA.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyA.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyB.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyB.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyB.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/DependencyB.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/MainClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MainClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/MainClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MainClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutomaticallyWiredComponent.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutomaticallyWiredComponent.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutomaticallyWiredComponent.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutomaticallyWiredComponent.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutowiredComponent.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutowiredComponent.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutowiredComponent.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MyAutowiredComponent.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/wrong-runtime-bean-information.json b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/wrong-runtime-bean-information.json similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/wrong-runtime-bean-information.json rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-autowired/wrong-runtime-bean-information.json diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/BeanClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/BeanClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/BeanClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/BeanClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedInterface.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedInterface.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedInterface.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/FunctionFromSpecializedInterface.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedFunctionClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedFunctionClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedFunctionClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedFunctionClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface1.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface1.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface1.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface1.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface2.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface2.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface2.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/LoopedInterface2.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MainClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/MainClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/src/main/java/org/test/MainClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/MainClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/ScannedFunctionClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/ScannedFunctionClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/ScannedFunctionClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/ScannedFunctionClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleComponent.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleComponent.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleComponent.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleComponent.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleConfiguration.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleConfiguration.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleConfiguration.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleConfiguration.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleController.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleController.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleController.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleController.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleRestController.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleRestController.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleRestController.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SimpleRestController.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialConfiguration.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialConfiguration.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialConfiguration.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialConfiguration.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialNameComponent.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialNameComponent.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialNameComponent.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecialNameComponent.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionInterface.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionInterface.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionInterface.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-beans/src/main/java/org/test/SpecializedFunctionInterface.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/.gitignore b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.gitignore similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/no-actuator-boot-15-web-app/.gitignore rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.gitignore diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.jar b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.jar rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.jar diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/MainClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/MainClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/MainClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/MainClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/SimpleMappingClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/SimpleMappingClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/SimpleMappingClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/SimpleMappingClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/sub/MappingClassSubpackage.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/sub/MappingClassSubpackage.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/sub/MappingClassSubpackage.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/src/main/java/org/test/sub/MappingClassSubpackage.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/.gitignore b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/.gitignore similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/empty-boot-15-web-app/.gitignore rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/.gitignore diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.jar b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.jar rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.jar diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestAnnotationsApplication.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestAnnotationsApplication.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestAnnotationsApplication.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestAnnotationsApplication.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestScopeCompletion.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestScopeCompletion.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestScopeCompletion.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestScopeCompletion.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestValueCompletion.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestValueCompletion.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestValueCompletion.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-annotations/src/main/java/org/test/TestValueCompletion.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/.gitignore b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/.gitignore similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/.gitignore rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/.gitignore diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.jar b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.jar rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.jar diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotations/.mvn/wrapper/maven-wrapper.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/.mvn/wrapper/maven-wrapper.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnBeanConfig.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnBeanConfig.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnBeanConfig.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnBeanConfig.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnMissingBeanConfig.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnMissingBeanConfig.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnMissingBeanConfig.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/ConditionalOnMissingBeanConfig.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/Hello.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/Hello.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/Hello.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/Hello.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldConfiguration.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/HelloWorldConfiguration.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldConfiguration.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/HelloWorldConfiguration.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionals.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionals.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionals.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionals.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionalsPT152535713.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionalsPT152535713.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionalsPT152535713.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/MultipleConditionalsPT152535713.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/resources/application.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/resources/application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/resources/application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-conditionals-live-hover/src/main/resources/application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/.gitignore b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/.gitignore similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/.gitignore rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/.gitignore diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.jar b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.jar rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.jar diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-parent/test-annotation-indexing/.mvn/wrapper/maven-wrapper.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/.mvn/wrapper/maven-wrapper.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-beans/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/Greeting.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/Greeting.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/Greeting.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/Greeting.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/HelloWorldConfiguration.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldConfiguration.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/java/example/HelloWorldConfiguration.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldConfiguration.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldController.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldController.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldController.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/HelloWorldController.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/InnerClassController.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/InnerClassController.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/InnerClassController.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/InnerClassController.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/RestApi.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/RestApi.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/RestApi.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/java/example/RestApi.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/resources/application.properties b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/resources/application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-conditionals-live-hover/src/main/resources/application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-live-hover/src/main/resources/application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/mvnw similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/mvnw diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw.cmd b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/mvnw.cmd similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-annotation-indexing-autowired/mvnw.cmd rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/mvnw.cmd diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/pom.xml b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/pom.xml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/pom.xml rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/pom.xml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/MultiRequestMappingClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/MultiRequestMappingClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/MultiRequestMappingClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/MultiRequestMappingClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass2.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass2.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass2.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/ParentMappingClass2.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/RequestMethodClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/RequestMethodClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/RequestMethodClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/RequestMethodClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/SimpleMappingClass.java b/headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/SimpleMappingClass.java similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/SimpleMappingClass.java rename to headless-services/commons/commons-boot/src/test/resources/test-projects/test-request-mapping-symbols/src/main/java/org/test/SimpleMappingClass.java diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/application-dev.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/application-dev.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/application-dev.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/application-dev.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/application.yml b/headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/application.yml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/application.yml rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/application.yml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/no-props.yml b/headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/no-props.yml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/no-props.yml rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/no-props.yml diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/non-app-props.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/non-app-props.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/non-app-props.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/mixed-multiple-files/non-app-props.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/application-dev.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/application-dev.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/application-dev.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/application-dev.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/application.non-properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/application.non-properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/application.non-properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/application.non-properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/application.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/non-app-props.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/non-app-props.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/mixed-multiple-files/non-app-props.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/non-app-props.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/prod-application.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/prod-application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/multiple-files/prod-application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/multiple-files/prod-application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/simple-case/application.properties b/headless-services/commons/commons-boot/src/test/resources/test-property-files/simple-case/application.properties similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/simple-case/application.properties rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/simple-case/application.properties diff --git a/headless-services/boot-java-language-server/src/test/resources/test-property-files/simple-yml/application.yml b/headless-services/commons/commons-boot/src/test/resources/test-property-files/simple-yml/application.yml similarity index 100% rename from headless-services/boot-java-language-server/src/test/resources/test-property-files/simple-yml/application.yml rename to headless-services/commons/commons-boot/src/test/resources/test-property-files/simple-yml/application.yml