override fun handle()

in aws-lambda-server/src/main/java/jetbrains/buildServer/runner/lambda/web/LambdaIamRolesListController.kt [34:45]


    override fun handle(project: SProject, request: HttpServletRequest, properties: Map<String, String>): IamRolesList {
        try {
            val iam = IamClient.getIamClientFromProperties(awsConnectionsManager, project, properties)

            val roles = getRoles(iam).map { IamRole(it.arn, it.roleName) }
            val defaultRole = roles.find { it.roleName.endsWith(LambdaConstants.DEFAULT_LAMBDA_ARN_NAME) }

            return IamRolesList(roles, defaultRole)
        } catch (e: AmazonIdentityManagementException) {
            throw JsonControllerException(e.errorMessage, HttpStatus.valueOf(e.statusCode))
        }
    }