public class FileUtil
extends org.pfsw.file.FileUtil
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_FILE_PATTERN |
static java.lang.String |
EAR_FILE_EXTENSION |
static java.lang.String |
EAR_FILE_PATTERN |
static java.lang.String |
JAR_FILE_EXTENSION |
static java.io.FileFilter |
JAR_FILE_FILTER |
static java.lang.String |
JAR_FILE_PATTERN |
static java.lang.String |
MANIFEST_FILE_NAME |
static java.lang.String |
MANIFEST_FILE_PATH |
static java.lang.String |
META_INF_DIR_NAME |
static java.lang.String |
RAR_FILE_EXTENSION |
static java.lang.String |
RAR_FILE_PATTERN |
static java.lang.String |
SERVICES_DIR |
static java.lang.String |
SERVICES_DIR_NAME |
static java.lang.String |
WAR_FILE_EXTENSION |
static java.lang.String |
WAR_FILE_PATTERN |
static java.lang.String |
WEB_INF_CLASSES_DIR_NAME |
static java.lang.String |
WEB_INF_DIR_NAME |
static java.lang.String |
WEB_INF_LIB_DIR_NAME |
static java.lang.String |
XML_FILE_EXTENSION |
static java.lang.String |
XML_FILE_PATTERN |
CLASSPATH_PREFIX, DEFAULT_BUFFER_SIZE, DEFAULT_TEMP_FILE_PREFIX, DEFAULT_URL_STR_ENCODING, DRIVE_LETTER_PATTERN_1, DRIVE_LETTER_PATTERN_2, FILE_PROTOCOL_INDICATOR, JAR_PATTERN, LINE_SEPARATOR, LOCAL_PATTERN, NO_LIMIT, REMOTE_PATTERN, WINDOWS_DRIVE_PATTERN_1, WINDOWS_DRIVE_PATTERN_2
Modifier | Constructor and Description |
---|---|
protected |
FileUtil()
Initialize the new instance with default values.
|
Modifier and Type | Method and Description |
---|---|
protected org.pfsw.application.ApplicationContext |
appContext() |
void |
copyFileIfNecessary(java.lang.String destDir,
java.lang.String filename)
Copies the file with the specified filename to the destination directory
if it not yet exists there.
|
java.lang.String |
extractServiceName(java.lang.String filename)
If the given filename is a ServiceLoader service declaration file
(i.e.
|
protected org.pfsw.logging.Logger |
getLogger() |
java.util.Optional<java.lang.String> |
getManifestFor(ClassContainer container) |
java.util.Optional<org.pfsw.settings.Settings> |
getManifestSettings(java.io.File file)
Tries to extract the manifest file data from the given file (or directory)
and return it as a parsed settings object.
|
static FileUtil |
instance()
Returns the only instance this class supports (design pattern "Singleton")
|
boolean |
isEnterpriseApplicationFile(java.io.File file) |
boolean |
isEnterpriseApplicationFile(java.lang.String filename) |
protected boolean |
isFileOfType(java.lang.String filename,
java.lang.String extension) |
boolean |
isJavaArchiveFile(java.io.File file) |
boolean |
isJavaArchiveFile(java.lang.String filename) |
boolean |
isManifestFile(java.lang.String filename) |
boolean |
isServiceProviderDeclaration(java.lang.String filename) |
boolean |
isWebApplicationFile(java.io.File file) |
boolean |
isWebApplicationFile(java.lang.String filename) |
boolean |
isWebResourceArchiveFile(java.io.File file) |
boolean |
isWebResourceArchiveFile(java.lang.String filename) |
java.lang.String |
makeClassRelatedResourceName(java.lang.String classPathName,
java.lang.String resourcePath)
Creates a valid resource path from a given class and a relative resource path.
|
java.io.InputStream |
open(ClassContainer container,
java.lang.String entryName)
Opens an input stream for the given entry in a container.
|
byte[] |
readAllBytes(java.io.InputStream inStream)
Reads all bytes from the given input stream and returns them as a byte array.
|
java.util.Optional<java.lang.String> |
readManifestFrom(org.pfsw.file.FileLocator fileLocator) |
appendClasspathEntriesFrom, assertArgumentNotNull, calculateClasspath, calculateEclipseClasspath, classpathFromManifest, cleanDirectory, cleanDirectory, close, close, closeEntry, closeEntry, constructClasspathFrom, convertFromURLSyntax, convertFromURLSyntax, convertToURLSyntax, copyAll, copyFile, copyFile, copyFile, copyFile, copyFile, copyFile, copyStream, copyStream, copyStream, copyText, copyText, copyText, copyText, copyToTempFile, copyToTempFile, copyToTempFile, copyToTempFile, copyToTempFile, createClasspathFrom, createFile, createFile, createFile, createSystemClasspath, current, determineLookupClasspath, ensureEmptyFolder, extractZipArchive, extractZipArchive, extractZipArchive, findZippedFiles, getClasspath, getClasspathFromSystemProperty, getCurrentClassLoader, getLookupPath, handleException, indexOfPreceedingNotNullElement, ioUtil, isExistingFolder, isExistingFolder, isInsideJavaArchive, isLocal, isLocalFileURL, isRemote, javaFilename, javaFilenames, loadNamedValuesFrom, loadPropertiesFrom, openFile, openFileForRead, processTextLines, processTextLines, processTextLines, processTextLines, processTextLines, processTextLines, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, readTextLinesFrom, reflect, removeDirectory, standardize, standardize, standardizeFilename, str, urlDecode, urlDecode, urlEncode, urlEncode
public static final java.lang.String JAR_FILE_EXTENSION
public static final java.lang.String WAR_FILE_EXTENSION
public static final java.lang.String EAR_FILE_EXTENSION
public static final java.lang.String RAR_FILE_EXTENSION
public static final java.lang.String XML_FILE_EXTENSION
public static final java.lang.String JAR_FILE_PATTERN
public static final java.lang.String WAR_FILE_PATTERN
public static final java.lang.String EAR_FILE_PATTERN
public static final java.lang.String RAR_FILE_PATTERN
public static final java.lang.String XML_FILE_PATTERN
public static final java.lang.String CLASS_FILE_PATTERN
public static final java.lang.String META_INF_DIR_NAME
public static final java.lang.String MANIFEST_FILE_NAME
public static final java.lang.String MANIFEST_FILE_PATH
public static final java.lang.String SERVICES_DIR_NAME
public static final java.lang.String SERVICES_DIR
public static final java.lang.String WEB_INF_DIR_NAME
public static final java.lang.String WEB_INF_LIB_DIR_NAME
public static final java.lang.String WEB_INF_CLASSES_DIR_NAME
public static final java.io.FileFilter JAR_FILE_FILTER
public static FileUtil instance()
public void copyFileIfNecessary(java.lang.String destDir, java.lang.String filename)
public boolean isManifestFile(java.lang.String filename)
public boolean isServiceProviderDeclaration(java.lang.String filename)
public java.lang.String extractServiceName(java.lang.String filename)
public java.util.Optional<java.lang.String> getManifestFor(ClassContainer container)
public java.util.Optional<java.lang.String> readManifestFrom(org.pfsw.file.FileLocator fileLocator)
public java.util.Optional<org.pfsw.settings.Settings> getManifestSettings(java.io.File file)
file
- A JAR, WAR or EAR file or a classes directory (must not be null).public java.lang.String makeClassRelatedResourceName(java.lang.String classPathName, java.lang.String resourcePath)
classPathName
- A qualified class name with slashes instead of dots (e.g. "edu/umd/cs/findbugs/gui2/AboutDialog")resourcePath
- A relative resource path the must be combined with the given class path (e.g. "help/Acknowledgements.html").public java.io.InputStream open(ClassContainer container, java.lang.String entryName) throws java.io.IOException
container
- The container that either represents a file directory or a zip archive.entryName
- The relative path to the file inside the container on which to open the input stream.java.io.IOException
- In any case of error.public byte[] readAllBytes(java.io.InputStream inStream) throws java.io.IOException
java.io.IOException
public boolean isJavaArchiveFile(java.io.File file)
public boolean isJavaArchiveFile(java.lang.String filename)
public boolean isWebResourceArchiveFile(java.io.File file)
public boolean isWebResourceArchiveFile(java.lang.String filename)
public boolean isWebApplicationFile(java.io.File file)
public boolean isWebApplicationFile(java.lang.String filename)
public boolean isEnterpriseApplicationFile(java.io.File file)
public boolean isEnterpriseApplicationFile(java.lang.String filename)
protected boolean isFileOfType(java.lang.String filename, java.lang.String extension)
protected org.pfsw.logging.Logger getLogger()
protected org.pfsw.application.ApplicationContext appContext()