Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 150673 | Differences between
and this patch

Collapse All | Expand All

(-)refactor/org/eclipse/jst/j2ee/refactor/operations/ProjectRefactorMetadata.java (+4 lines)
Lines 33-38 Link Here
33
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
33
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
34
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
34
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
35
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
35
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
36
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode;
36
import org.eclipse.wst.common.project.facet.core.IFacetedProject;
37
import org.eclipse.wst.common.project.facet.core.IFacetedProject;
37
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
38
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
38
import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
39
import org.eclipse.wst.common.project.facet.core.IProjectFacetVersion;
Lines 289-294 Link Here
289
		public IVirtualFolder getRootFolder() {
290
		public IVirtualFolder getRootFolder() {
290
			return _comp.getRootFolder();
291
			return _comp.getRootFolder();
291
		}
292
		}
293
		public VirtualTreeNode getVirtualTreeRoot() throws CoreException {
294
			return _comp.getVirtualTreeRoot();
295
		}
292
		public boolean isBinary() {
296
		public boolean isBinary() {
293
			return _comp.isBinary();
297
			return _comp.isBinary();
294
		}
298
		}
(-)j2eeplugin/org/eclipse/jst/j2ee/internal/deployables/J2EEFlexProjDeployable.java (-2 / +100 lines)
Lines 14-31 Link Here
14
import java.net.URL;
14
import java.net.URL;
15
import java.util.ArrayList;
15
import java.util.ArrayList;
16
import java.util.Arrays;
16
import java.util.Arrays;
17
import java.util.HashMap;
17
import java.util.List;
18
import java.util.List;
19
import java.util.Map;
18
import java.util.Properties;
20
import java.util.Properties;
19
21
20
import org.eclipse.core.resources.IContainer;
22
import org.eclipse.core.resources.IContainer;
21
import org.eclipse.core.resources.IFile;
23
import org.eclipse.core.resources.IFile;
22
import org.eclipse.core.resources.IProject;
24
import org.eclipse.core.resources.IProject;
25
import org.eclipse.core.resources.IResource;
23
import org.eclipse.core.resources.ResourcesPlugin;
26
import org.eclipse.core.resources.ResourcesPlugin;
24
import org.eclipse.core.runtime.CoreException;
27
import org.eclipse.core.runtime.CoreException;
25
import org.eclipse.core.runtime.IPath;
28
import org.eclipse.core.runtime.IPath;
26
import org.eclipse.core.runtime.Path;
29
import org.eclipse.core.runtime.Path;
30
import org.eclipse.jdt.core.IClasspathEntry;
27
import org.eclipse.jdt.core.IJavaProject;
31
import org.eclipse.jdt.core.IJavaProject;
28
import org.eclipse.jdt.core.IPackageFragmentRoot;
32
import org.eclipse.jdt.core.IPackageFragmentRoot;
33
import org.eclipse.jdt.core.JavaCore;
34
import org.eclipse.jdt.core.JavaModelException;
29
import org.eclipse.jem.workbench.utility.JemProjectUtilities;
35
import org.eclipse.jem.workbench.utility.JemProjectUtilities;
30
import org.eclipse.jst.j2ee.application.Application;
36
import org.eclipse.jst.j2ee.application.Application;
31
import org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualArchiveComponent;
37
import org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualArchiveComponent;
Lines 49-54 Link Here
49
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
55
import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
50
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
56
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
51
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
57
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
58
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode;
59
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode.Entry;
52
import org.eclipse.wst.server.core.IModule;
60
import org.eclipse.wst.server.core.IModule;
53
import org.eclipse.wst.server.core.ServerUtil;
61
import org.eclipse.wst.server.core.ServerUtil;
54
import org.eclipse.wst.server.core.internal.ModuleFile;
62
import org.eclipse.wst.server.core.internal.ModuleFile;
Lines 471-478 Link Here
471
    	}
479
    	}
472
		return module;
480
		return module;
473
    }
481
    }
474
    
