Lines 45-55
Link Here
|
45 |
|
45 |
|
46 |
import java.io.BufferedReader; |
46 |
import java.io.BufferedReader; |
47 |
import java.io.BufferedWriter; |
47 |
import java.io.BufferedWriter; |
|
|
48 |
import java.io.File; |
48 |
import java.io.IOException; |
49 |
import java.io.IOException; |
49 |
import java.io.InputStream; |
50 |
import java.io.InputStream; |
50 |
import java.io.InputStreamReader; |
51 |
import java.io.InputStreamReader; |
51 |
import java.io.OutputStream; |
52 |
import java.io.OutputStream; |
52 |
import java.io.OutputStreamWriter; |
53 |
import java.io.OutputStreamWriter; |
|
|
54 |
import java.net.URL; |
53 |
import java.util.ArrayList; |
55 |
import java.util.ArrayList; |
54 |
import java.util.Collection; |
56 |
import java.util.Collection; |
55 |
import java.util.Collections; |
57 |
import java.util.Collections; |
Lines 80-85
Link Here
|
80 |
import org.openide.filesystems.FileLock; |
82 |
import org.openide.filesystems.FileLock; |
81 |
import org.openide.filesystems.FileObject; |
83 |
import org.openide.filesystems.FileObject; |
82 |
import org.openide.filesystems.FileUtil; |
84 |
import org.openide.filesystems.FileUtil; |
|
|
85 |
import org.openide.filesystems.URLMapper; |
83 |
import org.openide.loaders.DataObject; |
86 |
import org.openide.loaders.DataObject; |
84 |
import org.openide.util.Lookup; |
87 |
import org.openide.util.Lookup; |
85 |
import org.openide.xml.XMLUtil; |
88 |
import org.openide.xml.XMLUtil; |
Lines 117-123
Link Here
|
117 |
prjParams.setPostCreationClassName(postCreationClassName); |
120 |
prjParams.setPostCreationClassName(postCreationClassName); |
118 |
} |
121 |
} |
119 |
if (mainProject != null) { |
122 |
if (mainProject != null) { |
120 |
FileObject parentFolderLocation = FileUtil.createFolder(prjParams.getSourceFileSystem().getRoot(), prjParams.getProjectFolderPath()); |
123 |
final String projectFolderPath = prjParams.getProjectFolderPath(); |
|
|
124 |
workAroundBug203507(projectFolderPath); |
125 |
FileObject parentFolderLocation = FileUtil.createFolder(prjParams.getSourceFileSystem().getRoot(), projectFolderPath); |
121 |
FileObject mainProjectLocation; |
126 |
FileObject mainProjectLocation; |
122 |
if (mainProject.equals(".")) { // NOI18N |
127 |
if (mainProject.equals(".")) { // NOI18N |
123 |
mainProjectLocation = parentFolderLocation; |
128 |
mainProjectLocation = parentFolderLocation; |
Lines 343-350
Link Here
|
343 |
"APPLICATION", flavor, family, host, platform, "SAMPLE_PROJECT"); //NOI18N |
348 |
"APPLICATION", flavor, family, host, platform, "SAMPLE_PROJECT"); //NOI18N |
344 |
} |
349 |
} |
345 |
|
350 |
|
|
|
351 |
public static void workAroundBug203507(String projectFolderPath) { |
352 |
if (projectFolderPath.length()>1 && projectFolderPath.charAt(1) == ':') { |
353 |
// This is ugly work around Bug #203507 |
354 |
try { |
355 |
File driver = new File(projectFolderPath.substring(0,2)); |
356 |
URL url = driver.toURI().toURL(); |
357 |
/*FileObject driverFO =*/ URLMapper.findFileObject(url); |
358 |
} catch (Throwable e) { |
359 |
} |
360 |
} |
361 |
|
362 |
} |
363 |
|
346 |
public static Set<DataObject> createProjectFromTemplate(InputStream inputStream, ProjectGenerator.ProjectParameters prjParams) throws IOException { |
364 |
public static Set<DataObject> createProjectFromTemplate(InputStream inputStream, ProjectGenerator.ProjectParameters prjParams) throws IOException { |
347 |
FileObject prjLoc = FileUtil.createFolder(prjParams.getSourceFileSystem().getRoot(), prjParams.getProjectFolderPath()); |
365 |
String projectFolderPath = prjParams.getProjectFolderPath(); |
|
|
366 |
workAroundBug203507(projectFolderPath); |
367 |
FileObject prjLoc = FileUtil.createFolder(prjParams.getSourceFileSystem().getRoot(), projectFolderPath); |
348 |
unzip(inputStream, prjLoc); |
368 |
unzip(inputStream, prjLoc); |
349 |
postProcessProject(prjLoc, prjParams.getProjectName(), prjParams); |
369 |
postProcessProject(prjLoc, prjParams.getProjectName(), prjParams); |
350 |
customPostProcessProject(prjLoc, prjParams.getProjectName(), prjParams); |
370 |
customPostProcessProject(prjLoc, prjParams.getProjectName(), prjParams); |