org.jboss.util.file
Class Files

java.lang.Object
  extended byorg.jboss.util.file.Files

public final class Files
extends java.lang.Object

A collection of file utilities.


Field Summary
static int DEFAULT_BUFFER_SIZE
          The default size of the copy buffer.
 
Constructor Summary
Files()
           
 
Method Summary
static void copy(java.io.File source, java.io.File target)
          Copy a file.
static void copy(java.io.File source, java.io.File target, byte[] buff)
          Copy a file.
static void copy(java.io.File source, java.io.File target, int size)
          Copy a file.
static void copy(java.net.URL src, java.io.File dest)
          Copy a remote/local URL to a local file
static java.lang.String decodeFileName(java.lang.String name)
          Used to decode a file system friendly filename produced by encodeFileName() method, above.
static boolean delete(java.io.File dir)
          Delete a file, or a directory and all of its contents.
static boolean delete(java.lang.String dirname)
          Delete a file or directory and all of its contents.
static boolean deleteContaining(java.lang.String filename)
          Delete a directory contaning the given file and all its contents.
static java.lang.String encodeFileName(java.lang.String name)
          Used to encode any string into a string that is safe to use as a file name on most operating systems.
static java.lang.String findRelativePath(java.lang.String base, java.lang.String path)
          Build a relative path to the given base path.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_BUFFER_SIZE

public static final int DEFAULT_BUFFER_SIZE
The default size of the copy buffer.

See Also:
Constant Field Values (src)
Constructor Detail

Files

public Files()
Method Detail

delete

public static boolean delete(java.io.File dir)
Delete a file, or a directory and all of its contents.

Parameters:
dir - The directory or file to delete.
Returns:
True if all delete operations were successfull.

delete

public static boolean delete(java.lang.String dirname)
Delete a file or directory and all of its contents.

Parameters:
dirname - The name of the file or directory to delete.
Returns:
True if all delete operations were successfull.

deleteContaining

public static boolean deleteContaining(java.lang.String filename)
Delete a directory contaning the given file and all its contents.

Parameters:
filename - a file or directory in the containing directory to delete
Returns:
true if all delete operations were successfull, false if any delete failed.

copy

public static void copy(java.io.File source,
                        java.io.File target,
                        byte[] buff)
                 throws java.io.IOException
Copy a file.

Parameters:
source - Source file to copy.
target - Destination target file.
buff - The copy buffer.
Throws:
java.io.IOException - Failed to copy file.

copy

public static void copy(java.io.File source,
                        java.io.File target,
                        int size)
                 throws java.io.IOException
Copy a file.

Parameters:
source - Source file to copy.
target - Destination target file.
size - The size of the copy buffer.
Throws:
java.io.IOException - Failed to copy file.

copy

public static void copy(java.io.File source,
                        java.io.File target)
                 throws java.io.IOException
Copy a file.

Parameters:
source - Source file to copy.
target - Destination target file.
Throws:
java.io.IOException - Failed to copy file.

copy

public static void copy(java.net.URL src,
                        java.io.File dest)
                 throws java.io.IOException
Copy a remote/local URL to a local file

Parameters:
src - the remote or local URL
dest - the local file
Throws:
java.io.IOException - upon error

encodeFileName

public static java.lang.String encodeFileName(java.lang.String name)
Used to encode any string into a string that is safe to use as a file name on most operating systems. Use decodeFileName() to get back the original string. Copied by Adrian's org.jboss.mq.pm.file.PersistenceManager and adapted to use hex instead of decimal digits

Parameters:
name - the filename to encode
Returns:
a filesystem-friendly filename

decodeFileName

public static java.lang.String decodeFileName(java.lang.String name)
Used to decode a file system friendly filename produced by encodeFileName() method, above. Copied by Adrian's org.jboss.mq.pm.file.PersistenceManager and adapted to use hex instead of decimal digits Note: Decoding will not work if encoding produced multi-byte encoded characters. If this is truly needed we'll have to revise the encoding.

Parameters:
name - the filename to decode
Returns:
the original name

findRelativePath

public static java.lang.String findRelativePath(java.lang.String base,
                                                java.lang.String path)
                                         throws java.io.IOException
Build a relative path to the given base path.

Parameters:
base - - the path used as the base
path - - the path to compute relative to the base path
Returns:
A relative path from base to path
Throws:
java.io.IOException