HttpMessage

scamper.http.HttpMessage
sealed trait HttpMessage

Defines HTTP message.

HttpMessage defines fundamental characteristics of an HTTP message. HttpRequest and HttpResponse extend the specification to define characteristics specific to their respective message types.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Members list

Type members

Types

Specifies start line type.

Specifies start line type.

Attributes

Value members

Abstract methods

def attributes: Map[String, Any]

Gets message attributes.

Gets message attributes.

Attributes

Note

Attributes are arbitrary values associated with message and are not part of transmitted message.

def body: Entity

Gets message body.

Gets message body.

Attributes

def headers: Seq[Header]

Gets message headers.

Gets message headers.

Attributes

Gets message start line.

Gets message start line.

Attributes

Concrete methods

def as[T](using parser: BodyParser[T]): T

Gets message body as instance of T.

Gets message body as instance of T.

Value parameters

parser

body parser

Attributes

def drain(maxLength: Long): HttpMessage.this.type

Drains decoded message body.

Drains decoded message body.

Value parameters

maxLength

maximum number of bytes

Attributes

Returns

this message

Throws
ReadLimitExceeded

if body exceeds maxLength

def drain(sink: OutputStream, maxLength: Long): Long

Drains decoded message body to supplied sink.

Drains decoded message body to supplied sink.

Value parameters

maxLength

maximum number of bytes

sink

sink to which message body is written

Attributes

Returns

number of bytes written

Throws
ReadLimitExceeded

if body exceeds maxLength

def getAttribute[T](name: String): Option[T]

Gets attribute value with given name.

Gets attribute value with given name.

Value parameters

name

attribute name

Attributes

def getAttributeOrElse[T](name: String, default: => T): T

Gets attribute value with given name, or returns default if attribute not present.

Gets attribute value with given name, or returns default if attribute not present.

Value parameters

default

default value

name

attribute name

Attributes

def getHeader(name: String): Option[Header]

Gets first header with given name.

Gets first header with given name.

Attributes

def getHeaderOrElse(name: String, default: => Header): Header

Gets first header with given name, or returns default if header not present.

Gets first header with given name, or returns default if header not present.

Attributes

def getHeaderValue(name: String): Option[String]

Gets first header value with given name.

Gets first header value with given name.

Attributes

def getHeaderValueOrElse(name: String, default: => String): String

Gets first header value with given name, or returns default if header not present.

Gets first header value with given name, or returns default if header not present.

Attributes

def getHeaderValues(name: String): Seq[String]

Gets header values with given name.

Gets header values with given name.

Attributes

def getHeaders(name: String): Seq[Header]

Gets headers with given name.

Gets headers with given name.

Attributes

def hasHeader(name: String): Boolean

Tests for header with given name.

Tests for header with given name.

Attributes

Gets HTTP version.

Gets HTTP version.

Attributes