Packages

class GopherAPI extends AnyRef

Api for providing access to channel and selector interfaces.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GopherAPI
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new GopherAPI(as: ActorSystem, es: ExecutionContext)

Value Members

  1. def actorSystem: ActorSystem

    actor system which was passed during creation

  2. def config: Config

    the configuration of the gopher system.

    the configuration of the gopher system. By default is contained under 'gopher' key in top-level config.

  3. def currentFlow: CurrentFlowTermination.type
  4. def executionContext: ExecutionContext

    execution context used for managing calculation steps in channels engine.

  5. def futureInput[A](future: Future[A]): FutureInput[A]

    Represent Scala future as channel from which we can read one value.

    Represent Scala future as channel from which we can read one value.

    See also

    gopher.channels.FutureInput

  6. lazy val idleTimeout: FiniteDuration
  7. def iterableInput[A](iterable: Iterable[A]): Input[A]

    Represent Scala iterable as channel, where all values can be readed in order of iteration.

  8. macro def make[T](args: Any*): T

    Generic schema for making objects, which requiere gopherAPI for constructions.

  9. def makeChannel[A](capacity: Int = 0): Channel[A]

    obtain channel

    obtain channel

    val channel = gopherApi.makeChannel[Int]()
    channel.awrite(1 to 100)
    Annotations
    @inline()
  10. def makeEffectedChannel[A](ch: Channel[A], threadingPolicy: ThreadingPolicy = ThreadingPolicy.Single): EffectedChannel[A]
  11. def makeEffectedInput[A](in: Input[A], threadingPolicy: ThreadingPolicy = ThreadingPolicy.Single): EffectedInput[A]

    create effected input with given thread-policy

  12. def makeEffectedOutput[A](out: Output[A], threadingPolicy: ThreadingPolicy = ThreadingPolicy.Single): EffectedOutput[A]
  13. macro def makeTransputer[T <: Transputer]: T
  14. macro def makeTransputer[T <: Transputer](recoveryPolicy: PartialFunction[Throwable, Directive]): T

    create and start instance of transputer with given recovery policy.

    create and start instance of transputer with given recovery policy.

    See also

    gopher.Transputer

  15. macro def replicate[T <: Transputer](n: Int): Transputer

    create transputer which contains n instances of X where ports are connected to the appropriate ports of each instance in paraller.

    create transputer which contains n instances of X where ports are connected to the appropriate ports of each instance in paraller.

    val persistStep = replicate[PersistTransputer](nDBConnections)
  16. val select: SelectFactory

    obtain select factory

    obtain select factory

    goopherApi.select.once[String] {
      case x: a.read => s"${x} from A"
      case x: b.read => s"${x} from B"
      case _ => "IDLE"
    }