Kotlin detecta el time de espera a petición del server

Hola. Todavía soy nuevo en el lenguaje kotlin, cuando solicito datos al server, por ejemplo, en java:

try{ request_server(); } catch(IOException e){ //Some toast for network timeout for example } 

¿Cómo puedo verificar si esa request tiene un time de espera de networking en Kotlin?

Kotlin no ha marcado excepciones, pero eso no significa que no pueda atrapar una IOException en Kotlin. No hay diferencia, excepto la statement de variable en catch :

 try{ request_server(); } catch(e: IOException){ //Some toast for network timeout for example } 

Sin embargo, es muy raro que veas esos constructos en el lenguaje. Dado que Kotlin tiene un soporte maravilloso para funciones de order superior, puede extraer el event handling errores en dicha function y hacer que la lógica comercial sea más obvia y también permitir la reutilización.

 fun <R> timeoutHandled(block: () -> R): R { try { return block() } catch (e: IOException) { //Some toast for network timeout for example } } 

Usado así:

 val result = timeoutHandled { requestServer() } 
  • Kotlin - extraer la list de objects padre de los elementos en la Colección
  • Error de la biblioteca de la sala Android: no se puede encontrar el setter para el campo. (Kotlin)
  • cómo establecer el color de RecyclerView.ViewHolder en BroadcastReceiver.onReceive?
  • RxJava Observable a Completable, cómo evitar toBlocking ()
  • Crea una instancia de anotación en Kotlin
  • Kotlin: Suma de BigDecimal en una list
  • My RecyclerView no se notifica adecuadamente
  • En Kotlin, ¿cómo se modifican los contenidos de una list mientras se itera
  • ¿Vale la pena replace Quasar y Comsat con Ktor?
  • Cargando la image a la position correcta en la vista de reciclador
  • Objeto literal de Kotlin que implementa una interfaz genérica de autorreference cardada