def apply()

in server/src/main/scala/com/twitter/server/handler/ThreadsHandler.scala [40:57]


  def apply(req: Request): Future[Response] =
    if (expectsHtml(req) && !expectsJson(req)) htmlResponse(req) else jsonResponse(req)

  private def jsonResponse(req: Request): Future[Response] = {
    val stacks = Thread.getAllStackTraces.asScala.map {
      case (thread, stack) =>
        thread.getId.toString ->
          Map[String, Any](
            "thread" -> thread.getName,
            "daemon" -> thread.isDaemon,
            "state" -> thread.getState,
            "priority" -> thread.getPriority,
            "stack" -> stack.toSeq.map(_.toString)
          )
    }
    val msg = Map("threads" -> stacks)
    newOk(AdminJsonConverter.writeToString(msg), "application/json;charset=UTF-8")
  }