michael-o commented on code in PR #471:
URL: https://github.com/apache/maven-resolver/pull/471#discussion_r1567201048


##########
maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultPathProcessor.java:
##########
@@ -21,22 +21,47 @@
 import javax.inject.Named;
 import javax.inject.Singleton;
 
-import java.io.*;
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.nio.ByteBuffer;
 import java.nio.charset.StandardCharsets;
+import java.nio.file.AccessDeniedException;
+import java.nio.file.FileSystemException;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.StandardCopyOption;
+import java.nio.file.attribute.FileTime;
 
 import org.eclipse.aether.spi.io.PathProcessor;
 import org.eclipse.aether.util.FileUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * A utility class helping with file-based operations.
  */
 @Singleton
 @Named
 public class DefaultPathProcessor implements PathProcessor {
+    private final Logger logger = LoggerFactory.getLogger(getClass());
+
+    @Override
+    public void setLastModified(Path path, long value) throws IOException {
+        try {
+            Files.setLastModifiedTime(path, FileTime.fromMillis(value));
+        } catch (FileSystemException e) {
+            // MRESOLVER-536: Java uses generic FileSystemException for some 
weird cases,
+            // but some subclasses like AccessDeniedEx should be re-thrown
+            if (e instanceof AccessDeniedException) {
+                throw e;
+            }
+            logger.debug("Failed to set last-modified: {}", path, e);

Review Comment:
   `"Failed to set last modified date: {}"`



##########
maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/DefaultPathProcessor.java:
##########
@@ -21,22 +21,47 @@
 import javax.inject.Named;
 import javax.inject.Singleton;
 
-import java.io.*;
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.nio.ByteBuffer;
 import java.nio.charset.StandardCharsets;
+import java.nio.file.AccessDeniedException;
+import java.nio.file.FileSystemException;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.StandardCopyOption;
+import java.nio.file.attribute.FileTime;
 
 import org.eclipse.aether.spi.io.PathProcessor;
 import org.eclipse.aether.util.FileUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * A utility class helping with file-based operations.
  */
 @Singleton
 @Named
 public class DefaultPathProcessor implements PathProcessor {
+    private final Logger logger = LoggerFactory.getLogger(getClass());
+
+    @Override
+    public void setLastModified(Path path, long value) throws IOException {
+        try {
+            Files.setLastModifiedTime(path, FileTime.fromMillis(value));
+        } catch (FileSystemException e) {
+            // MRESOLVER-536: Java uses generic FileSystemException for some 
weird cases,
+            // but some subclasses like AccessDeniedEx should be re-thrown
+            if (e instanceof AccessDeniedException) {
+                throw e;
+            }
+            logger.debug("Failed to set last-modified: {}", path, e);

Review Comment:
   I think this should be even on trace because it can be very verbose....



-- 
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