Skip to content

Commit

Permalink
Fixed a bug in src/folder/creationg
Browse files Browse the repository at this point in the history
  • Loading branch information
taksan committed May 3, 2012
1 parent 639b356 commit f0d6a7f
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 8 deletions.
5 changes: 5 additions & 0 deletions plugin/src/objective/Startup.java
@@ -1,5 +1,7 @@
package objective;

import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
import org.eclipse.jdt.internal.ui.JavaPlugin;
import org.eclipse.jface.text.templates.Template;
import org.eclipse.jface.text.templates.persistence.TemplateStore;
Expand All @@ -20,5 +22,8 @@ public void earlyStartup() {

Template catchBlock = codeTemplateStore.findTemplate("catchblock");
catchBlock.setPattern("throw new RuntimeException(${exception_var});");

IEclipsePreferences preferences = ConfigurationScope.INSTANCE.getNode("org.eclipse.core.runtime");
preferences.putBoolean("escapeStrings", true);
}
}
34 changes: 26 additions & 8 deletions plugin/src/objective/actions/TestCounterpartCreator.java
Expand Up @@ -131,18 +131,36 @@ private String getCounterpartFolder(IJavaElement elem) {
}

private IPackageFragmentRoot createMissingFolder(IJavaProject project, String missingFolderPath) {
IFolder folder = project.getProject().getFolder(missingFolderPath);
addNewFolderToClasspath(project, missingFolderPath);
IFolder folder = createFolderAndParents(project, missingFolderPath);
addFolderToClasspath(project, missingFolderPath);

try {
folder.create(true, true, getMonitor());
} catch (CoreException e) {
e.printStackTrace();
}
return project.getPackageFragmentRoot(folder);
}

private IFolder createFolderAndParents(IJavaProject project, String missingFolderPath) {
String[] parts = missingFolderPath.replaceFirst("^/","").split("/");
String pathToCreate="";
for (String folderPart : parts) {
pathToCreate +="/" + folderPart;
createFolder(project, pathToCreate);
}

return project.getProject().getFolder(missingFolderPath);
}

private IFolder createFolder(IJavaProject project, String pathToCreate) {
IFolder folder = project.getProject().getFolder(pathToCreate);
if (!folder.exists()) {
try {
folder.create(true, true, null);
} catch (CoreException e) {
e.printStackTrace();
}
}
return folder;
}

private void addNewFolderToClasspath(
private void addFolderToClasspath(
IJavaProject project,
String missingFolder)
{
Expand Down

0 comments on commit f0d6a7f

Please sign in to comment.