Skip to content

Commit

Permalink
related to #4074 fixed creation of local file directories even if sto…
Browse files Browse the repository at this point in the history
…rage driver is not local #3921
  • Loading branch information
rbhatta99 committed Aug 14, 2017
1 parent 7b3a3e4 commit c2f3f05
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 30 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,10 @@ public void open (DataAccessOption... options) throws IOException {
this.setVarHeader(varHeaderLine);
}
} else if (isWriteAccess) {

if (dataFile.getOwner().getFileSystemDirectory() != null && !Files.exists(dataFile.getOwner().getFileSystemDirectory())) {
Files.createDirectories(dataFile.getOwner().getFileSystemDirectory());
}
FileOutputStream fout = openLocalFileAsOutputStream();

if (fout == null) {
Expand Down
16 changes: 8 additions & 8 deletions src/main/java/edu/harvard/iq/dataverse/export/ExportService.java
Original file line number Diff line number Diff line change
Expand Up @@ -230,14 +230,14 @@ public Exporter getExporter(String formatName) throws ExportException {
// in a file in the dataset directory / container based on its DOI:
private void cacheExport(DatasetVersion version, String format, JsonObject datasetAsJson, Exporter exporter) throws ExportException {
try {
if (version.getDataset().getFileSystemDirectory() != null && !Files.exists(version.getDataset().getFileSystemDirectory())) {
/* Note that "createDirectories()" must be used - not
* "createDirectory()", to make sure all the parent
* directories that may not yet exist are created as well.
*/

Files.createDirectories(version.getDataset().getFileSystemDirectory());
}
// if (version.getDataset().getFileSystemDirectory() != null && !Files.exists(version.getDataset().getFileSystemDirectory())) {
// /* Note that "createDirectories()" must be used - not
// * "createDirectory()", to make sure all the parent
// * directories that may not yet exist are created as well.
// */
//
// Files.createDirectories(version.getDataset().getFileSystemDirectory());
// }

// With some storage drivers, we can open a WritableChannel, or OutputStream
// to directly write the generated metadata export that we want to cache;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -190,27 +190,27 @@ public void addFiles (DatasetVersion version, List<DataFile> newFiles) {
IngestUtil.checkForDuplicateFileNamesFinal(version, newFiles);

Dataset dataset = version.getDataset();

try {
if (dataset.getFileSystemDirectory() != null && !Files.exists(dataset.getFileSystemDirectory())) {
/* Note that "createDirectories()" must be used - not
* "createDirectory()", to make sure all the parent
* directories that may not yet exist are created as well.
*/

Files.createDirectories(dataset.getFileSystemDirectory());
}
} catch (IOException dirEx) {
logger.severe("Failed to create dataset directory " + dataset.getFileSystemDirectory().toString());
return;
// TODO:
// Decide how we are communicating failure information back to
// the page, and what the page should be doing to communicate
// it to the user - if anything.
// -- L.A.
}

if (dataset.getFileSystemDirectory() != null && Files.exists(dataset.getFileSystemDirectory())) {
//this is not necessary as directories are being created as soon as a storageIO object is creared
// try {
// if (dataset.getFileSystemDirectory() != null && !Files.exists(dataset.getFileSystemDirectory())) {
// /* Note that "createDirectories()" must be used - not
// * "createDirectory()", to make sure all the parent
// * directories that may not yet exist are created as well.
// */
//
// Files.createDirectories(dataset.getFileSystemDirectory());
// }
// } catch (IOException dirEx) {
// logger.severe("Failed to create dataset directory " + dataset.getFileSystemDirectory().toString());
// return;
// // TODO:
// // Decide how we are communicating failure information back to
// // the page, and what the page should be doing to communicate
// // it to the user - if anything.
// // -- L.A.
// }

// if (dataset.getFileSystemDirectory() != null && Files.exists(dataset.getFileSystemDirectory())) {
for (DataFile dataFile : newFiles) {
String tempFileLocation = FileUtil.getFilesTempDirectory() + "/" + dataFile.getStorageIdentifier();

Expand Down Expand Up @@ -377,7 +377,7 @@ from a local InputStream (or a readChannel) into the
//performPostProcessingTasks(dataFile);
}
logger.fine("Done! Finished saving new files in permanent storage.");
}
// }
}
}

Expand Down

0 comments on commit c2f3f05

Please sign in to comment.