Java Code Examples for org.eclipse.core.resources.IFolder

The following are top voted examples for showing how to use org.eclipse.core.resources.IFolder. These examples are extracted from open source projects. You can vote up the examples you like and your votes will be used in our system to generate more good examples.
Example 1
Project: gw4e.project   File: GW4EModelWizard.java   View source code 6 votes vote down vote up
@Override
public void selectionChanged(SelectionChangedEvent event) {
	IStructuredSelection selection = (IStructuredSelection) event.getSelection();
	Object selected = selection.getFirstElement();
	if (selected instanceof TemplateProvider) {
		provider = (TemplateProvider) selected;
	}
	if (selected instanceof IFolder) {
		targetFolder 	= ((IFolder) selected);
		project  		= targetFolder.getProject();
	}
	if (selected instanceof InitialBuildPolicies) {
		policies 	= ((InitialBuildPolicies) selected);
	}
	if (selected instanceof String) {
		filename 	= ((String) selected);
	}		
	fExtraPage.validatePage();
}
 
Example 2
Project: convertigo-eclipse   File: ProjectLoadingJob.java   View source code 6 votes vote down vote up
protected void loadResource(TreeParent parentTreeObject, Object folderObject, IResource[] members) throws CoreException {
	ResourceFolderTreeObject resourceFolderTreeObject;
	if (folderObject instanceof String) resourceFolderTreeObject = new ResourceFolderTreeObject(viewer, (String) folderObject);
	else resourceFolderTreeObject = new ResourceFolderTreeObject(viewer, (IFolder) folderObject);
	parentTreeObject.addChild(resourceFolderTreeObject);

	ResourceTreeObject resourceTreeObject;
	for (int i = 0; i < members.length; i++) {
		IResource resource = members[i];
		String name = resource.getName();
		if (resource instanceof IFolder) {
			if (name.equals("_data")) continue;
			if (name.equals("_lib")) continue;
			if (name.equals("_private")) continue;
			loadResource(resourceFolderTreeObject, ((IFolder) resource), ((IFolder) resource).members());
		}
		else {
			if (name.equals(".project")) continue;
			if (name.endsWith(".etr")) continue;
			resourceTreeObject = new ResourceTreeObject(viewer, (IFile) resource);
			resourceFolderTreeObject.addChild(resourceTreeObject);
		}
	}
}
 
Example 3
Project: Hydrograph   File: BuildExpressionEditorDataSturcture.java   View source code 6 votes vote down vote up
private void loadClassesFromSettingsFolder() {
	Properties properties = new Properties();
	IFolder folder=getCurrentProject().getFolder(PathConstant.PROJECT_RESOURCES_FOLDER);
	IFile file = folder.getFile(PathConstant.EXPRESSION_EDITOR_EXTERNAL_JARS_PROPERTIES_FILES);
	try {
		LOGGER.debug("Loading property file");
		if (file.getLocation().toFile().exists()) {
			FileInputStream inStream = new FileInputStream(file.getLocation().toString());
			properties.load(inStream);
			
			for(Object key:properties.keySet()){
				String packageName=StringUtils.remove((String)key,Constants.DOT+Constants.ASTERISK);
				if(StringUtils.isNotBlank(properties.getProperty((String)key)) && StringUtils.isNotBlank(packageName)){
					loadUserDefinedClassesInClassRepo(properties.getProperty((String)key),packageName);
				}
			}
		}
	} catch (IOException |RuntimeException exception) {
		LOGGER.error("Exception occurred while loading jar files from projects setting folder",exception);
	}
}
 
Example 4
Project: n4js   File: BuilderParticipantPluginTest.java   View source code 6 votes vote down vote up
/**
 * <ol>
 * <li>create Class1 file with having Class1.field0 -> should have no errors</li>
 * <li>create Class0 file with referencing Class1.field0 -> should have no errors as Class1 already created</li>
 * </ol>
 */
//@formatter:on
@Test
public void testNoErrorMarkersWhenReferencedFileIsCreatedBeforeReferencingFile() throws Exception {
	// create project and test files
	final IProject project = createJSProject("testNoErrorMarkersWhenReferencedFileIsCreatedBeforeReferencingFile");
	IFolder folder = configureProjectWithXtext(project);
	IFolder moduleFolder = createFolder(folder, TestFiles.moduleFolder());

	IFile file2 = createTestFile(moduleFolder, "Class1", TestFiles.class1());
	assertMarkers("File2 should have no errors", file2, 0);

	IFile file1 = createTestFile(moduleFolder, "Class0", TestFiles.class0());

	// The value of the local variable dummy is not used
	assertMarkers("File1 should have no errors", file1, 1);
}
 
