BulkFileAttributesReadInspection: clustering attribute calls by loops before reporting (IJ-CR-20279)

GitOrigin-RevId: 70cebc3298eea9feb57f7b4f1f4ca7b8b0535c66
This commit is contained in:
Artemiy Sartakov
2022-02-14 13:16:26 +07:00
committed by intellij-monorepo-bot
parent 1df9c064f4
commit 6633bef908
12 changed files with 232 additions and 59 deletions

View File

@@ -0,0 +1,21 @@
// "Replace with bulk 'Files.readAttributes' call" "true"
import java.io.*;
import java.nio.file.Files;
import java.nio.file.attribute.BasicFileAttributes;
class Foo {
long isNewFile(File file, long lastModified) {
System.out.println(file.isFile());
while (file.isDirectory()) {
BasicFileAttributes basicFileAttributes;
try {
basicFileAttributes = Files.readAttributes(file.toPath(), BasicFileAttributes.class);
} catch (IOException e) {
throw new UncheckedIOException(e);
}
System.out.println(basicFileAttributes.isRegularFile());
System.out.println(basicFileAttributes.size());
}
return file.lastModified();
}
}

View File

@@ -0,0 +1,21 @@
// "Replace with bulk 'Files.readAttributes' call" "true"
import java.io.*;
import java.nio.file.Files;
import java.nio.file.attribute.BasicFileAttributes;
class Foo {
void printWhileDirectory(File file) {
BasicFileAttributes basicFileAttributes;
try {
basicFileAttributes = Files.readAttributes(file.toPath(), BasicFileAttributes.class);
} catch (IOException e) {
throw new UncheckedIOException(e);
}
System.out.println(basicFileAttributes.isRegularFile());
System.out.println(basicFileAttributes.lastModifiedTime().toMillis());
while (file.isDirectory()) {
System.out.println(file.isFile());
System.out.println(file.length());
}
}
}

View File

@@ -0,0 +1,23 @@
// "Replace with bulk 'Files.readAttributes' call" "true"
import java.io.*;
import java.nio.file.Files;
import java.nio.file.attribute.BasicFileAttributes;
class Foo {
long isNewFile(File file, long lastModified) {
while (file.isDirectory()) {
System.out.println(file.isFile());
for (int i = 0; i < 10 && file.isDirectory(); i++) {
BasicFileAttributes basicFileAttributes;
try {
basicFileAttributes = Files.readAttributes(file.toPath(), BasicFileAttributes.class);
} catch (IOException e) {
throw new UncheckedIOException(e);
}
System.out.println(basicFileAttributes.isRegularFile());
System.out.println(basicFileAttributes.size());
}
}
return file.lastModified();
}
}

View File

@@ -6,7 +6,7 @@ import java.nio.file.attribute.BasicFileAttributes;
class Foo {
long isNewFile(File file) throws IOException {
BasicFileAttributes basicFileAttributes = Files.readAttributes(file.toPath(), BasicFileAttributes.class);
while (basicFileAttributes.isDirectory()) {
if (basicFileAttributes.isDirectory()) {
System.out.println(basicFileAttributes.isRegularFile());
}
return basicFileAttributes.lastModifiedTime().toMillis();

View File

@@ -11,7 +11,7 @@ class Foo {
} catch (IOException e) {
throw new UncheckedIOException(e);
}
while (basicFileAttributes.isDirectory()) {
if (basicFileAttributes.isDirectory()) {
System.out.println(basicFileAttributes.isRegularFile());
}
return basicFileAttributes.lastModifiedTime().toMillis();

View File

@@ -0,0 +1,13 @@
// "Replace with bulk 'Files.readAttributes' call" "true"
import java.io.*;
class Foo {
long isNewFile(File file, long lastModified) {
System.out.println(file.isFile());
while (file.isDirectory()) {
System.out.println(file.i<caret>sFile());
System.out.println(file.length());
}
return file.lastModified();
}
}

View File

@@ -0,0 +1,13 @@
// "Replace with bulk 'Files.readAttributes' call" "true"
import java.io.*;
class Foo {
void printWhileDirectory(File file) {
System.out.println(file<caret>.isFile());
System.out.println(file.lastModified());
while (file.isDirectory()) {
System.out.println(file.isFile());
System.out.println(file.length());
}
}
}

View File

@@ -0,0 +1,15 @@
// "Replace with bulk 'Files.readAttributes' call" "true"
import java.io.*;
class Foo {
long isNewFile(File file, long lastModified) {
while (file.isDirectory()) {
System.out.println(file.isFile());
for (int i = 0; i < 10 && file.isDirectory(); i++) {
System.out.println(file.i<caret>sFile());
System.out.println(file.length());
}
}
return file.lastModified();
}
}

View File

@@ -0,0 +1,13 @@
// "Replace with bulk 'Files.readAttributes' call" "false"
import java.io.*;
class Foo {
long isNewFile(File file, long lastModified) {
System.out.println(file.isFile());
System.out.println(file.length());
while (file.isDirectory()) {
System.out.println(file.i<caret>sFile());
}
return file.lastModified();
}
}

View File

@@ -3,7 +3,7 @@ import java.io.*;
class Foo {
long isNewFile(File file) throws IOException {
while (file.isDire<caret>ctory()) {
if (file.isDirecto<caret>ry()) {
System.out.println(file.isFile());
}
return file.lastModified();

View File

@@ -3,7 +3,7 @@ import java.io.*;
class Foo {
long isNewFile(File file, long lastModified) {
while (file.isDire<caret>ctory()) {
if (file.isDirecto<caret>ry()) {
System.out.println(file.isFile());
}
return file.lastModified();