object EntityStreamingSupport

Entity streaming support, independent of used Json parsing library etc.

Source
EntityStreamingSupport.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EntityStreamingSupport
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def csv(maxLineLength: Int): CsvEntityStreamingSupport

    Default text/csv(UTF-8) entity streaming support.

    Default text/csv(UTF-8) entity streaming support. Provides framing and rendering of \n separated lines and marshalling Sources into such values.

  2. def csv(): CsvEntityStreamingSupport

    Default text/csv(UTF-8) entity streaming support.

    Default text/csv(UTF-8) entity streaming support. Provides framing and rendering of \n separated lines and marshalling Sources into such values.

    Limits the maximum line-length to 8KB, if you want to increase this limit provide a value explicitly.

  3. def json(maxObjectLength: Int): JsonEntityStreamingSupport

    Default application/json entity streaming support.

    Default application/json entity streaming support.

    Provides framing (based on scanning the incoming dataBytes for valid JSON objects, so for example uploads using arrays or new-line separated JSON objects are all parsed correctly) and rendering of Sources as JSON Arrays. A different very popular style of returning streaming JSON is to separate JSON objects on a line-by-line basis, you can configure the support trait to do so by calling withFramingRendererFlow.

    See also https://en.wikipedia.org/wiki/JSON_Streaming

  4. def json(): JsonEntityStreamingSupport

    Default application/json entity streaming support.

    Default application/json entity streaming support.

    Provides framing (based on scanning the incoming dataBytes for valid JSON objects, so for example uploads using arrays or new-line separated JSON objects are all parsed correctly) and rendering of Sources as JSON Arrays. A different very popular style of returning streaming JSON is to separate JSON objects on a line-by-line basis, you can configure the support trait to do so by calling withFramingRendererFlow.

    Limits the maximum JSON object length to 8KB, if you want to increase this limit provide a value explicitly.

    See also https://en.wikipedia.org/wiki/JSON_Streaming