# Uses of Interface
java.util.concurrent.Flow.Subscriber

Packages that use Flow.Subscriber
Package
Description
java.net.http
HTTP Client and WebSocket APIs
java.util.concurrent
Utility classes commonly useful in concurrent programming.

- ## Uses of Flow.Subscriber in java.net.http

  Subinterfaces of Flow.Subscriber in java.net.http
  Modifier and Type
  Interface
  Description
  `static interface`
  `HttpResponse.BodySubscriber<T>`
  A `BodySubscriber` consumes response body bytes and converts them into a higher-level Java type.
  Methods in java.net.http with type parameters of type Flow.Subscriber
  Modifier and Type
  Method
  Description
  `static <S extends Flow.Subscriber<? super String>, T>
  HttpResponse.BodyHandler<T>`
  HttpResponse.BodyHandlers.`fromLineSubscriber(S subscriber, Function<? super S, ? extends T> finisher, String lineSeparator)`
  Returns a response body handler that returns a `BodySubscriber``<T>` obtained from `BodySubscribers.fromLineSubscriber(subscriber, finisher, charset, lineSeparator)`, with the given `subscriber`, `finisher` function, and line separator.
  `static <S extends Flow.Subscriber<? super String>, T>
  HttpResponse.BodySubscriber<T>`
  HttpResponse.BodySubscribers.`fromLineSubscriber(S subscriber, Function<? super S, ? extends T> finisher, Charset charset, String lineSeparator)`
  Returns a body subscriber that forwards all response body to the given `Flow.Subscriber`, line by line.
  `static <S extends Flow.Subscriber<? super List<ByteBuffer>>, T>
  HttpResponse.BodyHandler<T>`
  HttpResponse.BodyHandlers.`fromSubscriber(S subscriber, Function<? super S, ? extends T> finisher)`
  Returns a response body handler that returns a `BodySubscriber``<T>` obtained from `HttpResponse.BodySubscribers.fromSubscriber(Subscriber, Function)`, with the given `subscriber` and `finisher` function.
  `static <S extends Flow.Subscriber<? super List<ByteBuffer>>, T>
  HttpResponse.BodySubscriber<T>`
  HttpResponse.BodySubscribers.`fromSubscriber(S subscriber, Function<? super S, ? extends T> finisher)`
  Returns a body subscriber that forwards all response body to the given `Flow.Subscriber`.
  Methods in java.net.http with parameters of type Flow.Subscriber
  Modifier and Type
  Method
  Description
  `static HttpResponse.BodyHandler<Void>`
  HttpResponse.BodyHandlers.`fromLineSubscriber(Flow.Subscriber<? super String> subscriber)`
  Returns a response body handler that returns a `BodySubscriber``<Void>` obtained from `BodySubscribers.fromLineSubscriber(subscriber, s -> null, charset, null)`, with the given `subscriber`.
  `static HttpResponse.BodySubscriber<Void>`
  HttpResponse.BodySubscribers.`fromLineSubscriber(Flow.Subscriber<? super String> subscriber)`
  Returns a body subscriber that forwards all response body to the given `Flow.Subscriber`, line by line.
  `static HttpResponse.BodyHandler<Void>`
  HttpResponse.BodyHandlers.`fromSubscriber(Flow.Subscriber<? super List<ByteBuffer>> subscriber)`
  Returns a response body handler that returns a `BodySubscriber``<Void>` obtained from `HttpResponse.BodySubscribers.fromSubscriber(Subscriber)`, with the given `subscriber`.
  `static HttpResponse.BodySubscriber<Void>`
  HttpResponse.BodySubscribers.`fromSubscriber(Flow.Subscriber<? super List<ByteBuffer>> subscriber)`
  Returns a body subscriber that forwards all response body to the given `Flow.Subscriber`.

- ## Uses of Flow.Subscriber in java.util.concurrent

  Subinterfaces of Flow.Subscriber in java.util.concurrent
  Modifier and Type
  Interface
  Description
  `static interface`
  `Flow.Processor<T,R>`
  A component that acts as both a Subscriber and Publisher.
  Methods in java.util.concurrent that return types with arguments of type Flow.Subscriber
  Modifier and Type
  Method
  Description
  `List<Flow.Subscriber<? super T>>`
  SubmissionPublisher.`getSubscribers()`
  Returns a list of current subscribers for monitoring and tracking purposes, not for invoking `Flow.Subscriber` methods on the subscribers.
  Methods in java.util.concurrent with parameters of type Flow.Subscriber
  Modifier and Type
  Method
  Description
  `boolean`
  SubmissionPublisher.`isSubscribed(Flow.Subscriber<? super T> subscriber)`
  Returns true if the given Subscriber is currently subscribed.
  `void`
  Flow.Publisher.`subscribe(Flow.Subscriber<? super T> subscriber)`
  Adds the given Subscriber if possible.
  `void`
  SubmissionPublisher.`subscribe(Flow.Subscriber<? super T> subscriber)`
  Adds the given Subscriber unless already subscribed.
  Method parameters in java.util.concurrent with type arguments of type Flow.Subscriber
  Modifier and Type
  Method
  Description
  `int`
  SubmissionPublisher.`offer(T item, long timeout, TimeUnit unit, BiPredicate<Flow.Subscriber<? super T>, ? super T> onDrop)`
  Publishes the given item, if possible, to each current subscriber by asynchronously invoking its `onNext` method, blocking while resources for any subscription are unavailable, up to the specified timeout or until the caller thread is interrupted, at which point the given handler (if non-null) is invoked, and if it returns true, retried once.
  `int`
  SubmissionPublisher.`offer(T item, BiPredicate<Flow.Subscriber<? super T>, ? super T> onDrop)`
  Publishes the given item, if possible, to each current subscriber by asynchronously invoking its `onNext` method.
  Constructor parameters in java.util.concurrent with type arguments of type Flow.Subscriber
  Modifier
  Constructor
  Description
  ``
  `SubmissionPublisher(Executor executor, int maxBufferCapacity, BiConsumer<? super Flow.Subscriber<? super T>, ? super Throwable> handler)`
  Creates a new SubmissionPublisher using the given Executor for async delivery to subscribers, with the given maximum buffer size for each subscriber, and, if non-null, the given handler invoked when any Subscriber throws an exception in method `onNext`.