Skip to content

Commit 94786bb

Browse files
committed
Consistently use EclipseUtils.getAdapter()
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
1 parent 2311f3a commit 94786bb

File tree

8 files changed

+27
-53
lines changed

8 files changed

+27
-53
lines changed

AnyEditTools/src/de/loskutov/anyedit/actions/AbstractOpenAction.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424
import de.loskutov.anyedit.ui.editor.AbstractEditor;
2525
import de.loskutov.anyedit.ui.editor.EditorPropertyTester;
26+
import de.loskutov.anyedit.util.EclipseUtils;
2627

2728
/**
2829
* @author Andrey
@@ -53,7 +54,7 @@ public void run(IAction action) {
5354
doPageBookViewAction((PageBookView) vp);
5455
return;
5556
}
56-
TextViewer viewer = (TextViewer)vp.getAdapter(TextViewer.class);
57+
TextViewer viewer = EclipseUtils.getAdapter(vp, TextViewer.class);
5758
if(viewer != null) {
5859
runWithViewer(viewer);
5960
}

AnyEditTools/src/de/loskutov/anyedit/actions/ConvertAllInFolderAction.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
import org.eclipse.core.resources.IFile;
1818
import org.eclipse.core.resources.IResource;
1919
import org.eclipse.core.runtime.CoreException;
20-
import org.eclipse.core.runtime.IAdaptable;
2120
import org.eclipse.core.runtime.IProgressMonitor;
21+
import org.eclipse.jdt.annotation.Nullable;
2222
import org.eclipse.jface.action.IAction;
2323
import org.eclipse.jface.dialogs.IDialogConstants;
2424
import org.eclipse.jface.dialogs.MessageDialogWithToggle;
@@ -31,6 +31,7 @@
3131
import de.loskutov.anyedit.AnyEditToolsPlugin;
3232
import de.loskutov.anyedit.IAnyEditConstants;
3333
import de.loskutov.anyedit.Messages;
34+
import de.loskutov.anyedit.util.EclipseUtils;
3435

3536
public class ConvertAllInFolderAction extends ConvertAllAction {
3637

@@ -60,16 +61,14 @@ protected boolean getEnablement() {
6061
return !selectedResources.isEmpty();
6162
}
6263

64+
@Nullable
6365
protected IResource getResource(Object selection) {
6466
if(selection instanceof IContainer || selection instanceof IFile) {
6567
return (IResource)selection;
6668
}
67-
if(selection instanceof IAdaptable) {
68-
IAdaptable adaptable= (IAdaptable) selection;
69-
Object adapter = adaptable.getAdapter(IResource.class);
70-
if(adapter instanceof IContainer || adapter instanceof IFile){
71-
return (IResource) adapter;
72-
}
69+
IResource resource = EclipseUtils.getResource(selection);
70+
if(resource instanceof IContainer || resource instanceof IFile){
71+
return resource;
7372
}
7473
return null;
7574
}

AnyEditTools/src/de/loskutov/anyedit/actions/CountAllInFolderAction.java

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import org.eclipse.core.resources.IResourceVisitor;
2121
import org.eclipse.core.resources.ResourcesPlugin;
2222
import org.eclipse.core.runtime.CoreException;
23-
import org.eclipse.core.runtime.IAdaptable;
2423
import org.eclipse.core.runtime.IProgressMonitor;
2524
import org.eclipse.core.runtime.IStatus;
2625
import org.eclipse.core.runtime.Status;
@@ -32,6 +31,7 @@
3231

3332
import de.loskutov.anyedit.AnyEditToolsPlugin;
3433
import de.loskutov.anyedit.Messages;
34+
import de.loskutov.anyedit.util.EclipseUtils;
3535

3636
public class CountAllInFolderAction extends ConvertAllInFolderAction implements IHandler {
3737

@@ -40,16 +40,13 @@ protected IResource getResource(Object selection) {
4040
if(selection instanceof IContainer) {
4141
return (IResource)selection;
4242
}
43-
if(selection instanceof IAdaptable) {
44-
IAdaptable adaptable= (IAdaptable) selection;
45-
Object adapter = adaptable.getAdapter(IResource.class);
43+
if(selection != null) {
44+
IResource adapter = EclipseUtils.getResource(selection);
4645
if(adapter instanceof IContainer){
47-
return (IResource) adapter;
48-
}
49-
adapter = adaptable.getAdapter(IProject.class);
50-
if(adapter instanceof IProject){
51-
return (IResource) adapter;
46+
return adapter;
5247
}
48+
adapter = EclipseUtils.getAdapter(selection, IProject.class);
49+
return adapter;
5350
}
5451
return null;
5552
}

AnyEditTools/src/de/loskutov/anyedit/compare/AnyeditCompareInput.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import org.eclipse.ui.progress.UIJob;
3333

3434
import de.loskutov.anyedit.AnyEditToolsPlugin;
35+
import de.loskutov.anyedit.util.EclipseUtils;
3536

3637
/**
3738
* @author Andrey
@@ -82,11 +83,11 @@ public AnyeditCompareInput(StreamContent left, StreamContent right) {
8283
@Override
8384
public Object getAdapter(Class adapter) {
8485
if(IFile.class == adapter) {
85-
Object object = left.getAdapter(adapter);
86+
Object object = EclipseUtils.getIFile(left, false);
8687
if(object != null) {
8788
return object;
8889
}
89-
return right.getAdapter(adapter);
90+
return EclipseUtils.getIFile(right, false);
9091
}
9192
return super.getAdapter(adapter);
9293
}

AnyEditTools/src/de/loskutov/anyedit/jdt/JdtUtils.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333

3434
import de.loskutov.anyedit.AnyEditToolsPlugin;
3535
import de.loskutov.anyedit.IAnyEditConstants;
36+
import de.loskutov.anyedit.util.EclipseUtils;
3637

3738
/**
3839
* @author Andrey
@@ -191,7 +192,7 @@ private static int getJavaProjectTabWidth(int tabWidth, IProject project) {
191192
*/
192193
public static IProject getProjectForClass(IEditorInput currentInput) {
193194
IProject project = null;
194-
Object adapter = currentInput.getAdapter(IClassFile.class);
195+
Object adapter = EclipseUtils.getAdapter(currentInput, IClassFile.class);
195196
if (adapter instanceof IClassFile) {
196197
IClassFile classFile = (IClassFile) adapter;
197198
IJavaProject javaProject = classFile.getJavaProject();

AnyEditTools/src/de/loskutov/anyedit/ui/editor/EditorPropertyTester.java

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,11 @@
1212

1313
import org.eclipse.core.expressions.PropertyTester;
1414
import org.eclipse.jface.text.ITextViewer;
15-
import org.eclipse.jface.text.TextViewer;
16-
import org.eclipse.jface.viewers.ISelectionProvider;
1715
import org.eclipse.ui.IEditorPart;
18-
import org.eclipse.ui.IViewPart;
1916
import org.eclipse.ui.IWorkbenchPart;
2017
import org.eclipse.ui.console.TextConsolePage;
2118
import org.eclipse.ui.part.IPage;
2219
import org.eclipse.ui.part.MessagePage;
23-
import org.eclipse.ui.part.PageBookView;
2420

2521
import de.loskutov.anyedit.AnyEditToolsPlugin;
2622
import de.loskutov.anyedit.IAnyEditConstants;
@@ -65,26 +61,9 @@ private static boolean hasModifiableDocument(IWorkbenchPart part, Object[] args,
6561

6662
private static boolean hasDocument(IWorkbenchPart part, Object[] args, Object expectedValue) {
6763
if(part instanceof IEditorPart){
68-
AbstractEditor ae = new AbstractEditor((IEditorPart) part);
64+
AbstractEditor ae = new AbstractEditor(part);
6965
return ae.getDocument() != null;
7066
}
71-
if(!(part instanceof IViewPart)){
72-
return false;
73-
}
74-
IViewPart vp =(IViewPart) part;
75-
if (vp instanceof PageBookView) {
76-
IPage page = ((PageBookView) vp).getCurrentPage();
77-
ITextViewer viewer = getViewer(page);
78-
return viewer != null && viewer.getDocument() != null;
79-
}
80-
TextViewer viewer = (TextViewer) vp.getAdapter(TextViewer.class);
81-
if(viewer != null){
82-
return viewer.getDocument() != null;
83-
}
84-
ISelectionProvider sp = vp.getViewSite().getSelectionProvider();
85-
if(sp instanceof ITextViewer){
86-
return ((ITextViewer) sp).getDocument() != null;
87-
}
8867
return false;
8968
}
9069

AnyEditTools/src/de/loskutov/anyedit/ui/wizards/ImportPage.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,11 @@ private void importSelectedSets() {
212212
}
213213
}
214214

215-
private void removeNonExistingChildren(IWorkingSet workingSet) {
215+
private static void removeNonExistingChildren(IWorkingSet workingSet) {
216216
IAdaptable[] elements = workingSet.getElements();
217-
List<IResource> existing = new ArrayList<IResource>();
217+
List<IResource> existing = new ArrayList<>();
218218
for (int i = 0; i < elements.length; i++) {
219-
IResource resource = (IResource) elements[i].getAdapter(IResource.class);
219+
IResource resource = EclipseUtils.getResource(elements[i]);
220220
if (resource != null && resource.exists()) {
221221
existing.add(resource);
222222
}

AnyEditTools/src/de/loskutov/anyedit/util/EclipseUtils.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -115,16 +115,12 @@ public static IProject getProject(IEditorInput currentInput) {
115115
if (currentInput == null) {
116116
return null;
117117
}
118-
IFile file = (IFile) currentInput.getAdapter(IFile.class);
119-
if (file != null) {
120-
return file.getProject();
118+
IResource resource = getResource(currentInput);
119+
if (resource != null) {
120+
return resource.getProject();
121121
}
122122
IProject project = null;
123-
if (currentInput instanceof IFileEditorInput) {
124-
IFileEditorInput fileInput = (IFileEditorInput) currentInput;
125-
IFile currentFile = fileInput.getFile();
126-
project = currentFile.getProject();
127-
} else if (hasJDT && isJavaInput(currentInput)) {
123+
if (hasJDT && isJavaInput(currentInput)) {
128124
// it must be a class because java source *files* are IFileEditorInput's
129125
project = JdtUtils.getProjectForClass(currentInput);
130126
}

0 commit comments

Comments
 (0)