colossus.core

Server

object Server extends ServerDSL

Servers can be thought of as applications, as they provide Delegators and ConnectionHandlers which contain application logic. Servers are the objects that are directly interface with the Workers and provide them with the Delegators and Handlers. A Server will be "registered" with the Workers, and after a successful registration, it will then bind to the specified ports and be ready to accept incoming requests.

Also this includes all of the messages that Server will respond to. Some of these can cause actions, others are for when some internal event happens and the Server is notified.

Linear Supertypes
ServerDSL, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Server
  2. ServerDSL
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class ConnectionClosed(id: Long, cause: RootDisconnectCause) extends Product with Serializable

  2. case class ConnectionRefused(channel: SocketChannel, attempt: Int) extends Product with Serializable

    Sent from a worker to the server when the server is not registered with the worker.

  3. case class DelegatorBroadcast(message: Any) extends ServerCommand with Product with Serializable

  4. class MaxConnectionRegisterException extends Exception

  5. sealed trait ServerCommand extends AnyRef

  6. case class ServerInfo(openConnections: Int, status: ServerStatus) extends Product with Serializable

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

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

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. object GetInfo extends ServerCommand with Product with Serializable

  7. val MaxConnectionRegisterAttempts: Int

  8. object Shutdown extends ServerCommand with Product with Serializable

  9. def apply(serverConfig: ServerConfig)(implicit io: IOSystem): ServerRef

    Create a server with the ServerConfig

    Create a server with the ServerConfig

    serverConfig

    Contains the desired configuration of this Server It is expected to be in the shape of the "colossus.server" reference configuration, and is primarily used to configure Server metrics.

    io

    The IOSystem to which this Server will belong

    returns

    ServerRef which encapsulates the created Server

  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def basic(name: String, settings: ServerSettings)(handlerFactory: (ServerContext) ⇒ ServerConnectionHandler)(implicit io: IOSystem): ServerRef

    Create a new Server.

    Create a new Server.

    name

    Name of this Server.

    settings

    Settings for this Server.

    handlerFactory
    io
    returns

    Definition Classes
    ServerDSL
  12. def basic(name: String, port: Int)(handlerFactory: (ServerContext) ⇒ ServerConnectionHandler)(implicit io: IOSystem): ServerRef

    Convenience function for starting a server using the specified name and port.

    Convenience function for starting a server using the specified name and port. This will be overlaid on top of the default colossus.server configuration path.

    name

    Name of this Server.

    port

    Port to run on

    handlerFactory
    io
    returns

    Definition Classes
    ServerDSL
  13. def basic(name: String, serverConfig: Config = ConfigFactory.load())(handlerFactory: (ServerContext) ⇒ ServerConnectionHandler)(implicit io: IOSystem): ServerRef

    Create a new Server

    Create a new Server

    A Config object will be created via

    ConfigFactory.load()
    name

    Name of this Server

    serverConfig

    Config object in the shape of colossus.server

    handlerFactory
    io
    returns

    Definition Classes
    ServerDSL
  14. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  17. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  19. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  20. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  21. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  22. final def notify(): Unit

    Definition Classes
    AnyRef
  23. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  24. def shutdownCheckFrequency: FiniteDuration

  25. def start(name: String, settings: ServerSettings)(initializer: (WorkerRef) ⇒ Initializer)(implicit io: IOSystem): ServerRef

    Create a new Server.

    Create a new Server.

    name

    Name of this Server.

    settings

    Settings for this Server.

    initializer
    io
    returns

    Definition Classes
    ServerDSL
  26. def start(name: String, port: Int)(initializer: (WorkerRef) ⇒ Initializer)(implicit io: IOSystem): ServerRef

    Convenience function for starting a server using the specified name and port.

    Convenience function for starting a server using the specified name and port. This will be overlaid on top of the default "colossus.server" configuration path.

    name

    Name of this Server.

    port

    Port to run on

    initializer
    io
    returns

    Definition Classes
    ServerDSL
  27. def start(name: String, serverConfig: Config = ConfigFactory.load())(initializer: (WorkerRef) ⇒ Initializer)(implicit io: IOSystem): ServerRef

    Create a new Server

    Create a new Server

    A Config object will be created via

    ConfigFactory.load()
    name

    The name of this Server

    serverConfig

    Config object in the shape of colossus.server

    initializer
    io
    returns

    Definition Classes
    ServerDSL
  28. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  29. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ServerDSL

Inherited from AnyRef

Inherited from Any

Ungrouped