override protected[interactive] def clientSessionView()

in server/src/main/scala/org/apache/livy/server/interactive/InteractiveSessionServlet.scala [79:128]


  override protected[interactive] def clientSessionView(
      session: InteractiveSession,
      req: HttpServletRequest): Any = {
    val logs =
      if (accessManager.hasViewAccess(session.owner,
                                      effectiveUser(req),
                                      session.proxyUser.getOrElse(""))) {
        Option(session.logLines())
          .map { lines =>
            val size = 10
            val from = math.max(0, lines.length - size)
            val until = from + size

            lines.view(from, until)
          }
          .getOrElse(Nil)
      } else {
        Nil
      }

    val conf = if (session.conf != null) {
      session.conf.asJava
    } else null

    val archives = if (session.archives != null) {
      session.archives.asJava
    } else null

    val jars = if (session.jars != null) {
      session.jars.asJava
    } else null

    val pyFiles = if (session.pyFiles != null) {
      session.pyFiles.asJava
    } else null

    val files = if (session.files != null) {
      session.files.asJava
    } else null

    new SessionInfo(session.id, session.name.orNull, session.appId.orNull,
      session.owner, session.state.toString, session.kind.toString,
      session.appInfo.asJavaMap, logs.asJava, session.ttl.orNull,
      session.idleTimeout.orNull, session.driverMemory.orNull,
      session.driverCores.getOrElse(0), session.executorMemory.orNull,
      session.executorCores.getOrElse(0), conf, archives,
      files, session.heartbeatTimeoutS, jars,
      session.numExecutors.getOrElse(0), session.proxyUser.orNull, pyFiles,
      session.queue.orNull)
  }