Locations

open class Locations(application: Application, routeService: LocationRouteService)

Ktor plugin that allows to handle and construct routes in a typed way.

You have to create data classes/objects representing parameterized routes and annotate them with Location. Then you can register sub-routes and handlers for those locations and create links to them using Locations.href.

Constructors

Link copied to clipboard
fun Locations(application: Application)

Creates Locations service extracting path information from @Location annotation

Link copied to clipboard
fun Locations(application: Application, routeService: LocationRouteService)

Types

Link copied to clipboard
class Configuration

Configuration for Locations.

Link copied to clipboard

Installable plugin for Locations.

Functions

Link copied to clipboard
fun createEntry(parent: Route, locationClass: KClass<*>): Route

Creates all necessary routing entries to match specified locationClass.

Link copied to clipboard
fun href(location: Any): String

Constructs the url for location.

Link copied to clipboard
inline fun <T : Any> resolve(parameters: Parameters): T

Resolves parameters to an instance of specified T.

inline fun <T : Any> resolve(call: ApplicationCall): T

Resolves parameters in a call to an instance of specified T.

fun <T : Any> resolve(locationClass: KClass<*>, parameters: Parameters): T

Resolves parameters to an instance of specified locationClass.

fun <T : Any> resolve(locationClass: KClass<*>, call: ApplicationCall): T

Resolves parameters in a call to an instance of specified locationClass.

Properties

Link copied to clipboard
val registeredLocations: List<LocationInfo>

All locations registered at the moment (Immutable list).