Example 5
Project: Hydrograph   File: CategoriesDialogTargetComposite.java   View source code 6 votes vote down vote up
public void loadPackagesFromPropertyFileSettingFolder() {
	Properties properties = new Properties();
	IFolder folder = BuildExpressionEditorDataSturcture.INSTANCE.getCurrentProject().getFolder(
			PathConstant.PROJECT_RESOURCES_FOLDER);
	IFile file = folder.getFile(PathConstant.EXPRESSION_EDITOR_EXTERNAL_JARS_PROPERTIES_FILES);
	try {
		LOGGER.debug("Loading property file");
		targetList.removeAll();
		if (file.getLocation().toFile().exists()) {
			FileInputStream inStream = new FileInputStream(file.getLocation().toString());
			properties.load(inStream);
			for (Object key : properties.keySet()) {
				String jarFileName = StringUtils.trim(StringUtils.substringAfter((String) key, Constants.DASH));
				if (BuildExpressionEditorDataSturcture.INSTANCE.getIPackageFragment(jarFileName) != null) {
					targetList.add((String) key+SWT.SPACE+Constants.DASH+SWT.SPACE+properties.getProperty((String)key));
				}
			}
		}
	} catch (IOException | RuntimeException exception) {
		LOGGER.error("Exception occurred while loading jar files from projects setting folder", exception);
	}

}
 
Example 6
Project: n4js   File: BuilderParticipantPluginTest.java   View source code 6 votes vote down vote up
/**
 *
 * 01. MyClassOne import MyVariableTwo, calls in chain
 * 01a. method of variable type (MyClassTwo),
 * 01b. method of type of this variable type method (MyRoleThree),
 * 01c. MyRoleThree method (typed with MyInterfaceFour)
 * 01d. finally a MyInterfaceFour's method
 * 02. Creating files in an order that there are initial error markers as required files are not created yet
 * 03. When all files have been created no file should have error markers
 *
 * @throws Exception when creating resources fails
 */
//@formatter:on
@Test
public void testMethodChainingWithCreatingFilesInReverseOrder() throws Exception {
	final IProject project = createJSProject("testMethodChainingWithCreatingFilesInReverseOrder");
	IFolder folder = configureProjectWithXtext(project);
	IFolder moduleFolder = createFolder(folder, MemberTestFiles.moduleFolder());

	IFile fileMyClassOne = createTestFile(moduleFolder, "MyClassOne", MemberTestFiles.myClassOne());
	IFile fileMyVariableTwo = createTestFile(moduleFolder, "MyVariableTwo", MemberTestFiles.myVariableTwo());
	IFile fileMyClassTwo = createTestFile(moduleFolder, "MyClassTwo", MemberTestFiles.myClassTwo());
	IFile fileRoleThree = createTestFile(moduleFolder, "MyRoleThree", MemberTestFiles.myRoleThree());
	IFile fileMyInterfaceFour = createTestFile(moduleFolder, "MyInterfaceFour", MemberTestFiles.myInterfaceFour());
	waitForAutoBuild();

	assertMarkers("File MyInterfaceFour should have no errors", fileMyInterfaceFour, 0);
	assertMarkers("File MyRoleThree should have no errors", fileRoleThree, 0);
	assertMarkers("File MyClassTwo should have no errors", fileMyClassTwo, 0);
	assertMarkers("File MyVariableTwo should have no errors", fileMyVariableTwo, 0);
	assertMarkers("File MyClassOne should have no errors", fileMyClassOne, 0);
}
 
Example 7
Project: Tarski   File: WizardTreeViewLabelProvider.java   View source code 6 votes vote down vote up
@Override
public Image getImage(final Object element) {
  if (element instanceof IProject) {
    if (((IProject) element).isOpen()) {
      return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OBJ_PROJECT);
    } else {
      return PlatformUI.getWorkbench().getSharedImages()
          .getImage(SharedImages.IMG_OBJ_PROJECT_CLOSED);
    }
  } else if (element instanceof IFolder) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);
  } else if (element instanceof IFile) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FILE);
  } else if (element instanceof IMarker) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OPEN_MARKER);
  }

  return null;
}
 
Example 8
Project: gw4e.project   File: ResourceManager.java   View source code 6 votes vote down vote up
/**
 * @param projectname
 * @param folder
 * @param filename
 * @return whether the file exists in the specified project & folder
 * @throws CoreException
 */
