Package org.apache.commons.vfs.provider
Class HostFileNameParser
java.lang.Object
org.apache.commons.vfs.provider.AbstractFileNameParser
org.apache.commons.vfs.provider.HostFileNameParser
- All Implemented Interfaces:
FileNameParser
- Direct Known Subclasses:
FtpFileNameParser
,URLFileNameParser
Implementation for any url based filesystem.
Parses the url into user/password/host/port/path
Does not handle a query string (after ?)
Parses the url into user/password/host/port/path
Does not handle a query string (after ?)
- Version:
- $Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Wed, 29 Nov 2006) $
- Author:
- imario@apache.org
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
Parsed authority info (scheme, hostname, userinfo, port) -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
encodeCharacter
(char ch) Check if a character needs encoding (%nn)protected String
extractHostName
(StringBuffer name) Extracts the hostname from a URI.protected int
extractPort
(StringBuffer name, String uri) Extracts the port from a URI.protected HostFileNameParser.Authority
extractToPath
(String uri, StringBuffer name) Extracts the scheme, userinfo, hostname and port components of a generic URI.protected String
extractUserInfo
(StringBuffer name) Extracts the user info from a URI.int
parseUri
(VfsComponentContext context, FileName base, String filename) parses a String into a filename
-
Constructor Details
-
HostFileNameParser
public HostFileNameParser(int defaultPort)
-
-
Method Details
-
getDefaultPort
public int getDefaultPort() -
encodeCharacter
public boolean encodeCharacter(char ch) Description copied from interface:FileNameParser
Check if a character needs encoding (%nn)- Specified by:
encodeCharacter
in interfaceFileNameParser
- Overrides:
encodeCharacter
in classAbstractFileNameParser
- Parameters:
ch
- the character- Returns:
- true if character should be encoded
-
parseUri
public FileName parseUri(VfsComponentContext context, FileName base, String filename) throws FileSystemException Description copied from interface:FileNameParser
parses a String into a filename- Parameters:
base
-filename
-- Throws:
FileSystemException
-
extractToPath
protected HostFileNameParser.Authority extractToPath(String uri, StringBuffer name) throws FileSystemException Extracts the scheme, userinfo, hostname and port components of a generic URI.- Parameters:
uri
- The absolute URI to parse.name
- Used to return the remainder of the URI.- Throws:
FileSystemException
-
extractUserInfo
Extracts the user info from a URI. The scheme:// part has been removed already. -
extractHostName
Extracts the hostname from a URI. The scheme://userinfo@ part has been removed. -
extractPort
Extracts the port from a URI. The scheme://userinfo@hostname part has been removed.- Returns:
- The port, or -1 if the URI does not contain a port.
- Throws:
FileSystemException
-