482
475
    /**
483
    @Override
484
    protected VirtualTreeNode getVirtualTreeRoot() throws CoreException {
485
    	VirtualTreeNode root = getComponentVirtualTreeRoot();
486
    	if (root == null) return null;
487
    	IProject project = getProject();
488
		final List<Entry> replaced = new ArrayList<Entry>();
489
		if (project.hasNature(JavaCore.NATURE_ID)) {
490
			final Map<IResource, IResource> map = getJavaOutputLocationMap(project);
491
			root = root.filter(new VirtualTreeNode.IEntryFilter() {
492
				public boolean accept(Entry entry) {
493
					IResource resource = entry.getResource();
494
					if (resource != null) {
495
						resource = map.get(resource);
496
						if (resource != null) {
497
							replaced.add(new Entry(entry.getRuntimePath(), resource));
498
							return false;
499
						}
500
					}
501
					return true;
502
				}
503
			});
504
		}
505
		ArrayList<Entry> entries = new ArrayList<Entry>();
506
		entries.add(new VirtualTreeNode.Entry(null, root));
507
		entries.addAll(replaced);
508
		addLocalVirtualTreeEntries(entries);
509
    	return newVirtualTreeNode(entries);
510
    }
511
512
    @Override
513
    protected void addLocalVirtualTreeEntries(ArrayList<Entry> entries) throws CoreException {
514
    	super.addLocalVirtualTreeEntries(entries);
515
    	addConsumableReferencedEntries(entries);
516
    }
517
518
	private Map<IResource, IResource> getJavaOutputLocationMap(IProject project) throws JavaModelException {
519
		Map<IResource, IResource> map = new HashMap<IResource, IResource>();  
520
		IContainer workspace = project.getParent();
521
		IJavaProject jproject = JavaCore.create(project);
522
		for (IClasspathEntry cpe : jproject.getRawClasspath()) {
523
			if (IClasspathEntry.CPE_SOURCE == cpe.getEntryKind()) {
524
				IPath path = cpe.getPath();
525
				IPath output = cpe.getOutputLocation();
526
				if (output == null) output = jproject.getOutputLocation();
527
				map.put(workspace.findMember(path), workspace.findMember(output));
528
			}
529
		}
530
		return map;
531
	}
532
533
    protected void addConsumableReferencedEntries(List<Entry> entries) throws CoreException {
534
		IVirtualComponent vc = ComponentCore.createComponent(getProject());
535
		if (vc == null) return;
536
537
		IVirtualReference[] refComponents = vc.getReferences();
538
    	for (int i = 0; i < refComponents.length; i++) {
539
    		final IVirtualReference reference = refComponents[i];
540
    		if (reference != null && reference.getDependencyType()==IVirtualReference.DEPENDENCY_TYPE_CONSUMES) {
541
    			IVirtualComponent consumedComponent = reference.getReferencedComponent();
542
    			IProject project = consumedComponent.getProject();
543
				if (consumedComponent!=null && isProjectOfType(project,IModuleConstants.JST_UTILITY_MODULE)) {
544
    				if (consumedComponent != null && consumedComponent.getRootFolder()!=null) {
545
    					VirtualTreeNode root = consumedComponent.getVirtualTreeRoot();
546
    					if (project.hasNature(JavaCore.NATURE_ID)) {
547
    						final Map<IResource, IResource> map = getJavaOutputLocationMap(project);
548
    						final List<Entry> replaced = new ArrayList<Entry>();
549
    						root = root.filter(new VirtualTreeNode.IEntryFilter() {
550
    							public boolean accept(Entry entry) {
551
    								IResource resource = entry.getResource();
552
    								if (resource != null) {
553
    									resource = map.get(resource);
554
    									if (resource != null) {
555
    										replaced.add(new Entry(reference.getRuntimePath().append(entry.getRuntimePath()), resource));
556
    										return false;
557
    									}
558
    								}
559
    								return true;
560
    							}
561
    						});
562
    						entries.add(new Entry(null, root));
563
    						entries.addAll(replaced);
564
    					} else {
565
    						entries.add(new Entry(null, root));
566
    					}
567
    				}
568
    			}
569
    		}
570
    	}
571
	}
572
573
	/**
476
     * Determine if the component is nested J2EE module on the application.xml of this EAR
574
     * Determine if the component is nested J2EE module on the application.xml of this EAR
477
     * @param aComponent
575
     * @param aComponent
478
     * @return boolean is passed in component a nested J2EE module on this EAR
576
     * @return boolean is passed in component a nested J2EE module on this EAR
(-)earproject/org/eclipse/jst/j2ee/componentcore/util/EARVirtualComponent.java (+5 lines)
Lines 36-41 Link Here
36
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
36
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
37
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
37
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
38
import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
38
import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
39
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode;
39
40
40
public class EARVirtualComponent extends VirtualComponent implements IComponentImplFactory {
41
public class EARVirtualComponent extends VirtualComponent implements IComponentImplFactory {
41
	
42
	
Lines 193-196 Link Here
193
	public IVirtualFolder getDefaultRootFolder() {
194
	public IVirtualFolder getDefaultRootFolder() {
194
		return defaultRootFolder;
195
		return defaultRootFolder;
195
	}
196
	}
197
198
	public VirtualTreeNode getVirtualTreeRoot() throws CoreException {
199
		return new EARVirtualTreeNode(getVirtualTreeRootEntries());
200
	}
196
}
201
}
(-)earproject/org/eclipse/jst/j2ee/componentcore/util/EARVirtualTreeNode.java (+26 lines)
Added Link Here
1
package org.eclipse.jst.j2ee.componentcore.util;
2
3
import java.util.List;
4
5
import org.eclipse.core.runtime.IPath;
6
import org.eclipse.jst.j2ee.internal.common.classpath.J2EEComponentClasspathUpdater;
7
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode;
8
9
public class EARVirtualTreeNode extends VirtualTreeNode {
10
	protected EARVirtualTreeNode(IPath runtimePath, List<Entry> entries, boolean isDelta) {
11
		super(runtimePath, entries, isDelta);
12
	}
13
	public EARVirtualTreeNode(List<Entry> entries) {
14
		super(entries);
15
	}
16
	@Override
17
	public VirtualTreeNode newVirtualTreeNode(IPath runtimePath, List<Entry> entries, boolean isDelta) {
18
		String name = runtimePath.lastSegment();
19
		for (String ext : EARVirtualRootFolder.EXTENSIONS_TO_IGNORE) {
20
			if (J2EEComponentClasspathUpdater.endsWithIgnoreCase(name, ext)) {
21
				return null;
22
			}
23
		}
24
		return new EARVirtualTreeNode(runtimePath, entries, isDelta);
25
	}
26
}
(-).settings/org.eclipse.jdt.core.prefs (+12 lines)
Added Link Here
1
#Sat Sep 02 17:45:29 EDT 2006
2
eclipse.preferences.version=1
3
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
4
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
5
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
6
org.eclipse.jdt.core.compiler.compliance=1.5
7
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
8
org.eclipse.jdt.core.compiler.debug.localVariable=generate
9
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
10
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
11
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
12
org.eclipse.jdt.core.compiler.source=1.5
(-).settings/org.eclipse.jdt.core.prefs (-1 / +11 lines)
Lines 1-4 Link Here
1
#Wed Aug 30 01:47:52 EDT 2006
1
#Tue Sep 05 10:22:20 EDT 2006
2
eclipse.preferences.version=1
2
eclipse.preferences.version=1
3
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
3
org.eclipse.jdt.core.builder.cleanOutputFolder=clean
4
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
4
org.eclipse.jdt.core.builder.duplicateResourceTask=warning
Lines 8-21 Link Here
8
org.eclipse.jdt.core.circularClasspath=error
8
org.eclipse.jdt.core.circularClasspath=error
9
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
9
org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
10
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
10
org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
11
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
12
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
13
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
14
org.eclipse.jdt.core.compiler.compliance=1.5
15
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
16
org.eclipse.jdt.core.compiler.debug.localVariable=generate
17
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
11
org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
18
org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
12
org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
19
org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
20
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
13
org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
21
org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
14
org.eclipse.jdt.core.compiler.problem.deprecation=ignore
22
org.eclipse.jdt.core.compiler.problem.deprecation=ignore
15
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
23
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
16
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
24
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
17
org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
25
org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
18
org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
26
org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
27
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
19
org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
28
org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
20
org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
29
org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
21
org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
30
org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
Lines 60-64 Link Here
60
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
69
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
61
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
70
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
62
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
71
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
72
org.eclipse.jdt.core.compiler.source=1.5
63
org.eclipse.jdt.core.incompatibleJDKLevel=warning
73
org.eclipse.jdt.core.incompatibleJDKLevel=warning
64
org.eclipse.jdt.core.incompleteClasspath=error
74
org.eclipse.jdt.core.incompleteClasspath=error
(-)static_web_project/org/eclipse/wst/web/internal/deployables/ComponentDeployable.java (+90 lines)
Lines 20-25 Link Here
20
import org.eclipse.core.resources.IFile;
20
import org.eclipse.core.resources.IFile;
21
import org.eclipse.core.resources.IProject;
21
import org.eclipse.core.resources.IProject;
22
import org.eclipse.core.resources.IResource;
22
import org.eclipse.core.resources.IResource;
23
import org.eclipse.core.resources.IResourceDelta;
23
import org.eclipse.core.resources.ResourcesPlugin;
24
import org.eclipse.core.resources.ResourcesPlugin;
24
import org.eclipse.core.runtime.CoreException;
25
import org.eclipse.core.runtime.CoreException;
25
import org.eclipse.core.runtime.IPath;
26
import org.eclipse.core.runtime.IPath;
Lines 32-37 Link Here
32
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
33
import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
33
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
34
import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
34
import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
35
import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
36
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode;
37
import org.eclipse.wst.common.componentcore.resources.VirtualTreeNode.Entry;
35
import org.eclipse.wst.common.project.facet.core.IFacetedProject;
38
import org.eclipse.wst.common.project.facet.core.IFacetedProject;
36
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
39
import org.eclipse.wst.common.project.facet.core.IProjectFacet;
37
import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
40
import org.eclipse.wst.common.project.facet.core.ProjectFacetsManager;
Lines 39-46 Link Here
39
import org.eclipse.wst.server.core.ServerUtil;
42
import org.eclipse.wst.server.core.ServerUtil;
40
import org.eclipse.wst.server.core.internal.ModuleFile;
43
import org.eclipse.wst.server.core.internal.ModuleFile;
41
import org.eclipse.wst.server.core.internal.ModuleFolder;
44
import org.eclipse.wst.server.core.internal.ModuleFolder;
45
import org.eclipse.wst.server.core.internal.ModuleFolder2;
46
import org.eclipse.wst.server.core.internal.ModuleResourceDelta;
42
import org.eclipse.wst.server.core.model.IModuleFolder;
47
import org.eclipse.wst.server.core.model.IModuleFolder;
43
import org.eclipse.wst.server.core.model.IModuleResource;
48
import org.eclipse.wst.server.core.model.IModuleResource;
49
import org.eclipse.wst.server.core.model.IModuleResourceDelta;
44
import org.eclipse.wst.server.core.util.ProjectModule;
50
import org.eclipse.wst.server.core.util.ProjectModule;
45
51
46
public abstract class ComponentDeployable extends ProjectModule {
52
public abstract class ComponentDeployable extends ProjectModule {
Lines 399-403 Link Here
399
		}
405
		}
400
		return new IContainer[]{};
406
		return new IContainer[]{};
401
	}
407
	}
408
	
409
	/**
410
	 * TODO should it be public?
411
	 * TODO cache virtual tree root
412
	 */