public static File getFile(String projectname, String folder, String pkg, String filename) throws CoreException {
	IProject project = getProject(projectname);
	IFolder destFolder = project.getFolder(new Path(folder));
	IFolder container = destFolder;
	if (pkg != null) {
		StringTokenizer st = new StringTokenizer(pkg, "/");
		while (st.hasMoreTokens()) {
			String dir = st.nextToken();
			IFolder f = container.getFolder(new Path(dir));
			if (!f.exists()) {
				f.create(true, true, null);
			}
			container = f;
		}
	}
	IFile file = container.getFile(new Path(filename));
	return file.getRawLocation().makeAbsolute().toFile();
}
 
Example 9
Project: n4js   File: ExternalPackagesPluginTest.java   View source code 6 votes vote down vote up
/**
 * Check if index is populated only with workspace project content when the external location with single project is
 * registered and workspace contains project with the same name. External library is registered before project is
 * created in the workspace.
 */
public void testWorkspaceProjectHidingExternalProject_after() throws Exception {

	IProject createJSProject = ProjectUtils.createJSProject("LibFoo");
	IFolder src = configureProjectWithXtext(createJSProject);
	IFile manifest = createJSProject.getProject().getFile("manifest.n4mf");
	assertMarkers("manifest of first project should have no errors", manifest, 0);

	createTestFile(src, "Foo", "console.log('hi')");
	createTestFile(src, "AAAA", "console.log('hi')");
	createTestFile(src, "BBB", "console.log('hi')");
	waitForAutoBuild();

	copyProjectsToLocation(externalLibrariesRoot, "LibFoo");
	setExternalLibrariesPreferenceStoreLocations(externalLibraryPreferenceStore, externalLibrariesRoot);

	Collection<String> expectedWorkspace = collectIndexableFiles(ResourcesPlugin.getWorkspace());

	assertResourceDescriptions(expectedWorkspace, BuilderUtil.getAllResourceDescriptions());

	removeExternalLibrariesPreferenceStoreLocations(externalLibraryPreferenceStore, externalLibrariesRoot);

}
 
Example 10
Project: Hydrograph   File: JobCopyParticipant.java   View source code 6 votes vote down vote up
@Override
public Change createChange(IProgressMonitor pm) throws CoreException, OperationCanceledException {
	
	copyToPath=getArguments().getDestination().toString();
	IWorkspaceRoot workSpaceRoot = ResourcesPlugin.getWorkspace().getRoot();
	IProject project = workSpaceRoot.getProject(copyToPath.split("/")[1]);
	IFolder jobFolder = project.getFolder(copyToPath.substring(copyToPath.indexOf('/', 2)));
	previousJobFiles=new ArrayList<>();
	for (IResource iResource : jobFolder.members()) {
		if (!(iResource instanceof IFolder)) {
			IFile iFile = (IFile) iResource;
			 if (iFile.getFileExtension().equalsIgnoreCase(Messages.JOB_EXT)) {
				 previousJobFiles.add(iFile);
			 }
		}
	}
	copiedFileList.add(modifiedResource);
	return null;
}
 
Example 11
Project: Tarski   File: CreatingAtomWizardLabelProvider.java   View source code 6 votes vote down vote up
@Override
public Image getImage(Object element) {
  if (element instanceof IProject) {
    if (((IProject) element).isOpen()) {
      return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OBJ_PROJECT);
    } else {
      return PlatformUI.getWorkbench().getSharedImages()
          .getImage(SharedImages.IMG_OBJ_PROJECT_CLOSED);
    }
  } else if (element instanceof IFolder) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);
  } else if (element instanceof IFile) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FILE);
  } else if (element instanceof IMarker) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OPEN_MARKER);
  }

  return null;
}
 
Example 12
Project: Hydrograph   File: JobDeleteParticipant.java   View source code 6 votes vote down vote up
private boolean deleteCorrospondingJobAndPropertyFileifUserDeleteXmlFile(IProject iProject) {
	if (modifiedResource.getProjectRelativePath()!=null && StringUtils.equalsIgnoreCase(modifiedResource.getProjectRelativePath().segment(0),
			CustomMessages.ProjectSupport_JOBS)) {
		IFile propertyFileName = null;
		IFolder jobsFolder = iProject.getFolder(CustomMessages.ProjectSupport_JOBS);
		IFolder propertiesFolder = iProject.getFolder(Messages.PARAM);

		if (jobsFolder != null) {
			jobIFile=jobsFolder.getFile(modifiedResource.getFullPath().removeFirstSegments(2).removeFileExtension().addFileExtension(Constants.JOB_EXTENSION_FOR_IPATH));
		}
		if (propertiesFolder != null) {
			propertyFileName = propertiesFolder.getFile(modifiedResource.getFullPath().removeFileExtension()
					.addFileExtension(Constants.PROPERTIES).toFile().getName());
		}
		String message = getErrorMessageIfUserDeleteXmlRelatedFiles(jobIFile, propertyFileName);
		showErrorMessage(jobIFile, propertyFileName, Messages.bind(message, modifiedResource.getName()));
	} else {
		flag = true;
	}
	return flag;
}
 
