java.lang.Object
net.i2p.servlet.util.ServletUtil

public class ServletUtilextends Object
Simple utilities for servlets. Consolidated from i2psnark, susimail, and routerconsole
  • Constructor Details

    • ServletUtil

      private ServletUtil()
      Utility class, not intended for instantiation.
  • Method Details

    • isSmallBrowser

      public static boolean isSmallBrowser(String ua)
      Does the request come from a browser too small for the full desktop pages, i.e. either a text-mode browser or a mobile one?
      Parameters:
      ua - User-Agent string, non-null
      Returns:
      true if a text-mode or mobile browser
    • isTextBrowser

      public static boolean isTextBrowser(String ua)
      Does the User-Agent name a text-mode browser? Matched on the product token at the start of the string: Lynx, w3m, ELinks, Links, Dillo or Emacs-w3m.
      Parameters:
      ua - User-Agent string, non-null
      Returns:
      true if a text-mode browser
    • isMobileBrowser

      public static boolean isMobileBrowser(String ua)
      The intent here is to return true for phones but false for big tablets? But not consistent.
      Parameters:
      ua - User-Agent string, non-null
      Returns:
      true if a mobile browser
    • truncate

      public static String truncate(String s, int len)
      Truncate a String. Same as s.substring(0, len) except that it won't split a surrogate pair or at a ZWJ.
      Parameters:
      s - non-null
      len - greater than zero
      Returns:
      s if shorter; s.substring(0, len) if the char at len-1 is not a high surrogate or the char at len-1 or len is not a zero-width joiner; s.substring(0, len+1 or len+2) if it is
    • sanitizeQuery

      public static String sanitizeQuery(String s)
      Sanitize an encoded String from getQueryString(). Does not decode.
      Parameters:
      s - may be null
      Returns:
      s or null if s was null or s contained any problematic characters