Search Results for

    Show / Hide Table of Contents

    Class JsonFraming

    Provides JSON framing stages that can separate valid JSON objects from incoming ByteString objects.

    Inheritance
    object
    JsonFraming
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Akka.Streams.Dsl
    Assembly: Akka.Streams.dll
    Syntax
    public static class JsonFraming

    Methods

    | Edit this page View Source

    ObjectScanner(int)

    Returns a Flow that implements a "brace counting" based framing stage for emitting valid JSON chunks. It scans the incoming data stream for valid JSON objects and returns chunks of ByteStrings containing only those valid chunks.

    Typical examples of data that one may want to frame using this stage include:

    **Very large arrays**: {{{ [{"id": 1}, {"id": 2}, [...], {"id": 999}] }}}

    **Multiple concatenated JSON objects** (with, or without commas between them): {{{ {"id": 1}, {"id": 2}, [...], {"id": 999} }}}

    The framing works independently of formatting, i.e. it will still emit valid JSON elements even if two elements are separated by multiple newlines or other whitespace characters. And of course is insensitive (and does not impact the emitting frame) to the JSON object's internal formatting.

    Declaration
    public static Flow<ByteString, ByteString, NotUsed> ObjectScanner(int maximumObjectLength)
    Parameters
    Type Name Description
    int maximumObjectLength

    The maximum length of allowed frames while decoding. If the maximum length is exceeded this Flow will fail the stream.

    Returns
    Type Description
    Flow<ByteString, ByteString, NotUsed>

    TBD

    In this article
    • githubEdit this page
    • View Source
    Back to top
    Contribute
    • Project Chat
    • Discussion Forum
    • Source Code
    Support
    • Akka.NET Support Plans
    • Akka.NET Observability Tools
    • Akka.NET Training & Consulting
    Maintained By
    • Petabridge - The Akka.NET Company
    • Learn Akka.NET