ProducerEndpoint

RPC endpoint that takes no input and returns TResult as output when invoked.

Parameters

TResult

The type of entity the endpoint returns as output.

Inheritors

Properties

Link copied to clipboard

Handles errors in responses.

Link copied to clipboard
abstract val httpClient: OkHttpClient

The HTTP client used to communicate with the remote resource.

Link copied to clipboard
abstract val isInvokeAllowed: Boolean?

Indicates whether the server has specified the invoke method is currently allowed.

Link copied to clipboard

Extracts links from responses.

Link copied to clipboard
abstract val serializers: List<Serializer>

A list of serializers used for entities received from the server, sorted from most to least preferred. Always uses first for sending to the server.

Link copied to clipboard
abstract val uri: URI

The HTTP URI of the remote resource.

Functions

Link copied to clipboard
abstract fun getLinks(rel: String): List<Pair<URI, String?>>

Resolves all links with a specific relation type. Uses cached data from last response.

Link copied to clipboard
abstract fun invoke(): TResult

Gets a result from the producer.

Link copied to clipboard
abstract fun link(rel: String): URI

Resolves a single link with a specific relation type. Uses cached data from last response if possible.

Link copied to clipboard
abstract fun linkTemplate(rel: String, variables: Map<String, Any>): URI

Resolves a link template with a specific relation type. Uses cached data from last response if possible.

Link copied to clipboard
abstract fun probe()

Queries the server about capabilities of the endpoint without performing any action.