mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-21 21:52:10 +02:00
Generify some getAdapter implementations.
Change-Id: I2cd3dad7821e3c6ae3f0371edda5e511beff4014 Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
This commit is contained in:
parent
ae8d8b16b8
commit
61d10d11ef
17 changed files with 63 additions and 61 deletions
|
@ -86,11 +86,10 @@ public class Archive extends Openable implements IArchive {
|
|||
return true;
|
||||
}
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (IBinaryArchive.class.equals(adapter)) {
|
||||
return getBinaryArchive();
|
||||
return adapter.cast(getBinaryArchive());
|
||||
}
|
||||
return super.getAdapter(adapter);
|
||||
}
|
||||
|
|
|
@ -212,11 +212,10 @@ public class Binary extends Openable implements IBinary {
|
|||
return binaryObject;
|
||||
}
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (IBinaryObject.class.equals(adapter)) {
|
||||
return getBinaryObject();
|
||||
return adapter.cast(getBinaryObject());
|
||||
}
|
||||
return super.getAdapter(adapter);
|
||||
}
|
||||
|
@ -313,7 +312,7 @@ public class Binary extends Openable implements IBinary {
|
|||
|
||||
String[] sourceFiles = symbolreader.getSourceFiles();
|
||||
if (sourceFiles != null && sourceFiles.length > 0) {
|
||||
ISourceFinder srcFinder = (ISourceFinder) getAdapter(ISourceFinder.class);
|
||||
ISourceFinder srcFinder = getAdapter(ISourceFinder.class);
|
||||
try {
|
||||
for (String filename : sourceFiles) {
|
||||
|
||||
|
|
|
@ -64,14 +64,13 @@ public abstract class CElement extends PlatformObject implements ICElement {
|
|||
fType = type;
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
// handle all kinds of resources
|
||||
if (IResource.class.isAssignableFrom(adapter)) {
|
||||
IResource r = getResource();
|
||||
if (r != null && adapter.isAssignableFrom(r.getClass())) {
|
||||
return r;
|
||||
return adapter.cast(r);
|
||||
}
|
||||
}
|
||||
return super.getAdapter(adapter);
|
||||
|
|
|
@ -76,10 +76,9 @@ public class CPPFunctionSet implements ICPPTwoPhaseBinding {
|
|||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("unchecked")
|
||||
public Object getAdapter(@SuppressWarnings("rawtypes") Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(getClass()))
|
||||
return this;
|
||||
return adapter.cast(this);
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
|
@ -199,13 +199,12 @@ class ASTBuiltinName extends ASTPreprocessorDefinition implements IAdaptable {
|
|||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(ASTBuiltinName.class)) {
|
||||
return this;
|
||||
return adapter.cast(this);
|
||||
}
|
||||
if (fOriginalDefinition != null && adapter.isAssignableFrom(fOriginalDefinition.getClass())) {
|
||||
return fOriginalDefinition;
|
||||
return adapter.cast(fOriginalDefinition);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -250,10 +250,9 @@ public class PDOMProxy implements IPDOM {
|
|||
fDelegate.resetCacheCounters();
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "rawtypes", "unchecked" })
|
||||
public synchronized Object getAdapter(Class adapter) {
|
||||
public synchronized <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(PDOMProxy.class)) {
|
||||
return this;
|
||||
return adapter.cast(this);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -373,10 +373,9 @@ public class PDOMMacro implements IIndexMacro, IPDOMBinding {
|
|||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(PDOMMacro.class)) {
|
||||
return this;
|
||||
return adapter.cast(this);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -171,10 +171,9 @@ public class PDOMMacroContainer extends PDOMNamedNode implements IIndexMacroCont
|
|||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(PDOMMacroContainer.class)) {
|
||||
return this;
|
||||
return adapter.cast(this);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -34,10 +34,9 @@ public abstract class AbstractCodeReaderFactory implements ICodeReaderFactory, I
|
|||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(IIncludeFileResolutionHeuristics.class)) {
|
||||
return fHeuristics;
|
||||
return adapter.cast(fHeuristics);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -66,14 +66,13 @@ public class CygwinPEParser extends PEParser {
|
|||
return new DefaultCygwinToolFactory(this);
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(ICygwinToolsFactroy.class)) {
|
||||
if (toolFactory == null) {
|
||||
toolFactory = createToolFactory();
|
||||
}
|
||||
return toolFactory;
|
||||
return adapter.cast(toolFactory);
|
||||
}
|
||||
return super.getAdapter(adapter);
|
||||
}
|
||||
|
|
|
@ -64,14 +64,13 @@ public class CygwinPEParser64 extends PEParser64 {
|
|||
return new DefaultCygwinToolFactory(this);
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (adapter.isAssignableFrom(ICygwinToolsFactroy.class)) {
|
||||
if (toolFactory == null) {
|
||||
toolFactory = createToolFactory();
|
||||
}
|
||||
return toolFactory;
|
||||
return adapter.cast(toolFactory);
|
||||
}
|
||||
return super.getAdapter(adapter);
|
||||
}
|
||||
|
|
|
@ -247,9 +247,9 @@ public class LocalLauncherDelegate extends AbstractLauncherDelegate {
|
|||
}
|
||||
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (IMementoHandler.class.equals(adapter)) {
|
||||
return mementoHandler;
|
||||
return adapter.cast(mementoHandler);
|
||||
}
|
||||
return super.getAdapter(adapter);
|
||||
}
|
||||
|
|
|
@ -114,6 +114,7 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
fHidden = hidden;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getInitializationErrorMessage() {
|
||||
getConnectorImpl();
|
||||
if (fException != null)
|
||||
|
@ -121,14 +122,17 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getId() {
|
||||
return fId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return fName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isHidden() {
|
||||
return fHidden;
|
||||
}
|
||||
|
@ -141,16 +145,19 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
} catch (Exception e) {
|
||||
fException = e;
|
||||
fConnector = new TerminalConnectorImpl() {
|
||||
@Override
|
||||
public void connect(ITerminalControl control) {
|
||||
// super.connect(control);
|
||||
control.setState(TerminalState.CLOSED);
|
||||
control.setMsg(getInitializationErrorMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public OutputStream getTerminalToRemoteStream() {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSettingsSummary() {
|
||||
return null;
|
||||
}
|
||||
|
@ -164,22 +171,27 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
return fConnector;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isInitialized() {
|
||||
return fConnector != null || fException != null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void connect(ITerminalControl control) {
|
||||
getConnectorImpl().connect(control);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void disconnect() {
|
||||
getConnectorImpl().disconnect();
|
||||
}
|
||||
|
||||
@Override
|
||||
public OutputStream getTerminalToRemoteStream() {
|
||||
return getConnectorImpl().getTerminalToRemoteStream();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSettingsSummary() {
|
||||
if (fConnector != null)
|
||||
return getConnectorImpl().getSettingsSummary();
|
||||
|
@ -187,10 +199,12 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
return TerminalMessages.NotInitialized;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isLocalEcho() {
|
||||
return getConnectorImpl().isLocalEcho();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void load(ISettingsStore store) {
|
||||
if (fConnector == null) {
|
||||
fStore = store;
|
||||
|
@ -204,6 +218,7 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
getConnectorImpl().setDefaultSettings();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(ISettingsStore store) {
|
||||
// no need to save the settings: it cannot have changed
|
||||
// because we are not initialized....
|
||||
|
@ -211,6 +226,7 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
getConnectorImpl().save(store);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTerminalSize(int newWidth, int newHeight) {
|
||||
// we assume that setTerminalSize is called also after
|
||||
// the terminal has been initialized. Else we would have to cache
|
||||
|
@ -220,7 +236,8 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
}
|
||||
}
|
||||
|
||||
public Object getAdapter(Class adapter) {
|
||||
@Override
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
TerminalConnectorImpl connector = null;
|
||||
if (isInitialized())
|
||||
connector = getConnectorImpl();
|
||||
|
@ -234,11 +251,11 @@ public class TerminalConnector implements ITerminalConnector {
|
|||
//defer to the platform
|
||||
result = Platform.getAdapterManager().getAdapter(connector, adapter);
|
||||
if (result != null)
|
||||
return result;
|
||||
return adapter.cast(result);
|
||||
}
|
||||
// maybe the real adapter is what we need....
|
||||
if (adapter.isInstance(connector))
|
||||
return connector;
|
||||
return adapter.cast(connector);
|
||||
}
|
||||
// maybe we have to be adapted....
|
||||
return Platform.getAdapterManager().getAdapter(this, adapter);
|
||||
|
|
|
@ -51,14 +51,13 @@ public class TabCommandFieldHandler implements IDisposable, IAdaptable {
|
|||
history = null;
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (TabFolderManager.class.equals(adapter)) {
|
||||
return tabFolderManager;
|
||||
return adapter.cast(tabFolderManager);
|
||||
}
|
||||
if (CTabItem.class.equals(adapter)) {
|
||||
return item;
|
||||
return adapter.cast(item);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -358,22 +358,21 @@ public class TabFolderMenuHandler extends PlatformObject {
|
|||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (MenuManager.class.isAssignableFrom(adapter)) {
|
||||
return contextMenuManager;
|
||||
return adapter.cast(contextMenuManager);
|
||||
} else if (Menu.class.isAssignableFrom(adapter)) {
|
||||
if (contextMenu == null || contextMenu.isDisposed()) {
|
||||
contextMenu = contextMenuManager.createContextMenu(getTabFolder());
|
||||
}
|
||||
// Clear the menu from the tab folder now - see initialize()
|
||||
getTabFolder().setMenu(null);
|
||||
return contextMenu;
|
||||
return adapter.cast(contextMenu);
|
||||
}
|
||||
|
||||
// Try the parent view
|
||||
Object adapted = getParentView().getAdapter(adapter);
|
||||
T adapted = getParentView().getAdapter(adapter);
|
||||
if (adapted != null) {
|
||||
return adapted;
|
||||
}
|
||||
|
|
|
@ -319,22 +319,21 @@ public class TabFolderToolbarHandler extends PlatformObject {
|
|||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (IToolBarManager.class.isAssignableFrom(adapter)) {
|
||||
return toolbarManager;
|
||||
return adapter.cast(toolbarManager);
|
||||
}
|
||||
|
||||
// Try the toolbar actions
|
||||
for (AbstractTerminalAction action : toolbarActions) {
|
||||
if (adapter.isAssignableFrom(action.getClass())) {
|
||||
return action;
|
||||
return adapter.cast(action);
|
||||
}
|
||||
}
|
||||
|
||||
// Try the parent view
|
||||
Object adapted = getParentView().getAdapter(adapter);
|
||||
T adapted = getParentView().getAdapter(adapter);
|
||||
if (adapted != null) {
|
||||
return adapted;
|
||||
}
|
||||
|
|
|
@ -581,23 +581,22 @@ public class TerminalsView extends ViewPart implements ITerminalsView, IShowInTa
|
|||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public Object getAdapter(Class adapter) {
|
||||
public <T> T getAdapter(Class<T> adapter) {
|
||||
if (CTabFolder.class.isAssignableFrom(adapter)) {
|
||||
return tabFolderControl;
|
||||
return adapter.cast(tabFolderControl);
|
||||
}
|
||||
if (TabFolderManager.class.isAssignableFrom(adapter)) {
|
||||
return tabFolderManager;
|
||||
return adapter.cast(tabFolderManager);
|
||||
}
|
||||
if (TabFolderMenuHandler.class.isAssignableFrom(adapter)) {
|
||||
return tabFolderMenuHandler;
|
||||
return adapter.cast(tabFolderMenuHandler);
|
||||
}
|
||||
if (TabFolderToolbarHandler.class.isAssignableFrom(adapter)) {
|
||||
return tabFolderToolbarHandler;
|
||||
return adapter.cast(tabFolderToolbarHandler);
|
||||
}
|
||||
if (TerminalsViewMementoHandler.class.isAssignableFrom(adapter)) {
|
||||
return mementoHandler;
|
||||
return adapter.cast(mementoHandler);
|
||||
}
|
||||
|
||||
return super.getAdapter(adapter);
|
||||
|
|
Loading…
Add table
Reference in a new issue