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()
- Alphabetic
- By Inheritance
- GroupAdministration
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new GroupAdministration(studyResultDao: StudyResultDao, groupResultDao: GroupResultDao, jpa: JPAApi)
- Annotations
- @Inject()
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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.
- 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.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- 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
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()