Class Filter<UP_IN,UP_OUT,DOWN_OUT,DOWN_IN>

java.lang.Object
org.glassfish.jersey.jdk.connector.internal.Filter<UP_IN,UP_OUT,DOWN_OUT,DOWN_IN>
Direct Known Subclasses:
HttpConnection.ConnectionFilter, HttpFilter, ProxyFilter, SslFilter, TransportFilter

class Filter<UP_IN,UP_OUT,DOWN_OUT,DOWN_IN> extends Object
A filter can add functionality to JDK client transport. Filters are composed together to create JDK client transport.
  • Field Details

  • Constructor Details

  • Method Details

    • write

      void write(UP_IN data, CompletionHandler<UP_IN> completionHandler)
      Perform write operation for this filter and invokes write method on the next filter in the filter chain.
      Parameters:
      data - on which write operation is performed.
      completionHandler - will be invoked when the write operation is completed or has failed.
    • close

      void close()
      Close the filter, invokes close operation on the next filter in the filter chain.

      The filter is expected to clean up any allocated resources and pass the invocation to downstream filter.

    • startSsl

      void startSsl()
      Signal to turn on SSL, it is passed on in the filter chain until a filter responsible for SSL is reached.
    • connect

      void connect(SocketAddress address, Filter<?,?,UP_IN,UP_OUT> upstreamFilter)
      Initiate connect.

      If the Filter needs to do something during this phase, it must implement handleConnect(SocketAddress, Filter) method.

      Parameters:
      address - an address where to connect (server or proxy).
      upstreamFilter - a filter positioned upstream.
    • onConnect

      void onConnect()
      An event listener that is called when a connection is set up. This event travels up in the filter chain.

      If the Filter needs to process this event, it must implement processConnect() method.

    • onRead

      final void onRead(DOWN_IN data)
      An event listener that is called when some data is read.

      If the Filter needs to process this event, it must implement onRead(Object) ()} method. If the method returns true, the processing will continue with upstream filters; if the method invocation returns false, the processing won't continue.

      Parameters:
      data - that has been read.
    • onConnectionClosed

      final void onConnectionClosed()
      An event listener that is called when the connection is closed by the peer.

      If the Filter needs to process this event, it must implement processConnectionClosed() method.

    • onSslHandshakeCompleted

      final void onSslHandshakeCompleted()
      An event listener that is called, when SSL completes its handshake.

      If the Filter needs to process this event, it must implement processSslHandshakeCompleted() method.

    • onError

      final void onError(Throwable t)
      An event listener that is called when an error has occurred.

      Errors travel in direction from downstream filter to upstream filter.

      If the Filter needs to process this event, it must implement processError(Throwable) method.

      Parameters:
      t - an error that has occurred.
    • handleConnect

      void handleConnect(SocketAddress address, Filter upstreamFilter)
      Parameters:
      address - an address where to connect (server or proxy).
      upstreamFilter - a filter positioned upstream.
      See Also:
    • processConnect

      void processConnect()
      Process onConnect().
      See Also:
    • processRead

      boolean processRead(DOWN_IN data)
      Parameters:
      data - read data.
      Returns:
      true if the data should be sent to processing to upper filter in the chain, false otherwise.
    • processConnectionClosed

      void processConnectionClosed()
      See Also:
    • processSslHandshakeCompleted

      void processSslHandshakeCompleted()
      See Also:
    • processError

      void processError(Throwable t)
      Parameters:
      t - an error that has occurred.
      See Also: