c

org.apache.daffodil.io

ByteBufferInputSource

class ByteBufferInputSource extends InputSource

Wraps a java.nio.ByteBuffer in a InputSource

When an instance of this class is created, it creates a readOnly copy of the ByteBuffer. The current position of the ByteBuffer is considered index 0. For example, if thed passed in ByteBuffer had position 2, calling setPosition(0) would reset the byteBuffer back to position 2. The limit of the ByteBuffer is considered the end of data.

Linear Supertypes
InputSource, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ByteBufferInputSource
  2. InputSource
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ByteBufferInputSource(byteBuffer: ByteBuffer)

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. var _isValid: Boolean
    Attributes
    protected
    Definition Classes
    InputSource
  5. def areBytesAvailable(nBytes: Long): Boolean

    Determine whether the underlying data has the specified number of bytes available starting at the current byte position.

    Determine whether the underlying data has the specified number of bytes available starting at the current byte position. This function must block until either nBytes are known to be available or end-of-file is reached. This does not advance the current position.

    nBytes

    the number of bytes to determine if are available

    returns

    true if nBytes are available, false otherwise

    Definition Classes
    ByteBufferInputSourceInputSource
  6. final def areDebugging: Boolean
    Definition Classes
    InputSource
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def bytesAvailable(): Long

    Return the number of currently available bytes.

    Return the number of currently available bytes.

    This should not be used to determine the length of the data, as more bytes may become available in the future. This should really only be used for debug purposes.

    Definition Classes
    ByteBufferInputSourceInputSource
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  10. def compact(): Unit

    Alerts the implementation to attempt to free data that is no longer used, if possible.

    Alerts the implementation to attempt to free data that is no longer used, if possible. If possible, this should free any unlocked bytes.

    Definition Classes
    ByteBufferInputSourceInputSource
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. def get(dest: Array[Byte], off: Int, len: Int): Boolean

    Return a byte array with data from the current byte position.

    Return a byte array with data from the current byte position.

    Stores the next len bytes of data in dest starting at index off. In len bytes are not available or len bytes cannot fit in the dest array starting at the given offset, the dest array is not modified and false is returned.

    returns

    true if len bytes are available and written to the dest array, false otherwise

    Definition Classes
    ByteBufferInputSourceInputSource
  15. def get(): Int

    Return a single byte at the current byte position with a value in the range of 0 to 255.

    Return a single byte at the current byte position with a value in the range of 0 to 255.

    Increments the current byte position if successful.

    returns

    the byte at the current byte position if it exists, or -1 if EOF is reached.

    Definition Classes
    ByteBufferInputSourceInputSource
  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. def hasReachedEndOfData: Boolean

    Determine if the InputSource has encountered the end-of-data.

    Determine if the InputSource has encountered the end-of-data.

    For a byte buffer, this is always true.

    Definition Classes
    ByteBufferInputSourceInputSource
  18. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. final def isValid: Boolean
    Definition Classes
    InputSource
  21. def lockPosition(bytePos0b: Long): Unit

    Set the specified byte position as a location that that one may want to call setPosition in the future.

    Set the specified byte position as a location that that one may want to call setPosition in the future. This is essentially setting a mark in the data that can be reset back to later. Implementations are allowed to free any bytes before a locked byte position. Any bytes after a locked position cannot be freed until that lock is release.

    Note that this "lock" has nothing to do with synchronization, but behaves more like marks that must be accessable until released.

    bytePos0b

    the byte position to lock

    Definition Classes
    ByteBufferInputSourceInputSource
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. def position(bytePos0b: Long): Unit

    Set the current byte position, using zero-based indexing

    Set the current byte position, using zero-based indexing

    bytPos0b cannot be greater than the most recent read data. In other words, this can only be used to move backwards in data.

    bytePos0b

    the new current byte position

    Definition Classes
    ByteBufferInputSourceInputSource
  26. def position(): Long

    Get the current byte position, using zero-based indexing

    Get the current byte position, using zero-based indexing

    returns

    the current byte position

    Definition Classes
    ByteBufferInputSourceInputSource
  27. def releasePosition(bytePos0b: Long): Unit

    Release a previously locked byte position, allowing the implementation to free any unlocked bytes.

    Release a previously locked byte position, allowing the implementation to free any unlocked bytes.

    bytePos0b

    the byte position to release

    Definition Classes
    ByteBufferInputSourceInputSource
  28. final def setDebugging(setting: Boolean): Unit
    Definition Classes
    InputSource
  29. final def setInvalid(): Unit
    Definition Classes
    InputSource
  30. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  31. def toString(): String
    Definition Classes
    AnyRef → Any
  32. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from InputSource

Inherited from AnyRef

Inherited from Any

Ungrouped