@Override
protected synchronized List<Root<IFramework>> createRoots() {
List<Root<IFramework>> roots = new LinkedList<Root<IFramework>>();
//roots.add(new EclipseProjectRoot(Root.PROJECT_ROOT, "Project Frameworks", ResourcesPlugin.getWorkspace().getRoot()));
WOVariables variables = this.environment.getWOVariables();
String projectLocalFrameworksFolder = variables.getProperty("projectFrameworkFolder");
if (projectLocalFrameworksFolder != null) {
File projectLocalRoot = new File(projectLocalFrameworksFolder);
roots.add(new ExternalFolderRoot(Root.PROJECT_LOCAL_ROOT, "Project Local Frameworks", projectLocalRoot, projectLocalRoot));
}
else {
roots.add(new ExternalFolderRoot(Root.PROJECT_LOCAL_ROOT, "Project Local Frameworks", null, null));
}
File externalBuildRootPath = fixMissingSeparatorAfterDevice(variables.externalBuildRoot());
File externalBuildFrameworkPath = fixMissingSeparatorAfterDevice(variables.externalBuildFrameworkPath());
roots.add(new ExternalFolderRoot(Root.EXTERNAL_ROOT, "External Build Root", externalBuildRootPath, externalBuildFrameworkPath));
File userRoot = fixMissingSeparatorAfterDevice(variables.userRoot());
File userFrameworksPath = fixMissingSeparatorAfterDevice(variables.userFrameworkPath());
roots.add(new ExternalFolderRoot(Root.USER_ROOT, "User Frameworks", userRoot, userFrameworksPath));
File localRoot = fixMissingSeparatorAfterDevice(variables.localRoot());
File localFrameworksPath = fixMissingSeparatorAfterDevice(variables.localFrameworkPath());
roots.add(new ExternalFolderRoot(Root.LOCAL_ROOT, "Local Frameworks", localRoot, localFrameworksPath));
File systemRoot = fixMissingSeparatorAfterDevice(variables.systemRoot());
File systemFrameworksPath = fixMissingSeparatorAfterDevice(variables.systemFrameworkPath());
roots.add(new ExternalFolderRoot(Root.SYSTEM_ROOT, "System Frameworks", systemRoot, systemFrameworksPath));
File networkRoot = fixMissingSeparatorAfterDevice(variables.networkRoot());
File networkFrameworksPath = fixMissingSeparatorAfterDevice(variables.networkFrameworkPath());
roots.add(new ExternalFolderRoot(Root.NETWORK_ROOT, "Network Frameworks", networkRoot, networkFrameworksPath));
return roots;
}