diff --git a/bundles/org.eclipse.remote.core/src/org/eclipse/remote/internal/core/RemoteResourceAdapterFactory.java b/bundles/org.eclipse.remote.core/src/org/eclipse/remote/internal/core/RemoteResourceAdapterFactory.java index 0008d38a9a7..f2d0a874d17 100644 --- a/bundles/org.eclipse.remote.core/src/org/eclipse/remote/internal/core/RemoteResourceAdapterFactory.java +++ b/bundles/org.eclipse.remote.core/src/org/eclipse/remote/internal/core/RemoteResourceAdapterFactory.java @@ -32,8 +32,7 @@ public class RemoteResourceAdapterFactory implements IAdapterFactory { private Map fResourceFactory; - @SuppressWarnings("rawtypes") - public Object getAdapter(Object adaptableObject, Class adapterType) { + public T getAdapter(Object adaptableObject, Class adapterType) { if (adapterType == IRemoteResource.class) { if (adaptableObject instanceof IResource) { loadExtensions(); @@ -43,21 +42,20 @@ public class RemoteResourceAdapterFactory implements IAdapterFactory { if (resource.getProject().hasNature(nature)) { RemoteResourceFactory factory = fResourceFactory.get(nature); if (factory != null) { - return factory.getRemoteResource(resource); + return adapterType.cast(factory.getRemoteResource(resource)); } } } catch (CoreException e) { // Treat as failure } } - return new LocalResource(resource); + return adapterType.cast(new LocalResource(resource)); } } return null; } - @SuppressWarnings("rawtypes") - public Class[] getAdapterList() { + public Class[] getAdapterList() { return new Class[] { IRemoteResource.class }; } diff --git a/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/DeferredFileStore.java b/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/DeferredFileStore.java index 9a42d13c69c..cb1ace36573 100644 --- a/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/DeferredFileStore.java +++ b/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/DeferredFileStore.java @@ -107,11 +107,10 @@ public class DeferredFileStore implements IDeferredWorkbenchAdapter, IAdaptable } } - @SuppressWarnings("rawtypes") @Override - public Object getAdapter(Class adapter) { + public T getAdapter(Class adapter) { if (IWorkbenchAdapter.class.equals(adapter)) { - return this; + return adapter.cast(this); } return null; } @@ -146,14 +145,13 @@ public class DeferredFileStore implements IDeferredWorkbenchAdapter, IAdaptable * type to adapt to * @return a representation of sourceObject that is assignable to the adapter type, or null if no such representation exists */ - @SuppressWarnings("rawtypes") - protected Object getAdapter(Object sourceObject, Class adapterType) { + protected T getAdapter(Object sourceObject, Class adapterType) { Assert.isNotNull(adapterType); if (sourceObject == null) { return null; } if (adapterType.isInstance(sourceObject)) { - return sourceObject; + return adapterType.cast(sourceObject); } if (sourceObject instanceof IAdaptable) { @@ -163,14 +161,14 @@ public class DeferredFileStore implements IDeferredWorkbenchAdapter, IAdaptable if (result != null) { // Sanity-check Assert.isTrue(adapterType.isInstance(result)); - return result; + return adapterType.cast(result); } } if (!(sourceObject instanceof PlatformObject)) { Object result = Platform.getAdapterManager().getAdapter(sourceObject, adapterType); if (result != null) { - return result; + return adapterType.cast(result); } } diff --git a/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/PendingUpdateAdapter.java b/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/PendingUpdateAdapter.java index daa192fb88a..99a3a8b6e91 100644 --- a/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/PendingUpdateAdapter.java +++ b/bundles/org.eclipse.remote.ui/src/org/eclipse/remote/internal/ui/PendingUpdateAdapter.java @@ -49,55 +49,29 @@ public class PendingUpdateAdapter implements IWorkbenchAdapter, IAdaptable { // No initial behavior } - /* - * (non-Javadoc) - * - * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class) - */ @Override - @SuppressWarnings("rawtypes") - public Object getAdapter(Class adapter) { + public T getAdapter(Class adapter) { if (adapter == IWorkbenchAdapter.class) { - return this; + return adapter.cast(this); } return null; } - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object) - */ @Override public Object[] getChildren(Object o) { return new Object[0]; } - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object) - */ @Override public ImageDescriptor getImageDescriptor(Object object) { return null; } - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object) - */ @Override public String getLabel(Object o) { return Messages.PendingUpdateAdapter_Pending; } - /* - * (non-Javadoc) - * - * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object) - */ @Override public Object getParent(Object o) { return null;