URIFileContent

class URIFileContent(val uri: URI, val contentType: ContentType = ContentType.defaultForFilePath(uri.path), val contentLength: Long? = null) : OutgoingContent.ReadChannelContent

Represents a content that is served from the specified uri

Constructors

Link copied to clipboard
constructor(url: URL, contentType: ContentType = ContentType.defaultForFilePath(url.path))
constructor(uri: URI, contentType: ContentType = ContentType.defaultForFilePath(uri.path), contentLength: Long? = null)

Properties

Link copied to clipboard

Gets or sets the CacheControl instance as an extension property on this content.

Link copied to clipboard
open override val contentLength: Long? = null

Specifies content length in bytes for this resource.

Link copied to clipboard
open override val contentType: ContentType

Specifies ContentType for this resource.

Link copied to clipboard
open val headers: Headers

Headers to set when sending this content

Link copied to clipboard

Status code to set when sending this content

Link copied to clipboard
val uri: URI

that is used as a source

Link copied to clipboard

Gets or sets a list of Version instances as an extension property on this content.

Functions

Link copied to clipboard
fun OutgoingContent.compressed(contentEncoder: ContentEncoder, coroutineContext: CoroutineContext = EmptyCoroutineContext): OutgoingContent?

Returns OutgoingContent compressed with contentEncoder if possible.

Link copied to clipboard
open fun <T : Any> getProperty(key: AttributeKey<T>): T?

Gets an extension property for this content

Link copied to clipboard

Provides ByteReadChannel for the given range of the content

open override fun readFrom(): ByteReadChannel

Provides ByteReadChannel for the content

Link copied to clipboard
open fun <T : Any> setProperty(key: AttributeKey<T>, value: T?)

Sets an extension property for this content

Link copied to clipboard
open fun trailers(): Headers?

Trailers to set when sending this content, will be ignored if request is not in HTTP2 mode