Task details

Swarm has lots of events that can been listened to and it uses these to process the tasks to generate data for Swarm.

This section lists the Swarm tasks available for use with your modules. They are listed along with the priorities of the task events. Events for each task are listed in highest to lowest priority order.

task.commit

  • Priority 200: the listener searches for all of the projects that are impacted by the change and checks for any user mentions that need to be linked. It sets up the email list here and queues the activity to be processed.
  • Priority 100: the listener determines whether it should update or create any reviews for the changelist.
  • Priority -100: the listener checks if any users have the Review daemon setup and attaches those users to the email to list.
  • Priority -200: has two Listeners:
    • One listener checks the disable_change_emails configurable setting:
    • true, the email will not be sent.

      false, Swarm adds any reviews that might not be part of the to list because they are not a member of the project.

    • The other listener creates the activity for all users/projects that are linked to this event.
  • Priority -300: the listener sends out the email that is related to the committed change.
  • Priority -400: the listener links to JIRA for this change list.

task.shelve

  • Priority 100: the listener processes the shelve task to determine whether it should create or updates any reviews.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.
  • Priority -300: the listener sends out the email that is related to the shelved change.

task.review

  • Priority 100: the listener processes the review and updates any records that are linked to the review. For example, @mention, new author, new participants, activity, and requirement level.
  • Priority -200: the listener creates the activity for all users/project that are linked to this event.
  • Priority -300: has two Listeners:
    • One listener sends out the email that is related to the review change.
    • The other listener fetches any associated changes and ensures they are linked to JIRA.

task.change

Priority 1: the listener ensures the change and any mentions in the description are linked to JIRA issues.

task.mail

Priority 1: this event is manually triggered from the review task. Other events do not manually trigger this task, they wait for it to run at the end. Once we are here Swarm will validate all of the email settings and send the email out.

task.cleanup.attachment

Priority 1: the listener will delete the attachment if a cleanup attachment task has been queued.

task.cleanup.archive

Priority 1: the listener will clean up any archive files if their life time has expired.

task.shelvedel

  • Priority 1: the listener processes any changelist that has had files deleted from it.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.

task.changesave

Priority 1: the listener processes the change to ensure that it is valid and puts a future task in the queue to do the task.changesaved tasks.

task.changesaved

Priority 1: the listener takes the changelist description and updates the review description if sync description is enabled.

task.comment

  • Priority 1: the listener processes the comment being created.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.
  • Priority -300: the listener sends out an email related to the committed change.

task.comment.batch

  • Priority 1: If comments are being batched, the listener will process the comment(s) and put a task into the queue to be processed when the notification_delay_time has elapsed.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.
  • Priority -300: the listener sends out an email related to the committed change.

task.commentSendDelay

  • Priority 1: if the user or system has forced a batched comment to be sent the listener will setup the email here.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.
  • Priority -300: the listener sends out an email related to the committed change.

task.group

Priority 1: the listener invalidates the group cache if the group is changed.

task.groupdel

Priority 1: the listener invalidates the group cache if the group has been deleted.

task.job

  • Priority 1: the listener sets up the Activity for the job and attaches any users/projects to the activity. It also checks if any users want to be notified about Job changes.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.
  • Priority -300: has two Listeners:
    • One listener sends out an email related to the committed change.
    • The other listener fetches associated changes and ensures they are linked to JIRA.

task.user

Priority 1: the listener invalidates the user cache if the user is changed.

task.userdel

Priority 1: the listener invalidates the user cache if the user has been deleted.

task.workflow.created

  • Priority 1: the listener sets up the Activity for the new workflow and attaches any users/projects to the activity.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.

task.workflow.updated

  • Priority 1: the listener sets up the Activity for the updated workflow and attaches any users/projects to the activity.
  • Priority -200: the listener creates the activity for all users/projects that are linked to this event.