[ {
  "relativePath" : "qodana.yaml",
  "extension" : "yaml",
  "linesOfCode" : 5,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "settings.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 2,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "teamcity-plugin.xml",
  "extension" : "xml",
  "linesOfCode" : 16,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/kotlin-dsl/SlackBuildFeatureAddon.xml",
  "extension" : "xml",
  "linesOfCode" : 89,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/kotlin-dsl/SlackConnection.xml",
  "extension" : "xml",
  "linesOfCode" : 68,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackTestConnectionController.kt",
  "extension" : "kt",
  "linesOfCode" : 58,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/UserSlackNotifierDescriptor.kt",
  "extension" : "kt",
  "linesOfCode" : 42,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/healthReport/SlackInvalidBuildFeatureExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 61,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/healthReport/SlackBuildFeatureHealthReport.kt",
  "extension" : "kt",
  "linesOfCode" : 199,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/healthReport/SlackConnectionHealthReport.kt",
  "extension" : "kt",
  "linesOfCode" : 117,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/healthReport/SlackInvalidConnectionExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 41,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackNotifierProperties.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/teamcity/ChangesCalculationOptionsFactoryExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/teamcity/ProjectManagerExtension.kt",
  "extension" : "kt",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackNotifierEnabled.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackConnectionsBean.kt",
  "extension" : "kt",
  "linesOfCode" : 19,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackProperties.kt",
  "extension" : "kt",
  "linesOfCode" : 34,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/UserSlackNotifierSettingsController.kt",
  "extension" : "kt",
  "linesOfCode" : 144,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackNotifierDescriptor.kt",
  "extension" : "kt",
  "linesOfCode" : 74,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackConnectionSelectOptionsProvider.kt",
  "extension" : "kt",
  "linesOfCode" : 33,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/logging/ThrottlingLogger.kt",
  "extension" : "kt",
  "linesOfCode" : 25,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/auth/TestAuthController.kt",
  "extension" : "kt",
  "linesOfCode" : 62,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/auth/TestAuthResult.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/auth/SlackOauthController.kt",
  "extension" : "kt",
  "linesOfCode" : 103,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/auth/PrepareForTestController.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackConnection.kt",
  "extension" : "kt",
  "linesOfCode" : 82,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/SlackWebApiFactoryImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 13,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/SlackWebApi.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/Model.kt",
  "extension" : "kt",
  "linesOfCode" : 419,
  "components" : [ "primary::src" ],
  "concerns" : [ "::TODOs" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/SlackMessageFormatter.kt",
  "extension" : "kt",
  "linesOfCode" : 22,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/CachingSlackWebApi.kt",
  "extension" : "kt",
  "linesOfCode" : 70,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/SlackWebApiImpl.kt",
  "extension" : "kt",
  "linesOfCode" : 216,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/SlackResponseError.kt",
  "extension" : "kt",
  "linesOfCode" : 2,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/AggregatedSlackApi.kt",
  "extension" : "kt",
  "linesOfCode" : 104,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/SlackWebApiFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 4,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/slack/misc.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/BuildTypeSlackNotifierDescriptor.kt",
  "extension" : "kt",
  "linesOfCode" : 51,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/BuildTypeSlackNotifierSettingsController.kt",
  "extension" : "kt",
  "linesOfCode" : 53,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/NewVerboseMessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 187,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/PlainMessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 224,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/BuildEvent.kt",
  "extension" : "kt",
  "linesOfCode" : 10,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/ServiceMessageNotificationMessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 5,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/VerboseMessagesOptions.kt",
  "extension" : "kt",
  "linesOfCode" : 7,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/PlainServiceMessageNotificationMessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 21,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/ChoosingMessageBuilderFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 18,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/MessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 75,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/SlackNotifier.kt",
  "extension" : "kt",
  "linesOfCode" : 404,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/VerboseMessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 171,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/VerboseMessageBuilderFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 71,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/MessagePayload.kt",
  "extension" : "kt",
  "linesOfCode" : 111,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/EmojiMessageBuilder.kt",
  "extension" : "kt",
  "linesOfCode" : 39,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/SimpleMessageBuilderFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 16,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/DetailsFormatter.kt",
  "extension" : "kt",
  "linesOfCode" : 37,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/notification/MessageBuilderFactory.kt",
  "extension" : "kt",
  "linesOfCode" : 6,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/SlackNotifierChannelCompletionController.kt",
  "extension" : "kt",
  "linesOfCode" : 109,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/kotlin/jetbrains/buildServer/notification/slackNotifier/concurrency/CaffeineHelper.kt",
  "extension" : "kt",
  "linesOfCode" : 17,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/META-INF/build-server-plugin.xml",
  "extension" : "xml",
  "linesOfCode" : 12,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/buildServerResources/healthReport/invalidConnection.jsp",
  "extension" : "jsp",
  "linesOfCode" : 14,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/buildServerResources/healthReport/invalidBuildFeature.jsp",
  "extension" : "jsp",
  "linesOfCode" : 16,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/buildServerResources/editConnectionParameters.jsp",
  "extension" : "jsp",
  "linesOfCode" : 255,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/buildServerResources/editBuildTypeSlackNotifierSettings.jsp",
  "extension" : "jsp",
  "linesOfCode" : 174,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/buildServerResources/notificationRulesMessage.jsp",
  "extension" : "jsp",
  "linesOfCode" : 25,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "src/main/resources/buildServerResources/editUserSlackNotifierSettings.jsp",
  "extension" : "jsp",
  "linesOfCode" : 282,
  "components" : [ "primary::src" ],
  "concerns" : [ "::Unclassified" ]
}, {
  "relativePath" : "build.gradle.kts",
  "extension" : "kts",
  "linesOfCode" : 153,
  "components" : [ "primary::ROOT" ],
  "concerns" : [ "::Unclassified" ]
} ]