Proper generify PluginModelManager.

Use the types of the map instead of ?,? and remove unneeded casts thanks
to that.

Change-Id: I1721cd74f27c9451b0c582f35ea2e9612286194c
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java
index 74c3b92..1cb4aca 100644
--- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java
+++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java
@@ -320,14 +320,14 @@
 
 		if (map.size() > 0) {
 			// update class path for all affected workspace plug-ins in one operation
-			Iterator<?> iterator = map.entrySet().iterator();
+			Iterator<Entry<IJavaProject, RequiredPluginsClasspathContainer>> iterator = map.entrySet().iterator();
 			IJavaProject[] projects = new IJavaProject[map.size()];
 			IClasspathContainer[] containers = new IClasspathContainer[projects.length];
 			int index = 0;
 			while (iterator.hasNext()) {
-				Entry<?, ?> entry = (Entry<?, ?>) iterator.next();
-				projects[index] = (IJavaProject) entry.getKey();
-				containers[index] = (IClasspathContainer) entry.getValue();
+				Entry<IJavaProject, RequiredPluginsClasspathContainer> entry = iterator.next();
+				projects[index] = entry.getKey();
+				containers[index] = entry.getValue();
 				index++;
 			}
 			// TODO Consider always running in a job - better reporting and cancellation options