Trait

com.twitter.server

TwitterServer

Related Doc: package server

Permalink

trait TwitterServer extends App with Linters with Logging with EventSink with LogFormat with Hooks with AdminHttpServer with Admin with Lifecycle with Stats

Twitter Server defines a template from which servers at Twitter are built. It provides common application components such as an administrative HTTP server, tracing, stats, etc. These features are wired in correctly for use in production at Twitter.

For DI (Dependency Injection) Twitter Server uses self-typed Scala traits that might be mixed in the TwitterServer trait. The common practice is to define self-typed traits against the App trait as shown below.

import com.twitter.app.App
import com.twitter.server.TwitterServer

trait MyModule { self: App =>
  // module logic
}

object MyApp extends TwitterServer with MyModule {
  // app logic
}
Linear Supertypes
Stats, Lifecycle, Admin, AdminHttpServer, Hooks, LogFormat, EventSink, Logging, Linters, App, CloseAwaitably, CloseAwaitably0[Unit], Awaitable[Unit], Closable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TwitterServer
  2. Stats
  3. Lifecycle
  4. Admin
  5. AdminHttpServer
  6. Hooks
  7. LogFormat
  8. EventSink
  9. Logging
  10. Linters
  11. App
  12. CloseAwaitably
  13. CloseAwaitably0
  14. Awaitable
  15. Closable
  16. AnyRef
  17. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final val MinGrace: Duration

    Permalink
    Definition Classes
    App
  5. def addAdminRoute(route: Route): Unit

    Permalink
    Definition Classes
    AdminHttpServer
  6. def addAdminRoutes(newRoutes: Seq[Route]): Unit

    Permalink
    Definition Classes
    AdminHttpServer
  7. def adminBoundAddress: InetSocketAddress

    Permalink

    The address to which the Admin HTTP server is bound.

    The address to which the Admin HTTP server is bound.

    Definition Classes
    AdminHttpServer
  8. var adminHttpServer: ListeningServer

    Permalink
    Attributes
    protected
    Definition Classes
    AdminHttpServer
  9. val adminPort: Flag[InetSocketAddress]

    Permalink
    Definition Classes
    AdminHttpServer
  10. def allowUndefinedFlags: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    App
  11. val appendFlag: Flag[Boolean]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  12. def args: Array[String]

    Permalink
    Definition Classes
    App
  13. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  14. val asyncFlag: Flag[Boolean]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  15. val asyncMaxSizeFlag: Flag[Int]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  16. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. final def close(deadline: Time): Future[Unit]

    Permalink
    Definition Classes
    App → Closable
  18. def close(after: Duration): Future[Unit]

    Permalink
    Definition Classes
    Closable
  19. final def close(): Future[Unit]

    Permalink
    Definition Classes
    Closable
  20. def closeAwaitably(f: ⇒ Future[Unit]): Future[Unit]

    Permalink
    Attributes
    protected
    Definition Classes
    CloseAwaitably0
  21. final def closeOnExit(closable: Closable): Unit

    Permalink
    Definition Classes
    App
  22. final def closeOnExitLast(closable: Closable): Unit

    Permalink
    Definition Classes
    App
  23. def configureAdminHttpServer(server: Server): Server

    Permalink

    This method allows for further configuration of the http server for parameters not exposed by this trait or for overriding defaults provided herein, e.g.,

    This method allows for further configuration of the http server for parameters not exposed by this trait or for overriding defaults provided herein, e.g.,

    override def configureAdminHttpServer(server: Http.Server): Http.Server =
     server.withMonitor(myMonitor)
    server

    - the com.twitter.finagle.Http.Server to configure.

    returns

    a configured Http.Server.

    Attributes
    protected
    Definition Classes
    AdminHttpServer
  24. def configureLoggerFactories(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Logging
  25. def defaultAppend: Boolean

    Permalink
    Definition Classes
    Logging
  26. def defaultCloseGracePeriod: Duration

    Permalink
    Definition Classes
    App
  27. def defaultFormatter: Formatter

    Permalink
    Definition Classes
    Logging
  28. def defaultHttpPort: Int

    Permalink
    Definition Classes
    AdminHttpServer
  29. def defaultLogLevel: Level

    Permalink
    Definition Classes
    Logging
  30. def defaultOutput: String

    Permalink
    Definition Classes
    Logging
  31. def defaultRollPolicy: Policy

    Permalink
    Definition Classes
    Logging
  32. def defaultRotateCount: Int

    Permalink
    Definition Classes
    Logging
  33. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  34. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  35. def exitOnError(reason: String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    App
  36. def failfastOnFlagsNotParsed: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    App
  37. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  38. val flag: Flags

    Permalink
    Definition Classes
    App
  39. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  40. val group: String

    Permalink
    Definition Classes
    Lifecycle
  41. def handlers: List[() ⇒ Handler]

    Permalink
    Definition Classes
    Logging
  42. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  43. val inferClassNamesFlag: Flag[Boolean]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  44. final def init(f: ⇒ Unit): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    App
  45. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  46. def isReady(implicit permit: CanAwait): Boolean

    Permalink
    Definition Classes
    CloseAwaitably0 → Awaitable
  47. val levelFlag: Flag[Level]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  48. def libraryName: String

    Permalink

    Name used for registration in the com.twitter.util.registry.Library

    Name used for registration in the com.twitter.util.registry.Library

    returns

    library name to register in the Library registry.

    Attributes
    protected
    Definition Classes
    AdminHttpServer
  49. def linterRules: Seq[Rule]

    Permalink

    Exposed for testing

    Exposed for testing

    Definition Classes
    Linters
  50. lazy val log: Logger

    Permalink
    Definition Classes
    Logging
  51. def loggerFactories: List[LoggerFactory]

    Permalink
    Definition Classes
    Logging
  52. final def main(args: Array[String]): Unit

    Permalink
    Definition Classes
    App
  53. val name: String

    Permalink
    Definition Classes
    App
  54. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  55. final def nonExitingMain(args: Array[String]): Unit

    Permalink
    Definition Classes
    App
  56. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  57. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  58. final def onExit(f: ⇒ Unit): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    App
  59. val outputFlag: Flag[String]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  60. final def postmain(f: ⇒ Unit): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    App
  61. final def premain(f: ⇒ Unit): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    App
  62. def ready(timeout: Duration)(implicit permit: CanAwait): TwitterServer.this.type

    Permalink
    Definition Classes
    CloseAwaitably0 → Awaitable
  63. def result(timeout: Duration)(implicit permit: CanAwait): Unit

    Permalink
    Definition Classes
    CloseAwaitably0 → Awaitable
  64. val rollPolicyFlag: Flag[Policy]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  65. val rotateCountFlag: Flag[Int]

    Permalink
    Attributes
    protected[this]
    Definition Classes
    Logging
  66. def routes: Seq[Route]

    Permalink
    Attributes
    protected
    Definition Classes
    Admin
  67. lazy val shutdownTimer: Timer

    Permalink
    Attributes
    protected
    Definition Classes
    App
  68. val statsReceiver: StatsReceiver

    Permalink
    Definition Classes
    Stats
  69. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  70. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  71. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  72. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  73. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Stats

Inherited from Lifecycle

Inherited from Admin

Inherited from AdminHttpServer

Inherited from Hooks

Inherited from LogFormat

Inherited from EventSink

Inherited from Logging

Inherited from Linters

Inherited from App

Inherited from CloseAwaitably

Inherited from CloseAwaitably0[Unit]

Inherited from Awaitable[Unit]

Inherited from Closable

Inherited from AnyRef

Inherited from Any

Ungrouped