Class UriParser

java.lang.Object
org.apache.commons.vfs2.provider.UriParser

public final class UriParser extends Object
Utilities for dealing with URIs. See RFC 2396 for details. 2005) $
  • Field Details

    • TRANS_SEPARATOR

      public static final char TRANS_SEPARATOR
      The set of valid separators. These are all converted to the normalized one. Does not contain the normalized separator
      See Also:
  • Method Details

    • extractFirstElement

      Extracts the first element of a path.
      Parameters:
      name - StringBuilder containing the path.
      Returns:
      The first element of the path.
    • normalisePath

      Normalises a path. Does the following:
      • Removes empty path elements.
      • Handles '.' and '..' elements.
      • Removes trailing separator.
      Its assumed that the separators are already fixed.
      Parameters:
      path - The path to normalize.
      Returns:
      The FileType.
      Throws:
      FileSystemException - if an error occurs.
      See Also:
    • fixSeparators

      public static boolean fixSeparators(StringBuilder name)
      Normalises the separators in a name.
      Parameters:
      name - The StringBuilder containing the name
      Returns:
      true if the StringBuilder was modified.
    • extractScheme

      public static String extractScheme(String uri)
      Extracts the scheme from a URI.
      Parameters:
      uri - The URI.
      Returns:
      The scheme name. Returns null if there is no scheme.
    • extractScheme

      public static String extractScheme(String uri, StringBuilder buffer)
      Extracts the scheme from a URI. Removes the scheme and ':' delimiter from the front of the URI.
      Parameters:
      uri - The URI.
      buffer - Returns the remainder of the URI.
      Returns:
      The scheme name. Returns null if there is no scheme.
    • decode

      public static String decode(String encodedStr) throws FileSystemException
      Removes %nn encodings from a string.
      Parameters:
      encodedStr - The encoded String.
      Returns:
      The decoded String.
      Throws:
      FileSystemException - if an error occurs.
    • decode

      public static void decode(StringBuilder buffer, int offset, int length) throws FileSystemException
      Removes %nn encodings from a string.
      Parameters:
      buffer - StringBuilder containing the string to decode.
      offset - The position in the string to start decoding.
      length - The number of characters to decode.
      Throws:
      FileSystemException - if an error occurs.
    • appendEncoded

      public static void appendEncoded(StringBuilder buffer, String unencodedValue, char[] reserved)
      Encodes and appends a string to a StringBuilder.
      Parameters:
      buffer - The StringBuilder to append to.
      unencodedValue - The String to encode and append.
      reserved - characters to encode.
    • encode

      public static void encode(StringBuilder buffer, int offset, int length, char[] reserved)
      Encodes a set of reserved characters in a StringBuilder, using the URI %nn encoding. Always encodes % characters.
      Parameters:
      buffer - The StringBuilder to append to.
      offset - The position in the buffer to start encoding at.
      length - The number of characters to encode.
      reserved - characters to encode.
    • encode

      public static String encode(String decodedStr)
      Removes %nn encodings from a string.
      Parameters:
      decodedStr - The decoded String.
      Returns:
      The encoded String.
    • encode

      public static String encode(String decodedStr, char[] reserved)
      Converts "special" characters to their %nn value.
      Parameters:
      decodedStr - The decoded String.
      reserved - Characters to encode.
      Returns:
      The encoded String
    • encode

      public static String[] encode(String[] strings)
      Encode an array of Strings.
      Parameters:
      strings - The array of Strings to encode.
      Returns:
      An array of encoded Strings.
    • checkUriEncoding

      public static void checkUriEncoding(String uri) throws FileSystemException
      Decodes the String.
      Parameters:
      uri - The String to decode.
      Throws:
      FileSystemException - if an error occurs.
    • canonicalizePath

      public static void canonicalizePath(StringBuilder buffer, int offset, int length, FileNameParser fileNameParser) throws FileSystemException
      Throws:
      FileSystemException
    • extractQueryString

      public static String extractQueryString(StringBuilder name)
      Extract the query String from the URI.
      Parameters:
      name - StringBuilder containing the URI.
      Returns:
      The query string, if any. null otherwise.