gnodet commented on code in PR #234:
URL: https://github.com/apache/maven-resolver/pull/234#discussion_r1063451155


##########
maven-resolver-util/src/main/java/org/eclipse/aether/util/FileUtils.java:
##########
@@ -85,17 +92,23 @@ public void close() throws IOException
     }
 
     /**
-     * Creates a {@link TempFile} for given file. It will be in same directory 
where given file is, and will reuse its
-     * name for generated name. Returned instance should be handled in 
try-with-resource construct and created temp
-     * file once ready can be moved to passed in {@code file} parameter place.
+     * Creates a {@link CollocatedTempFile} instance for given file without 
backing file. The path will be located in
+     * same directory where given file is, and will reuse its name for 
generated (randomized) name. Returned instance
+     * should be handled in try-with-resource and created temp path is removed 
(if exists) when returned instance is
+     * closed. The {@link CollocatedTempFile#move()} makes possible to 
atomically replace passed in file with the
+     * processed content written into a file backing the {@link 
CollocatedTempFile} instance.
      * <p>
      * The {@code file} nor it's parent directories have to exist. The parent 
directories are created if needed.
+     * <p>
+     * This method uses {@link Path#resolve(String)} to create the temporary 
file path in passed in file parent
+     * directory, but it does NOT create backing file on file system.
      */
     public static CollocatedTempFile newTempFile( Path file ) throws 
IOException
     {
         Path parent = requireNonNull( file.getParent(), "file must have 
parent" );
         Files.createDirectories( parent );
-        Path tempFile = Files.createTempFile( parent, 
file.getFileName().toString(), "tmp" );
+        Path tempFile = parent.resolve(
+                file.getFileName().toString() + Long.toUnsignedString( 
RANDOM.nextLong() ) + ".tmp" );

Review Comment:
   Use `ThreadLocalRandom.current().nextLong()` instead



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@maven.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to