in plugin-unity-agent/src/main/kotlin/jetbrains/buildServer/unity/logging/UnityLoggingListener.kt [23:75]
override fun onStandardOutput(text: String) {
currentBlock.apply {
if (isBlockEnd(text)) {
when (logLastLine) {
LogType.Outside -> {
logBlockClosed(name)
blocks.pop()
logMessage(text)
}
LogType.Inside -> {
logMessage(text)
logBlockClosed(name)
blocks.pop()
}
else -> {
logBlockClosed(name)
blocks.pop()
}
}
return
}
}
val foundBlock = loggers.firstOrNull {
it.isBlockStart(text)
}
if (foundBlock != null && foundBlock != currentBlock) {
if (currentBlock != defaultBlock) {
logBlockClosed(currentBlock.name)
blocks.pop()
}
foundBlock.apply {
when (logFirstLine) {
LogType.Outside -> {
logMessage(text)
logBlockOpened(name)
blocks.push(this)
}
LogType.Inside -> {
logBlockOpened(name)
blocks.push(this)
logMessage(text)
}
else -> {
logBlockOpened(name)
blocks.push(this)
}
}
}
} else {
logMessage(text)
}
}