Class WatchConfig

  • All Implemented Interfaces:
    ValidationError.Sink

    public class WatchConfig
    extends VersionedMetaData
    implements ValidationError.Sink
    ‘watch.config’ file in the user branch in the All-Users repository that contains the watch configuration of the user.

    The 'watch.config' file is a git config file that has one 'project' section for all project watches of a project.

    The project name is used as subsection name and the filters with the notify types that decide for which events email notifications should be sent are represented as 'notify' values in the subsection. A 'notify' value is formatted as <filter> [<comma-separated-list-of-notify-types>]:

       [project "foo"]
         notify = * [ALL_COMMENTS]
         notify = branch:master [ALL_COMMENTS, NEW_PATCHSETS]
         notify = branch:master owner:self [SUBMITTED_CHANGES]
     

    If two notify values in the same subsection have the same filter they are merged on the next save, taking the union of the notify types.

    For watch configurations that notify on no event the list of notify types is empty:

       [project "foo"]
         notify = branch:master []
     

    Unknown notify types are ignored and removed on save.