Example 13
Project: Equella   File: NewJPFPluginWizardPageOne.java   View source code 6 votes vote down vote up
public void customizeManifest(Element rootElem, IProject project, IProgressMonitor monitor) throws CoreException
{
	if( equella.isLanguageStrings() )
	{
		Element runtime = rootElem.getChild("runtime");
		addLibrary(runtime, "resources", "resources/", "resources");
		JPFProject.getResourcesFolder(project).create(true, true, monitor);
	}
	Element requires = rootElem.getChild("requires");
	if( equella.isGuiceModule() )
	{
		addImport(requires, "com.tle.core.guice");
		addExtension(rootElem, "com.tle.core.guice", "module", "guiceModules");
	}
	if( equella.isLanguageStrings() )
	{
		addImport(requires, "com.tle.common.i18n");
		Element ext = addExtension(rootElem, "com.tle.common.i18n", "bundle", "strings");
		addParameter(ext, "file", "lang/i18n.properties");
		IFolder langFolder = JPFProject.getResourcesFolder(project).getFolder("lang");
		langFolder.create(true, true, monitor);
		langFolder.getFile("i18n.properties").create(new ByteArrayInputStream("# add your strings".getBytes()),
			true, monitor);
	}

}
 
Example 14
Project: gw4e.project   File: EditorHelper.java   View source code 6 votes vote down vote up
public static File getEditedFileFolder() {
	IWorkbenchPage page = null;
	IWorkbenchWindow[] windows = PlatformUI.getWorkbench().getWorkbenchWindows();
	for (int i = 0; i < windows.length; i++) {
		if (windows[i] != null) {
			IWorkbenchWindow window = windows[i];
			page = windows[i].getActivePage();
			if (page != null)
				break;
		}
	}
	IEditorPart part = page.getActiveEditor();
	FileEditorInput editor = (FileEditorInput) part.getEditorInput();
	IFile file = editor.getFile();
	IFolder folder = (IFolder) file.getParent();
	File f = null;
	try {
		f = ResourceManager.toFile(folder.getFullPath());
	} catch (FileNotFoundException e) {
		ResourceManager.logException(e);
	}
	return f;
}
 
Example 15
Project: gw4e.project   File: MoveCompilationUnitChange.java   View source code 6 votes vote down vote up
private IFolder computeCompilationUnitDestination() throws CoreException {
	IPath pkg = null;
	switch (type) {
	case TEST_INTERFACE:
		IProject project = graphFile.getProject();
		boolean isMain = PreferenceManager.isInMainPath(getDestination().getFile(graphFile.getName()).getFullPath());
		pkg = ResourceManager.getPathWithinPackageFragment(getDestination().getFile("foo.txt")).removeLastSegments(1);
		IPath pathFolderForTestInterface = project.getFullPath()
				.append(GraphWalkerContextManager.getTargetFolderForTestInterface(project.getName(), isMain))
				.append(pkg);
		ResourceManager.ensureFolderPath(pathFolderForTestInterface);
		return (IFolder) ResourceManager.getResource(pathFolderForTestInterface.toString());

	case TEST_IMPLEMENTATION:
		IPath path = PreferenceManager.getTargetFolderForGeneratedTests(getDestination().getFile(graphFile.getName()));
		pkg = ResourceManager.getPathWithinPackageFragment(getDestination().getFile("foo.txt")).removeLastSegments(1);
		IPath newpath = path.append(pkg);
		ResourceManager.ensureFolderPath(newpath);
		return (IFolder) ResourceManager.getResource(newpath.toString());
	}

	throw new IllegalStateException("Unknown type " + type);
}
 
Example 16
Project: gw4e.project   File: BuildPolicyManager.java   View source code 6 votes vote down vote up
public static IFile getBuildPoliciesForGraph(IFile file, boolean create)
		throws CoreException, FileNotFoundException {
	String name = PreferenceManager.getBuildPoliciesFileName(file.getProject().getName());
	IFolder folder = (IFolder) file.getParent();
	IFile policiesFile = folder.getFile(name);
	if (policiesFile == null || !policiesFile.exists()) {
		if (create) {
			byte[] bytes = getDefaultBuildFileComment().getBytes();
			InputStream source = new ByteArrayInputStream(bytes);
			policiesFile.create(source, IResource.NONE, null);
			policiesFile.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
		} else {
			throw new FileNotFoundException(folder.getFullPath().append(name).toString());
		}
	}
	return policiesFile;
}
 
