2323import org .apache .commons .io .IOUtils ;
2424import org .apache .commons .lang3 .ArrayUtils ;
2525import org .apache .commons .lang3 .StringUtils ;
26+ import org .apache .commons .vfs2 .FileObject ;
2627import org .apache .logging .log4j .LogManager ;
2728import org .apache .logging .log4j .Logger ;
2829import org .biojava .nbio .core .sequence .DNASequence ;
@@ -2021,7 +2022,7 @@ else if (o.has("relPath") || o.has("fileName"))
20212022 if (path != null )
20222023 {
20232024 f = pr .resolvePath (path );
2024- f = new File (f , o .getString ("fileName" ));
2025+ f = FileUtil . appendName (f , o .getString ("fileName" ));
20252026 }
20262027 else
20272028 {
@@ -2554,8 +2555,8 @@ protected File getTargetFile(String filename) throws IOException
25542555
25552556 try
25562557 {
2557- File targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer (), "sequenceOutputs" );
2558- return AssayFileWriter .findUniqueFileName (filename , targetDirectory );
2558+ FileObject targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer (), "sequenceOutputs" );
2559+ return AssayFileWriter .findUniqueFileName (filename , targetDirectory ). getPath (). toFile () ;
25592560 }
25602561 catch (ExperimentException e )
25612562 {
@@ -2687,8 +2688,8 @@ protected File getTargetFile(String filename) throws IOException
26872688
26882689 try
26892690 {
2690- File targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer ());
2691- return AssayFileWriter .findUniqueFileName (filename , targetDirectory );
2691+ FileObject targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer ());
2692+ return AssayFileWriter .findUniqueFileName (filename , targetDirectory ). getPath (). toFile () ;
26922693 }
26932694 catch (ExperimentException e )
26942695 {
@@ -2852,8 +2853,8 @@ protected File getTargetFile(String filename) throws IOException
28522853
28532854 try
28542855 {
2855- File targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer ());
2856- return AssayFileWriter .findUniqueFileName (filename , targetDirectory );
2856+ FileObject targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer ());
2857+ return AssayFileWriter .findUniqueFileName (filename , targetDirectory ). getPath (). toFile () ;
28572858 }
28582859 catch (ExperimentException e )
28592860 {
@@ -4141,10 +4142,10 @@ public ApiResponse execute(ImportOutputFilesForm form, BindException errors) thr
41414142 return null ;
41424143 }
41434144
4144- File targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer (), "sequenceOutputs" );
4145+ FileObject targetDirectory = AssayFileWriter .ensureUploadDirectory (getContainer (), "sequenceOutputs" );
41454146 if (!targetDirectory .exists ())
41464147 {
4147- targetDirectory .mkdirs ();
4148+ targetDirectory .createFolder ();
41484149 }
41494150
41504151 if (form .getRecords () != null )
@@ -4154,7 +4155,7 @@ public ApiResponse execute(ImportOutputFilesForm form, BindException errors) thr
41544155 Map <File , Map <String , Object >> toCreate = new HashMap <>();
41554156 for (JSONObject o : JsonUtil .toJSONObjectList (arr ))
41564157 {
4157- File file = new File (dirData , o .getString ("fileName" ));
4158+ File file = FileUtil . appendName (dirData , o .getString ("fileName" ));
41584159 if (!file .exists ())
41594160 {
41604161 errors .reject (ERROR_MSG , "Unknown file: " + file .getPath ());
@@ -4195,12 +4196,12 @@ public ApiResponse execute(ImportOutputFilesForm form, BindException errors) thr
41954196
41964197 for (File file : toCreate .keySet ())
41974198 {
4198- File target = AssayFileWriter .findUniqueFileName (file .getName (), targetDirectory );
4199- FileUtils .moveFile (file , target );
4199+ FileObject target = AssayFileWriter .findUniqueFileName (file .getName (), targetDirectory );
4200+ FileUtils .moveFile (file , target . getPath (). toFile () );
42004201
42014202 ExpData data = ExperimentService .get ().createData (getContainer (), new DataType ("Sequence Output" ));
42024203 data .setName (file .getName ());
4203- data .setDataFileURI (target .toURI ());
4204+ data .setDataFileURI (target .getURI ());
42044205 data .save (getUser ());
42054206
42064207 Map <String , Object > params = toCreate .get (file );
@@ -4235,18 +4236,18 @@ public ApiResponse execute(ImportOutputFilesForm form, BindException errors) thr
42354236 }
42364237
42374238 _log .info ("moving associated file: " + idx .getPath () + ", to: " + idxTargetName );
4238- File idxTarget = new File ( targetDirectory , idxTargetName );
4239+ FileObject idxTarget = targetDirectory . resolveFile ( idxTargetName );
42394240 if (idxTarget .exists ())
42404241 {
42414242 _log .error ("target already exists, skipping: " + idxTargetName );
42424243 }
42434244 else
42444245 {
4245- FileUtils .moveFile (idx , idxTarget );
4246+ FileUtils .moveFile (idx , idxTarget . getPath (). toFile () );
42464247
42474248 ExpData idxData = ExperimentService .get ().createData (getContainer (), new DataType ("Sequence Output" ));
4248- idxData .setName (idxTarget .getName ());
4249- idxData .setDataFileURI (idxTarget .toURI ());
4249+ idxData .setName (idxTarget .getName (). getBaseName () );
4250+ idxData .setDataFileURI (idxTarget .getURI ());
42504251 idxData .save (getUser ());
42514252 }
42524253 }
0 commit comments