renameTo() — netty Function Reference
Architecture documentation for the renameTo() function in AbstractDiskHttpData.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD 9eb75892_964e_3341_39bd_32cf59246e12["renameTo()"] a3bc8afe_67a4_7958_deb1_2411299eac70["AbstractDiskHttpData"] 9eb75892_964e_3341_39bd_32cf59246e12 -->|defined in| a3bc8afe_67a4_7958_deb1_2411299eac70 style 9eb75892_964e_3341_39bd_32cf59246e12 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java lines 372–442
@Override
public boolean renameTo(File dest) throws IOException {
ObjectUtil.checkNotNull(dest, "dest");
if (file == null) {
throw new IOException("No file defined so cannot be renamed");
}
if (!file.renameTo(dest)) {
// must copy
IOException exception = null;
RandomAccessFile inputAccessFile = null;
RandomAccessFile outputAccessFile = null;
long chunkSize = 8196;
long position = 0;
try {
inputAccessFile = new RandomAccessFile(file, "r");
outputAccessFile = new RandomAccessFile(dest, "rw");
FileChannel in = inputAccessFile.getChannel();
FileChannel out = outputAccessFile.getChannel();
while (position < size) {
if (chunkSize < size - position) {
chunkSize = size - position;
}
position += in.transferTo(position, chunkSize, out);
}
} catch (IOException e) {
exception = e;
} finally {
if (inputAccessFile != null) {
try {
inputAccessFile.close();
} catch (IOException e) {
if (exception == null) { // Choose to report the first exception
exception = e;
} else {
logger.warn("Multiple exceptions detected, the following will be suppressed {}", e);
}
}
}
if (outputAccessFile != null) {
try {
outputAccessFile.close();
} catch (IOException e) {
if (exception == null) { // Choose to report the first exception
exception = e;
} else {
logger.warn("Multiple exceptions detected, the following will be suppressed {}", e);
}
}
}
}
if (exception != null) {
throw exception;
}
if (position == size) {
if (!file.delete()) {
logger.warn("Failed to delete: {}", file);
}
file = dest;
isRenamed = true;
return true;
} else {
if (!dest.delete()) {
logger.warn("Failed to delete: {}", dest);
}
return false;
}
}
file = dest;
isRenamed = true;
return true;
}
Domain
Subdomains
Source
Frequently Asked Questions
What does renameTo() do?
renameTo() is a function in the netty codebase, defined in codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java.
Where is renameTo() defined?
renameTo() is defined in codec-http/src/main/java/io/netty/handler/codec/http/multipart/AbstractDiskHttpData.java at line 372.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free