Packages

c

za.co.absa.cobrix.cobol.reader.stream

SimpleMemoryStream

class SimpleMemoryStream extends AnyRef

This is a stream with a lookback buffer. It allows you to read bytes from it and sometime go back and fetch previous bytes. It also supports searching for a specific sequence of bytes.

The pattern of usage for this stream is this.

  • Create an instance of za.co.absa.cobrix.cobol.reader.stream.SimpleStream.
  • Create an instance of SimpleMemoryStream and pass the lookback buffer size and the object created at the first step.
  • Search a sequence of bytes in the stream.
  • Once the sequence of bytes is found you can fetch bytes before the sequence and after it by providing the specific indexes. This memory stream provides getBytes interface which accepts indexes. The stream will be read sequentially and once values from bigger indexes are read you can look back only limited number of bytes.
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SimpleMemoryStream
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SimpleMemoryStream(stream: SimpleStream, lookbackBufferSize: Int)

    stream

    An instance of za.co.absa.cobrix.cobol.reader.stream.SimpleStream as the source of bytes.

    lookbackBufferSize

    The number of bytes to keep in the look back buffer.

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def getBytes(buffer: Array[Byte], startIndex: Long, endIndex: Long): Int
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. var largestAvailableIndex: Long
  14. val loopbackBuffer: Array[Byte]
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. def search(searchBytes: Array[Byte], startIndex: Long): Long

    Searches the stream for the specified sequence of bytes.

    Searches the stream for the specified sequence of bytes. Returns the index of the beginning of the found sequence, -1 if not found.

  19. def searchOutOfLookbackBuffer(searchBytes: Array[Byte], initialSearchState: Int): Long

    Searches the sequence of bytes outsize of the lookback buffer.

    Searches the sequence of bytes outsize of the lookback buffer. Returns the index of the beginning of the found sequence, -1 if not found.

  20. var smallestAvailableIndex: Long
  21. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped