colossus.protocols.http

ChunkDecodingPipe

Related Doc: package http

class ChunkDecodingPipe extends InfinitePipe[DataBuffer]

A pipe designed to accept a chunked http body.

The pipe will scan the chunk headers and auto-close itself when it hits the end of the stream (reading a 0 length chunk). It also strips all chunk headers from the data, so the output stream is the raw data

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ChunkDecodingPipe
  2. InfinitePipe
  3. Pipe
  4. Source
  5. Sink
  6. Transport
  7. AnyRef
  8. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ChunkDecodingPipe()

Type Members

  1. case class Dead(reason: Throwable) extends State with Product with Serializable

    Definition Classes
    InfinitePipe
  2. case class Full(trigger: Trigger) extends State with Product with Serializable

    Definition Classes
    InfinitePipe
  3. case class Pulling(callback: (Try[Option[T]]) ⇒ Unit) extends State with Product with Serializable

    Definition Classes
    InfinitePipe
  4. sealed trait State extends AnyRef

    Definition Classes
    InfinitePipe

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. def ++(next: Source[DataBuffer]): Source[DataBuffer]

    Definition Classes
    Source
  4. def ->>[V, W](pipe: Pipe[V, W])(f: (DataBuffer) ⇒ Seq[V]): Pipe[DataBuffer, W]

    Definition Classes
    Pipe
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  6. object Closed extends State with Product with Serializable

    Definition Classes
    InfinitePipe
  7. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  8. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def complete(): Unit

    Definition Classes
    InfinitePipeSink
  10. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  12. def feed(from: Source[DataBuffer], linkState: Boolean): Unit

    Definition Classes
    Sink
  13. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. def fold[U](init: U)(cb: (DataBuffer, U) ⇒ U): Callback[U]

    Definition Classes
    Source
  15. def foldWhile[U](init: U)(cb: (DataBuffer, U) ⇒ U)(f: (U) ⇒ Boolean): Callback[U]

    Definition Classes
    Source
  16. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  17. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  18. def isClosed: Boolean

    Definition Classes
    InfinitePipe
  19. def isFull: Boolean

    Definition Classes
    InfinitePipeSink
  20. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  21. def isPushable: Boolean

    Definition Classes
    InfinitePipe
  22. def join[V, W](pipe: Pipe[V, W])(f: (DataBuffer) ⇒ Seq[V]): Pipe[DataBuffer, W]

    Definition Classes
    Pipe
  23. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  24. final def notify(): Unit

    Definition Classes
    AnyRef
  25. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  26. def pull(whenReady: (Try[Option[DataBuffer]]) ⇒ Unit): Unit

    Request the next value from the pipe

    Request the next value from the pipe

    Only one value can be requested at a time. Also there can only be one outstanding request at a time.

    Definition Classes
    InfinitePipeSource
  27. def pullCB(): Callback[Option[DataBuffer]]

    Definition Classes
    Source
  28. def push(data: DataBuffer): PushResult

    Attempt to push a value into the pipe.

    Attempt to push a value into the pipe.

    The value will only be successfully pushed only if there has already a been a request for data on the pulling side. In other words, the pipe will never interally queue a value.

    returns

    the result of the push

    Definition Classes
    ChunkDecodingPipeInfinitePipeSink
    Exceptions thrown

    PipeException when pushing to a full pipe

  29. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  30. def terminate(reason: Throwable): Unit

    Definition Classes
    InfinitePipeTransport
  31. def terminated: Boolean

    Definition Classes
    InfinitePipeTransport
  32. def toString(): String

    Definition Classes
    AnyRef → Any
  33. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  35. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. def whenPushable(f: ⇒ PushResult): PushResult

    Attributes
    protected
    Definition Classes
    InfinitePipe

Inherited from InfinitePipe[DataBuffer]

Inherited from Pipe[DataBuffer, DataBuffer]

Inherited from Source[DataBuffer]

Inherited from Sink[DataBuffer]

Inherited from Transport

Inherited from AnyRef

Inherited from Any

Ungrouped