Class JNLPProxySelector

  • Direct Known Subclasses:
    FirefoxProxySelector

    public abstract class JNLPProxySelector
    extends java.net.ProxySelector
    A ProxySelector specific to JNLPs. This proxy uses the deployment configuration to determine what to do.
    See Also:
    ProxySelector
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      void connectFailed​(java.net.URI uri, java.net.SocketAddress sa, java.io.IOException ioe)
      protected static java.util.List<java.net.Proxy> getFromArguments​(java.net.URI uri, boolean sameProxy, boolean sameProxyIncludesSocket, java.lang.String proxyHttpsHost, int proxyHttpsPort, java.lang.String proxyHttpHost, int proxyHttpPort, java.lang.String proxyFtpHost, int proxyFtpPort, java.lang.String proxySocks4Host, int proxySocks4Port)
      Returns a list of proxies by using the arguments
      protected abstract java.util.List<java.net.Proxy> getFromBrowser​(java.net.URI uri)
      Returns a list of proxies by querying the browser
      private java.util.List<java.net.Proxy> getFromConfiguration​(java.net.URI uri)
      Returns a list of proxies by using the information in the deployment configuration
      private java.util.List<java.net.Proxy> getFromPAC​(java.net.URI uri)
      Returns a list of proxies by using the Proxy Auto Config (PAC) file.
      private java.lang.String getHost​(DeploymentConfiguration config, java.lang.String key)
      Uses the given key to get a host from the configuration
      private int getPort​(DeploymentConfiguration config, java.lang.String key)
      Uses the given key to get a port from the configuration
      private boolean inBypassList​(java.net.URI uri)
      Returns true if the uri should be bypassed for proxy purposes
      java.util.List<java.net.Proxy> select​(java.net.URI uri)
      • Methods inherited from class java.net.ProxySelector

        getDefault, of, setDefault
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LOG

        private static final Logger LOG
      • autoConfigUrl

        private java.net.URL autoConfigUrl
        the URL to the PAC file
      • bypassLocal

        private boolean bypassLocal
        whether localhost should be bypassed for proxy purposes
      • proxyType

        private final ProxyType proxyType
        The proxy type. See PROXY_TYPE_* constants
      • proxyHttpHost

        private final java.lang.String proxyHttpHost
      • proxyHttpPort

        private final int proxyHttpPort
      • proxyHttpsHost

        private final java.lang.String proxyHttpsHost
      • proxyHttpsPort

        private final int proxyHttpsPort
      • proxyFtpHost

        private final java.lang.String proxyFtpHost
      • proxyFtpPort

        private final int proxyFtpPort
      • proxySocks4Host

        private final java.lang.String proxySocks4Host
      • proxySocks4Port

        private final int proxySocks4Port
      • bypassList

        private final java.util.List<java.lang.String> bypassList
        a list of URLs that should be bypassed for proxy purposes
      • sameProxy

        private final boolean sameProxy
        whether the http proxy should be used for https and ftp protocols as well
    • Method Detail

      • getHost

        private java.lang.String getHost​(DeploymentConfiguration config,
                                         java.lang.String key)
        Uses the given key to get a host from the configuration
      • getPort

        private int getPort​(DeploymentConfiguration config,
                            java.lang.String key)
        Uses the given key to get a port from the configuration
      • connectFailed

        public void connectFailed​(java.net.URI uri,
                                  java.net.SocketAddress sa,
                                  java.io.IOException ioe)
        Specified by:
        connectFailed in class java.net.ProxySelector
      • select

        public java.util.List<java.net.Proxy> select​(java.net.URI uri)
        Specified by:
        select in class java.net.ProxySelector
        Returns:
        list of proxies on URI
      • inBypassList

        private boolean inBypassList​(java.net.URI uri)
        Returns true if the uri should be bypassed for proxy purposes
      • getFromConfiguration

        private java.util.List<java.net.Proxy> getFromConfiguration​(java.net.URI uri)
        Returns a list of proxies by using the information in the deployment configuration
        Parameters:
        uri - uri to read
        Returns:
        a List of Proxy objects
      • getFromArguments

        protected static java.util.List<java.net.Proxy> getFromArguments​(java.net.URI uri,
                                                                         boolean sameProxy,
                                                                         boolean sameProxyIncludesSocket,
                                                                         java.lang.String proxyHttpsHost,
                                                                         int proxyHttpsPort,
                                                                         java.lang.String proxyHttpHost,
                                                                         int proxyHttpPort,
                                                                         java.lang.String proxyFtpHost,
                                                                         int proxyFtpPort,
                                                                         java.lang.String proxySocks4Host,
                                                                         int proxySocks4Port)
        Returns a list of proxies by using the arguments
        Parameters:
        uri - name and code says it all
        sameProxy - name and code says it all
        sameProxyIncludesSocket - name and code says it all
        proxyHttpsHost - name and code says it all
        proxyHttpsPort - name and code says it all
        proxyHttpHost - name and code says it all
        proxyHttpPort - name and code says it all
        proxyFtpHost - name and code says it all
        proxyFtpPort - name and code says it all
        proxySocks4Host - name and code says it all
        proxySocks4Port - name and code says it all
        Returns:
        a List of Proxy objects
      • getFromPAC

        private java.util.List<java.net.Proxy> getFromPAC​(java.net.URI uri)
        Returns a list of proxies by using the Proxy Auto Config (PAC) file. See http://en.wikipedia.org/wiki/Proxy_auto-config#The_PAC_file for more information.
        Parameters:
        uri - uri to PAC
        Returns:
        a List of valid Proxy objects
      • getFromBrowser

        protected abstract java.util.List<java.net.Proxy> getFromBrowser​(java.net.URI uri)
        Returns a list of proxies by querying the browser
        Parameters:
        uri - the uri to get proxies for
        Returns:
        a list of proxies