Tasque

Tasque domain objects: task lists, tasks and notes

This page describes the domain objects used in Tasque for Tasque core, client, backend and addin developers.

Task lists

A task list is a container of tasks with a name that provides the user with the possibility to organize tasks according to his needs.

Task - Task list multiplicity

A task list can contain multiple tasks and a task may be contained in several task lists. This results effectively in a many-to-many relationship between the classes Task and TaskList. However, a task always needs to be contained in at least 1 task list.

Types of task lists

Task lists come in 2 different flavors:

  • Unmanaged task lists
  • Managed task lists

An unmanaged list is a "regular" task list to/from which the user can add/remove tasks. Thus, an unmanaged task list can be manipulated by a Tasque client application.

A managed task list doesn't allow the user to manipulate it directly. Instead the contents of the list are taken from other task lists and have usually undergone some aggregation/transformation logic. E.g. a managed task list could be a list which shows all tasks of all lists, which have its priority set to High.

For remote backends, such as RTM, the logic which calculates the inclusion of tasks in a manged task list happens on the server. A Tasque client application only presents the task lists as they are retrieved from the server.

Tasks

  • Therefore a task can only be created on a task list and if it is removed from a task list and no other task list hold a reference of that task, it is deleted.

Attic/Tasque/DomainObjects (last edited 2018-08-18 15:11:10 by AndreKlapper)