Example 17
Project: gw4e.project   File: RenameGraphParticipant.java   View source code 6 votes vote down vote up
private boolean process(Object element, RenameArguments arguments) {
	if (element instanceof IFile) {
		originalFile = (IFile) element;
		newName =   arguments.getNewName();
		if (!acceptFile(originalFile))
			return false;
		RenameChange operation = new RenameGraphFileChange(originalFile.getProject(),originalFile.getFullPath(), newName);
		renameOperations.add(operation);
		return true;
	}
	if (element instanceof IFolder) {
		IFolder folder = (IFolder) element;
		MoveGraphParticipant mgp = new MoveGraphParticipant();
		moveOperations.addAll(mgp.create(folder,(folder.getParent().getFolder(new Path(arguments.getNewName())))));
		return moveOperations.size()>0;
	}
	return false;
}
 
Example 18
Project: Tarski   File: SigTypeLabelProvider.java   View source code 6 votes vote down vote up
@Override
public Image getImage(Object element) {
  if (element instanceof IProject) {
    if (((IProject) element).isOpen()) {
      return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OBJ_PROJECT);
    } else {
      return PlatformUI.getWorkbench().getSharedImages()
          .getImage(SharedImages.IMG_OBJ_PROJECT_CLOSED);
    }
  } else if (element instanceof IFolder) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);
  } else if (element instanceof IFile) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FILE);
  } else if (element instanceof IMarker) {
    return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OPEN_MARKER);
  }

  return null;
}
 
Example 19
Project: pgcodekeeper   File: IPgObjectPage.java   View source code 6 votes vote down vote up
static IFolder createSchema(String name, boolean open, IProject project) throws CoreException {
    IFolder projectFolder = project.getFolder(DbObjType.SCHEMA.name());
    if (!projectFolder.exists()) {
        projectFolder.create(false, true, null);
    }
    IFolder schemaFolder = projectFolder.getFolder(name);
    if (!schemaFolder.exists()) {
        schemaFolder.create(false, true, null);
    }
    IFile file = projectFolder.getFile(name + POSTFIX);
    if (!file.exists()) {
        StringBuilder sb = new StringBuilder();
        sb.append(MessageFormat.format(PATTERN, DbObjType.SCHEMA, name));
        sb.append(MessageFormat.format(OWNER_TO, DbObjType.SCHEMA, name));
        file.create(new ByteArrayInputStream(sb.toString().getBytes()), false, null);
    }
    if (open) {
        openFileInEditor(file);
    }
    return schemaFolder;
}
 
Example 20
Project: neoscada   File: CommonHandler.java   View source code 6 votes vote down vote up
@Override
public void process ( final String phase, final IFolder nodeDir, final IProgressMonitor monitor, final Map<String, String> properties ) throws Exception
{
    if ( phase != null && !"package".equals ( phase ) )
    {
        return;
    }

    if ( Boolean.parseBoolean ( properties.get ( "skipDeployment" ) ) )
    {
        return;
    }

    handleProcess ( nodeDir, monitor, properties );
    monitor.done ();
}
 
Example 21
Project: gw4e.project   File: TestConvertor.java   View source code 5 votes vote down vote up
private void findOldGraphFile(IProgressMonitor monitor) throws JavaModelException, FileNotFoundException {
	AnnotationParsing ap = JDTManager.findAnnotationParsingInModelAnnotation(testInterface, "file");
	this.model = ap.getValue("file");
	IPackageFragmentRoot[] roots = testInterface.getJavaProject().getPackageFragmentRoots();
	for (int j = 0; j < roots.length; j++) {
		IPackageFragmentRoot root = roots[j];
		IFolder resource = (IFolder) root.getResource();
		if (resource==null) throw new FileNotFoundException (model);
		IFile graphFile = resource.getFile(model);
		if (graphFile.exists()) {
			oldGraphFile = graphFile;
			break;
		}
	}
}
 
Example 22
Project: n4js   File: ProjectUtils.java   View source code 5 votes vote down vote up
/** Applies the Xtext nature to the project and creates (if necessary) and returns the source folder. */
public static IFolder configureProjectWithXtext(IProject project, String sourceFolder) throws CoreException {
	addNature(project.getProject(), XtextProjectHelper.NATURE_ID);
	IFolder folder = project.getProject().getFolder(sourceFolder);
	if (!folder.exists()) {
		folder.create(true, true, null);
	}
	return folder;
}
 
