//
resourcesToManage.add (bootstrapResource);
while (resourcesToManage.size () > 0)
{
ManageableResource currentResource = (ManageableResource)resourcesToManage.iterator ().next ();
// pre-clean resources environment
//
resourcesToManage.remove (currentResource);
resourcesAlreadyScanned.add (currentResource);
Iterator iter = getTreesForResource(currentResource, profile, pluginsSubset);
while (iter.hasNext ())
{
TreeNode subTree = (TreeNode)iter.next ();
result.addTreeToResource (currentResource, subTree);
HashSet subResources = findSubResources (subTree);
if (subResources != null && subResources.size () > 0)
{
Iterator subsRes = subResources.iterator ();
while (subsRes.hasNext ())
{
ManageableResource subRes = (ManageableResource)subsRes.next ();
if (!resourcesAlreadyScanned.contains (subRes))
resourcesToManage.add (subRes);
}
}