Class

agora.api.exchange.dsl.LowPriorityCirceSubmitable

RichExchange

Related Doc: package LowPriorityCirceSubmitable

Permalink

implicit class RichExchange extends JobSyntax

Adds 'enqueue' methods to an exchange

Linear Supertypes
JobSyntax, StrictLogging, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. RichExchange
  2. JobSyntax
  3. StrictLogging
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new RichExchange(exchange: Exchange)

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def enqueue[T, Out](request: T, overrideDetails: SubmissionDetails)(implicit submitable: Submitable[T], asClient: AsClient[T, Out], ec: ExecutionContext): Future[Out]

    Permalink

    Enqueues a job w/ the overriding details (instead of the ones from the submitting in scope)

    Enqueues a job w/ the overriding details (instead of the ones from the submitting in scope)

    returns

    the single result

    Definition Classes
    JobSyntax
  7. def enqueue[T, Out](request: T)(implicit submitable: Submitable[T], asClient: AsClient[T, Out], ec: ExecutionContext): Future[Out]

    Permalink

    'enqueue' is a convenience method which will then make a request against the matched worker and return that result.

    'enqueue' is a convenience method which will then make a request against the matched worker and return that result.

    Note: It is assumed that the 'enqueue' is used against a job w/ SubmissionDetails which specify only a single worker is chosen. If a mode is provided which returns multiple workers, then 'enqueueAll' is your darling.

    Out

    the result type of the AsClient

    returns

    the result from the single asClient worker

    Definition Classes
    JobSyntax
  8. def enqueueAll[T, Out](request: T)(implicit submitable: Submitable[T], asClient: AsClient[T, Out], ec: ExecutionContext): Future[List[Future[Out]]]

    Permalink

    Similar to 'submit', but returns the responses from the worker.

    Similar to 'submit', but returns the responses from the worker.

    Submit the job, then on the (expected) redirect response, route the work to the given worker using the asClient

    Out

    the response of the AsClient function used to send work to the worker (which may or may not have been the same request)

    returns

    both the original work submission response and the response from the worker

    Definition Classes
    JobSyntax
  9. def enqueueJob[T, Out](value: T, job: SubmitJob)(implicit asClient: AsClient[T, Out], ec: ExecutionContext): Future[List[Future[Out]]]

    Permalink

    eventually we'll get a collection of all the response futures (hence Future[List[Future]])

    eventually we'll get a collection of all the response futures (hence Future[List[Future]])

    returns

    an eventual collection of all the response futures

    Definition Classes
    JobSyntax
  10. def enqueueSingleJob[T, Out](request: T, job: SubmitJob)(implicit asClient: AsClient[T, Out], ec: ExecutionContext): Future[Out]

    Permalink

    Syntax for submitting a job which will either return the first completed or

    Syntax for submitting a job which will either return the first completed or

    Definition Classes
    JobSyntax
  11. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  13. val exchange: Exchange

    Permalink
    Definition Classes
    RichExchangeJobSyntax
  14. def finalize(): Unit

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

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

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

    Permalink
    Definition Classes
    Any
  18. val logger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    StrictLogging
  19. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. def toString(): String

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from JobSyntax

Inherited from StrictLogging

Inherited from AnyRef

Inherited from Any

Ungrouped