org.apache.ivy.util
Class FileUtil

java.lang.Object
  extended by org.apache.ivy.util.FileUtil

public final class FileUtil
extends java.lang.Object

Utility class used to deal with file related operations, like copy, full reading, symlink, ...


Method Summary
static java.lang.String concat(java.lang.String dir, java.lang.String file)
           
static boolean copy(java.io.File src, java.io.File dest, CopyProgressListener l)
           
static boolean copy(java.io.File src, java.io.File dest, CopyProgressListener l, boolean overwrite)
           
static void copy(java.io.File src, java.net.URL dest, CopyProgressListener l)
           
static void copy(java.io.InputStream src, java.io.File dest, CopyProgressListener l)
           
static void copy(java.io.InputStream src, java.io.OutputStream dest, CopyProgressListener l)
           
static void copy(java.net.URL src, java.io.File dest, CopyProgressListener l)
           
static boolean forceDelete(java.io.File file)
          Recursively delete file
static java.util.List getPathFiles(java.io.File root, java.io.File file)
          Returns a list of Files composed of all directories being parent of file and child of root + file and root themselves.
static java.util.Collection listAll(java.io.File dir, java.util.Collection ignore)
          Returns a collection of all Files being contained in the given directory, recursively, including directories.
static java.lang.String readEntirely(java.io.BufferedReader in)
          Reads the whole BufferedReader line by line, using \n as line separator for each line.
static java.lang.String readEntirely(java.io.File f)
          Reads the entire content of the file and returns it as a String.
static java.lang.String readEntirely(java.io.InputStream is)
          Reads the entire content of the InputStream and returns it as a String.
static java.io.File resolveFile(java.io.File file, java.lang.String filename)
           
static void symlink(java.io.File src, java.io.File dest, CopyProgressListener l, boolean overwrite)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

symlink

public static void symlink(java.io.File src,
                           java.io.File dest,
                           CopyProgressListener l,
                           boolean overwrite)
                    throws java.io.IOException
Throws:
java.io.IOException

copy

public static boolean copy(java.io.File src,
                           java.io.File dest,
                           CopyProgressListener l)
                    throws java.io.IOException
Throws:
java.io.IOException

copy

public static boolean copy(java.io.File src,
                           java.io.File dest,
                           CopyProgressListener l,
                           boolean overwrite)
                    throws java.io.IOException
Throws:
java.io.IOException

copy

public static void copy(java.net.URL src,
                        java.io.File dest,
                        CopyProgressListener l)
                 throws java.io.IOException
Throws:
java.io.IOException

copy

public static void copy(java.io.File src,
                        java.net.URL dest,
                        CopyProgressListener l)
                 throws java.io.IOException
Throws:
java.io.IOException

copy

public static void copy(java.io.InputStream src,
                        java.io.File dest,
                        CopyProgressListener l)
                 throws java.io.IOException
Throws:
java.io.IOException

copy

public static void copy(java.io.InputStream src,
                        java.io.OutputStream dest,
                        CopyProgressListener l)
                 throws java.io.IOException
Throws:
java.io.IOException

readEntirely

public static java.lang.String readEntirely(java.io.BufferedReader in)
                                     throws java.io.IOException
Reads the whole BufferedReader line by line, using \n as line separator for each line.

Note that this method will add a final \n to the last line even though there is no new line character at the end of last line in the original reader.

The BufferedReader is closed when this method returns.

Parameters:
in - the BufferedReader to read from
Returns:
a String with the whole content read from the BufferedReader
Throws:
java.io.IOException - if an IO problems occur during reading

readEntirely

public static java.lang.String readEntirely(java.io.File f)
                                     throws java.io.IOException
Reads the entire content of the file and returns it as a String.

Parameters:
f - the file to read from
Returns:
a String with the file content
Throws:
java.io.IOException - if an IO problems occurs during reading

readEntirely

public static java.lang.String readEntirely(java.io.InputStream is)
                                     throws java.io.IOException
Reads the entire content of the InputStream and returns it as a String.

The input stream is closed when this method returns.

Parameters:
is - the InputStream to read from
Returns:
a String with the input stream content
Throws:
java.io.IOException - if an IO problems occurs during reading

concat

public static java.lang.String concat(java.lang.String dir,
                                      java.lang.String file)

forceDelete

public static boolean forceDelete(java.io.File file)
Recursively delete file

Parameters:
file - the file to delete
Returns:
true if the deletion completed successfully (ie if the file does not exist on the filesystem after this call), false if a deletion was not performed successfully.

getPathFiles

public static java.util.List getPathFiles(java.io.File root,
                                          java.io.File file)
Returns a list of Files composed of all directories being parent of file and child of root + file and root themselves. Example: getPathFiles(new File("test"), new File("test/dir1/dir2/file.txt")) => {new File("test/dir1"), new File("test/dir1/dir2"), new File("test/dir1/dir2/file.txt") } Note that if root is not an ancester of file, or if root is null, all directories from the file system root will be returned.


listAll

public static java.util.Collection listAll(java.io.File dir,
                                           java.util.Collection ignore)
Returns a collection of all Files being contained in the given directory, recursively, including directories.

Parameters:
dir - The directory from which all files, including files in subdirectory) are extracted.
ignore - a Collection of filenames which must be excluded from listing
Returns:
A collectoin containing all the files of the given directory and it's subdirectories.

resolveFile

public static java.io.File resolveFile(java.io.File file,
                                       java.lang.String filename)