Request handler for a function in Kotlin
A request handler is a method used to process each Kotlin function call. Here is an example of a script with the handle method acting as a handler:
data class Response(
val statusCode: Int,
val body: String
)
fun handle(request: String): Response {
return Response(200, request)
}
The script processes an incoming HTTP request and outputs its structure and the HTTP status code. The script uses a top-level function as the Kotlin programming model.
When creating a function version, you must specify the entry point, i.e., the function that the runtime calls as a handler. The entry point name depends on the programming model being used:
-
For top-level functions:
<package_name>.<handler_file_name>::<handler_method_name>, e.g.,somepackage.Handler::handle_http.When naming the entry point, specify the file name without the extension.
If your method is
handle, you may skip it. -
For the YcFunction interface:
<package_name>.<class_name>, e.g.,somepackage.Handler.
The name of the handler file must not contain any . before the extension, e.g., .Handler.kt.
Note
At any given time, one function instance cannot handle more calls than set in the concurrency parameter. This allows you to use global variables without the need to ensure data integrity control.