Я пытаюсь выполнить несколько HTTP-вызовов в одной функции
Main:
def requestChain: ChainBuilder = {
feed(feeder(dataSource))
.exec(cleanTransactions("Revoke Transaction"))
}
Теперь в рамках этого метода я вызываю 2 других метода, которые выполняют разные HTTP-вызовы. первый вызов сохраняет результат (массив) в переменной сеанса getLicensesForDevice_TA. Перебирая переменную, я пытаюсь сделать еще один http-вызов на основе элементов в массиве. Однако, похоже, что второй вызов (revokeLicense) по какой-то причине не выполняется (проблема не связана с оператором If, я уже проверял это). При вызове revokeLicense direkt в requestChain он выполняется правильно.
private def cleanTransactions(methodeName:String, device:String, returnCode:Integer ): ChainBuilder = {
exec(getLicensesForDevice(methodeName, device, 200))
.foreach("${getLicensesForDevice_TA}", "deleteLicensesForDevice_TA") {
exec(session => {
val gatlingTransactionID = session("deleteLicensesForDevice_TA").as[String].trim
session.set("gatlingTransactionID", gatlingTransactionID)
})
if ("${gatlingTransactionID}".contains("TestTA")){
exec(revokeLicense(methodeName,"${gatlingTransactionID}",204,false))
}else{
exec(session => {
println("No TA will be executed: ${gatlingTransactionID}" )
session
})
}
}
}