Package net.dona.doip

## Class InDoipSegmentFromInputStream

- java.lang.Object
- - net.dona.doip.InDoipSegmentFromInputStream

- All Implemented Interfaces:
    `InDoipSegment`

      public class InDoipSegmentFromInputStream
      extends java.lang.Object
      implements InDoipSegment

  An implementation of `InDoipSegment` produced from in input stream; may be either a JSON segment or a bytes segment.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `InDoipSegmentFromInputStream​(boolean isJson, java.io.InputStream in)` | Constructs an `InDoipSegment` from an input stream.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.io.InputStream` | `getInputStream()` | Returns an input stream, for either a JSON segment or a bytes segment.
    `com.google.gson.JsonElement` | `getJson()` | Returns the JSON of a JSON segment
    `boolean` | `isJson()` | Returns true if this is a JSON segment, false if this is a bytes segment.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### InDoipSegmentFromInputStream

          public InDoipSegmentFromInputStream​(boolean isJson,
                                              java.io.InputStream in)

      Constructs an `InDoipSegment` from an input stream.
      Parameters:
        `isJson` - whether this will be a JSON segment
        `in` - an input stream supplying the bytes of the segment

  - ### Method Detail

    - #### isJson

          public boolean isJson()

      Description copied from interface: `InDoipSegment`
      Returns true if this is a JSON segment, false if this is a bytes segment.
      Specified by:
        `isJson` in interface `InDoipSegment`
      Returns:
        true if this is a JSON segment, otherwise false

    - #### getInputStream

          public java.io.InputStream getInputStream()

      Description copied from interface: `InDoipSegment`
      Returns an input stream, for either a JSON segment or a bytes segment.
      Specified by:
        `getInputStream` in interface `InDoipSegment`
      Returns:
        an input stream containing the bytes from the segment (including a serialization of a JSON segment)

    - #### getJson

          public com.google.gson.JsonElement getJson()
                                              throws java.io.IOException

      Description copied from interface: `InDoipSegment`
      Returns the JSON of a JSON segment
      Specified by:
        `getJson` in interface `InDoipSegment`
      Returns:
        the JSON of a JSON segment
      Throws:
        `java.io.IOException` - if there is a JSON parsing error