in src/main/kotlin/org/jetbrains/teamcity/rest/infrastructure/RequestConfig.kt [15:37]
fun fromExistingPath(
method: RequestMethod,
preparedPath: String,
headers: Map<String, String> = mapOf()
): RequestConfig {
return if (paramPattern.containsMatchIn(preparedPath) && pathPattern.containsMatchIn(preparedPath)) {
val parsedPath = pathPattern.find(preparedPath)!!.value
val query: MutableMap<String, List<String>> = HashMap()
val paramMatches = paramPattern.findAll(preparedPath)
paramMatches.forEach { matchResult ->
val groups = matchResult.groups
val name = groups[1]?.value
val value = groups[2]?.value
if (!name.isNullOrEmpty() && !value.isNullOrEmpty())
query[name] = listOf(value)
}
RequestConfig(method, parsedPath, query = query, headers = headers)
} else {
RequestConfig(
method, preparedPath, headers = headers
)
}
}