c

group

GroupAdministration

class GroupAdministration extends AnyRef

Administrates groups, e.g. joining or leaving. A group's state is stored in a GroupResult. Members of a group are identified by the StudyResult's ID (which represents a particular study run).

All group members exchange messages via WebSockets that are called group channels in JATOS. The message dispatching system is implemented with Akka.

Annotations
@Singleton()
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GroupAdministration
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new GroupAdministration(studyResultDao: StudyResultDao, groupResultDao: GroupResultDao, jpa: JPAApi)
    Annotations
    @Inject()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. def join(studyResult: StudyResult, batch: Batch): GroupResult

    Joins the a GroupResult or create a new one.

    Joins the a GroupResult or create a new one. Persists changes.

    Looks in the database whether we have an incomplete GroupResult (state STARTED, maxActiveMember not reached, maxTotalMembers not reached). If there is none, create a new GroupResult.

  13. def leave(studyResult: StudyResult): Unit

    Leaves the group that this studyResult is member of.

    Leaves the group that this studyResult is member of. Moves the given StudyResult in its group result into history.

  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. def reassign(studyResult: StudyResult, batch: Batch): Either[String, GroupResult]

    Reassigns this StudyResult to a different GroupResult if possible.

    Reassigns this StudyResult to a different GroupResult if possible.

    Looks in the database whether we have other incomplete GroupResult. If there are more than one, it returns the one with the most active members. If there is no other GroupResult it returns an error msg.

    returns

    Either with String if error or a GroupResult if success

  18. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  21. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  22. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped