Package svnmailer :: Module main :: Class Main

[hide private]

# Class Main

source code

    object --+
             |
            Main

main svnmailer logic

Instance Methods | [hide private]

__init__(self, options) Initialization | source code

run(self) Dispatches the work to be done | source code

`svnmailer.notifier.selector.Selector`

_getNotifierSelector(self) Returns the notifier selector | source code

`list`

_getChanges(self) Returns the list of changes for the requested revision | source code

`list`

_getGroupSets(self) Returns the list of groupsets (grouped groups...) to notify | source code

`list`

_getGroupsByChange(self, change) Returns the matching groups for a particular change | source code

`dict`

_getDefaultSubst(self, group, repos_path, path) Returns the default substitution dict | source code

`svnmailer.config.ConfigFileSettings`

_getSettings(self, options) Returns the settings object | source code

_openRepository(self) Opens the repository | source code

_closeRepository(self) Closes the repository | source code

Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Instance Variables | [hide private]

`svnmailer.settings.Settings` | _settings The settings to use

Properties | [hide private]

Inherited from `object`: `__class__`

Method Details | [hide private]

### __init__(self, options)
(Constructor)

source code

Initialization

Parameters:
  - `options` (`optparse.OptionParser`) - Command line options
Raises:
  - `ConfigError` - Configuration error
Overrides: object.__init__

### run(self)

source code

Dispatches the work to be done

Raises:
  - `svnmailer.subversion.RepositoryError` - Error while accessing the subversion repository
  - `NotifierError` - One or more notifiers went crazy

### _getNotifierSelector(self)

source code

Returns the notifier selector

Returns: `svnmailer.notifier.selector.Selector`
  The selector

### _getChanges(self)

source code

Returns the list of changes for the requested revision

Returns: `list`
  The list of changes (`[Descriptor, ...]`)
Raises:
  - `svnmailer.subversion.Error` - Error while accessing the subversion repository

### _getGroupSets(self)

source code

Returns the list of groupsets (grouped groups...) to notify

Returns: `list`
  The list (maybe empty). (`[GroupSet, ...]`)

### _getGroupsByChange(self, change)

source code

Returns the matching groups for a particular change

Parameters:
  - `change` (`svnmailer.subversion.VersionedPathDescriptor`) - The change to select
Returns: `list`
  The group list

### _getDefaultSubst(self, group, repos_path, path)

source code

Returns the default substitution dict

Parameters:
  - `group` (`svnmailer.settings.GroupSettingsContainer`) - The group to consider
  - `repos_path` (`unicode`) - The repository path
  - `path` (`unicode`) - The change path
Returns: `dict`
  The initialized dictionary
Raises:
  - `svnmailer.subversion.Error` - An error occured while accessing the subversion repository

### _getSettings(self, options)

source code

Returns the settings object

Parameters:
  - `options` (`svnmailer.cli.SvnmailerOptionParser`) - Command line options
Returns: `svnmailer.config.ConfigFileSettings`
  The settings object
Raises:
  - `ConfigError` - configuration error

### _openRepository(self)

source code

Opens the repository

Raises:
  - `svnmailer.subversion.Error` - Error while accessing the subversion repository