org.apache.commons.compress.compressors
Class FileNameUtil

java.lang.Object
  extended by org.apache.commons.compress.compressors.FileNameUtil

public class FileNameUtil
extends Object

File name mapping code for the compression formats.

Since:
1.4
This class is thread-safe

Constructor Summary
FileNameUtil(Map<String,String> uncompressSuffix, String defaultExtension)
          sets up the utility with a map of known compressed to uncompressed suffix mappings and the default extension of the format.
 
Method Summary
 String getCompressedFilename(String filename)
          Maps the given filename to the name that the file should have after compressio.
 String getUncompressedFilename(String filename)
          Maps the given name of a compressed file to the name that the file should have after uncompression.
 boolean isCompressedFilename(String filename)
          Detects common format suffixes in the given filename.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FileNameUtil

public FileNameUtil(Map<String,String> uncompressSuffix,
                    String defaultExtension)
sets up the utility with a map of known compressed to uncompressed suffix mappings and the default extension of the format.

Parameters:
uncompressSuffix - Map from common filename suffixes of compressed files to the corresponding suffixes of uncompressed files. For example: from ".tgz" to ".tar". This map also contains format-specific suffixes like ".gz" and "-z". These suffixes are mapped to the empty string, as they should simply be removed from the filename when the file is uncompressed.
defaultExtension - the format's default extension like ".gz"
Method Detail

isCompressedFilename

public boolean isCompressedFilename(String filename)
Detects common format suffixes in the given filename.

Parameters:
filename - name of a file
Returns:
true if the filename has a common format suffix, false otherwise

getUncompressedFilename

public String getUncompressedFilename(String filename)
Maps the given name of a compressed file to the name that the file should have after uncompression. Commonly used file type specific suffixes like ".tgz" or ".svgz" are automatically detected and correctly mapped. For example the name "package.tgz" is mapped to "package.tar". And any filenames with the generic ".gz" suffix (or any other generic gzip suffix) is mapped to a name without that suffix. If no format suffix is detected, then the filename is returned unmapped.

Parameters:
filename - name of a file
Returns:
name of the corresponding uncompressed file

getCompressedFilename

public String getCompressedFilename(String filename)
Maps the given filename to the name that the file should have after compressio. Common file types with custom suffixes for compressed versions are automatically detected and correctly mapped. For example the name "package.tar" is mapped to "package.tgz". If no custom mapping is applicable, then the default ".gz" suffix is appended to the filename.

Parameters:
filename - name of a file
Returns:
name of the corresponding compressed file


Copyright © 2012 The Apache Software Foundation. All Rights Reserved.