Example 23
Project: n4js   File: AbstractBuilderParticipantTest.java   View source code 5 votes vote down vote up
/***/
protected IFolder createFolder(IProject project, String path) throws CoreException {
	IFolder folder = project.getFolder(path);
	if (!folder.exists()) {
		createParentFolder(folder);
		folder.create(true, true, null);
	}
	return folder;
}
 
Example 24
Project: gw4e.project   File: TestConvertor.java   View source code 5 votes vote down vote up
private void setNewGraphFile(IProgressMonitor monitor) throws CoreException {
	String extension = oldGraphFile.getFileExtension();
	int pos  = oldGraphFile.getName().indexOf(extension);
	String name = oldGraphFile.getName().substring(0,pos);
	IPath path = oldGraphFile.getFullPath().removeLastSegments(1);
	IFolder f  =  (IFolder) ResourceManager.getResource(path.toString());
	newGraphFile = f.getFile(name + "json");
}
 
Example 25
Project: n4js   File: AbstractBuilderParticipantTest.java   View source code 5 votes vote down vote up
/***/
protected void replaceFileContentAndWaitForRefresh(IFolder folder, IFile file, String newContent)
		throws IOException, CoreException {
	File fileInFilesystem = file.getLocation().toFile();
	FileWriter fileWriter = new FileWriter(fileInFilesystem);
	fileWriter.write(newContent);
	fileWriter.close();
	folder.refreshLocal(IResource.DEPTH_INFINITE, monitor());
	waitForAutoBuild();
}
 
Example 26
Project: visuflow-plugin   File: JimpleBuilder.java   View source code 5 votes vote down vote up
protected void fullBuild(IProgressMonitor monitor) throws CoreException{
	Visuflow.getDefault().getLogger().info("Build Start");
	String targetFolder = "sootOutput";
	IJavaProject project = JavaCore.create(getProject());
	IResourceDelta delta = getDelta(project.getProject());
	if (delta == null || !delta.getAffectedChildren()[0].getProjectRelativePath().toString().equals(targetFolder)) {
		classpath = getSootCP(project);
		String location = GlobalSettings.get("Target_Path");
		IFolder folder = project.getProject().getFolder(targetFolder);

		// at this point, no resources have been created
		if (!folder.exists()) {
			// Changed to force because of bug id vis-119
			folder.create(IResource.FORCE, true, monitor);

		} else {
			for (IResource resource : folder.members()) {
				resource.delete(IResource.FORCE, monitor);
			}
		}
		classpath = location + classpath;
		String[] sootString = new String[] { "-cp", classpath, "-exclude", "javax", "-allow-phantom-refs", "-no-bodies-for-excluded", "-process-dir",
				location, "-src-prec", "only-class", "-w", "-output-format", "J", "-keep-line-number", "-output-dir",
				folder.getLocation().toOSString()/* , "tag.ln","on" */ };
		ICFGStructure icfg = new ICFGStructure();
		JimpleModelAnalysis analysis = new JimpleModelAnalysis();
		analysis.setSootString(sootString);
		List<VFClass> jimpleClasses = new ArrayList<>();
		try {
			analysis.createICFG(icfg, jimpleClasses);
			fillDataModel(icfg, jimpleClasses);
		} catch(Exception e) {
			logger.error("Couldn't execute analysis", e);
		}

		folder.refreshLocal(IResource.DEPTH_INFINITE, monitor);
	}
}
 
Example 27
Project: gw4e.project   File: ResourceManagerTest.java   View source code 5 votes vote down vote up
@Test
public void testEnsureFolderIProjectStringIProgressMonitor() throws Exception {
	IJavaProject project = ProjectHelper.getOrCreateSimpleGW4EProject(PROJECT_NAME, false, false);
	ResourceManager.ensureFolder(project.getProject(), "src/test/main", new NullProgressMonitor());
	IFolder f = project.getProject().getFolder("src/test/main");
	assertTrue(f.exists());
}
 
Example 28
Project: Hydrograph   File: ResourceChangeUtil.java   View source code 5 votes vote down vote up
public static void addMembersToList(List<IResource> memberList, IFolder folder) {
	try {
		for(IResource resource: folder.members()) {
			if(resource instanceof IFile) {
				memberList.add(resource);
			}
			else {
				addMembersToList(memberList, (IFolder)resource);
			}
		}
	} catch (CoreException e) {
		logger.debug("Unable to add members to list " , e);
	}
}
 
