@@ -4,14 +4,13 @@ import com.sun.management.OperatingSystemMXBean
44import dev.suresh.config.BuildEnv
55import dev.suresh.model.Creds
66import dev.suresh.model.Secret
7- import io.helidon.common.http.Http
8- import io.helidon.common.http.Http.Header
9- import io.helidon.common.http.NotFoundException
10- import io.helidon.nima.webserver.WebServer
11- import io.helidon.nima.webserver.http.HttpRouting
12- import io.helidon.nima.webserver.http.ServerRequest
13- import io.helidon.nima.webserver.http.ServerResponse
14- import io.helidon.nima.webserver.staticcontent.StaticContentService
7+ import io.helidon.http.Http.*
8+ import io.helidon.http.NotFoundException
9+ import io.helidon.webserver.WebServer
10+ import io.helidon.webserver.http.HttpRouting
11+ import io.helidon.webserver.http.ServerRequest
12+ import io.helidon.webserver.http.ServerResponse
13+ import io.helidon.webserver.staticcontent.StaticContentService
1514import io.ktor.client.*
1615import io.ktor.client.engine.cio.*
1716import io.ktor.client.plugins.websocket.*
@@ -119,8 +118,8 @@ val rsClient by lazy {
119118
120119private fun String.newInstance () = Class .forName(this ).getConstructor().newInstance()
121120
122- val SERVER_HEADER = Header .createCached(Header .SERVER , " Nima" )
123- val UI_REDIRECT = Header .createCached(Header .LOCATION , " /" )
121+ val SERVER_HEADER = Headers .createCached(HeaderNames .SERVER , " Nima" )
122+ val UI_REDIRECT = Headers .createCached(HeaderNames .LOCATION , " /" )
124123
125124fun routes (rules : HttpRouting .Builder ) {
126125 rules
@@ -148,8 +147,8 @@ fun root(req: ServerRequest, res: ServerResponse) {
148147fun error (req : ServerRequest , res : ServerResponse , ex : Throwable ) {
149148 println (" ERROR: ${req.path().path()} - ${ex.message} " )
150149 when (ex) {
151- is NotFoundException -> res.status(Http . Status .NOT_FOUND_404 )
152- else -> res.status(Http . Status .INTERNAL_SERVER_ERROR_500 )
150+ is NotFoundException -> res.status(Status .NOT_FOUND_404 )
151+ else -> res.status(Status .INTERNAL_SERVER_ERROR_500 )
153152 }
154153 res.send()
155154}
@@ -160,7 +159,7 @@ fun shutdown(req: ServerRequest, res: ServerResponse) {
160159}
161160
162161fun redirect (req : ServerRequest , res : ServerResponse ) {
163- res.status(Http . Status .MOVED_PERMANENTLY_301 )
162+ res.status(Status .MOVED_PERMANENTLY_301 )
164163 res.headers().set(UI_REDIRECT )
165164 res.send()
166165}
@@ -295,27 +294,28 @@ fun summary(args: List<String>) = buildString {
295294 appendLine(ex?.message)
296295 // Host info is not available on native image
297296 if (ImageInfo .isExecutable().not ()) {
298- check(ex?.message?.contains(" localhost:12345" ) == true )
297+ println (ex?.message)
298+ check(ex?.message?.contains(" localhost/127.0.0.1:12345" ) == true )
299299 }
300300
301301 appendLine(
302302 """
303- +---------Summary-------+
304- | Processes : ${ps.size.fmt} |
305- | Dns Addresses : ${dns.size.fmt} |
306- | Trust Stores : ${caCerts.size.fmt} |
307- | TimeZones : ${tz.size.fmt} |
308- | CharSets : ${cs.size.fmt} |
309- | Locales : ${locales.size.fmt} |
310- | Countries : ${countries.size.fmt} |
311- | Languages : ${languages.size.fmt} |
312- | Currencies : ${currencies.size.fmt} |
313- | Env Vars : ${env.size.fmt} |
314- | Sys Props : ${props.size.fmt} |
315- | Virtual Thread : ${Thread .currentThread().isVirtual} |
316- | ScopedValue : ${REQ_URI .orElse(" n/a" )} |
317- +-----------------------+
318- """
303+ +---------Summary-------+
304+ | Processes : ${ps.size.fmt} |
305+ | Dns Addresses : ${dns.size.fmt} |
306+ | Trust Stores : ${caCerts.size.fmt} |
307+ | TimeZones : ${tz.size.fmt} |
308+ | CharSets : ${cs.size.fmt} |
309+ | Locales : ${locales.size.fmt} |
310+ | Countries : ${countries.size.fmt} |
311+ | Languages : ${languages.size.fmt} |
312+ | Currencies : ${currencies.size.fmt} |
313+ | Env Vars : ${env.size.fmt} |
314+ | Sys Props : ${props.size.fmt} |
315+ | Virtual Thread : ${Thread .currentThread().isVirtual} |
316+ | ScopedValue : ${REQ_URI .orElse(" n/a" )} |
317+ +-----------------------+
318+ """
319319 .trimIndent(),
320320 )
321321}
@@ -326,7 +326,7 @@ fun reflect(req: ServerRequest, res: ServerResponse) {
326326 plugins.forEach { println (" ServiceLoader Plugin: ${it.call()} " ) }
327327
328328 println (" Redacted: ${Secret (" abc" )} , ${Creds (" user" , " pass" )} " )
329- val type = req.path().pathParameters().value( " type" ) .trim()
329+ val type = req.path().pathParameters()[ " type" ] .trim()
330330 val data =
331331 when (type) {
332332 " java" -> " dev.suresh.model.JVersion" .newInstance()
@@ -357,8 +357,8 @@ fun rSocket(req: ServerRequest, res: ServerResponse) =
357357 println (" Starting new rSocket connection!" )
358358 val rSocket: RSocket = rsClient.rSocket(" wss://demo.rsocket.io/rsocket" )
359359 val stream = rSocket.requestStream(buildPayload { data(""" { "data": "Kotlin rSocket!" }""" ) })
360- res.header(Header . CONTENT_TYPE , " text/event-stream " )
361- res.header(Header . CACHE_CONTROL , " no-cache " )
360+ res.header(Headers . CONTENT_TYPE_EVENT_STREAM )
361+ res.header(Headers . CACHE_NO_CACHE )
362362 // Chunked transfer encoding will be set if the response length is zero.
363363 // res.header(Header.TRANSFER_ENCODING,"chunked")
364364 // Streaming binary response - res.header(Header.CONTENT_TYPE,"application/octet-stream")
0 commit comments