Currently the moveTo method provides for two simple usages:
source.moveTo(target)
source.moveTo(target, REPLACE_EXISTING)
and one advanced usage:
source.moveTo(target, ATOMIC_MOVE)
The simple usages are allowed to implement the move as a copy+delete so that they can move the file to another volume/file-system. The advanced case is required to be atomic but cannot provide a guarantee that it won't override an existing file.
This RFE is submitted to consider the case where an application wants to rename a file and have it fail if the target is on another volume/file-system -- ie: something like:
source.moveTo(target, NOCOPY_ALLOWED)