From 1e400e6999e6ab5a5bda9d312506e6f989c7d873 Mon Sep 17 00:00:00 2001 From: Carsten Hammer Date: Sun, 29 Sep 2024 11:28:20 +0200 Subject: [PATCH 1/6] fix deprecations --- .../manipulation/JavaManipulationPlugin.java | 23 ++++++++----- .../eclipse/jdt/internal/ui/JavaPlugin.java | 32 +++++++++++++------ 2 files changed, 37 insertions(+), 18 deletions(-) diff --git a/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java b/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java index 562f06e2ae5..e723ec73fbb 100644 --- a/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java +++ b/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java @@ -13,10 +13,11 @@ *******************************************************************************/ package org.eclipse.jdt.internal.core.manipulation; +import java.util.ArrayList; +import java.util.List; + import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceReference; -import org.osgi.service.packageadmin.PackageAdmin; import org.eclipse.osgi.service.debug.DebugOptions; import org.eclipse.osgi.service.debug.DebugOptionsListener; @@ -173,12 +174,18 @@ public Bundle[] getBundles(String bundleName, String version) { if (bundles != null) return bundles; - // Accessing unresolved bundle - ServiceReference serviceRef= fBundleContext.getServiceReference(PackageAdmin.class); - PackageAdmin admin= fBundleContext.getService(serviceRef); - bundles= admin.getBundles(bundleName, version); - if (bundles != null && bundles.length > 0) - return bundles; + bundles = fBundleContext.getBundles(); + List matchingBundles = new ArrayList<>(); + for (Bundle bundle : bundles) { + if (bundle.getSymbolicName().equals(bundleName)) { + if (version == null || bundle.getVersion().toString().equals(version)) { + matchingBundles.add(bundle); + } + } + } + if (!matchingBundles.isEmpty()) { + return (Bundle[]) matchingBundles.toArray(); + } return null; } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java index 66fe74c049b..459e0fa7648 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java @@ -14,21 +14,21 @@ package org.eclipse.jdt.internal.ui; import java.io.IOException; +import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.Hashtable; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.LinkedHashSet; +import java.util.List; import java.util.Set; import java.util.StringTokenizer; import java.util.stream.Collectors; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceReference; import org.osgi.framework.ServiceRegistration; -import org.osgi.service.packageadmin.PackageAdmin; import org.osgi.service.prefs.BackingStoreException; import org.eclipse.osgi.service.debug.DebugOptions; @@ -655,11 +655,17 @@ public JavaTextTools getJavaTextTools() { * * @return the Java Core plug-in preferences * @since 3.7 + * @deprecated use getJavaCorePluginPreferencesNew */ public static org.eclipse.core.runtime.Preferences getJavaCorePluginPreferences() { return JavaCore.getPlugin().getPluginPreferences(); } + public static org.osgi.service.prefs.Preferences getJavaCorePluginPreferencesNew() { + return InstanceScope.INSTANCE.getNode(JavaCore.PLUGIN_ID); + } + + /** * Returns the AST provider. * @@ -941,11 +947,11 @@ public IPreferenceStore getCombinedPreferenceStore() { return fCombinedPreferenceStore; } } - + // Block below may init other bundles and shouldn't be executed with lock held IPreferenceStore generalTextStore= EditorsUI.getPreferenceStore(); ChainedPreferenceStore store = new ChainedPreferenceStore(new IPreferenceStore[] { getPreferenceStore(), new PreferencesAdapter(getJavaCorePluginPreferences()), generalTextStore }); - + synchronized (this) { if (fCombinedPreferenceStore == null) { fCombinedPreferenceStore = store; @@ -1130,12 +1136,18 @@ public Bundle[] getBundles(String bundleName, String version) { if (bundles != null) return bundles; - // Accessing unresolved bundle - ServiceReference serviceRef= fBundleContext.getServiceReference(PackageAdmin.class); - PackageAdmin admin= fBundleContext.getService(serviceRef); - bundles= admin.getBundles(bundleName, version); - if (bundles != null && bundles.length > 0) - return bundles; + bundles = fBundleContext.getBundles(); + List matchingBundles = new ArrayList<>(); + for (Bundle bundle : bundles) { + if (bundle.getSymbolicName().equals(bundleName)) { + if (version == null || bundle.getVersion().toString().equals(version)) { + matchingBundles.add(bundle); + } + } + } + if (!matchingBundles.isEmpty()) { + return (Bundle[]) matchingBundles.toArray(); + } return null; } From 342c5980a0429d2dc035890d7007606904ed9d75 Mon Sep 17 00:00:00 2001 From: Carsten Hammer Date: Sun, 29 Sep 2024 12:21:37 +0200 Subject: [PATCH 2/6] fix more deprecations --- .../corext/fix/ControlStatementsFix.java | 18 +++++++++--------- .../ui/javaeditor/JavaEditorBreadcrumb.java | 9 +++++++-- .../jdt/internal/ui/text/JavaCodeReader.java | 4 ++-- .../proposals/FixCorrectionProposal.java | 2 +- .../hover/SourceViewerInformationControl.java | 4 ++-- .../FilteredElementTreeSelectionDialog.java | 2 +- .../buildpaths/ProjectsWorkbookPage.java | 3 ++- .../jdt/ui/actions/OpenProjectAction.java | 3 ++- 8 files changed, 26 insertions(+), 19 deletions(-) diff --git a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/ControlStatementsFix.java b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/ControlStatementsFix.java index c655e447d40..ada1a08ed4f 100644 --- a/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/ControlStatementsFix.java +++ b/org.eclipse.jdt.ui/core extension/org/eclipse/jdt/internal/corext/fix/ControlStatementsFix.java @@ -169,7 +169,7 @@ private IfStatement findStart(IfStatement item) { } } - private static final class AddBlockOperation extends CompilationUnitRewriteOperation { + private static final class AddBlockOperation extends CompilationUnitRewriteOperationWithSourceRange { private final ChildPropertyDescriptor fBodyProperty; private final Statement fBody; @@ -266,7 +266,7 @@ public void rewriteASTInternal(CompilationUnitRewrite cuRewrite, LinkedProposalM } - static class RemoveBlockOperation extends CompilationUnitRewriteOperation { + static class RemoveBlockOperation extends CompilationUnitRewriteOperationWithSourceRange { private final Statement fStatement; private final ChildPropertyDescriptor fChild; @@ -437,7 +437,7 @@ public static ControlStatementsFix[] createRemoveBlockFix(CompilationUnit compil RemoveBlockOperation op= new RemoveBlockOperation(item, IfStatement.THEN_STATEMENT_PROPERTY); removeAllList.add(op); if (item == statement) - result.add(new ControlStatementsFix(FixMessages.ControlStatementsFix_removeIfBlock_proposalDescription, compilationUnit, new CompilationUnitRewriteOperation[] {op})); + result.add(new ControlStatementsFix(FixMessages.ControlStatementsFix_removeIfBlock_proposalDescription, compilationUnit, new CompilationUnitRewriteOperationWithSourceRange[] {op})); } } @@ -445,11 +445,11 @@ public static ControlStatementsFix[] createRemoveBlockFix(CompilationUnit compil RemoveBlockOperation op= new RemoveBlockOperation(item, IfStatement.ELSE_STATEMENT_PROPERTY); removeAllList.add(op); if (item == statement) - result.add(new ControlStatementsFix(FixMessages.ControlStatementsFix_removeElseBlock_proposalDescription, compilationUnit, new CompilationUnitRewriteOperation[] {op})); + result.add(new ControlStatementsFix(FixMessages.ControlStatementsFix_removeElseBlock_proposalDescription, compilationUnit, new CompilationUnitRewriteOperationWithSourceRange[] {op})); } if (removeAllList.size() > 1) { - CompilationUnitRewriteOperation[] allConvert= removeAllList.toArray(new CompilationUnitRewriteOperation[removeAllList.size()]); + CompilationUnitRewriteOperationWithSourceRange[] allConvert= removeAllList.toArray(new CompilationUnitRewriteOperationWithSourceRange[removeAllList.size()]); result.add(new ControlStatementsFix(FixMessages.ControlStatementsFix_removeIfElseBlock_proposalDescription, compilationUnit, allConvert)); } @@ -457,22 +457,22 @@ public static ControlStatementsFix[] createRemoveBlockFix(CompilationUnit compil } else if (statement instanceof WhileStatement) { if (RemoveBlockOperation.satisfiesQuickAssistPrecondition(statement, WhileStatement.BODY_PROPERTY)) { RemoveBlockOperation op= new RemoveBlockOperation(statement, WhileStatement.BODY_PROPERTY); - return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperation[] {op})}; + return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperationWithSourceRange[] {op})}; } } else if (statement instanceof ForStatement) { if (RemoveBlockOperation.satisfiesQuickAssistPrecondition(statement, ForStatement.BODY_PROPERTY)) { RemoveBlockOperation op= new RemoveBlockOperation(statement, ForStatement.BODY_PROPERTY); - return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperation[] {op})}; + return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperationWithSourceRange[] {op})}; } } else if (statement instanceof EnhancedForStatement) { if (RemoveBlockOperation.satisfiesQuickAssistPrecondition(statement, EnhancedForStatement.BODY_PROPERTY)) { RemoveBlockOperation op= new RemoveBlockOperation(statement, EnhancedForStatement.BODY_PROPERTY); - return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperation[] {op})}; + return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperationWithSourceRange[] {op})}; } } else if (statement instanceof DoStatement) { if (RemoveBlockOperation.satisfiesQuickAssistPrecondition(statement, DoStatement.BODY_PROPERTY)) { RemoveBlockOperation op= new RemoveBlockOperation(statement, DoStatement.BODY_PROPERTY); - return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperation[] {op})}; + return new ControlStatementsFix[] {new ControlStatementsFix(FixMessages.ControlStatementsFix_removeBrackets_proposalDescription, compilationUnit, new CompilationUnitRewriteOperationWithSourceRange[] {op})}; } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java index 568742aa8a9..96198dcf506 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java @@ -47,6 +47,7 @@ import org.eclipse.ui.PartInitException; import org.eclipse.ui.actions.ActionContext; import org.eclipse.ui.actions.ActionGroup; +import org.eclipse.ui.contexts.IContextService; import org.eclipse.ui.views.WorkbenchViewerSetup; import org.eclipse.jdt.core.ElementChangedEvent; @@ -568,7 +569,9 @@ public JavaEditorBreadcrumb(JavaEditor javaEditor) { protected void activateBreadcrumb() { fEditorSelection= getJavaEditor().getSelectionProvider().getSelection(); IEditorSite editorSite= getJavaEditor().getEditorSite(); - editorSite.getKeyBindingService().setScopes(new String[] { "org.eclipse.jdt.ui.breadcrumbEditorScope" }); //$NON-NLS-1$ + IContextService contextService = editorSite.getService(IContextService.class); + contextService.activateContext("org.eclipse.jdt.ui.breadcrumbEditorScope"); //$NON-NLS-1$ +// editorSite.getKeyBindingService().setScopes(new String[] { "org.eclipse.jdt.ui.breadcrumbEditorScope" }); //$NON-NLS-1$ getJavaEditor().setActionsActivated(false); fBreadcrumbActionGroup.fillActionBars(editorSite.getActionBars()); } @@ -579,7 +582,9 @@ protected void activateBreadcrumb() { @Override protected void deactivateBreadcrumb() { IEditorSite editorSite= getJavaEditor().getEditorSite(); - editorSite.getKeyBindingService().setScopes(new String[] { "org.eclipse.jdt.ui.javaEditorScope" }); //$NON-NLS-1$ + IContextService contextService = editorSite.getService(IContextService.class); + contextService.activateContext("org.eclipse.jdt.ui.javaEditorScope"); //$NON-NLS-1$ +// editorSite.getKeyBindingService().setScopes(new String[] { "org.eclipse.jdt.ui.javaEditorScope" }); //$NON-NLS-1$ getJavaEditor().getActionGroup().fillActionBars(editorSite.getActionBars()); getJavaEditor().setActionsActivated(true); fEditorSelection= null; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaCodeReader.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaCodeReader.java index efcef27bfa2..af2c61abeb2 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaCodeReader.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaCodeReader.java @@ -16,7 +16,7 @@ import java.io.IOException; -import org.eclipse.jface.internal.text.html.SingleCharReader; +import org.eclipse.text.readers.SingleCharacterReader; import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.IDocument; @@ -26,7 +26,7 @@ * Reads from a document either forwards or backwards. May be configured to * skip comments and strings. */ -public class JavaCodeReader extends SingleCharReader { +public class JavaCodeReader extends SingleCharacterReader { /** The EOF character */ public static final int EOF= -1; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/proposals/FixCorrectionProposal.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/proposals/FixCorrectionProposal.java index f725c6995fe..51a614034b3 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/proposals/FixCorrectionProposal.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/proposals/FixCorrectionProposal.java @@ -140,7 +140,7 @@ public Image getImage() { flag= JavaElementImageDescriptor.INFO; } - ImageDescriptor composite= new JavaElementImageDescriptor(image, flag, new Point(image.getImageData().width, image.getImageData().height)); + ImageDescriptor composite= new JavaElementImageDescriptor(image, flag, new Point(image.getImageData(100).width, image.getImageData(100).height)); return composite.createImage(); } else { return super.getImage(); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/SourceViewerInformationControl.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/SourceViewerInformationControl.java index 3b29385ae14..b4d93cab9b8 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/SourceViewerInformationControl.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/java/hover/SourceViewerInformationControl.java @@ -703,11 +703,11 @@ public boolean isVisible() { public Point computeSizeConstraints(int widthInChars, int heightInChars) { GC gc= new GC(fText); gc.setFont(fTextFont); - int width= gc.getFontMetrics().getAverageCharWidth(); + double width= gc.getFontMetrics().getAverageCharacterWidth(); int height= fText.getLineHeight(); //https://bugs.eclipse.org/bugs/show_bug.cgi?id=377109 gc.dispose(); - return new Point(widthInChars * width, heightInChars * height); + return new Point((int) (widthInChars * width), heightInChars * height); } protected void setContentFrom(ISourceViewer other) { diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/FilteredElementTreeSelectionDialog.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/FilteredElementTreeSelectionDialog.java index 06dba204a37..7f678ad0537 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/FilteredElementTreeSelectionDialog.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/viewsupport/FilteredElementTreeSelectionDialog.java @@ -125,7 +125,7 @@ private static class FilteredTreeWithFilter extends FilteredTree { private String previousFilterText; public FilteredTreeWithFilter(Composite parent, int treeStyle, String initialFilter, boolean deepFiltering) { - super(parent, treeStyle, new MultiplePatternFilter(deepFiltering), true); + super(parent, treeStyle, new MultiplePatternFilter(deepFiltering), true, true); if (initialFilter != null) { setFilterText(initialFilter); textChanged(); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java index 2c3c3387ca6..bf079b738e0 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java @@ -649,7 +649,8 @@ private CPListElement[] addProjectDialog() { Object[] selectArr= getNotYetRequiredProjects(); new JavaElementComparator().sort(null, selectArr); - ListSelectionDialog dialog= new ListSelectionDialog(getShell(), Arrays.asList(selectArr), ArrayContentProvider.getInstance(), new JavaUILabelProvider(), NewWizardMessages.ProjectsWorkbookPage_chooseProjects_message); +// ListSelectionDialog dialog= new ListSelectionDialog(getShell(), Arrays.asList(selectArr), ArrayContentProvider.getInstance(), new JavaUILabelProvider(), NewWizardMessages.ProjectsWorkbookPage_chooseProjects_message); + ListSelectionDialog dialog= ListSelectionDialog.of(Arrays.asList(selectArr)).contentProvider(ArrayContentProvider.getInstance()).labelProvider(new JavaUILabelProvider()).message(NewWizardMessages.ProjectsWorkbookPage_chooseProjects_message).create(getShell()); dialog.setTitle(NewWizardMessages.ProjectsWorkbookPage_chooseProjects_title); dialog.setHelpAvailable(false); if (dialog.open() == Window.OK) { diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java index 103ae11b1d1..785497dbde6 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java @@ -166,7 +166,8 @@ public void run(IStructuredSelection selection) { } private void internalRun(List initialSelection) { - ListSelectionDialog dialog= new ListSelectionDialog(getShell(), getClosedProjectsInWorkspace(), ArrayContentProvider.getInstance(), new JavaElementLabelProvider(), ActionMessages.OpenProjectAction_dialog_message); +// ListSelectionDialog dialog= new ListSelectionDialog(getShell(), getClosedProjectsInWorkspace(), ArrayContentProvider.getInstance(), new JavaElementLabelProvider(), ActionMessages.OpenProjectAction_dialog_message); + ListSelectionDialog dialog= ListSelectionDialog.of(getClosedProjectsInWorkspace()).contentProvider(ArrayContentProvider.getInstance()).labelProvider(new JavaElementLabelProvider()).message(ActionMessages.OpenProjectAction_dialog_message).create(getShell()); dialog.setTitle(ActionMessages.OpenProjectAction_dialog_title); if (initialSelection != null && !initialSelection.isEmpty()) { dialog.setInitialElementSelections(initialSelection); From 0d01544c339c90aa7e98c5ade44ac09318fc869b Mon Sep 17 00:00:00 2001 From: Carsten Hammer Date: Sun, 6 Oct 2024 11:03:53 +0200 Subject: [PATCH 3/6] use IEclipsePreferences --- .../ui/org/eclipse/jdt/internal/ui/JavaPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java index 459e0fa7648..df9234a7356 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java @@ -661,7 +661,7 @@ public static org.eclipse.core.runtime.Preferences getJavaCorePluginPreferences( return JavaCore.getPlugin().getPluginPreferences(); } - public static org.osgi.service.prefs.Preferences getJavaCorePluginPreferencesNew() { + public static IEclipsePreferences getJavaCorePluginPreferencesNew() { return InstanceScope.INSTANCE.getNode(JavaCore.PLUGIN_ID); } From 1ec889b357a1a067c737cf0982f89dfa388d2c9f Mon Sep 17 00:00:00 2001 From: Carsten Hammer Date: Sun, 6 Oct 2024 11:10:21 +0200 Subject: [PATCH 4/6] remove deprecated warning --- .../ui/org/eclipse/jdt/internal/ui/JavaPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java index df9234a7356..e429d37e27d 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java @@ -655,7 +655,7 @@ public JavaTextTools getJavaTextTools() { * * @return the Java Core plug-in preferences * @since 3.7 - * @deprecated use getJavaCorePluginPreferencesNew + * deprecated use getJavaCorePluginPreferencesNew */ public static org.eclipse.core.runtime.Preferences getJavaCorePluginPreferences() { return JavaCore.getPlugin().getPluginPreferences(); From b789f51042d6cf8dfc4311bff4a3a8f585274310 Mon Sep 17 00:00:00 2001 From: Carsten Hammer Date: Sun, 6 Oct 2024 11:13:25 +0200 Subject: [PATCH 5/6] remove (again) the old commented code --- .../jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java | 2 -- .../internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java | 1 - .../ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java | 1 - 3 files changed, 4 deletions(-) diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java index 96198dcf506..e5b94e9c0ce 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java @@ -571,7 +571,6 @@ protected void activateBreadcrumb() { IEditorSite editorSite= getJavaEditor().getEditorSite(); IContextService contextService = editorSite.getService(IContextService.class); contextService.activateContext("org.eclipse.jdt.ui.breadcrumbEditorScope"); //$NON-NLS-1$ -// editorSite.getKeyBindingService().setScopes(new String[] { "org.eclipse.jdt.ui.breadcrumbEditorScope" }); //$NON-NLS-1$ getJavaEditor().setActionsActivated(false); fBreadcrumbActionGroup.fillActionBars(editorSite.getActionBars()); } @@ -584,7 +583,6 @@ protected void deactivateBreadcrumb() { IEditorSite editorSite= getJavaEditor().getEditorSite(); IContextService contextService = editorSite.getService(IContextService.class); contextService.activateContext("org.eclipse.jdt.ui.javaEditorScope"); //$NON-NLS-1$ -// editorSite.getKeyBindingService().setScopes(new String[] { "org.eclipse.jdt.ui.javaEditorScope" }); //$NON-NLS-1$ getJavaEditor().getActionGroup().fillActionBars(editorSite.getActionBars()); getJavaEditor().setActionsActivated(true); fEditorSelection= null; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java index bf079b738e0..bde4d649d19 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/ProjectsWorkbookPage.java @@ -649,7 +649,6 @@ private CPListElement[] addProjectDialog() { Object[] selectArr= getNotYetRequiredProjects(); new JavaElementComparator().sort(null, selectArr); -// ListSelectionDialog dialog= new ListSelectionDialog(getShell(), Arrays.asList(selectArr), ArrayContentProvider.getInstance(), new JavaUILabelProvider(), NewWizardMessages.ProjectsWorkbookPage_chooseProjects_message); ListSelectionDialog dialog= ListSelectionDialog.of(Arrays.asList(selectArr)).contentProvider(ArrayContentProvider.getInstance()).labelProvider(new JavaUILabelProvider()).message(NewWizardMessages.ProjectsWorkbookPage_chooseProjects_message).create(getShell()); dialog.setTitle(NewWizardMessages.ProjectsWorkbookPage_chooseProjects_title); dialog.setHelpAvailable(false); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java index 785497dbde6..567409da7e3 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/OpenProjectAction.java @@ -166,7 +166,6 @@ public void run(IStructuredSelection selection) { } private void internalRun(List initialSelection) { -// ListSelectionDialog dialog= new ListSelectionDialog(getShell(), getClosedProjectsInWorkspace(), ArrayContentProvider.getInstance(), new JavaElementLabelProvider(), ActionMessages.OpenProjectAction_dialog_message); ListSelectionDialog dialog= ListSelectionDialog.of(getClosedProjectsInWorkspace()).contentProvider(ArrayContentProvider.getInstance()).labelProvider(new JavaElementLabelProvider()).message(ActionMessages.OpenProjectAction_dialog_message).create(getShell()); dialog.setTitle(ActionMessages.OpenProjectAction_dialog_title); if (initialSelection != null && !initialSelection.isEmpty()) { From 35c2cbf85e9828a24dee4e531bd168ad5df42d92 Mon Sep 17 00:00:00 2001 From: Carsten Hammer Date: Sun, 6 Oct 2024 11:16:39 +0200 Subject: [PATCH 6/6] revert changes regarding PackageAdmin as there is no official docu --- .../manipulation/JavaManipulationPlugin.java | 23 +++++++------------ .../eclipse/jdt/internal/ui/JavaPlugin.java | 22 +++++++----------- 2 files changed, 16 insertions(+), 29 deletions(-) diff --git a/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java b/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java index e723ec73fbb..562f06e2ae5 100644 --- a/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java +++ b/org.eclipse.jdt.core.manipulation/common/org/eclipse/jdt/internal/core/manipulation/JavaManipulationPlugin.java @@ -13,11 +13,10 @@ *******************************************************************************/ package org.eclipse.jdt.internal.core.manipulation; -import java.util.ArrayList; -import java.util.List; - import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; +import org.osgi.framework.ServiceReference; +import org.osgi.service.packageadmin.PackageAdmin; import org.eclipse.osgi.service.debug.DebugOptions; import org.eclipse.osgi.service.debug.DebugOptionsListener; @@ -174,18 +173,12 @@ public Bundle[] getBundles(String bundleName, String version) { if (bundles != null) return bundles; - bundles = fBundleContext.getBundles(); - List matchingBundles = new ArrayList<>(); - for (Bundle bundle : bundles) { - if (bundle.getSymbolicName().equals(bundleName)) { - if (version == null || bundle.getVersion().toString().equals(version)) { - matchingBundles.add(bundle); - } - } - } - if (!matchingBundles.isEmpty()) { - return (Bundle[]) matchingBundles.toArray(); - } + // Accessing unresolved bundle + ServiceReference serviceRef= fBundleContext.getServiceReference(PackageAdmin.class); + PackageAdmin admin= fBundleContext.getService(serviceRef); + bundles= admin.getBundles(bundleName, version); + if (bundles != null && bundles.length > 0) + return bundles; return null; } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java index e429d37e27d..3507fea5aaa 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/JavaPlugin.java @@ -14,21 +14,21 @@ package org.eclipse.jdt.internal.ui; import java.io.IOException; -import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.Hashtable; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.LinkedHashSet; -import java.util.List; import java.util.Set; import java.util.StringTokenizer; import java.util.stream.Collectors; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; +import org.osgi.framework.ServiceReference; import org.osgi.framework.ServiceRegistration; +import org.osgi.service.packageadmin.PackageAdmin; import org.osgi.service.prefs.BackingStoreException; import org.eclipse.osgi.service.debug.DebugOptions; @@ -1136,18 +1136,12 @@ public Bundle[] getBundles(String bundleName, String version) { if (bundles != null) return bundles; - bundles = fBundleContext.getBundles(); - List matchingBundles = new ArrayList<>(); - for (Bundle bundle : bundles) { - if (bundle.getSymbolicName().equals(bundleName)) { - if (version == null || bundle.getVersion().toString().equals(version)) { - matchingBundles.add(bundle); - } - } - } - if (!matchingBundles.isEmpty()) { - return (Bundle[]) matchingBundles.toArray(); - } + // Accessing unresolved bundle + ServiceReference serviceRef= fBundleContext.getServiceReference(PackageAdmin.class); + PackageAdmin admin= fBundleContext.getService(serviceRef); + bundles= admin.getBundles(bundleName, version); + if (bundles != null && bundles.length > 0) + return bundles; return null; }