Example 29
Project: Hydrograph   File: ValidateExpressionToolButton.java   View source code 5 votes vote down vote up
private static String getPropertyFilePath(IJavaProject project) {
	LOGGER.debug("Adding UserFunctions.propertis file URL to build-path");
	IFolder settingFolder=project.getProject().getFolder(PathConstant.PROJECT_RESOURCES_FOLDER);
	if(settingFolder.exists()){
		IFile file=settingFolder.getFile(PathConstant.EXPRESSION_EDITOR_EXTERNAL_JARS_PROPERTIES_FILES);
		if(file.exists()){
			return file.getLocation().toString();
		}
	}
	return Constants.EMPTY_STRING;
}
 
Example 30
Project: n4js   File: EclipseBasedProjectModelSetup.java   View source code 5 votes vote down vote up
private void createArchive(String projectName) throws CoreException, IOException {
	IProject project = workspace.getProject(projectName);
	IFolder libFolder = project.getFolder(LIB_FOLDER_NAME);
	libFolder.create(false, true, null);

	IFile archiveFile = libFolder.getFile(host.archiveProjectId + ".nfar");
	ByteArrayOutputStream byteArrayOutputSteam = new ByteArrayOutputStream();
	final ZipOutputStream zipOutputStream = new ZipOutputStream(byteArrayOutputSteam);
	zipOutputStream.putNextEntry(new ZipEntry("src/A.js"));
	zipOutputStream.putNextEntry(new ZipEntry("src/B.js"));
	zipOutputStream.putNextEntry(new ZipEntry("src/sub/B.js"));
	zipOutputStream.putNextEntry(new ZipEntry("src/sub/C.js"));
	zipOutputStream.putNextEntry(new ZipEntry("src/sub/leaf/D.js"));

	zipOutputStream.putNextEntry(new ZipEntry(IN4JSProject.N4MF_MANIFEST));
	// this will close the stream
	CharStreams.write("ProjectId: " + host.archiveProjectId + "\n" +
			"ProjectType: library\n" +
			"ProjectVersion: 0.0.1-SNAPSHOT\n" +
			"VendorId: org.eclipse.n4js\n" +
			"VendorName: \"Eclipse N4JS Project\"\n" +
			"Libraries { \"" + LIB_FOLDER_NAME + "\"\n }\n" +
			"Output: \"src-gen\"" +
			"Sources {\n" +
			"	source { " +
			"		\"src\"\n" +
			"	}\n" +
			"}\n", CharStreams.newWriterSupplier(new OutputSupplier<ZipOutputStream>() {
				@Override
				public ZipOutputStream getOutput() throws IOException {
					return zipOutputStream;
				}
			}, Charsets.UTF_8));

	archiveFile.create(new ByteArrayInputStream(byteArrayOutputSteam.toByteArray()), false, null);

	host.setArchiveFileURI(URI.createPlatformResourceURI(archiveFile.getFullPath().toString(), true));
}
 
Example 31
Project: gemoc-studio   File: IFileUtils.java   View source code 5 votes vote down vote up
public static void writeInFile(IFile file, String contents, IProgressMonitor monitor) throws CoreException, IOException{
	InputStream stream =  new ByteArrayInputStream(contents.getBytes(("UTF-8")));
	if (file.exists()) {
		file.setContents(stream, true, true, monitor);
	} else {
		if(file.getParent() instanceof IFolder && !file.getParent().exists()){
			IFolderUtils.create((IFolder) file.getParent(), true, true, monitor);
		}
		file.create(stream, true, monitor);
	}
	stream.close();
}
 
Example 32
Project: n4js   File: ExternalProject.java   View source code 5 votes vote down vote up
@Override
public IFolder getFolder(String name) {
	final File folderCandidate = getFullPath().append(name).toFile();
	// Shortcut to avoid visiting members with infinite depth
	if (folderCandidate.isDirectory()) {
		return new ExternalFolder(this, this, folderCandidate);
	}

	IFolder resource = getResource(name, IFolder.class);
	if (resource != null)
		return resource;

	return new ExternalFolder(this, this, folderCandidate);
}
 
Example 33
Project: n4js   File: ModuleSpecifierSelectionDialog.java   View source code 5 votes vote down vote up
/**
 * Creates all non-existing segments of the given path.
 *
 * @param path
 *            The path to create
 * @param parent
 *            The container in which the path should be created in
 * @param monitor
 *            A progress monitor. May be {@code null}
 *
 * @return The folder specified by the path
 */
