Class SocksIOSession

  • All Implemented Interfaces:
    org.apache.http.nio.reactor.IOSession

    public class SocksIOSession
    extends Object
    implements org.apache.http.nio.reactor.IOSession
    The class establishes Socks4a connection and delegates the interface calls to a decorated IOSession.
    • Constructor Detail

      • SocksIOSession

        public SocksIOSession​(org.apache.http.nio.reactor.IOSession innerSession)
        Decorates IOSession, sets default user ID for a SOCKS proxy.
        Parameters:
        innerSession - decorated session
      • SocksIOSession

        public SocksIOSession​(org.apache.http.nio.reactor.IOSession innerSession,
                              String userId)
        Decorates IOSession, allows to specify user ID.
        Parameters:
        innerSession - decorated session
        userId - user id as in SOCKS4a specification
    • Method Detail

      • channel

        public ByteChannel channel()
        Specified by:
        channel in interface org.apache.http.nio.reactor.IOSession
      • getRemoteAddress

        public SocketAddress getRemoteAddress()
        Specified by:
        getRemoteAddress in interface org.apache.http.nio.reactor.IOSession
      • getLocalAddress

        public SocketAddress getLocalAddress()
        Specified by:
        getLocalAddress in interface org.apache.http.nio.reactor.IOSession
      • getEventMask

        public int getEventMask()
        Specified by:
        getEventMask in interface org.apache.http.nio.reactor.IOSession
      • setEventMask

        public void setEventMask​(int ops)
        Specified by:
        setEventMask in interface org.apache.http.nio.reactor.IOSession
      • setEvent

        public void setEvent​(int op)
        Specified by:
        setEvent in interface org.apache.http.nio.reactor.IOSession
      • clearEvent

        public void clearEvent​(int op)
        Specified by:
        clearEvent in interface org.apache.http.nio.reactor.IOSession
      • close

        public void close()
        Specified by:
        close in interface org.apache.http.nio.reactor.IOSession
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface org.apache.http.nio.reactor.IOSession
      • getStatus

        public int getStatus()
        Specified by:
        getStatus in interface org.apache.http.nio.reactor.IOSession
      • isClosed

        public boolean isClosed()
        Specified by:
        isClosed in interface org.apache.http.nio.reactor.IOSession
      • getSocketTimeout

        public int getSocketTimeout()
        Specified by:
        getSocketTimeout in interface org.apache.http.nio.reactor.IOSession
      • setSocketTimeout

        public void setSocketTimeout​(int timeout)
        Specified by:
        setSocketTimeout in interface org.apache.http.nio.reactor.IOSession
      • setBufferStatus

        public void setBufferStatus​(org.apache.http.nio.reactor.SessionBufferStatus status)
        Specified by:
        setBufferStatus in interface org.apache.http.nio.reactor.IOSession
      • hasBufferedInput

        public boolean hasBufferedInput()
        Specified by:
        hasBufferedInput in interface org.apache.http.nio.reactor.IOSession
      • hasBufferedOutput

        public boolean hasBufferedOutput()
        Specified by:
        hasBufferedOutput in interface org.apache.http.nio.reactor.IOSession
      • setAttribute

        public void setAttribute​(String name,
                                 Object obj)
        Specified by:
        setAttribute in interface org.apache.http.nio.reactor.IOSession
      • getAttribute

        public Object getAttribute​(String name)
        Specified by:
        getAttribute in interface org.apache.http.nio.reactor.IOSession
      • removeAttribute

        public Object removeAttribute​(String name)
        Specified by:
        removeAttribute in interface org.apache.http.nio.reactor.IOSession