Class KdeProxySearchStrategy

java.lang.Object
com.github.markusbernhardt.proxy.search.desktop.kde.KdeProxySearchStrategy
All Implemented Interfaces:
ProxySearchStrategy

public class KdeProxySearchStrategy extends Object implements ProxySearchStrategy
Loads the KDE4 proxy settings from the KDE kioslaverc file. This will load properties from the file

.kde/share/config/kioslaverc

starting from the current users home directory.

The following settings are extracted from the section "[Proxy Settings]":

  • AuthMode -> 0 = no auth., 1 = use login.
  • ProxyType -> 0 = direct 1 = use fixed settings, 2 = use PAC, 3 = automatic (WPAD) , 4 = Use environment variables?
  • Proxy Config Script -> URL to PAC file
  • ftpProxy -> Fixed ftp proxy address e.g. http://www.ftp-proxy.com:8080
  • httpProxy -> Fixed http proxy e.g http://www.http-proxy.com:8080
  • httpsProxy -> Fixed https proxy e.g http://www.https-proxy.com:8080
  • NoProxyFor -> Proxy white list
  • ReversedException -> false = use NoProxyFor, true = revert meaning of the NoProxyFor list
  • Field Details

  • Constructor Details

    • KdeProxySearchStrategy

      public KdeProxySearchStrategy()
      ProxySelector using the given parser.
      See Also:
    • KdeProxySearchStrategy

      public KdeProxySearchStrategy(KdeSettingsParser settingsParser)
      ProxySelector
      Parameters:
      settingsParser - the KdeSettingsParser instance to use.
      See Also:
  • Method Details

    • getProxySelector

      public ProxySelector getProxySelector() throws ProxyException
      Loads the proxy settings and initializes a proxy selector for the firefox proxy settings.
      Specified by:
      getProxySelector in interface ProxySearchStrategy
      Returns:
      a configured ProxySelector, null if none is found.
      Throws:
      ProxyException - on file reading error.
    • getName

      public String getName()
      Gets the printable name of the search strategy.
      Specified by:
      getName in interface ProxySearchStrategy
      Returns:
      the printable name of the search strategy
    • readSettings

      private Properties readSettings() throws ProxyException
      Reads the settings and stores them in a properties map.
      Returns:
      the parsed settings.
      Throws:
      ProxyException
    • setupEnvVarSelector

      private ProxySelector setupEnvVarSelector(Properties settings)
      Builds an environment variable selector.
      Parameters:
      settings - the settings to read from.
      Returns:
      the ProxySelector using environment variables.
    • setupFixedProxySelector

      private ProxySelector setupFixedProxySelector(Properties settings)
      Parse the fixed proxy settings and build an ProxySelector for this a chained configuration.
      Parameters:
      settings - the proxy settings to evaluate.