diff --git a/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/META-INF/MANIFEST.MF b/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/META-INF/MANIFEST.MF index 039a10c860..18ea461043 100644 --- a/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/META-INF/MANIFEST.MF +++ b/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/META-INF/MANIFEST.MF @@ -48,6 +48,5 @@ Import-Package: org.eclipse.core.runtime, org.apache.commons.lang3, org.eclipse.osgi.util, org.osgi.framework, - javax.inject, org.json Automatic-Module-Name: org.springframework.ide.eclipse.boot.wizard diff --git a/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/src/org/springframework/ide/eclipse/boot/wizard/guides/ChooseTypedContentSection.java b/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/src/org/springframework/ide/eclipse/boot/wizard/guides/ChooseTypedContentSection.java index 55a556e9dc..b2035ab43a 100644 --- a/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/src/org/springframework/ide/eclipse/boot/wizard/guides/ChooseTypedContentSection.java +++ b/eclipse-extensions/org.springframework.ide.eclipse.boot.wizard/src/org/springframework/ide/eclipse/boot/wizard/guides/ChooseTypedContentSection.java @@ -12,8 +12,7 @@ import java.util.HashMap; import java.util.function.Predicate; - -import javax.inject.Provider; +import java.util.function.Supplier; import org.eclipse.jface.dialogs.Dialog; import org.eclipse.jface.layout.GridDataFactory; @@ -223,7 +222,7 @@ private boolean matchChildren(Viewer viewer, Object e) { return false; } - private boolean match(Provider provider) { + private boolean match(Supplier provider) { if (matcher == null) { return true; // Search term not set... anything is acceptable. } else { diff --git a/eclipse-extensions/org.springframework.ide.eclipse.xterm/META-INF/MANIFEST.MF b/eclipse-extensions/org.springframework.ide.eclipse.xterm/META-INF/MANIFEST.MF index f4a0754087..82d6d54271 100644 --- a/eclipse-extensions/org.springframework.ide.eclipse.xterm/META-INF/MANIFEST.MF +++ b/eclipse-extensions/org.springframework.ide.eclipse.xterm/META-INF/MANIFEST.MF @@ -12,7 +12,6 @@ Require-Bundle: org.eclipse.ui;bundle-version="3.115.0", org.apache.httpcomponents.httpclient, org.apache.httpcomponents.httpcore, org.eclipse.wildwebdeveloper.embedder.node -Import-Package: javax.inject Bundle-ClassPath: . Bundle-ActivationPolicy: lazy Export-Package: org.springframework.ide.eclipse.xterm, diff --git a/eclipse-extensions/org.springframework.ide.eclipse.xterm/src/org/springframework/ide/eclipse/xterm/views/TerminalView.java b/eclipse-extensions/org.springframework.ide.eclipse.xterm/src/org/springframework/ide/eclipse/xterm/views/TerminalView.java index 674c28b5dc..c082874518 100644 --- a/eclipse-extensions/org.springframework.ide.eclipse.xterm/src/org/springframework/ide/eclipse/xterm/views/TerminalView.java +++ b/eclipse-extensions/org.springframework.ide.eclipse.xterm/src/org/springframework/ide/eclipse/xterm/views/TerminalView.java @@ -13,8 +13,6 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; -import javax.inject.Inject; - import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.jface.action.Action; import org.eclipse.jface.action.IMenuManager; @@ -33,7 +31,6 @@ import org.eclipse.ui.IActionBars; import org.eclipse.ui.IMemento; import org.eclipse.ui.IViewSite; -import org.eclipse.ui.IWorkbench; import org.eclipse.ui.PartInitException; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.part.ViewPart; @@ -54,8 +51,6 @@ public class TerminalView extends ViewPart { */ public static final String ID = "org.springframework.ide.eclipse.xterm.views.TerminalView"; - @Inject IWorkbench workbench; - private Action refreshAction; private Browser browser; diff --git a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/META-INF/MANIFEST.MF b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/META-INF/MANIFEST.MF index beace1b7ec..60ae74485a 100644 --- a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/META-INF/MANIFEST.MF +++ b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/META-INF/MANIFEST.MF @@ -49,5 +49,4 @@ Import-Package: org.eclipse.core.runtime, com.google.gson.annotations, com.google.gson.reflect, com.google.gson.stream, - org.apache.commons.lang3, - javax.inject + org.apache.commons.lang3 diff --git a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/hover/DescriptionProviders.java b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/hover/DescriptionProviders.java index b7aed6661d..1037a146ea 100644 --- a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/hover/DescriptionProviders.java +++ b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/hover/DescriptionProviders.java @@ -15,24 +15,23 @@ import static org.springframework.ide.eclipse.editor.support.util.HtmlSnippet.text; import java.io.InputStream; - -import javax.inject.Provider; +import java.util.function.Supplier; import org.springframework.ide.eclipse.editor.support.EditorSupportActivator; import org.springframework.ide.eclipse.editor.support.util.HtmlSnippet; import org.springsource.ide.eclipse.commons.frameworks.core.util.IOUtil; /** - * Static methods and convenience constants for creating some 'description providers'. + * Static methods and convenience constants for creating some 'description Suppliers'. * * @author Kris De Volder */ public class DescriptionProviders { - public static final Provider NO_DESCRIPTION = snippet(italic(text("no description"))); + public static final Supplier NO_DESCRIPTION = snippet(italic(text("no description"))); - public static Provider snippet(final HtmlSnippet snippet) { - return new Provider() { + public static Supplier snippet(final HtmlSnippet snippet) { + return new Supplier() { @Override public String toString() { return snippet.toString(); @@ -44,8 +43,8 @@ public HtmlSnippet get() { }; } - public static Provider fromClasspath(final Class klass, final String resourcePath) { - return new Provider() { + public static Supplier fromClasspath(final Class klass, final String resourcePath) { + return new Supplier() { @Override public String toString() { return "HtmlSnippetFromClassPth(class="+klass.getSimpleName()+", "+resourcePath+")"; diff --git a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/util/ShellProviders.java b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/util/ShellProviders.java index f4ee6534fd..b40846708b 100644 --- a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/util/ShellProviders.java +++ b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/util/ShellProviders.java @@ -10,7 +10,7 @@ *******************************************************************************/ package org.springframework.ide.eclipse.editor.support.util; -import javax.inject.Provider; +import java.util.function.Supplier; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Shell; @@ -18,13 +18,13 @@ /** * Convenience methods to addapt various types of objects representing a 'ui context' - * to a Shell{@link Provider} + * to a Shell{@link Supplier} * * @author Kris De Volder */ public class ShellProviders { - public static Provider from(final ITextEditor editor) { - return new Provider() { + public static Supplier from(final ITextEditor editor) { + return new Supplier() { @Override public Shell get() { return editor.getSite().getShell(); @@ -32,8 +32,8 @@ public Shell get() { }; } - public static Provider from(final Composite composite) { - return new Provider() { + public static Supplier from(final Composite composite) { + return new Supplier() { @Override public Shell get() { return composite.getShell(); diff --git a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/yaml/schema/YTypeFactory.java b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/yaml/schema/YTypeFactory.java index bac51ae9b7..e68af57f01 100644 --- a/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/yaml/schema/YTypeFactory.java +++ b/eclipse-language-servers/org.springframework.ide.eclipse.editor.support/src/org/springframework/ide/eclipse/editor/support/yaml/schema/YTypeFactory.java @@ -19,8 +19,7 @@ import java.util.List; import java.util.Map; import java.util.Set; - -import javax.inject.Provider; +import java.util.function.Supplier; import org.eclipse.core.runtime.Assert; import org.springframework.ide.eclipse.editor.support.hover.DescriptionProviders; @@ -148,7 +147,7 @@ public static abstract class AbstractType implements YType { private List propertyList = new ArrayList<>(); private final List hints = new ArrayList<>(); private Map cachedPropertyMap; - private Provider> hintProvider; + private Supplier> hintProvider; private List constraints = new ArrayList<>(2); public boolean isSequenceable() { @@ -171,7 +170,7 @@ public YType getDomainType() { return null; } - public void addHintProvider(Provider> hintProvider) { + public void addHintProvider(Supplier> hintProvider) { this.hintProvider = hintProvider; } @@ -181,7 +180,7 @@ public YValueHint[] getHintValues() { if (providerHints == null || providerHints.isEmpty()) { return hints.toArray(new YValueHint[hints.size()]); } else { - // Only merge if there are provider hints to merge + // Only merge if there are Supplier hints to merge Set mergedHints = new LinkedHashSet<>(); // Add type hints first @@ -189,7 +188,7 @@ public YValueHint[] getHintValues() { mergedHints.add(val); } - // merge the provider hints + // merge the Supplier hints for (YValueHint val : providerHints) { mergedHints.add(val); } @@ -226,7 +225,7 @@ public void addProperty(YTypedProperty p) { propertyList.add(p); } - public void addProperty(String name, YType type, Provider description) { + public void addProperty(String name, YType type, Supplier description) { YTypedPropertyImpl prop; addProperty(prop = new YTypedPropertyImpl(name, type)); prop.setDescriptionProvider(description); @@ -413,7 +412,7 @@ public static class YTypedPropertyImpl implements YTypedProperty { final private String name; final private YType type; - private Provider descriptionProvider = DescriptionProviders.NO_DESCRIPTION; + private Supplier descriptionProvider = DescriptionProviders.NO_DESCRIPTION; private boolean isDeprecated; private String deprecationMessage; @@ -442,7 +441,7 @@ public HtmlSnippet getDescription() { return descriptionProvider.get(); } - public void setDescriptionProvider(Provider descriptionProvider) { + public void setDescriptionProvider(Supplier descriptionProvider) { this.descriptionProvider = descriptionProvider; } diff --git a/headless-services/commons/commons-util/pom.xml b/headless-services/commons/commons-util/pom.xml index 70916de9d8..a2ca078cf1 100644 --- a/headless-services/commons/commons-util/pom.xml +++ b/headless-services/commons/commons-util/pom.xml @@ -40,11 +40,6 @@ guava ${guava-version} - - javax.inject - javax.inject - 1 - io.projectreactor reactor-core diff --git a/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/EnumValueParser.java b/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/EnumValueParser.java index e6a6157f8f..d8ba8c984c 100644 --- a/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/EnumValueParser.java +++ b/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/EnumValueParser.java @@ -13,8 +13,7 @@ import java.util.Collection; import java.util.TreeSet; import java.util.concurrent.Callable; - -import javax.inject.Provider; +import java.util.function.Supplier; import com.google.common.collect.ImmutableSet; @@ -27,7 +26,7 @@ public class EnumValueParser implements ValueParser { private String typeName; - private Provider> values; + private Supplier> values; private final boolean longRunning; @@ -39,19 +38,19 @@ public EnumValueParser(String typeName, Collection values) { this(typeName, false /* not long running by default */, provider(values)); } - private static Provider> provider(Collection values) { + private static Supplier> provider(Collection values) { return () -> PartialCollection.compute(() -> values); } - private static Provider> provider(Callable> values) { + private static Supplier> supplier(Callable> values) { return () -> PartialCollection.compute(() -> values.call()); } public EnumValueParser(String typeName, boolean longRunning, Callable> values) { - this(typeName, longRunning, provider(values)); + this(typeName, longRunning, supplier(values)); } - public EnumValueParser(String typeName, boolean longRunning, Provider> values) { + public EnumValueParser(String typeName, boolean longRunning, Supplier> values) { this.typeName = typeName; this.values = values; this.longRunning = longRunning; diff --git a/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/LazyProvider.java b/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/LazyProvider.java index 105f24c6da..8f7514b138 100644 --- a/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/LazyProvider.java +++ b/headless-services/commons/commons-util/src/main/java/org/springframework/ide/vscode/commons/util/LazyProvider.java @@ -11,15 +11,15 @@ package org.springframework.ide.vscode.commons.util; -import javax.inject.Provider; +import java.util.function.Supplier; /** - * An abstract class implementing {@link Provider}. The provided value + * An abstract class implementing {@link Supplier}. The provided value * is computed on demand and cached once computed. *

* Subclass must implement the compute method. */ -public abstract class LazyProvider implements Provider { +public abstract class LazyProvider implements Supplier { private boolean computed = false; private T cached = null; diff --git a/headless-services/commons/commons-yaml/pom.xml b/headless-services/commons/commons-yaml/pom.xml index 2f631ae8b6..21bda9b0e4 100644 --- a/headless-services/commons/commons-yaml/pom.xml +++ b/headless-services/commons/commons-yaml/pom.xml @@ -28,11 +28,6 @@ commons-language-server ${project.version} - - javax.inject - javax.inject - 1 - com.google.guava guava diff --git a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/types/TypeUtil.java b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/types/TypeUtil.java index 6ed663ca9c..354a13888e 100644 --- a/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/types/TypeUtil.java +++ b/headless-services/spring-boot-language-server/src/main/java/org/springframework/ide/vscode/boot/metadata/types/TypeUtil.java @@ -30,11 +30,10 @@ import java.util.Map.Entry; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; import java.util.stream.Collectors; import java.util.stream.Stream; -import javax.inject.Provider; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.convert.DurationStyle; @@ -810,21 +809,21 @@ private Optional findConstructorBinding(IType type) { /** * Registers a strategy for providing value hints with a given typeName. */ - public static void valueHints(String typeName, ValueProviderStrategy provider) { + public static void valueHints(String typeName, ValueProviderStrategy Supplier) { Assert.isLegal(!VALUE_HINTERS.containsKey(typeName)); //Only one value hinter per type is supported at the moment ATOMIC_TYPES.add(typeName); //valueHints typically implies that the type should be treated as atomic as well. ASSIGNABLE_TYPES.add(typeName); //valueHints typically implies that the type should be treated as atomic as well. - VALUE_HINTERS.put(typeName, provider); + VALUE_HINTERS.put(typeName, Supplier); } /** * Registers a strategy for providing value hints with a given typeName. */ - public static void valueHints(String typeName, Provider provider) { + public static void valueHints(String typeName, Supplier Supplier) { valueHints(typeName, new ValueProviderStrategy() { @Override public Flux getValues(IJavaProject javaProject, String query) { - String[] values = provider.get(); + String[] values = Supplier.get(); if (ArrayUtils.hasElements(values)) { return Flux.fromArray(values) .map(StsValueHint::create);