[178553] class level generics
diff --git a/plugins/org.eclipse.jem.workbench/META-INF/MANIFEST.MF b/plugins/org.eclipse.jem.workbench/META-INF/MANIFEST.MF index aa699ee..ceb0de0 100644 --- a/plugins/org.eclipse.jem.workbench/META-INF/MANIFEST.MF +++ b/plugins/org.eclipse.jem.workbench/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: org.eclipse.jem.workbench; singleton:=true -Bundle-Version: 1.2.3.qualifier +Bundle-Version: 1.2.4.qualifier Bundle-Activator: org.eclipse.jem.internal.plugin.JavaPlugin Bundle-Vendor: %providerName Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.jem.workbench/workbench/org/eclipse/jem/internal/adapters/jdom/JavaMethodJDOMAdaptor.java b/plugins/org.eclipse.jem.workbench/workbench/org/eclipse/jem/internal/adapters/jdom/JavaMethodJDOMAdaptor.java index 607eaae..1c1af1a 100644 --- a/plugins/org.eclipse.jem.workbench/workbench/org/eclipse/jem/internal/adapters/jdom/JavaMethodJDOMAdaptor.java +++ b/plugins/org.eclipse.jem.workbench/workbench/org/eclipse/jem/internal/adapters/jdom/JavaMethodJDOMAdaptor.java
@@ -10,7 +10,7 @@ *******************************************************************************/ /* * $RCSfile: JavaMethodJDOMAdaptor.java,v $ - * $Revision: 1.15 $ $Date: 2006/10/27 19:36:32 $ + * $Revision: 1.15.2.1 $ $Date: 2007/04/18 13:46:00 $ */ package org.eclipse.jem.internal.adapters.jdom; @@ -434,6 +434,35 @@ } } } + + IJavaElement parent = method.getParent(); + if (parent instanceof IType) + { + try { + typeParameters = ((IType)parent).getTypeParameters(); + } catch (JavaModelException e1) { + //Failed to retrieve type parameters for any number of reasons. + } + } + if (typeParameters != null && typeParameters.length > 0) { + for (int i = 0; i < typeParameters.length; i++) { + if (typeParameters[i].exists() && variableName.equals(typeParameters[i].getElementName())) { + typeParam = typeParameters[i]; + break; + } + } + if (typeParam != null) { + String[] bounds = null; + try { + bounds = typeParam.getBounds(); + } catch (JavaModelException e) {} + if (bounds != null && bounds.length > 0) { + return JDOMSearchHelper.getResolvedTypeName(bounds[0], getType(), getTypeResolutionCache()); + } else { + return "java.lang.Object"; + } + } + } return null; } }