Packages

  • package root

    glngn server is a low-code business process as a service rapid development system.

    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 of glngn.server.node.AppNodes 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.

    Definition Classes
    root
  • package glngn
    Definition Classes
    root
  • package server

    Definition Classes
    glngn
  • package core
    Definition Classes
    server
  • package bindings
  • package endpoints
  • package ops
  • package proto
  • package rts

    The eventual ZIO runtime hosting application code (AppRuntime) is constructed incrementally from:

    The eventual ZIO runtime hosting application code (AppRuntime) is constructed incrementally from:

    1. runtime provided by ZIO 2. runtime extended with environment required of host process: HostRuntime, HostIO. 3. runtime extended with environment required of a server node: ServerRuntime, ServerIO 4. runtime extended with environment required by all application domains: AppRuntime, AppIO

    The AppRuntime is the base runtime available to the actor system via AppRuntimeExt.

  • package serdes
  • package storage
  • ActorService
  • ActorSpawner
  • BindingsInstanceEnv
  • ImpliedStatus
  • ImpliedStatusDefaults
  • ReservedService
  • ServiceActor
  • ServiceDaemon
  • ServiceDomain
  • ServiceInstanceEnv
  • package entities
    Definition Classes
    server
  • package host
    Definition Classes
    server
  • package model
    Definition Classes
    server
  • package prelude

    Provides a custom prelude that re-exports common dependencies.

    Provides a custom prelude that re-exports common dependencies. This will re-export

    Useful for initial developments. If the external prelude conflicts with additional imports there will be odd "no implicit found" errors. In which case this prelude is not appropriate to use.

    import glngn.prelude._

    Use of this prelude is not required. Each aspect is provided as a mix-in and separate object.

    For example, to import only the types and values defined in glngn.server that are generally useful for development:

    import glngn.server.prelude.GlngnServerPrelude._
    Definition Classes
    server
  • package services
    Definition Classes
    server

package core

Ordering
  1. Grouped
  2. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. trait ActorService extends ServiceActor with ServiceBindings

    This is an EDSL rapid development of audited, operations-focused services with predicable interfaces.

    This is an EDSL rapid development of audited, operations-focused services with predicable interfaces.

    A new service should extend the ServiceFragment subclass. There is currently no public API for extending the ActorService instances on a node.

  2. trait ActorSpawner extends AnyRef

    Minimally necessary interface for spawning actors.

  3. trait BindingsInstanceEnv extends AnyRef

  4. trait ImpliedStatus[T] extends AnyRef

    Response types are all required to have a function from a value of that type to the HTTP response code.

    Response types are all required to have a function from a value of that type to the HTTP response code. This is the ImpliedStatus property of the response type.

    A default is provided in ImpliedStatusDefaults. This maps all values to 200 OK.

  5. trait ImpliedStatusDefaults extends AnyRef

  6. abstract class ReservedService extends ActorService

    Reserved services provide the top level routes for the deployment.

    Reserved services provide the top level routes for the deployment. As these occupy the same namespace as groups, conflicts are resolved with reserved services always taking precedence.

    The routes provided by all the reserved services are concatenated by glngn.server.node.AppNode to form the deployment's routes. Included in this is the ServiceFragmentRouter which dynamically manages the routes for ServiceFragments.

  7. trait ServiceActor extends prelude.external.DirectLogging

    This is a low level component.

    This is a low level component. See ServiceFragment for the high level interface.

    ServiceActor is an actor supporting a service interface: Separate Command and Query request interfaces. These are Proto types. Where Proto is the type of actor protocol. Requests imply an expected reply and requester (ServiceActor.RequestScope).

    A ServiceActor can contain types in Proto that are not explicitly a Command or Query. These are referred to as Events.

    To declare a new service actor, define a scala object that inherits from this trait with a protocol type Proto that extends serdes.Message. EG:

    import glngn._
    import glngn.prelude._
    
    object SuitTailoringOrders extends ServiceActor {
      sealed trait Proto extends Message
    }
  8. trait ServiceDaemon[P] extends AnyRef

    A ServiceDaemon is a typed akka actor run concurrently with a ServiceFragment.

    A ServiceDaemon is a typed akka actor run concurrently with a ServiceFragment. There is little restriction on the structure of a ServiceDaemon:

    See glngn.server.core.bindings.ServiceBindings.Bindings for the API to instantiate a daemon. See ServiceFragment for high level information on using this API.

  9. sealed trait ServiceDomain extends AnyRef

  10. case class ServiceInstanceEnv(spawner: ActorSpawner, injector: ImpureInjector, domainId: EntityId) extends BindingsInstanceEnv with Product with Serializable

Value Members

  1. object ActorSpawner

    Minimally necessary interface for spawning actors.

  2. object ImpliedStatus extends ImpliedStatusDefaults

  3. object ServiceActor
  4. object ServiceDomain

Domain

Service Logic

Implementation Detail

Ungrouped