Bug 296691 Change new Groups API to Virtual Resource API
If we decide that 'virtual' is the right naming for new resources concept, I will make the following changes. Add IResource#VIRTUAL flag to use in #create methods Add IResource#isVirtual indicating that a resource is virtual Remove IResource#isGroup Remove IFolder#createGroup
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/ide/undo/WorkspaceUndoUtil.java
if ((source.isLinked() && existing.isLinked())
						|| (source.isGroup() && existing.isGroup())
						|| (!source.isLinked() && !existing.isLinked()
								&& !source.isGroup() && !existing.isGroup())) {
					IResource[] children = ((IContainer) source).members();
					ResourceDescription[] overwritten = copy(children,
							destinationPath, resourcesAtDestination,
							new SubProgressMonitor(monitor, 1), uiInfo, false,
							createGroups, createLinks);
					
					
					for (int j = 0; j < overwritten.length; j++) {
						overwrittenResources.add(overwritten[j]);
					}
				} else {
					
					
					ResourceDescription[] deleted = delete(
							new IResource[] { existing },
							new SubProgressMonitor(monitor, 0), uiInfo, false);
					if ((createLinks || createGroups)
							&& (source.isLinked() == false)
							&& (source.isGroup() == false)) {
						IFolder folder = workspaceRoot.getFolder(destinationPath);
						if (createGroups) {
							folder.createGroup(0, new SubProgressMonitor(
									monitor, 1));
							IResource[] members = ((IContainer) source)
									.members();