Package org.apache.commons.vfs2.util
Class URIBitSets
java.lang.Object
org.apache.commons.vfs2.util.URIBitSets
Internal URI encoding
BitSet definitions.
This was forked from the BitSets in org.apache.commons.httpclient.URI,
in order to not be dependent on HttpClient v3 API, when generating and handling GenericURLFileNames,
but it should work with any different HTTP backend provider implementations.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final BitSetURI absolute path.protected static final BitSetBitSet for absoluteURI.static final BitSetThose characters that are allowed for the abs_path.static final BitSetThose characters that are allowed for the authority component.static final BitSetThose characters that are allowed for the fragment component.static final BitSetThose characters that are allowed for the host component.static final BitSetThose characters that are allowed for the IPv6reference component.static final BitSetThose characters that are allowed for the opaque_part.static final BitSetThose characters that are allowed for the query component.static final BitSetThose characters that are allowed for the reg_name.static final BitSetThose characters that are allowed for the rel_path.static final BitSetThose characters that are allowed for the userinfo component.static final BitSetThose characters that are allowed for the authority component.static final BitSetThose characters that are allowed within the path.static final BitSetThose characters that are allowed within the query component.static final BitSetThose characters that are allowed for within the userinfo component.protected static final BitSetBitSet for alpha.protected static final BitSetBitSet for alphanum (join of alpha & digit).protected static final BitSetBitSet for authority.static final BitSetBitSet for control.static final BitSetBitSet for delims.protected static final BitSetBitSet for digit.static final BitSetDisallowed opaque_part before escaping.static final BitSetDisallowed rel_path before escaping.protected static final BitSetBitSet for domainlabel.protected static final BitSetBitSet for escaped.protected static final BitSetBitSet for fragment (alias for uric).protected static final BitSetBitSet for hex.protected static final BitSetBitSet for hier_part.protected static final BitSetBitSet for host.protected static final BitSetBitSet for hostname.protected static final BitSetBitSet for hostport.protected static final BitSetBitset that combines digit and dot fo IPv$address.protected static final BitSetRFC 2373.protected static final BitSetRFC 2732, 2373.protected static final BitSetBitSet for mark.protected static final BitSetBitSet for net_path.protected static final BitSetURI bitset that combines uric_no_slash and uric.protected static final BitSetBitSet for param (alias for pchar).protected static final BitSetURI bitset that combines absolute path and opaque part.protected static final BitSetBitSet for path segments.protected static final BitSetBitSet for pchar.protected static final BitSetThe percent "%" character always has the reserved purpose of being the escape indicator, it must be escaped as "%25" in order to be used as data within a URI.protected static final BitSetPort, a logical alias for digit.protected static final BitSetBitSet for query (alias for uric).protected static final BitSetBitSet for reg_name.protected static final BitSetBitSet for rel_path.protected static final BitSetBitSet for rel_segment.protected static final BitSetBitSet for relativeURI.protected static final BitSetBitSet for reserved.protected static final BitSetBitSet for scheme.protected static final BitSetBitSet for segment.protected static final BitSetBitset for server.static final BitSetBitSet for space.protected static final BitSetBitSet for toplabel.protected static final BitSetData characters that are allowed in a URI but do not have a reserved purpose are called unreserved.static final BitSetBitSet for unwise.protected static final BitSetBitSet for URI-reference.protected static final BitSetBitSet for uric.protected static final BitSetURI bitset for encoding typical non-slash characters.protected static final BitSetBitset for userinfo.static final BitSetBitSet for within the userinfo component like user and password. -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
percent
The percent "%" character always has the reserved purpose of being the escape indicator, it must be escaped as "%25" in order to be used as data within a URI. -
digit
BitSet for digit.digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" -
alpha
BitSet for alpha.alpha = lowalpha | upalpha
-
alphanum
BitSet for alphanum (join of alpha & digit).alphanum = alpha | digit
-
hex
BitSet for hex.hex = digit | "A" | "B" | "C" | "D" | "E" | "F" | "a" | "b" | "c" | "d" | "e" | "f" -
escaped
BitSet for escaped.escaped = "%" hex hex
-
mark
BitSet for mark.mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")" -
unreserved
Data characters that are allowed in a URI but do not have a reserved purpose are called unreserved.unreserved = alphanum | mark
-
reserved
BitSet for reserved.reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | "$" | "," -
uric
BitSet for uric.uric = reserved | unreserved | escaped
-
fragment
BitSet for fragment (alias for uric).fragment = *uric
-
query
BitSet for query (alias for uric).query = *uric
-
pchar
BitSet for pchar.pchar = unreserved | escaped | ":" | "@" | "&" | "=" | "+" | "$" | "," -
param
BitSet for param (alias for pchar).param = *pchar
-
segment
BitSet for segment.segment = *pchar *( ";" param )
-
path_segments
BitSet for path segments.path_segments = segment *( "/" segment )
-
abs_path
URI absolute path.abs_path = "/" path_segments
-
uric_no_slash
URI bitset for encoding typical non-slash characters.uric_no_slash = unreserved | escaped | ";" | "?" | ":" | "@" | "&" | "=" | "+" | "$" | "," -
opaque_part
URI bitset that combines uric_no_slash and uric.opaque_part = uric_no_slash *uric
-
path
URI bitset that combines absolute path and opaque part.path = [ abs_path | opaque_part ]
-
port
Port, a logical alias for digit. -
IPv4address
Bitset that combines digit and dot fo IPv$address.IPv4address = 1*digit "." 1*digit "." 1*digit "." 1*digit
-
IPv6address
RFC 2373.IPv6address = hexpart [ ":" IPv4address ]
-
IPv6reference
RFC 2732, 2373.IPv6reference = "[" IPv6address "]"
-
toplabel
BitSet for toplabel.toplabel = alpha | alpha *( alphanum | "-" ) alphanum
-
domainlabel
BitSet for domainlabel.domainlabel = alphanum | alphanum *( alphanum | "-" ) alphanum
-
hostname
BitSet for hostname.hostname = *( domainlabel "." ) toplabel [ "." ]
-
host
BitSet for host.host = hostname | IPv4address | IPv6reference
-
hostport
BitSet for hostport.hostport = host [ ":" port ]
-
userinfo
Bitset for userinfo.userinfo = *( unreserved | escaped | ";" | ":" | "&" | "=" | "+" | "$" | "," ) -
within_userinfo
BitSet for within the userinfo component like user and password. -
server
Bitset for server.server = [ [ userinfo "@" ] hostport ]
-
reg_name
BitSet for reg_name.reg_name = 1*( unreserved | escaped | "$" | "," | ";" | ":" | "@" | "&" | "=" | "+" ) -
authority
BitSet for authority.authority = server | reg_name
-
scheme
BitSet for scheme.scheme = alpha *( alpha | digit | "+" | "-" | "." )
-
rel_segment
BitSet for rel_segment.rel_segment = 1*( unreserved | escaped | ";" | "@" | "&" | "=" | "+" | "$" | "," ) -
rel_path
BitSet for rel_path.rel_path = rel_segment [ abs_path ]
-
net_path
BitSet for net_path.net_path = "//" authority [ abs_path ]
-
hier_part
BitSet for hier_part.hier_part = ( net_path | abs_path ) [ "?" query ]
-
relativeURI
BitSet for relativeURI.relativeURI = ( net_path | abs_path | rel_path ) [ "?" query ]
-
absoluteURI
BitSet for absoluteURI.absoluteURI = scheme ":" ( hier_part | opaque_part )
-
URI_reference
BitSet for URI-reference.URI-reference = [ absoluteURI | relativeURI ] [ "#" fragment ]
-
control
BitSet for control. -
space
BitSet for space. -
delims
BitSet for delims. -
unwise
BitSet for unwise. -
disallowed_rel_path
Disallowed rel_path before escaping. -
disallowed_opaque_part
Disallowed opaque_part before escaping. -
allowed_authority
Those characters that are allowed for the authority component. -
allowed_opaque_part
Those characters that are allowed for the opaque_part. -
allowed_reg_name
Those characters that are allowed for the reg_name. -
allowed_userinfo
Those characters that are allowed for the userinfo component. -
allowed_within_userinfo
Those characters that are allowed for within the userinfo component. -
allowed_IPv6reference
Those characters that are allowed for the IPv6reference component. The characters '[', ']' in IPv6reference should be excluded. -
allowed_host
Those characters that are allowed for the host component. The characters '[', ']' in IPv6reference should be excluded. -
allowed_within_authority
Those characters that are allowed for the authority component. -
allowed_abs_path
Those characters that are allowed for the abs_path. -
allowed_rel_path
Those characters that are allowed for the rel_path. -
allowed_within_path
Those characters that are allowed within the path. -
allowed_query
Those characters that are allowed for the query component. -
allowed_within_query
Those characters that are allowed within the query component. -
allowed_fragment
Those characters that are allowed for the fragment component.
-
-
Constructor Details
-
URIBitSets
private URIBitSets()
-