Packages

abstract class ServerApp[AppParams] extends prelude.IOLogging

A ZIO application hosting at least one server node.

Start with DynamicConfigApp then FixedDomainApp.

Linear Supertypes
Known Subclasses
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. ServerApp
  2. IOLogging
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ServerApp()(implicit appParamsParser: Parser[AppParams], appParamsHelp: Help[AppParams])

Type Members

  1. type BaseEnvironment = Blocking with Clock with Console with System

Abstract Value Members

  1. abstract def resolveDeploymentConfig(appParams: AppParams): AppTask[DeploymentConfig]

    Given the application parameters provide the glngn deployment configuration.

  2. abstract def resolveEffectBindings(deploymentConfig: DeploymentConfig, appParams: AppParams): AppTask[List[EffectBinding]]

    Given the application parameters resolve the effect bindings for this deployment.

  3. abstract def resolvePrelude(deploymentConfig: DeploymentConfig, appParams: AppParams): AppTask[Prelude]

    Given the server parameters, resolve the prelude for this server deployment.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. lazy val _unsafeLogger: prelude.Logger
    Attributes
    protected
    Definition Classes
    IOLogging
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  7. def clusteredAppCommand(deploymentConfig: DeploymentConfig, appParams: AppParams, appCommand: AppCommand): AppUIO[Int]

  8. def clusteredNodeCommandHandler(params: ServerParams[AppParams], appCommand: AppCommand): AppTask[Int]

  9. def clusteredRunUntilTerm(params: ServerParams[AppParams]): ServerIO[node.Error, node.TermReason]

    Does not complete until this cluster node completes.

    Does not complete until this cluster node completes. Returns cause of termination. Error occurs if the server is unable to start.

  10. def dispatchOnArgs(args: List[String]): prelude.ZIO[BaseEnvironment, Nothing, Int]

    Given a list of arguments and a AppCommandHandler either return a program for assisting with usage that exits immediately or dispatches to onAppCommand.

    Given a list of arguments and a AppCommandHandler either return a program for assisting with usage that exits immediately or dispatches to onAppCommand.

    Specifically, this is one of:

    0. on no args provided: a program that reports the error and exits with status code 1.

    1. on failure to parse param args a program that reports the error and exits with status code 1.
    2. on failure to parse a command a program that reports the error and exits with status code 1. 2. on usage or help request a program that provides the requested output and exits with status code 0. 3. on command the parsed command and params are provided to onAppCommand.
  11. def dispatchOnCommandParse(appParams: AppParams, commandName: String, isCommandUsage: Boolean, isCommandHelp: Boolean, maybeAppCommand: Either[caseapp.core.Error, AppCommand]): prelude.ZIO[BaseEnvironment, Nothing, Int]

  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. final def main(args: Array[String]): Unit

  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. def printCommandHelp(commandName: String): prelude.ZIO[BaseEnvironment, Nothing, Int]

  23. def printCommandUsage(commandName: String): prelude.ZIO[BaseEnvironment, Nothing, Int]

  24. def printConfigThenExit: ServerTask[Int]

  25. def printConfigThenExit(config: Config): prelude.Task[Int]

  26. def printFullConfigThenExit: ServerTask[Int]

  27. def printFullConfigThenExit(config: Config): prelude.Task[Int]

  28. def printHelpThenExit: prelude.ZIO[BaseEnvironment, Nothing, Int]

  29. def printUsageThenExit: prelude.ZIO[BaseEnvironment, Nothing, Int]

  30. def printVersionThenExit: prelude.Task[Int]

  31. def resolveConfig(deploymentConfig: DeploymentConfig, appParams: AppParams): AppTask[Config]

  32. def resolveDeploymentConfig(deploymentName: DeploymentName, appParams: AppParams): AppTask[DeploymentConfig]

    Given a name of the deployment and application parameters, resolve the configuration of this deployment.

  33. def run(args: List[String]): prelude.ZIO[BaseEnvironment, Nothing, Int]

    Given application arguments as a list of strings (EG: executable args provided to main).

    Given application arguments as a list of strings (EG: executable args provided to main). Provide a server application that, when run, will complete once the server completes. Returning the numeric exit code of the server application.

    Default implementation:

    dispatchOnArgs(args)
  34. def runUntilExit[R <: Logging](app: prelude.ZIO[R, Error, TermReason]): prelude.ZIO[R, Nothing, Int]

    Does not complete until the server completes.

    Does not complete until the server completes. Returns process exit code. An exit code of 0 indicates the server completed due to a normal event. An exit code of non-0 indicates an unrecoverable error occurred.

  35. def serverParamsForApp(deploymentConfig: DeploymentConfig, appParams: AppParams): AppTask[ServerParams[AppParams]]

  36. def standaloneAppCommand(deploymentConfig: DeploymentConfig, appParams: AppParams, appCommand: AppCommand): AppUIO[Int]

  37. def standaloneRunUntilTerm(deploymentConfig: DeploymentConfig, appParams: AppParams, stateDir: prelude.Path, options: Run): App[TermReason]

  38. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  39. def toString(): String
    Definition Classes
    AnyRef → Any
  40. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  43. object logger

    Definition Classes
    IOLogging

Inherited from prelude.IOLogging

Inherited from AnyRef

Inherited from Any

Domain

Service Logic

Implementation Detail

Ungrouped