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
    @HotSpotIntrinsicCandidate() @throws( ... )
  12. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  14. final def isInstanceOf[T0]: Boolean

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

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

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

    Permalink
    Attributes
    protected
    Definition Classes
    JsonAppendable
  18. final def ne(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  20. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  21. val orElse: List[JMatcher]

    Permalink

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

  22. def orElseMatch(other: JMatcher): SubmissionDetails

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

    Permalink
  24. val selection: SelectionMode

    Permalink

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

  25. def submittedBy: User

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

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

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

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

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

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

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

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

    Permalink
  34. val workMatcher: JMatcher

    Permalink

    the json criteria used to match work subscriptions

Deprecated Value Members

  1. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from JsonAppendable

Inherited from AnyRef

Inherited from Any

Ungrouped