Class/Object

agora.api.exchange

SubmissionDetails

Related Docs: object SubmissionDetails | package exchange

Permalink

case class SubmissionDetails(aboutMe: Json, selection: SelectionMode, awaitMatch: Boolean, workMatcher: JMatcher, orElse: List[JMatcher]) extends JsonAppendable with Product with Serializable

The SubmissionDetails is the ansillary information submitted with a job request.

Where a typical REST endpoint would just take some POSTed json request, the SubmitJob requests wraps that json together will some information intended for the Exchange in order for it to match the job with a worker.

The SubmissionDetails is that additional information to act as instructions/information specific to the job scheduling/matching. It contains:

aboutMe

a hold-all json blob which can include any details a client request wishes to expose to potential workers. It could contain e.g. session information, the submitting or 'run-as' user, etc.

selection

an instruction on which/how to select matching work subscriptions as an opportunity to filter on best-fit

awaitMatch

if true, the job submission to the exchange should block until one or more matching worker(s) is found

workMatcher

the json criteria used to match work subscriptions

orElse

should the 'workMatcher' not match _any_ current work subscriptions, the SubmitJob is resubmitted with the 'orElse' criteria

Linear Supertypes
Serializable, Serializable, Product, Equals, JsonAppendable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SubmissionDetails
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. JsonAppendable
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SubmissionDetails(aboutMe: Json, selection: SelectionMode, awaitMatch: Boolean, workMatcher: JMatcher, orElse: List[JMatcher])

    Permalink

    aboutMe

    a hold-all json blob which can include any details a client request wishes to expose to potential workers. It could contain e.g. session information, the submitting or 'run-as' user, etc.

    selection

    an instruction on which/how to select matching work subscriptions as an opportunity to filter on best-fit

    awaitMatch

    if true, the job submission to the exchange should block until one or more matching worker(s) is found

    workMatcher

    the json criteria used to match work subscriptions

    orElse

    should the 'workMatcher' not match _any_ current work subscriptions, the SubmitJob is resubmitted with the 'orElse' criteria

Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +[T](keyValue: (String, T))(implicit arg0: Encoder[T]): SubmissionDetails

    Permalink
  4. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  5. val aboutMe: Json

    Permalink

    a hold-all json blob which can include any details a client request wishes to expose to potential workers.

    a hold-all json blob which can include any details a client request wishes to expose to potential workers. It could contain e.g. session information, the submitting or 'run-as' user, etc.

    Definition Classes
    SubmissionDetailsJsonAppendable
  6. def add[T](keyValue: (String, T))(implicit arg0: Encoder[T]): SubmissionDetails

    Permalink
  7. def andMatching(andCriteria: JMatcher): SubmissionDetails

    Permalink
  8. def append(json: Json): SubmissionDetails

    Permalink
  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. val awaitMatch: Boolean

    Permalink

    if true, the job submission to the exchange should block until one or more matching worker(s) is found

  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. def finalize(): Unit

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

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

    Permalink
    Definition Classes
    Any
  16. def matchingPath(path: String): SubmissionDetails

    Permalink
  17. def mergeJson[T](data: T, name: String = null)(implicit arg0: Encoder[T]): Json

    Permalink
    Attributes
    protected
    Definition Classes
    JsonAppendable
  18. def namespace[T](c1ass: Class[T], name: String): String

    Permalink
    Attributes
    protected
    Definition Classes
    JsonAppendable
  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. val orElse: List[JMatcher]

    Permalink

    should the 'workMatcher' not match _any_ current work subscriptions, the SubmitJob is resubmitted with the 'orElse' criteria

  23. def orElseMatch(other: JMatcher): SubmissionDetails

    Permalink
  24. def orMatching(orCriteria: JMatcher): SubmissionDetails

    Permalink
  25. val selection: SelectionMode

    Permalink

    an instruction on which/how to select matching work subscriptions as an opportunity to filter on best-fit

  26. def submittedBy: User

    Permalink
  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  28. def valueOf[T](name: String = null)(implicit arg0: Decoder[T], arg1: ClassTag[T]): Result[T]

    Permalink
    Definition Classes
    JsonAppendable
  29. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. def withData[T](data: T, name: String = null)(implicit arg0: Encoder[T]): SubmissionDetails

    Permalink
  33. def withMatcher(newMatcher: JMatcher): SubmissionDetails

    Permalink
  34. def withSelection(mode: SelectionMode): SubmissionDetails

    Permalink
  35. val workMatcher: JMatcher

    Permalink

    the json criteria used to match work subscriptions

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from JsonAppendable

Inherited from AnyRef

Inherited from Any

Ungrouped