lm-sistemi-software-distrib.../src/main/kotlin/drills/drill07/exercise4/Replier.kt

22 lines
501 B
Kotlin
Raw Normal View History

2020-04-22 09:59:55 +00:00
package drills.drill07.exercise4
2020-04-24 16:58:13 +00:00
import util.jms.replier.ActiveMQReplier
import util.jms.replier.Replier
2020-04-22 09:59:55 +00:00
fun main() {
2020-04-22 16:01:59 +00:00
val replier: Replier = ActiveMQReplier("factorial", shared = true)
2020-04-22 09:59:55 +00:00
replier.start()
replier.onRequest {
2020-04-22 16:01:59 +00:00
val n = it.getIntProperty("value")
2020-04-22 09:59:55 +00:00
val resultMessage = replier.createMessage()
resultMessage.setLongProperty("result", fact(n))
resultMessage
}
}
private fun fact(n: Int): Long {
return if (n <= 1) 1 else n * fact(n - 1)
}