413
	protected VirtualTreeNode getVirtualTreeRoot() throws CoreException {
414
		final ArrayList<VirtualTreeNode.Entry> entries = new ArrayList<VirtualTreeNode.Entry>();
415
		VirtualTreeNode root = getComponentVirtualTreeRoot();
416
		if (root == null) return null;
417
		entries.add(new VirtualTreeNode.Entry(null, root));
418
		addLocalVirtualTreeEntries(entries);
419
		return newVirtualTreeNode(entries);
420
	}
421
	
422
	protected VirtualTreeNode getComponentVirtualTreeRoot() throws CoreException {
423
		// TODO use #component field
424
		IVirtualComponent vc = ComponentCore.createComponent(getProject());
425
		if (vc != null) return vc.getVirtualTreeRoot();
426
		return null;
427
	}
402
428
429
	protected void addLocalVirtualTreeEntries(ArrayList<Entry> entries) throws CoreException {
430
		IVirtualComponent vc = ComponentCore.createComponent(getProject());
431
		if (vc != null) {
432
			ArtifactEdit edit = null;
433
			try {
434
				edit = getComponentArtifactEditForRead();
435
				IVirtualReference[] components = vc.getReferences();
436
		    	for (int i = 0; i < components.length; i++) {
437
					IVirtualReference reference = components[i];
438
					IVirtualComponent virtualComp = reference.getReferencedComponent();
439
					if (shouldIncludeUtilityComponent(virtualComp,components,edit)) {
440
						IPath archivePath = ((VirtualArchiveComponent)virtualComp).getWorkspaceRelativePath();
441
						VirtualTreeNode.Entry entry = null;
442
						if (archivePath != null) { //In Workspace
443
							IFile utilFile = ResourcesPlugin.getWorkspace().getRoot().getFile(archivePath);
444
							entries.add(new VirtualTreeNode.Entry(reference.getRuntimePath().append(utilFile.getName()), utilFile));
445
						}
446
						else {
447
							File extFile = ((VirtualArchiveComponent)virtualComp).getUnderlyingDiskFile();
448
							entries.add(new VirtualTreeNode.Entry(reference.getRuntimePath().append(extFile.getName()), extFile));
449
						}
450
					}
451
		    	}
452
			} finally {
453
				if (edit!=null)
454
					edit.dispose();
455
			}
456
		}
457
	}
