package app
- Grouped
- Alphabetic
- By Inheritance
- app
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- type App[+A] = ZIO[Environment, Error, A]
- type AppIO[+E, +A] = ZIO[Environment, E, A]
- type AppTask[+A] = ZIO[Environment, Throwable, A]
- type AppUIO[+A] = ZIO[Environment, Nothing, A]
-
final
case class
DynamicConfigOptions(port: Option[Int], disableOps: Boolean = false) extends Product with Serializable
Command line arguments for all actions of a DynamicConfigApp application.
Command line arguments for all actions of a DynamicConfigApp application.
- Annotations
- @AppName( "glngn server" ) @AppVersion( "0.1.0" ) @ProgName( "glngn-server" )
-
sealed abstract
class
Error extends Throwable
Top level application error and failures.
Top level application error and failures. Extends throwable for ease of translation with tasks. Optional cause is encoded as default null as that is consistent with Throwable.
-
abstract
class
FixedDomainApp[AppParams] extends ServerApp[AppParams]
A glngn server application with a fixed deployment name and top level domain.
A glngn server application with a fixed deployment name and top level domain. Simplifies building a server application that includes only a specific set of services bundled with the server jar. Also enables adding domain specific parameters to the application.
-
abstract
class
ServerApp[AppParams] extends prelude.IOLogging
A ZIO application hosting at least one server node.
A ZIO application hosting at least one server node.
Start with DynamicConfigApp then FixedDomainApp.
-
abstract
class
StandaloneSystem extends Client
The first node currently cannot be stopped before system shutdown request.
The first node currently cannot be stopped before system shutdown request. (#169, #114)
-
sealed
trait
TermReason extends AnyRef
Reason application is terminating.
Reason application is terminating. In clustered mode this is always the termination reason of the node.
Value Members
-
object
DynamicConfigApp extends ServerApp[DynamicConfigOptions]
A server with dynamic configuration.
A server with dynamic configuration. This is the default main and a good place to start extending for a new domain.
This provides a base config of:
- initial state defined by configuration file or command line arguments
- all service fragments under glngn.server.services are enabled
- operations interfaces for all instantiated services
- ad-hoc definition of singleton services and operations by operators
- TODO: dynamic loading of service fragment jars built using the SDK (of this jar)
- object Error extends Serializable
-
object
ExitCodes extends prelude.IOLogging
Only the exit code 0 indicates success.
Only the exit code 0 indicates success. All other exit codes imply the application behaved differently than expected. The host system should consider the exact exit code to determine best course of action.
An exit code > 50 indicates an error in the implementation. Contact support@dogheadbone.com.
-
object
ServerApp extends prelude.IOLogging
A ZIO application containing a server host.
A ZIO application containing a server host.
Start with DynamicConfigApp and those options. Or apply FixedDomainApp to compile in customizations.
- object StandaloneSystem extends prelude.IOLogging
-
object
TermReason
Reason application is terminating.
Reason application is terminating. In clustered mode this is always the termination reason of the node.
glngn server is a low-code business process as a service rapid development system. Conceptually similar to a programmable Microsoft Access or Apple FileMaker for scalable event sourced business services. In addition to a library, a standalone application is provided that is useful with minimal ceremony. This can be customized with a simple API. As well as deployed to a kubernetes cluster should those advantages be required.
A deployment is cluster glngn.server.Nodes serving a dynamic composition of glngn.server.ServiceFragments. Deployments are designed to be fully usable as a standalone local application or a kubernetes service.
Contact support@dogheadbone.com for support and licensing.