FileNameParser
FtpFileNameParser
, URLFileNameParser
public class HostFileNameParser extends AbstractFileNameParser
Parses the url into user/password/host/port/path. Does not handle a query string (after ?)
Modifier and Type | Class | Description |
---|---|---|
protected static class |
HostFileNameParser.Authority |
Parsed authority info (scheme, hostname, username/password, port).
|
Constructor | Description |
---|---|
HostFileNameParser(int defaultPort) |
Modifier and Type | Method | Description |
---|---|---|
protected java.lang.String |
extractHostName(java.lang.StringBuilder name) |
Extracts the hostname from a URI.
|
protected int |
extractPort(java.lang.StringBuilder name,
java.lang.String uri) |
Extracts the port from a URI.
|
protected HostFileNameParser.Authority |
extractToPath(java.lang.String uri,
java.lang.StringBuilder name) |
Extracts the scheme, userinfo, hostname and port components of a generic URI.
|
protected java.lang.String |
extractUserInfo(java.lang.StringBuilder name) |
Extracts the user info from a URI.
|
int |
getDefaultPort() |
|
FileName |
parseUri(VfsComponentContext context,
FileName base,
java.lang.String filename) |
parses a String into a filename.
|
encodeCharacter
public HostFileNameParser(int defaultPort)
public int getDefaultPort()
public FileName parseUri(VfsComponentContext context, FileName base, java.lang.String filename) throws FileSystemException
FileNameParser
context
- The component context.base
- The base FileName.filename
- The target file name.FileSystemException
- if an error occurs parsing the URI.protected HostFileNameParser.Authority extractToPath(java.lang.String uri, java.lang.StringBuilder name) throws FileSystemException
uri
- The absolute URI to parse.name
- Used to return the remainder of the URI.FileSystemException
- if authority cannot be extracted.protected java.lang.String extractUserInfo(java.lang.StringBuilder name)
name
- string buffer with the "scheme://" part has been removed already. Will be modified.protected java.lang.String extractHostName(java.lang.StringBuilder name)
name
- string buffer with the "scheme://[userinfo@]" part has been removed already. Will be modified.protected int extractPort(java.lang.StringBuilder name, java.lang.String uri) throws FileSystemException
name
- string buffer with the "scheme://[userinfo@]hostname" part has been removed already. Will be
modified.uri
- full URI for error reporting.FileSystemException
- if URI is malformed.java.lang.NumberFormatException
- if port number cannot be parsed.