458
459
	protected VirtualTreeNode newVirtualTreeNode(List<Entry> entries) throws CoreException {
460
		return new VirtualTreeNode(entries);
461
	}
462
463
	public IModuleResource[] members2() throws CoreException {
464
		VirtualTreeNode root = getVirtualTreeRoot();
465
		if (root != null) {
466
			return new ModuleFolder2(root).members();
467
		}
468
		return null;
469
	}
470
471
	public IModuleResourceDelta getModuleResourceDelta(IResourceDelta workspaceDelta) throws CoreException {
472
		VirtualTreeNode root = getVirtualTreeRoot();
473
		if (root != null) {
474
			VirtualTreeNode proto = root.getVirtualTreeDelta(workspaceDelta);
475
			ModuleResourceDelta result = new ModuleResourceDelta(ModuleFolder2.newModuleResource(proto), proto.getKind());
476
			result.setChildren(getModuleResourceDelta(proto));
477
			return result;
478
		}
479
		return null;
480
	}
481
482
	private IModuleResourceDelta[] getModuleResourceDelta(VirtualTreeNode proto) throws CoreException {
483
		List<VirtualTreeNode> members = proto.members();
484
		ModuleResourceDelta[] children = new ModuleResourceDelta[members.size()];
485
		int i = 0;
486
		for (VirtualTreeNode member : members) {
487
			children[i] = new ModuleResourceDelta(ModuleFolder2.newModuleResource(member), member.getKind());
488
			children[i].setChildren(getModuleResourceDelta(member));
489
			i++;
490
		}
491
		return children;
492
	}
403
}
493
}

Return to bug 150673