public Resource getWritableResource(String relativePath) {
File file = getFile(relativePath);
File parentDir = file.getParentFile();
+
if (!parentDir.exists()) {
+ // Creates if necessary
if (log.isTraceEnabled())
log.trace("Creating parent directory " + parentDir);
parentDir.mkdirs();
+ executionContext.getUuid();
File executionDir = new File(path);
- // Creates if necessary
- if (!executionDir.exists()) {
- if (log.isDebugEnabled())
- log.debug("Creating execution directory " + executionDir);
- executionDir.mkdirs();
- }
-
return new File(executionDir.getPath() + File.separator
+ relativePath.replace('/', File.separatorChar));
}
try {
// Resource
Resource resource = executionResources
- .getWritableResource("subdir/textRes.txt");
+ .getWritableResource("subdir1/textRes.txt");
+ assertTrue(resource.getFile().getParentFile().exists());
+ assertFalse(resource.getFile().exists());
FileUtils.writeStringToFile(resource.getFile(), expected);
reached = FileUtils.readFileToString(resource.getFile());
assertEquals(expected, reached);
// File
- File file = executionResources.getFile("subdir/textFile.txt");
+ File file = executionResources.getFile("subdir2/textFile.txt");
+ assertFalse(file.getParentFile().exists());
+ assertFalse(file.exists());
FileUtils.writeStringToFile(file, expected);
reached = FileUtils.readFileToString(file);
assertEquals(expected, reached);