Interface StreamingPipelineService

All Known Implementing Classes:
StreamingPipelineServiceImpl

public interface StreamingPipelineService
Minimal application-level streaming pipeline example.

The API demonstrates server-side batches, client-submitted batches, bidirectional exchange, cancellation, backpressure metadata, max item size, and metrics. It is not a durable streaming engine.

  • Method Details

    • openSession

      StreamSession openSession(StreamOptions options)
      Opens a streaming session.
      Parameters:
      options - stream options
      Returns:
      session handle
    • submitBatch

      BatchResult submitBatch(StreamSession session, List<String> items)
      Submits a client batch to the session.
      Parameters:
      session - session handle
      items - submitted items
      Returns:
      batch result
    • readBatch

      List<String> readBatch(StreamSession session, int maxItems)
      Reads up to maxItems server items.
      Parameters:
      session - session handle
      maxItems - maximum items to read
      Returns:
      immutable batch of server items
    • exchange

      StreamExchangeResult exchange(StreamSession session, List<String> clientItems, int maxServerItems)
      Submits client items and reads server items in one exchange.
      Parameters:
      session - session handle
      clientItems - client items
      maxServerItems - maximum server items to return
      Returns:
      exchange result
    • cancel

      boolean cancel(StreamSession session)
      Cancels a session.
      Parameters:
      session - session handle
      Returns:
      whether cancellation changed the session state
    • metrics

      StreamMetrics metrics(StreamSession session)
      Reads session metrics.
      Parameters:
      session - session handle
      Returns:
      immutable metrics
    • adminStatus

      String adminStatus()
      Returns a compact status line for demo/admin output.
      Returns:
      safe status line