public abstract class AbstractFileName extends Object implements FileName
ROOT_PATH, SEPARATOR, SEPARATOR_CHAR| Constructor and Description |
|---|
AbstractFileName(String scheme,
String absPath,
FileType type) |
| Modifier and Type | Method and Description |
|---|---|
protected abstract void |
appendRootUri(StringBuilder buffer,
boolean addPassword)
Builds the root URI for this file name.
|
static boolean |
checkName(String basePath,
String path,
NameScope scope)
Checks whether a path fits in a particular scope of another path.
|
int |
compareTo(FileName obj)
Implement Comparable.
|
abstract FileName |
createName(String absolutePath,
FileType fileType)
Factory method for creating name instances.
|
protected String |
createURI() |
boolean |
equals(Object o) |
String |
getBaseName()
Returns the base name of the file.
|
int |
getDepth()
Returns the depth of this file name, within its file system.
|
String |
getExtension()
Returns the extension of this file name.
|
String |
getFriendlyURI()
Returns the URI without a password.
|
FileName |
getParent()
Returns the name of the parent of the file.
|
String |
getPath()
Returns the absolute path of the file, relative to the root of the file system that the file belongs to.
|
String |
getPathDecoded()
Returns the decoded path.
|
String |
getRelativeName(FileName name)
Converts a file name to a relative name, relative to this file name.
|
FileName |
getRoot()
find the root of the filesystem.
|
String |
getRootURI()
Returns the root URI of the file system this file belongs to.
|
String |
getScheme()
Returns the URI scheme of this file.
|
FileType |
getType()
Returns the requested or current type of this name.
|
String |
getURI()
Returns the absolute URI of the file.
|
protected String |
getUriTrailer() |
int |
hashCode() |
boolean |
isAncestor(FileName ancestor)
Determines if another file name is an ancestor of this file name.
|
boolean |
isDescendent(FileName descendent)
Determines if another file name is a descendent of this file name.
|
boolean |
isDescendent(FileName descendent,
NameScope scope)
Determines if another file name is a descendent of this file name.
|
boolean |
isFile()
Checks if this file name is a name for a regular file by using its type.
|
String |
toString()
Returns the URI of the file.
|
public int compareTo(FileName obj)
compareTo in interface Comparable<FileName>obj - another abstract filenamepublic String toString()
public abstract FileName createName(String absolutePath, FileType fileType)
absolutePath - The absolute path.fileType - The FileType.protected abstract void appendRootUri(StringBuilder buffer, boolean addPassword)
buffer - A StringBuilder to use to construct the URI.addPassword - true if the password should be added, false otherwise.public String getBaseName()
getBaseName in interface FileNamepublic String getPath()
protected String getUriTrailer()
public String getPathDecoded() throws FileSystemException
getPathDecoded in interface FileNameFileSystemException - If an error occurs.public FileName getParent()
public FileName getRoot()
public String getScheme()
public String getURI()
protected String createURI()
public String getFriendlyURI()
getFriendlyURI in interface FileNamepublic String getRelativeName(FileName name) throws FileSystemException
getRelativeName in interface FileNamename - The FileName.FileSystemException - if an error occurs.public String getRootURI()
getRootURI in interface FileNamepublic int getDepth()
public String getExtension()
getExtension in interface FileNamepublic boolean isAncestor(FileName ancestor)
isAncestor in interface FileNameancestor - The FileName to check.public boolean isDescendent(FileName descendent)
isDescendent in interface FileNamedescendent - The FileName to check.public boolean isDescendent(FileName descendent, NameScope scope)
isDescendent in interface FileNamedescendent - The FileName to check.scope - The NameScope.public boolean isFile()
throws FileSystemException
isFile in interface FileNameFileSystemException - may be thrown by subclasses.getType(),
FileType.FILEpublic FileType getType()
The "requested" type is the one determined during resolving the name. n this case the name is a
FileType.FOLDER if it ends with an "/" else it will be a FileType.FILE.
Once attached it will be changed to reflect the real type of this resource.
getType in interface FileNameFileType.FOLDER or FileType.FILEpublic static boolean checkName(String basePath, String path, NameScope scope)
basePath - An absolute, normalised path.path - An absolute, normalised path.scope - The NameScope.Copyright © 2002–2017 The Apache Software Foundation. All rights reserved.