private IContainer createFolderPath(IPath path, IContainer parent, IProgressMonitor monitor) {
	IContainer activeContainer = parent;

	if (null != monitor) {
		monitor.beginTask("Creating folders", path.segmentCount());
	}

	for (String segment : path.segments()) {
		IFolder folderToCreate = activeContainer.getFolder(new Path(segment));
		try {
			if (!folderToCreate.exists()) {
				createFolder(segment, activeContainer, monitor);
			}
			if (null != monitor) {
				monitor.worked(1);
			}
			activeContainer = folderToCreate;
		} catch (CoreException e) {
			LOGGER.error("Failed to create module folders.", e);
			MessageDialog.open(MessageDialog.ERROR, getShell(),
					FAILED_TO_CREATE_FOLDER_TITLE, String.format(FAILED_TO_CREATE_FOLDER_MESSAGE,
							folderToCreate.getFullPath().toString(), e.getMessage()),
					SWT.NONE);
			break;
		}
	}
	return activeContainer;
}
 
Example 34
Project: n4js   File: NfarStorageMapper.java   View source code 5 votes vote down vote up
@Override
public boolean isRejected(IFolder folder) {
	if (isLibraryFolder(folder)) {
		return false;
	}
	Optional<? extends IN4JSSourceContainer> sourceContainerOpt = eclipseCore.create(folder);
	return !sourceContainerOpt.isPresent();
}
 
Example 35
Project: gw4e.project   File: ResourceManager.java   View source code 5 votes vote down vote up
/**
 * Return the passed parameters (a file) as an IFolder
 * 
 * @param file
 * @return
 */
public static IFolder toIFolder(File file) {
	IWorkspace workspace = ResourcesPlugin.getWorkspace();
	IPath location = Path.fromOSString(file.getAbsolutePath());
	IFile ifile = workspace.getRoot().getFileForLocation(location);
	return workspace.getRoot().getFolder(ifile.getFullPath());
}
 
Example 36
Project: n4js   File: N4JSEclipseCore.java   View source code 5 votes vote down vote up
@Override
public Optional<? extends IN4JSSourceContainer> create(IFolder eclipseFolder) {
	if (eclipseFolder == null) {
		return Optional.absent();
	}
	return model.getN4JSSourceContainer(eclipseFolder);
}
 
Example 37
Project: n4js   File: EclipseExternalLibraryWorkspace.java   View source code 5 votes vote down vote up
@Override
public URI findArtifactInFolder(URI folderLocation, String folderRelativePath) {
	ensureInitialized();
	final IResource folder = getResource(folderLocation);
	if (folder instanceof IFolder) {
		final IFile file = ((IFolder) folder).getFile(folderRelativePath);
		if (file instanceof IExternalResource) {
			final File externalResource = ((IExternalResource) file).getExternalResource();
			return URI.createFileURI(externalResource.getAbsolutePath());
		}
	}

	return null;
}
 
Example 38
Project: Tarski   File: MarkAllInWsLabelProvider.java   View source code 5 votes vote down vote up
@Override
public Image getImage(Object element) {
  if (element instanceof IProject)
    if (((IProject) element).isOpen())
      return PlatformUI.getWorkbench().getSharedImages().getImage(SharedImages.IMG_OBJ_PROJECT);
    else
      return PlatformUI.getWorkbench().getSharedImages()
          .getImage(SharedImages.IMG_OBJ_PROJECT_CLOSED);
  else if (element instanceof IFolder)
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);
  else if (element instanceof IFile)
    return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FILE);
  return null;
}
 
Example 39
Project: gw4e.project   File: ResourceManagerTest.java   View source code 5 votes vote down vote up
@Test
public void testCreateFolder() throws Exception {
	IJavaProject project = ProjectHelper.getOrCreateSimpleGW4EProject(PROJECT_NAME, false, false);
	IFolder folder = project.getProject().getFolder("src/test");
	ResourceManager.createFolder(folder.getFullPath().toString(), "kawa");
	folder = project.getProject().getFolder("src/test/kawa");
	assertTrue(folder.exists());
}
 
Example 40
Project: Hydrograph   File: LaunchExpressionEditor.java   View source code 5 votes vote down vote up
private IPath createTemprarySourceFolder(){
	IPath tempSrcFolder=new Path(PathConstant.TEMP_BUILD_PATH_SETTINGS_FOLDER);
	IFolder  folder=BuildExpressionEditorDataSturcture.INSTANCE.getCurrentProject().getFolder(tempSrcFolder);
	try {
	if(!folder.exists()){
			folder.create(true, true,null);
		}
	} catch (CoreException e) {
		LOGGER.error("CoreException occurred while creating temporary source folder",e);
		return null;
	}
	LOGGER.debug("Created temporary build path at "+PathConstant.TEMP_BUILD_PATH_SETTINGS_FOLDER);
	return folder.getFullPath();
}