protected boolean osFileMove(File dest,File source){
  if (source.renameTo(dest)) {
    return true;
  }
  if (source.exists() && source.isFile() && source.canRead()&& source.canWrite()&& !dest.exists()) {
    if (osFileCopy(dest,source)) {
      if (osDeleteFile(source)) {
        return true;
      }
 else {
        osDeleteFile(dest);
      }
    }
  }
  return false;
}

protected boolean osFileMove ( File dest , File source ) { if ( source . renameTo ( dest ) ) { return true ; } if ( source . exists ( ) && source . isFile ( ) && source . canRead ( ) && source . canWrite ( ) && ! dest . exists ( ) ) { if ( osFileCopy ( dest , source ) ) { if ( osDeleteFile ( source ) ) { return true ; } else { osDeleteFile ( dest ) ; } } } return false ; }
can be replaced by mock / stub in unittests
