diff -r c0e1fb1b0145 -r a4aead244f75 doc/source/vmm_relocated.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/source/vmm_relocated.rst Thu Jun 28 19:26:50 2012 +0000 @@ -0,0 +1,60 @@ +:mod:`VirtualMailManager.Relocated` --- Handling of relocated users +=================================================================== + +.. module:: VirtualMailManager.Relocated + :synopsis: Handling of relocated users + +.. moduleauthor:: Pascal Volk + +.. toctree:: + :maxdepth: 2 + + +This module provides the :class:`Relocated` class. The data are read +from/stored in the ``relocated`` table. An optional lookup table, used +by Postfix for the "``user has moved to new_location``" reject/bounce message. + + +Relocated +--------- +.. class:: Relocated(dbh, address) + + Creates a new *Relocated* instance. If the relocated user with the given + *address* is already stored in the database use :meth:`get_info` to get the + destination address of the relocated user. To set or update the destination + of the relocated user use :meth:`set_destination`. Use :meth:`delete` in + order to delete the relocated user from the database. + + :param dbh: a database connection + :type dbh: :class:`pyPgSQL.PgSQL.Connection` + :param address: the e-mail address of the relocated user. + :type address: :class:`VirtualMailManager.EmailAddress.EmailAddress` + + + .. method:: delete() + + :rtype: :obj:`None` + :raise VirtualMailManager.errors.RelocatedError: if the relocated user + doesn't exist. + + Deletes the relocated user from the database. + + + .. method:: get_info() + + :rtype: :class:`VirtualMailManager.EmailAddress.EmailAddress` + :raise VirtualMailManager.errors.RelocatedError: if the relocated user + doesn't exist. + + Returns the destination e-mail address of the relocated user. + + + .. method:: set_destination(destination) + + :param destination: the new address where the relocated user has moved to + :type destination: :class:`VirtualMailManager.EmailAddress.EmailAddress` + :rtype: :obj:`None` + :raise VirtualMailManager.errors.RelocatedError: if the *destination* + address is already saved or is the same as the relocated user's address. + + Sets or updates the *destination* address of the relocated user.