class InputStreamReader extends Reader[Buf] with Closable with CloseAwaitably
Provides the Reader API for an InputStream
.
The given InputStream
will be closed when Reader.read
reaches the EOF or a call to discard or close
.
- Alphabetic
- By Inheritance
- InputStreamReader
- CloseAwaitably
- CloseAwaitably0
- Awaitable
- Closable
- Reader
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new InputStreamReader(inputStream: InputStream, chunkSize: Int)
Constructs an InputStreamReader out of a given
inputStream
.Constructs an InputStreamReader out of a given
inputStream
. The resulting Reader emits chunks of at mostchunkSize
.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def close(deadline: Time): Future[Unit]
Discards this Reader and closes the underlying
InputStream
Discards this Reader and closes the underlying
InputStream
- Definition Classes
- InputStreamReader → Closable
- def close(after: Duration): Future[Unit]
Close the resource with the given timeout.
Close the resource with the given timeout. This timeout is advisory, giving the callee some leeway, for example to drain clients or finish up other tasks.
- Definition Classes
- Closable
- final def close(): Future[Unit]
Close the resource.
Close the resource. The returned Future is completed when the resource has been fully relinquished.
- Definition Classes
- Closable
- def closeAwaitably(f: => Future[Unit]): Future[Unit]
closeAwaitably is intended to be used as a wrapper for
close
.closeAwaitably is intended to be used as a wrapper for
close
. The underlyingf
will be called at most once.- Attributes
- protected
- Definition Classes
- CloseAwaitably0
- def discard(): Unit
Discard this reader: its output is no longer required.
Discard this reader: its output is no longer required.
This asynchronously closes the underlying
InputStream
.- Definition Classes
- InputStreamReader → Reader
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def flatMap[B](f: (Buf) => Reader[B]): Reader[B]
Construct a new Reader by applying
f
to every item read from this ReaderConstruct a new Reader by applying
f
to every item read from this Reader- f
the function constructs a new Reader[B] from the value of this Reader.read
- Definition Classes
- Reader
- Note
All operations of the new Reader will be in sync with self Reader. Discarding one Reader will discard the other Reader. When one Reader's onClose resolves, the other Reader's onClose will be resolved immediately with the same value.
- def flatten[B](implicit ev: <:<[Buf, Reader[B]]): Reader[B]
Converts a
Reader[Reader[B]]
into aReader[B]
Converts a
Reader[Reader[B]]
into aReader[B]
- Definition Classes
- Reader
- Note
All operations of the new Reader will be in sync with the outermost Reader. Discarding one Reader will discard the other Reader. When one Reader's onClose resolves, the other Reader's onClose will be resolved immediately with the same value. The subsequent readers are unmanaged, the caller is responsible for discarding those when abandoned.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isReady(implicit permit: CanAwait): Boolean
Is this Awaitable ready? In other words: would calling Awaitable.ready block?
Is this Awaitable ready? In other words: would calling Awaitable.ready block?
- Definition Classes
- CloseAwaitably0 → Awaitable
- final def map[B](f: (Buf) => B): Reader[B]
Construct a new Reader by applying
f
to every item read from this ReaderConstruct a new Reader by applying
f
to every item read from this Reader- f
the function transforms data of type A to B
- Definition Classes
- Reader
- Note
All operations of the new Reader will be in sync with self Reader. Discarding one Reader will discard the other Reader. When one Reader's onClose resolves, the other Reader's onClose will be resolved immediately with the same value.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def onClose: Future[StreamTermination]
A com.twitter.util.Future that resolves once this reader is closed upon reading of end-of-stream.
A com.twitter.util.Future that resolves once this reader is closed upon reading of end-of-stream.
If the result is a failed future, this indicates that it was not closed either by reading until the end of the stream nor by discarding. This is useful for any extra resource cleanup that you must do once the stream is no longer being used.
- Definition Classes
- InputStreamReader → Reader
- def read(): Future[Option[Buf]]
Asynchronously read at most min(
n
,maxBufferSize
) bytes from theInputStream
.Asynchronously read at most min(
n
,maxBufferSize
) bytes from theInputStream
. The returned com.twitter.util.Future represents the results of the read operation. Any failure indicates an error; an empty buffer indicates that the stream has completed.- Definition Classes
- InputStreamReader → Reader
- Note
the underlying
InputStream
is closed on read of EOF.
- def ready(timeout: Duration)(implicit permit: CanAwait): InputStreamReader.this.type
Support for
Await.ready
.Support for
Await.ready
. The use of the implicit permit is an access control mechanism: onlyAwait.ready
may call this method.- Definition Classes
- CloseAwaitably0 → Awaitable
- def result(timeout: Duration)(implicit permit: CanAwait): Unit
Support for
Await.result
.Support for
Await.result
. The use of the implicit permit is an access control mechanism: onlyAwait.result
may call this method.- Definition Classes
- CloseAwaitably0 → Awaitable
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()